WhatsApp'ta otomatikleştirebileceğiniz her şey
Her WhatsApp otomasyon yüzeyi için tek bir REST API: JSON uç noktaları, gerçek zamanlı etkinlikler ve eksiksiz dokümantasyon.
Bir bölüme geçin:
Her WhatsApp otomasyon yüzeyi için tek bir REST API: JSON uç noktaları, gerçek zamanlı etkinlikler ve eksiksiz dokümantasyon.
Bir bölüme geçin:
Numaranızı QR koduyla bağlayın
Herhangi bir kişisel veya Business WhatsApp hesabını, tıpkı WhatsApp Web gibi bağlayın. Bağlantı kurmak ve test etmek için ücretsiz sandbox'ta başlayın.
İlk API isteğinizi gönderin
Sandbox, curl veya Postman'de token'ınızı kullanın. Mesajlar, gruplar, kanallar ve daha fazlası için tek bir REST API.
Etkinliklere ihtiyacınız olduğunda webhook ekleyin
WhatsApp mesajlarını ve etkinliklerini gerçek zamanlı olarak alın: yalnızca uygulamanızın kullandığı etkinlikleri yapılandırın.
WhatsApp gruplarını backend'inizden otomatikleştirin: uygulamayı açmadan mesaj gönderin, grup sohbetlerini okuyun, katılımcı ekleyin veya çıkarın ve yöneticileri yönetin. CRM senkronizasyonu için üye telefon numaralarını dışa aktarın ve kullanıcı katılımını ölçeklendirin. Tek bir grup size yetmediğinde, her ikisi için de aynı REST API'yi kullanarak bağlı alt gruplara sahip Toplulukları yönetin. Groups API Kılavuzu →
Backend'inizden WhatsApp Kanalları oluşturun ve yönetin: uygulamayı açmadan gönderiler yayınlayın, yöneticiler atayın ve reaksiyonları okuyun. Web sitenizden, Telegram'dan veya CRM'inizden haberleri, sürüm notlarını ve kampanya duyurularını çapraz olarak yayınlayın. Kanal gönderilerinde mesaj başına ücret alınmaz. Channel API Genel Bakış →
Sınırsız doğrudan mesajlaşma ve yerleşik e-ticaret araçlarıyla müşterilerinizin ilgisini çekin. Mesaj başına ücret ödemeden ve önceden onaylanmış şablonlara ihtiyaç duymadan doğrudan sohbette zengin medya, etkileşimli butonlar ve ürün katalogları gönderin. Akıllı chatbot'lar oluşturun, siparişleri CRM'inizle senkronize edin ve tüm satış hunisini tek bir API üzerinden yönetin.
Otomatik WhatsApp Durum (Hikaye) güncellemeleriyle hedef kitlenizin ilgisini çekin. Görselleri, videoları veya metinleri özel renkli arka planlarla programatik olarak yayınlayın. Çoğu resmi WhatsApp API'sinde tamamen eksik olan güçlü bir pazarlama kanalının kilidini açın.
Net ve geliştirici dostu bir API'de yerleşik yardımcı özellikler: her türlü eylemle hızlıca başlayın. Sesli aramaları, anketleri, numara doğrulamayı ve sohbet etiketlerini otomatikleştirin; hepsi aboneliğinize dahildir ve ek ücret gerektirmez.
Arama etkinlikleri
Grup aramaları başlatın, giden aramalar tetikleyin, gelen aramaları reddedin ve webhook'larda arama etkinliklerini alın: cevapsız, yanıtlanan ve çalıyor.
Anketler
Sohbetlerde ve gruplarda anketler oluşturun ve insanlar oy kullandığında anında tepki verin.
Numara kontrolü
Mesaj göndermeden önce bir telefon numarasının WhatsApp'ta aktif olup olmadığını kontrol edin.
İşletme etiketleri
Sohbetleri API üzerinden etiketleyin: CRM aşamaları ve destek kuyrukları için idealdir.
WhatsApp etkinliklerini sunucunuzda gerçek zamanlı olarak alın: yeni mesajlar, grup değişiklikleri, kanal gönderileri ve siparişler. İş yükünü farklı hizmetler arasında dağıtmak için birden fazla URL bağlayın ve yalnızca ihtiyacınız olan etkinliklere abone olun. Sunucunuz çökerse, teslimatı otomatik olarak yeniden deneriz. Webhook dokümantasyonu →
Yalnızca uygulamanızın ihtiyaç duyduğu etkinlik türlerini seçin.
Yalnızca etkinliklerin nereye gideceğini değil, teslimat yöntemini, yeniden denemeleri ve güvenliği de yapılandırın.
Proaktif güvenlik araçları ve özel altyapı ile numaralarınızı koruyun. WhatsApp'ın yapay zeka tabanlı anti-spam sistemi agresifdir: geçici ve kalıcı engellemeler yaygındır ve numarayı nasıl kullandığınıza (toplu gönderimler, soğuk erişim ve alıcıların nasıl tepki verdiği) bağlıdır. Sıfır risk sözü vermiyoruz: size daha güvenli ölçeklendirme yapmanız için izole edilmiş bölgesel proxy'ler, yerleşik bir ısındırma modülü ve gerçek zamanlı bir Aktivite Güvenlik Ölçer gibi araçlar sunuyoruz.
REST çağrıları, Make/n8n modülleri ve ajan araçları için tek bir API token'ı: Whapi'yi herhangi bir teknoloji yığınına bağlayın.
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": "15056482143",
"body": "Hello, world!"
}
'
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://gate.whapi.cloud/messages/text",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'to' => '15056482143',
'body' => 'Hello, world!'
]),
CURLOPT_HTTPHEADER => [
"accept: application/json",
"authorization: Bearer {your_token}",
"content-type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}
import requests
url = "https://gate.whapi.cloud/messages/text"
payload = {
"to": "15056482143",
"body": "Hello, world!"
}
headers = {
"accept": "application/json",
"authorization": "Bearer {your_token}",
"content-type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)
const url = 'https://gate.whapi.cloud/messages/text';
const payload = { to: '15056482143', body: 'Hello, world!' };
const response = await fetch(url, {
method: 'POST',
headers: {
accept: 'application/json',
authorization: 'Bearer {your_token}',
'content-type': 'application/json',
},
body: JSON.stringify(payload),
});
console.log(await response.text());
OkHttpClient client = new OkHttpClient();
MediaType mediaType = MediaType.parse("application/json");
RequestBody body = RequestBody.create("{"to":"15056482143","body":"Hello, world!"}", mediaType);
Request request = new Request.Builder()
.url("https://gate.whapi.cloud/messages/text")
.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.AddJsonBody("{"to":"15056482143","body":"Hello, world!"}", false);
var response = await client.PostAsync(request);
Console.WriteLine("{0}", response.Content);
# First get chat_id via GET /chats, GET /groups, or GET /newsletters
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": "[email protected]",
"body": "Hello, group!"
}
'
// First get chat_id via GET /chats, GET /groups, or GET /newsletters
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://gate.whapi.cloud/messages/text",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'to' => '[email protected]',
'body' => 'Hello, group!'
]),
CURLOPT_HTTPHEADER => [
"accept: application/json",
"authorization: Bearer {your_token}",
"content-type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}
# First get chat_id via GET /chats, GET /groups, or GET /newsletters
import requests
url = "https://gate.whapi.cloud/messages/text"
payload = {
"to": "[email protected]",
"body": "Hello, group!"
}
headers = {
"accept": "application/json",
"authorization": "Bearer {your_token}",
"content-type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)
// First get chat_id via GET /chats, GET /groups, or GET /newsletters
const url = 'https://gate.whapi.cloud/messages/text';
const payload = { to: '[email protected]', body: 'Hello, group!' };
const response = await fetch(url, {
method: 'POST',
headers: {
accept: 'application/json',
authorization: 'Bearer {your_token}',
'content-type': 'application/json',
},
body: JSON.stringify(payload),
});
console.log(await response.text());
// First get chat_id via GET /chats, GET /groups, or GET /newsletters
OkHttpClient client = new OkHttpClient();
MediaType mediaType = MediaType.parse("application/json");
RequestBody body = RequestBody.create("{\"to\":\"[email protected]\",\"body\":\"Hello, group!\"}", mediaType);
Request request = new Request.Builder()
.url("https://gate.whapi.cloud/messages/text")
.post(body)
.addHeader("accept", "application/json")
.addHeader("authorization", "Bearer {your_token}")
.addHeader("content-type", "application/json")
.build();
Response response = client.newCall(request).execute();
// First get chat_id via GET /chats, GET /groups, or GET /newsletters
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.AddJsonBody("{\"to\":\"[email protected]\",\"body\":\"Hello, group!\"}", false);
var response = await client.PostAsync(request);
Console.WriteLine("{0}", response.Content);
curl --request GET \
--url 'https://gate.whapi.cloud/chats?count=100' \
--header 'accept: application/json' \
--header 'authorization: Bearer {your_token}'
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://gate.whapi.cloud/chats?count=100",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"accept: application/json",
"authorization: Bearer {your_token}"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}
import requests
url = "https://gate.whapi.cloud/chats?count=100"
headers = {
"accept": "application/json",
"authorization": "Bearer {your_token}"
}
response = requests.get(url, headers=headers)
print(response.text)
const url = 'https://gate.whapi.cloud/chats?count=100';
const response = await fetch(url, {
method: 'GET',
headers: {
accept: 'application/json',
authorization: 'Bearer {your_token}',
},
});
console.log(await response.text());
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://gate.whapi.cloud/chats?count=100")
.get()
.addHeader("accept", "application/json")
.addHeader("authorization", "Bearer {your_token}")
.build();
Response response = client.newCall(request).execute();
using RestSharp;
var options = new RestClientOptions("https://gate.whapi.cloud/chats?count=100");
var client = new RestClient(options);
var request = new RestRequest("");
request.AddHeader("accept", "application/json");
request.AddHeader("Authorization", "Bearer {your_token}");
var response = await client.GetAsync(request);
Console.WriteLine("{0}", response.Content);
curl --request GET \
--url 'https://gate.whapi.cloud/messages/list?count=100' \
--header 'accept: application/json' \
--header 'authorization: Bearer {your_token}'
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://gate.whapi.cloud/messages/list?count=100",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"accept: application/json",
"authorization: Bearer {your_token}"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}
import requests
url = "https://gate.whapi.cloud/messages/list?count=100"
headers = {
"accept": "application/json",
"authorization": "Bearer {your_token}"
}
response = requests.get(url, headers=headers)
print(response.text)
const url = 'https://gate.whapi.cloud/messages/list?count=100';
const response = await fetch(url, {
method: 'GET',
headers: {
accept: 'application/json',
authorization: 'Bearer {your_token}',
},
});
console.log(await response.text());
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://gate.whapi.cloud/messages/list?count=100")
.get()
.addHeader("accept", "application/json")
.addHeader("authorization", "Bearer {your_token}")
.build();
Response response = client.newCall(request).execute();
using RestSharp;
var options = new RestClientOptions("https://gate.whapi.cloud/messages/list?count=100");
var client = new RestClient(options);
var request = new RestRequest("");
request.AddHeader("accept", "application/json");
request.AddHeader("Authorization", "Bearer {your_token}");
var response = await client.GetAsync(request);
Console.WriteLine("{0}", response.Content);
curl --request GET \
--url 'https://gate.whapi.cloud/groups' \
--header 'accept: application/json' \
--header 'authorization: Bearer {your_token}'
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://gate.whapi.cloud/groups",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"accept: application/json",
"authorization: Bearer {your_token}"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}
import requests
url = "https://gate.whapi.cloud/groups"
headers = {
"accept": "application/json",
"authorization": "Bearer {your_token}"
}
response = requests.get(url, headers=headers)
print(response.text)
const url = 'https://gate.whapi.cloud/groups';
const response = await fetch(url, {
method: 'GET',
headers: {
accept: 'application/json',
authorization: 'Bearer {your_token}',
},
});
console.log(await response.text());
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://gate.whapi.cloud/groups")
.get()
.addHeader("accept", "application/json")
.addHeader("authorization", "Bearer {your_token}")
.build();
Response response = client.newCall(request).execute();
using RestSharp;
var options = new RestClientOptions("https://gate.whapi.cloud/groups");
var client = new RestClient(options);
var request = new RestRequest("");
request.AddHeader("accept", "application/json");
request.AddHeader("Authorization", "Bearer {your_token}");
var response = await client.GetAsync(request);
Console.WriteLine("{0}", response.Content);
curl --request POST \
--url https://gate.whapi.cloud/contacts \
--header 'accept: application/json' \
--header 'authorization: Bearer {your_token}' \
--header 'content-type: application/json' \
--data '
{
"force_check": false,
"contacts": [
"919984351847",
"61371989950"
]
}
'
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://gate.whapi.cloud/contacts",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'force_check' => false,
'contacts' => ['919984351847', '61371989950']
]),
CURLOPT_HTTPHEADER => [
"accept: application/json",
"authorization: Bearer {your_token}",
"content-type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}
import requests
url = "https://gate.whapi.cloud/contacts"
payload = {
"force_check": False,
"contacts": ["919984351847", "61371989950"]
}
headers = {
"accept": "application/json",
"authorization": "Bearer {your_token}",
"content-type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)
const url = 'https://gate.whapi.cloud/contacts';
const payload = {
force_check: false,
contacts: ['919984351847', '61371989950'],
};
const response = await fetch(url, {
method: 'POST',
headers: {
accept: 'application/json',
authorization: 'Bearer {your_token}',
'content-type': 'application/json',
},
body: JSON.stringify(payload),
});
console.log(await response.text());
OkHttpClient client = new OkHttpClient();
MediaType mediaType = MediaType.parse("application/json");
RequestBody body = RequestBody.create("{"force_check":false,"contacts":["919984351847","61371989950"]}", mediaType);
Request request = new Request.Builder()
.url("https://gate.whapi.cloud/contacts")
.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/contacts");
var client = new RestClient(options);
var request = new RestRequest("");
request.AddHeader("accept", "application/json");
request.AddHeader("Authorization", "Bearer {your_token}");
request.AddJsonBody("{"force_check":false,"contacts":["919984351847","61371989950"]}", false);
var response = await client.PostAsync(request);
Console.WriteLine("{0}", response.Content);
curl --request GET \
--url https://gate.whapi.cloud/contacts/ids/118876465958956%40lid \
--header 'accept: application/json' \
--header 'authorization: Bearer {your_token}'
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://gate.whapi.cloud/contacts/ids/118876465958956%40lid",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"accept: application/json",
"authorization: Bearer {your_token}"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}
import requests
url = "https://gate.whapi.cloud/contacts/ids/118876465958956%40lid"
headers = {
"accept": "application/json",
"authorization": "Bearer {your_token}"
}
response = requests.get(url, headers=headers)
print(response.text)
const url = 'https://gate.whapi.cloud/contacts/ids/118876465958956%40lid';
const response = await fetch(url, {
method: 'GET',
headers: {
accept: 'application/json',
authorization: 'Bearer {your_token}',
},
});
console.log(await response.text());
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://gate.whapi.cloud/contacts/ids/118876465958956%40lid")
.get()
.addHeader("accept", "application/json")
.addHeader("authorization", "Bearer {your_token}")
.build();
Response response = client.newCall(request).execute();
using RestSharp;
var options = new RestClientOptions("https://gate.whapi.cloud/contacts/ids/118876465958956%40lid");
var client = new RestClient(options);
var request = new RestRequest("");
request.AddHeader("accept", "application/json");
request.AddHeader("Authorization", "Bearer {your_token}");
var response = await client.GetAsync(request);
Console.WriteLine("{0}", response.Content);
curl --request PATCH \
--url 'https://gate.whapi.cloud/settings' \
--header 'accept: application/json' \
--header 'authorization: Bearer {your_token}' \
--header 'content-type: application/json' \
--data '
{
"callback_backoff_delay_ms": 3000,
"max_callback_backoff_delay_ms": 900000,
"callback_persist": true,
"webhooks": [
{
"headers": {
"myKey": "secret-key"
},
"mode": "body",
"events": [
{
"type": "messages",
"method": "post"
},
{
"type": "statuses",
"method": "post"
},
{
"type": "groups",
"method": "patch"
}
],
"url": ""
}
]
}
'
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://gate.whapi.cloud/settings",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PATCH",
CURLOPT_POSTFIELDS => json_encode([
'callback_backoff_delay_ms' => 3000,
'max_callback_backoff_delay_ms' => 900000,
'callback_persist' => true,
'webhooks' => [
[
'headers' => ['myKey' => 'secret-key'],
'mode' => 'body',
'events' => [
['type' => 'messages', 'method' => 'post'],
['type' => 'statuses', 'method' => 'post'],
['type' => 'groups', 'method' => 'patch']
],
'url' => ''
]
]
]),
CURLOPT_HTTPHEADER => [
"accept: application/json",
"authorization: Bearer {your_token}",
"content-type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}
import requests
url = "https://gate.whapi.cloud/settings"
payload = {
"callback_backoff_delay_ms": 3000,
"max_callback_backoff_delay_ms": 900000,
"callback_persist": True,
"webhooks": [
{
"headers": {"myKey": "secret-key"},
"mode": "body",
"events": [
{"type": "messages", "method": "post"},
{"type": "statuses", "method": "post"},
{"type": "groups", "method": "patch"}
],
"url": ""
}
]
}
headers = {
"accept": "application/json",
"authorization": "Bearer {your_token}",
"content-type": "application/json"
}
response = requests.patch(url, json=payload, headers=headers)
print(response.text)
const url = 'https://gate.whapi.cloud/settings';
const payload = {
callback_backoff_delay_ms: 3000,
max_callback_backoff_delay_ms: 900000,
callback_persist: true,
webhooks: [
{
headers: { myKey: 'secret-key' },
mode: 'body',
events: [
{ type: 'messages', method: 'post' },
{ type: 'statuses', method: 'post' },
{ type: 'groups', method: 'patch' },
],
url: '',
},
],
};
const response = await fetch(url, {
method: 'PATCH',
headers: {
accept: 'application/json',
authorization: 'Bearer {your_token}',
'content-type': 'application/json',
},
body: JSON.stringify(payload),
});
console.log(await response.text());
OkHttpClient client = new OkHttpClient();
MediaType mediaType = MediaType.parse("application/json");
RequestBody body = RequestBody.create("{\"callback_backoff_delay_ms\":3000,\"max_callback_backoff_delay_ms\":900000,\"callback_persist\":true,\"webhooks\":[{\"headers\":{\"myKey\":\"secret-key\"},\"mode\":\"body\",\"events\":[{\"type\":\"messages\",\"method\":\"post\"},{\"type\":\"statuses\",\"method\":\"post\"},{\"type\":\"groups\",\"method\":\"patch\"}],\"url\":\"\"}]}", mediaType);
Request request = new Request.Builder()
.url("https://gate.whapi.cloud/settings")
.patch(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/settings");
var client = new RestClient(options);
var request = new RestRequest("");
request.AddHeader("accept", "application/json");
request.AddHeader("Authorization", "Bearer {your_token}");
request.AddJsonBody("{\"callback_backoff_delay_ms\":3000,\"max_callback_backoff_delay_ms\":900000,\"callback_persist\":true,\"webhooks\":[{\"headers\":{\"myKey\":\"secret-key\"},\"mode\":\"body\",\"events\":[{\"type\":\"messages\",\"method\":\"post\"},{\"type\":\"statuses\",\"method\":\"post\"},{\"type\":\"groups\",\"method\":\"patch\"}],\"url\":\"\"}]}", false);
var response = await client.PatchAsync(request);
Console.WriteLine("{0}", response.Content);
Python, PHP, Node.js ve Java için kopyala-yapıştır kodlu adım adım kılavuzlar — ayrıca GitHub'da açık kaynaklı botlar, kontrolörler ve otomasyon şablonları. Bir repoyu forklayın ve daha hızlı yayınlayın. GitHub'daki 20'den fazla repoya göz atın →
Tam kılavuzumuzla aynı karar kriterleri: maliyet modeli, onboarding, özellik kapsamı ve Meta'nın Cloud API'si ile Whapi.Cloud arasındaki operasyonel dengeler.
| Meta Cloud API | Whapi.Cloud API | |
|---|---|---|
| Fiyatlandırma ve onboarding | ||
| Giden mesaj maliyet modeli | Mesaj başına ücret (kategori + pazar) | Sabit abonelik, Meta ücreti yok |
| Fiyat öngörülebilirliği | Değişken (limitler, açık artırmalar) | Öngörülebilir aylık maliyet |
| Onboarding hızı | Çok adımlı doğrulama ve şablonlar | QR tarama — ilk mesaja dakikalar içinde ulaşın |
| Mesaj şablonları | Çoğu giden mesaj için gereklidir | Gerekli değil — herkese her türlü mesajı gönderin |
| Özellikler ve erişim | ||
| WhatsApp Grupları | Sınırlı — 8 üye, kurumsal | Gruplar de API completos (1024–2048) |
| Canalar ve durumlar | Mevcut değil | Tam API erişimi |
| Numara varlığı kontrolü | Mevcut değil | Mevcut |
| Aynı numarada telefon uygulaması + API | Sınırlı birlikte kullanım | Çoklu cihaz desteği, telefon uygulaması kullanılabilir kalır |
| Yerel özellikler (kataloglar, sepetler) | Yalnızca temel mesajlaşma | Gruplar, kanallar, durumlar, kataloglar |
| Risk ve operasyonlar | ||
| İşletme kategorisi kısıtlamaları | Meta kategori engelleri | Zaten sahip olduğunuz herhangi bir numarayı kullanın |
| Mesaj moderasyonu | Meta ön/son moderasyonu | Ön moderasyon yok |
| Engelleme / kısıtlama profili | Çok adımlı kısıtlamalar | Geçici engellemeler, genellikle kurtarılabilir |
| Isındırma ve güvenlik araçları | Mevcut değil | Isındırma + Güvenlik Ölçer |
| API de VoIP / aramalar | Meta Cloud telefon hizmeti | Yalnızca REST mesajlaşma |
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.
aktif API kanalı
aylık API isteği
Roberto K. / Web Geliştirici
Martin P. / Geliştirici
Oscar T. / CTO
Aylık Faturalandırma
Yıllık Faturalandırma
Kullanım limitleri uygulanarak test ve geliştirme için tam API işlevselliği
Ayda en fazla 5 aktif konuşma
Günde en fazla 150 mesaj
Günde en fazla 30 WhatsApp numara kontrolü
Ayda en fazla 1.000 API isteği
Periyodik etkinlik gereklidir
Standart destek (önceliksiz)
Öncelikli destek ile üretim iş yükleri için stabil ve güvenilir bir hizmet
Sınırsız mesajlaşma ve medya
Gruplar, Kanallar ve Webhook’lara tam erişim
Mesaj başına ücret yok
Öncelikli canlı destek ve daha hızlı olay müdahalesi
Otomatik numara ısındırma modülü
Yerleşik araçlar ve otomasyon entegrasyonları
Uzun vadeli ve stabil üretim iş akışları için uygundur
Fiyat WhatsApp numarası başınadır. Birden fazla numara için indirim uygulanır.