Wow! WhatsApp entegrasyonunuzu oluşturun. Ücretsiz başlayın. Şimdi Kaydol
WhatsApp API

Erişim bitince öğrenci WhatsApp grubundan ayrılır

Erişim bitince öğrenciler grup sohbetindeki dersleri görmez. Kurs erişimi bitince backend'iniz öğrencinin hâlâ grupta olduğunu doğrulayıp onu Whapi.Cloud üzerinden çıkarabilir. Bu kullanım senaryosu, entegratörlere akışı WhatsApp API ile nasıl kuracaklarını gösterir.

Kendi backend'iniz veya bir ödeme webhook'u tetikler WhatsApp grup kimliği zaten kayıtlı
Bir öğrencinin erişimi bittiği anda WhatsApp kurs grubunun üye listesini gösteren bir telefon.
Kullanım senaryosu

Bu akışı ne zaman kullanın

Kurs kontenjanı bir WhatsApp grubudur

Kayıtlı öğrenciler bir WhatsApp grubundaysa ve geri aldığınız kontenjan o gruptaki üyelikse bu akışı kullanın.

WhatsApp grup kimliği zaten kayıtlı

WhatsApp grup kimliği zaten kayıtlıysa ve yalnızca öğrencinin listede olduğunu doğruluyorsanız bu akışı kullanın.

Erişimin bitişi kendi sistemlerinizden gelir

Kursun bittiğini backend'iniz veya bir ödeme webhook'u işaretliyorsa bu akışı kullanın.

Eski öğrencinin üye listesinde olmadığı bir WhatsApp grup bilgisini gösteren telefon.
Müşteri deneyimi

Öğrenci artık grupta değil

Otomasyondan önce süresi dolan öğrenciler grupta kalır, dersleri ve sohbeti görmeye devam eder, ücretli içerik sızar ve destek şikayet alır.

Erişim bitince öğrenci kursun WhatsApp grubunda değildir. Entegratörler bu sonucu WhatsApp API ile kurar.

Akış

Erişimin bitişinden grup çıkışına

1

Kurs erişimi bitti

Backend'iniz veya ödeme webhook'u bu öğrencinin kurs erişiminin bittiğini bildirir ve bulunduğu WhatsApp grubunu adlandırır.

2

Öğrencinin listede olduğunu doğrulayın

GET /groups/{GroupID}

getGroup kayıtlı grup kimliği için grubu ve katılımcıları döner, böylece çıkarmadan önce öğrenciyi eşlersiniz.

3

Bu katılımcıyı çıkarın

DELETE /groups/{GroupID}/participants

removeGroupParticipant eşleşen katılımcıyı çıkarır. Aynı grup kimliğini ve bu kişi kimliğini participants içinde gönderin.

Ön koşullar

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

Kanalınıza bağlı WhatsApp numarası öğrenciyi çıkaran numaradır. Her istek o numaranın API token'ını kullanır. Kanal yetkili olmalı ve numaranın katılımcı çıkarma izni olmalıdır.

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

API uygulaması

Öğrenciyi doğrulayın, sonra çıkarın

Kurs erişimi Whapi.Cloud dışında çoktan bitti. Öğrencinin hâlâ katılımcı olduğunu görmek için kayıtlı grubu okuyun, sonra o katılımcıyı gruptan çıkarın.

whapi.cloud'da kaydolduktan sonra API token'ınızı ücretsiz alın ve koddaki Your_Token yerine bu token'ı kullanın.

Öğrencinin listede olduğunu doğrulayın

Çıkarmadan önce öğrenciyi eşlemek için kayıtlı grubu ve katılımcılarını okuyun.

curl --request GET \
     --url https://gate.whapi.cloud/groups/GROUP_ID \
     --header 'accept: application/json' \
     --header 'authorization: Bearer Your_Token'
$curl = curl_init();

curl_setopt_array($curl, [
  CURLOPT_URL => "https://gate.whapi.cloud/groups/GROUP_ID",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_CUSTOMREQUEST => "GET",
  CURLOPT_HTTPHEADER => [
    "accept: application/json",
    "authorization: Bearer Your_Token"
  ],
]);

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

url = "https://gate.whapi.cloud/groups/GROUP_ID"
headers = {
    "accept": "application/json",
    "authorization": "Bearer Your_Token",
}

response = requests.get(url, headers=headers)
print(response.text)
const url = 'https://gate.whapi.cloud/groups/GROUP_ID';

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/GROUP_ID")
  .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/GROUP_ID");
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);
package main

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

