Wow! WhatsApp entegrasyonunuzu oluşturun. Ücretsiz başlayın. Şimdi Kaydol
CTWA reklamları · WhatsApp API kullanım senaryosu

WhatsApp reklam tıklamasından CRM leadine ve ilk yanıta

Aday, reklamın açtığı WhatsApp sohbetinde ilk yanıtı alır; aksi halde ücretli tıklamalar biri elle yazana kadar bekler. Biri Meta Click-to-WhatsApp reklamına tıklayınca backendiniz Lead veya Purchase yazıp bu ısınmayı Whapi.Cloud üzerinden gönderebilir. Sayfa, entegratörlere bu akışı WhatsApp API ile nasıl kuracaklarını gösterir.

Gelen messages.post ve context.ad Isınma gövdesi sıradan sohbet metnidir
Telefonda bir Meta reklamı, ilk yanıtı bekleyen bir WhatsApp sohbeti ve ipliğin yanındaki CRM lead kartı.
Dekoratif balon
Kullanım senaryosu

Bu akış ne zaman uyar

Tetikleyici Meta Click-to-WhatsApp tıklamasıdır

Kişi size Meta Click-to-WhatsApp reklamına tıklayarak geliyorsa uyar; reklam bağlamı olmadan numarayı elle yazdıysa uymaz.

Tıklama CRM kaydı oluşturmalıdır

Tıklama backendinizde Lead veya Purchase oluşturmalıysa uyar; ipliği yalnızca WhatsApp'ta bırakıyorsanız uymaz.

İlk yanıt o kişisel sohbette kalır

Isınma, reklamın açtığı aynı doğrudan sohbette görünmeliyse uyar; yeterlilik soruları, grup daveti veya HubSpot'tan giden bir gönderi ise uymaz.

Click-to-WhatsApp reklamına dokunduktan sonra adayın ilk yanıtı aldığı bir WhatsApp sohbeti ve yanında Lead işaretli bir CRM kartı.
Müşteri deneyimi

Aday reklamdan sonra ilk yanıtı alır

Otomasyon yokken sohbet, reklam dokunuşundan sonra bir temsilci yazana kadar boş kalır ve satış tıklamayı CRM'de hiç görmez.

Akış çalışınca aday o WhatsApp sohbetinde bir ısınma görür, ekip de CRM kartında Lead veya Purchase tutar. Entegratörler bu sonucu WhatsApp API ile kurar.

İş akışı

Reklam tıklamasından ilk yanıta

1

Meta Click-to-WhatsApp reklam tıklaması

Biri Meta Click-to-WhatsApp reklamına tıklar ve gelen sohbet kanalınıza düşer. messages.post yükünde context.ad ve varsa context.conversion vardır. Backendiniz bu yükten CRM'e Lead veya Purchase yazar. Whapi.Cloud CRM'i barındırmaz.

2

Isınma mesajını gönderin

POST /messages/text

sendMessageText, backendinizin seçtiği ısınma gövdesini aynı kişisel sohbete gönderir. Webhook'taki gönderen telefonunu veya sohbet kimliğini to alanına koyun.

Teslimat takibi gerekir mi? Isınma pending kalırsa teslim edilmemiştir. Sonraki değişiklikler statuses.post ve statuses.put ile gelir. Teslimat durumunu öğrenin →

Ön koşullar

Akışı çalıştırmadan önce

Bu reklam sohbetlerini alan WhatsApp numarasını bağlayın ve her isteği o numaranın API jetonuyla doğrulayın. CRM eşlemesi ve ısınma metni backendinizde kalır.

İsteğe bağlı — bu akışı derinleştirin

API uygulaması

Isınmayı gönderen çağrı

Backendiniz reklam atıflı geleni okudu ve CRM olayını yazdı. Bu çağrı ısınma metnini aynı kişisel sohbete teslim eder.

whapi.cloud üzerinde kaydolduktan sonra API jetonunuzu ücretsiz alın ve örneklerdeki Your_Token yerine kodda onu kullanın.

