What's new, 21 October 2026: A customer who sends several messages before the bot's first reply no longer gets the opening sequence of a Chat Flow twice
WASync · Developers

Eşleştirme kodu ve QR

QR kodu her 20 saniyede bir yenilenir. Her iki yolu da sunun; çünkü tek cihazla yapılan bir kurulumda kullanıcı kendi ekranının fotoğrafını çekemez.

Eşleştirme qr bağlantıları için geçerlidir. Bir cloud_api numarası hiçbir şey taramaz ve 409 not_supported_for_provider yanıtı verir.

QR yolu

POST /connections, ilk QR'ı data-URI PNG olarak döndürür.

QR'ı her yoklamada yeniden çizin

WhatsApp eşleştirme kodunu yaklaşık 20 saniyede bir yeniler. Oluşturma yanıtındaki qr, ekranda gösterildikten birkaç saniye sonra geçersiz olur ve bu durum sessizce gerçekleşir: telefon eşleşmez ve ekranda nedenini açıklayan hiçbir şey görünmez.

status değeri "connected" olana kadar GET /connections/{id} isteğini her 3–5 saniyede bir yapın ve qr değerini her yanıtta yeniden çizin. Önbelleğe almayın ve yenilemeyi kullanıcının basması gereken bir düğmenin arkasına gizlemeyin.

Aynı kural idempotent tekrar için de geçerlidir: POST /connections, Idempotency-Replayed: true ile 200 döndürdüğünde, o yanıttaki qr depodan tekrarlanmaz, yeniden alınır. Çünkü depolanmış bir kod artık taranamaz.

Eşleştirme kodu yolu

QR için iki cihaz gerekir: onu gösteren bir ekran ve fotoğrafını çeken bir telefon. Gerçek kurulumların büyük bir kısmı tek cihazda gerçekleşir: müşteri, akışınızı WhatsApp'ın çalıştığı telefonda tamamlar ve kendi ekranının fotoğrafını çekemez. Bu kullanıcılar için QR yolu sadece zahmetli değil, imkânsızdır.

POST /connections/{id}/pairing-code
curl -X POST https://developers.wasync.app/api/v1/connections/conn_8f3a21/pairing-code \
  -H "Authorization: Bearer $WASYNC_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"phoneNumber":"40740267964"}'
200 response
{
  "code": "7S59-1KZP"
}

Müşteri WhatsApp'ı açar → Ayarlar → Bağlı cihazlar → Telefon numarasıyla bağla yolunu izler ve kodu girer.

phoneNumber, başında + olmadan E.164 biçimindedir; yalnızca rakamlardan oluşur. Başka her biçim, sizin için düzeltilmek yerine 400 { "error": "invalid_phone_number" } ile reddedilir: gönderdiğiniz numarayı sessizce değiştirmek, bir müşterinin kimsenin istemediği bir hesabı eşleştirmesine yol açar. Bağlantıyı oluştururkenki gibi whatsapp.manage kullanılır.

Eşleştirme kodu her zaman alınamayabilir; yedek olarak QR'ı bulundurun

Altyapı kod vermeyi reddedebilir. Bu bir kesinti değil, olağan bir durumdur ve genel bir 500 yerine 502 { "error": "pairing_code_unavailable" } yanıtı verir; böylece ikisini ayırt edebilir ve kullanıcıyı QR'a geri yönlendirebilirsiniz. Yalnızca eşleştirme kodu yolunu sunan bir entegrasyon, er ya da geç müşteriye ilerleyecek yolu olmayan bir ekran gösterir. İkisini de yan yana gösterin.

Yeni kod isteme

Aynı bağlantıda yeni bir kod isteyebilirsiniz: bu istek yeni bir kod döndürür ve oturumu yeniden oluşturmaz; dolayısıyla "bana başka bir kod gönder" düğmesi güvenlidir.

Sınır, bağlantı başına 15 dakikada 5 istektir; aşıldığında, uymanız gereken bir Retry-After başlığıyla birlikte 429 { "error": "rate_limited" } alırsınız. Bu sınır bürokrasi değildir: tek bir numara için tekrar tekrar kod istemek, WhatsApp'ın kötüye kullanım önleme sistemlerinin tam olarak müdahale ettiği davranıştır ve risk altındaki numara müşterinizin numarasıdır.

Ek bir şey tüketilmez

Kodla eşleştirme, QR taramayla aynı ücretli yuvayı kullanır ve aynı 7 günlük ücretsiz denemeyi başlatır: lisans, numara hangi yolla eşleşirse eşleşsin, numara gerçekten eşleştiğinde alınır.

Başarıyı izleme yöntemi de değişmez. "Kod kabul edildi" olayı yoktur; bu yüzden status değeri "connected" olana kadar GET /connections/{id} isteğini yoklayın ve/veya connection.connected webhook'unu dinleyin.

Kodlamaya değer iki ret durumu vardır:

  • 409 already_connected: oturum zaten açık, eşleştirilecek bir şey yok.
  • 409 not_supported_for_provider: bir cloud_api numarası. Eşleştirme kodları yalnızca qr için geçerlidir ve burada hiçbir zaman uygulanmaz; tekrar denemeyin.

Daha sonra yeniden eşleştirme

Bir qr oturumu kendiliğinden kopabilir. Bunu connection.disconnected size bildirir ve arayüzünüzü yönlendirmek için kullanacağınız alan needs_reconnect alanıdır. QR bu yükte bilerek yer almaz; çünkü o, tarayarak giriş yapmaya yarayan bir kimlik bilgisidir. Bu nedenle onu GET /connections/{id} isteğinden alın ve numaranın sahibine ilk kurulumdaki gibi gösterin. Bkz. Webhooks.

Bu sayfa yardımcı oldu mu?

On this page