func main() {
	req, _ := http.NewRequest("GET", "https://gate.whapi.cloud/groups/GROUP_ID", nil)
	req.Header.Set("accept", "application/json")
	req.Header.Set("authorization", "Bearer Your_Token")

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

Bu katılımcıyı çıkarın

Eşleşen katılımcıyı çıkarın ki kurs grubunda kalmasın.

curl --request DELETE \
     --url https://gate.whapi.cloud/groups/GROUP_ID/participants \
     --header 'accept: application/json' \
     --header 'authorization: Bearer Your_Token' \
     --header 'content-type: application/json' \
     --data '
{
  "participants": ["12345678901"]
}'
$curl = curl_init();

curl_setopt_array($curl, [
  CURLOPT_URL => "https://gate.whapi.cloud/groups/GROUP_ID/participants",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_CUSTOMREQUEST => "DELETE",
  CURLOPT_POSTFIELDS => "{\"participants\":[\"12345678901\"]}",
  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/groups/GROUP_ID/participants"
payload = {"participants": ["12345678901"]}
headers = {
    "accept": "application/json",
    "authorization": "Bearer Your_Token",
    "content-type": "application/json",
}

response = requests.delete(url, json=payload, headers=headers)
print(response.text)
const url = 'https://gate.whapi.cloud/groups/GROUP_ID/participants';

const response = await fetch(url, {
  method: 'DELETE',
  headers: {
    accept: 'application/json',
    authorization: 'Bearer Your_Token',
    'content-type': 'application/json',
  },
  body: JSON.stringify({
    participants: ['12345678901'],
  }),
});

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

MediaType mediaType = MediaType.parse("application/json");
RequestBody body = RequestBody.create(mediaType, "{\"participants\":[\"12345678901\"]}");
Request request = new Request.Builder()
  .url("https://gate.whapi.cloud/groups/GROUP_ID/participants")
  .delete(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/groups/GROUP_ID/participants");
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.AddStringBody("{\"participants\":[\"12345678901\"]}", DataFormat.Json);
var response = await client.DeleteAsync(request);

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

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

func main() {
	body := strings.NewReader(`{"participants":["12345678901"]}`)
	req, _ := http.NewRequest("DELETE", "https://gate.whapi.cloud/groups/GROUP_ID/participants", 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))
}
Bir adım bozulunca

Hataları her adımda ele alın

Erişim bittikten sonra grup yoksa, katılımcı bulunamazsa veya API çağrısı başarısız olursa öğrenci grupta kalabilir. O adımı yeniden deneyin veya ekibinize haber verin.

Erişim bitti ama öğrenci hâlâ grupta mı?

Grup olmayabilir, katılımcı bulunamayabilir veya çağrı başarısız olabilir. Öğrencinin grubu görmeye devam etmemesi için çıkarmayı yeniden deneyin veya ekibinize haber verin. Müşteriler desteğimizin hızlı yanıt verdiğini sık söyler. Yardım istemekten çekinmeyin.

Bir şey ters gittiyse destekle iletişime geçin

Sorunu API adımına göre ayırın

Durum Ne anlama gelir Ne yapmalı
400 Wrong request parameters
404 Specified group not found
500 Internal Error
Durum Ne anlama gelir Ne yapmalı
400 Wrong request parameters
401 Need channel authorization for remove participant
403 You do not have permissions for this action
404 Specified group or participant not found
500 Internal Error
SSS

Operatörlerin soruları

Çıkarmayı yeniden deneyin veya ekibinize haber verin. Grup olmayabilir, katılımcı bulunamayabilir veya API çağrısı başarısız olmuş olabilir. Bu adım başarılı olana kadar öğrenciyi çıkarılmış saymayın.
Hayır. Sonuç, öğrencinin artık WhatsApp grubunda olmamasıdır. Akış o grubun katılımcılarını okur ve bir kişiyi çıkarır.
Hayır. WhatsApp grup kimliği zaten kayıtlıdır. getGroup öğrencinin katılımcılar arasında olduğunu doğrular. removeGroupParticipant ardından o katılımcıyı çıkarır.
Hayır. Bu akış kurs erişimi bitince çalışır ve dal, gruptan çıkarmadır. Katılım isteğini onaylamaz ve davet bağlantısı göndermez.
Buna backend'iniz veya bir ödeme webhook'u karar verir. Whapi.Cloud bu olaydan sonra katılımcıyı çıkarır. Kursun bittiğine kendisi karar vermez.
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