Isınma mesajını gönderin

Meta Click-to-WhatsApp geleni indikten sonra ısınma metnini gönderin.

curl --request POST \
     --url https://gate.whapi.cloud/messages/text \
     --header 'accept: application/json' \
     --header 'authorization: Bearer Your_Token' \
     --header 'content-type: application/json' \
     --data '
{
  "to": "15052462002",
  "body": "Hello"
}
'
$curl = curl_init();

curl_setopt_array($curl, [
  CURLOPT_URL => "https://gate.whapi.cloud/messages/text",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => "{  \"to\": \"15052462002\",  \"body\": \"Hello\"}",
  CURLOPT_HTTPHEADER => [
    "accept: application/json",
    "authorization: Bearer Your_Token",
    "content-type: application/json"
  ],
]);

$response = curl_exec($curl);
curl_close($curl);
echo $response;
import requests

url = "https://gate.whapi.cloud/messages/text"
payload = {"to": "15052462002", "body": "Hello"}
headers = {
    "accept": "application/json",
    "authorization": "Bearer Your_Token",
    "content-type": "application/json"
}

response = requests.request("POST", url, json=payload, headers=headers)
print(response.text)
const response = await fetch("https://gate.whapi.cloud/messages/text", {
  method: "POST",
  headers: {
    accept: "application/json",
    authorization: "Bearer Your_Token",
    "content-type": "application/json"
  },
  body: JSON.stringify({ to: "15052462002", body: "Hello" })
});

console.log(await response.text());
OkHttpClient client = new OkHttpClient();

MediaType mediaType = MediaType.parse("application/json");
RequestBody body = RequestBody.create(mediaType, "{  \"to\": \"15052462002\",  \"body\": \"Hello\"}");
Request request = new Request.Builder()
  .url("https://gate.whapi.cloud/messages/text")
  .method("POST", body)
  .addHeader("accept", "application/json")
  .addHeader("authorization", "Bearer Your_Token")
  .addHeader("content-type", "application/json")
  .build();

Response response = client.newCall(request).execute();
using RestSharp;

var options = new RestClientOptions("https://gate.whapi.cloud/messages/text");
var client = new RestClient(options);
var request = new RestRequest("");
request.AddHeader("accept", "application/json");
request.AddHeader("authorization", "Bearer Your_Token");
request.AddHeader("content-type", "application/json");
request.AddJsonBody(new { to = "15052462002", body = "Hello" });
var response = await client.ExecuteAsync(request);

Console.WriteLine("{0}", response.Content);
package main

import (
	"bytes"
	"fmt"
	"io"
	"net/http"
)

func main() {
	body := []byte(`{
  "to": "15052462002",
  "body": "Hello"
}`)
	req, _ := http.NewRequest("POST", "https://gate.whapi.cloud/messages/text", bytes.NewReader(body))
	req.Header.Set("accept", "application/json")
	req.Header.Set("authorization", "Bearer Your_Token")
	req.Header.Set("content-type", "application/json")

	res, _ := http.DefaultClient.Do(req)
	defer res.Body.Close()
	out, _ := io.ReadAll(res.Body)
	fmt.Println(string(out))
}
Teslimat

Isınmanın ne zaman geldiğini görün

Başarılı bir gönderim yanıtı, adayın ısınmayı aldığı anlamına gelmez. Webhook öncesi görünen ilk durum pending değeridir. Sonraki durum değişiklikleri yalnızca statuses.post ve statuses.put ile gelir. Durum pending kalır ve sent, delivered veya sonraki bir ack'e geçmezse mesaj teslim edilmemiştir. Yükü ve hesabın o türü gönderme iznini kontrol edin.

  • pending kalan bir durum, ısınmanın teslim edilmediği anlamına gelir.

  • sent, delivered ve read için statuses.post ile statuses.put izleyin.

  • Isınma pending dışına çıkana veya aday yanıt verene kadar tıklamayı ısınmış saymayın.

Teslimat ve webhook için ne okumalı

Bir şey ters gittiyse desteğe yazın
Bir şey bozulunca

Hataları her adımda ele alın

messages.post kullanılabilir context.ad veya context.conversion olmadan gelirse, sendMessageText reddedilirse veya teslim olmazsa ya da backendinizdeki CRM yazımı düşerse yeniden deneyin veya uyarın; tıklamayı ısınmış veya kaydedilmiş saymayın.

Reklam tıklaması geldi ama kayıt yok mu?

CRM yazımını backendinizde WhatsApp teslimatından ayrı tutun. Reklam bağlamı yoksa göndermeyin ve uyarın. Isınma başarısız olursa sendMessageText tekrar deneyin veya ekibi uyarın; tıklamayı Lead veya Purchase olarak işaretlemeyin. Yeniden denemeden sonra gönderim yine düşerse kanal kimliği ve başarısız istek kimliğiyle Whapi desteğine yazın.

Bir şey ters gittiyse desteğe yazın

API adımına göre giderin

Durum Anlamı Ne yapmalı
200 Created
400 Wrong request parameters
401 Need channel authorization for send message
402 Trial version limit exceeded
403 It is forbidden to send to this group/recipient
413 Request body too large
429 Too many requests
500 Internal Error
SSS

Reklam leadleri hakkında sorular

Hayır. Bu akış CRM'e Lead veya Purchase yazar ve bir ısınma gönderir. Reklam sohbetindeki yeterlilik soruları ayrı bir daldır.
Hayır. Backendiniz Lead veya Purchase seçer ve kaydı yazar. Whapi.Cloud gelen reklam bağlamını ve ısınma gönderimini iletir.
Atıf, reklam tıklaması bir mesaja dönüştüğünde ve reklam alanları o gelende olduğunda vardır. context.ad yoksa yeniden deneyin veya uyarın; tıklamayı kaydedilmiş saymayın.
Hayır. HubSpot'tan giden WhatsApp bir CRM olayından başlar. Bu akış bir Meta Click-to-WhatsApp tıklamasından başlar.
Hayır. Katalog sipariş kalemleri başka bir kaynaktır. Burada Purchase, reklam atıflı sohbetten sonra backendinizin yazdığı CRM olayıdır.
Desteklenen WhatsApp Özellikleri

WhatsApp otomasyonları oluşturmak için ihtiyacınız olan her şey

Whapi.Cloud; mesajlaşma, medya, gruplar, kanallar, webhook’lar ve daha fazlası dahil olmak üzere WhatsApp’ın tüm özelliklerine erişim sağlar. Özellik kısıtlamaları olmadan botlar, otomasyonlar ve entegrasyonlar oluşturun.

Geliştiricilerin tercihi

3.300+ geliştirici ve SaaS ekibi tarafından güveniliyor

Dünya genelindeki geliştiriciler, otomasyonlar, botlar, CRM entegrasyonları, toplu mesaj araçları ve gelişmiş WhatsApp iş akışları oluşturmak için Whapi.Cloud'a güveniyor. Altyapımız her ay yüksek kararlılıkla milyonlarca API isteği işliyor — ve bu sayı giderek artıyor.

Özellik simgesi

5,5K+

aktif API kanalı

Özellik simgesi

21M+

aylık API isteği

“Her şey basit, sezgisel ve kullanımı kolay. Dokümantasyon net ve gerekli tüm bilgiler elimizin altında. Harika iş.”

Roberto K. / Web Geliştirici

“WhatsApp'ı n8n kullanarak iş akışlarımıza sadece birkaç dakikada bağladık. Kod yok, karmaşa yok — her şey ilk denemede çalıştı.”

Martin P. / Geliştirici

“Whapi.Cloud, müşteri iletişimimizin önemli bir parçası haline geldi. Ürün güncellemelerini, sipariş bildirimlerini ve destek mesajlarını Meta şablonlarına veya onaylara ihtiyaç duymadan otomatikleştirdik.”

Oscar T. / CTO

Dekoratif balon