Przestrzenie robocze
Klucz należy do dokładnie jednej przestrzeni roboczej. Co to oznacza dla aplikacji wielodostępnych i czym portal Bitrix24 różni się od samodzielnej przestrzeni roboczej.
Przestrzeń robocza jest właścicielem połączeń WhatsApp. API key jest wydawany dla dokładnie jednej przestrzeni roboczej, a wszystko, co klucz może zobaczyć lub zrobić, jest ograniczone do niej — nie można zapytać o żadną inną.
Jeden klucz, jedna przestrzeń robocza, wiele połączeń
W aplikacji wielodostępnej to właśnie taki model jest Państwu potrzebny:
- Jeden API key, a nie jeden na każdego najemcę. Proszę nie tworzyć klucza dla każdego klienta.
- Jedno
POST /connectionsna najemcę, łącznie z pierwszym, każde z własnym, nowymIdempotency-Key. - Zdarzenia przychodzące należy kierować według
connection_id— stabilnego identyfikatora cuid, który pojawia się w każdej odpowiedzi REST i w każdym ładunku webhooka. Proszę zmapować go na własny rekord klienta; identyfikator tworzymy my, mapowanie należy do Państwa. - Nowe połączenia są gotowe do użycia od razu. Lista połączeń klucza jest ustalana na bieżąco przy każdym żądaniu, więc po utworzeniu połączenia nie trzeba niczego odświeżać.
Dwa rodzaje przestrzeni roboczej
Samodzielna przestrzeń robocza
Tworzona podczas rejestracji na developers.wasync.app. API jest tu całym produktem: połączenia tworzy się przez REST, a każde z nich ma własną licencję.
Portal Bitrix24
Tworzony po zainstalowaniu WASync na portalu Bitrix24. Połączenia tworzy administrator portalu w WASync, a dostęp do numeru przez API jest płatnym dodatkiem.
Różnica ujawnia się dokładnie w dwóch miejscach i warto ją znać, zanim napiszą Państwo kod pod niewłaściwy rodzaj przestrzeni:
Tworzenie połączeń. POST /connections działa tylko w przestrzeni samodzielnej. Na portalu Bitrix24 zwraca 403 forbidden_portal_kind — połączenia tworzy wtedy administrator portalu w interfejsie WASync. Wszystkie pozostałe punkty końcowe działają w obu przypadkach tak samo.
Co sprawia, że połączenie jest osiągalne. W samodzielnej przestrzeni roboczej jest to licencja samego połączenia (teście lub płatna). Na portalu Bitrix24 numer w CRM opłaca subskrypcja portalu, a dostęp do tego samego numeru przez API wymaga dodatkowo dodatku API, w cenie $12 za numer miesięcznie. Bez niego połączenia po prostu nie ma w GET /connections.
Pierwsze kroki
W przypadku API key nie ma etapu początkowego: klucz jest wydawany bezpośrednio dla Państwa przestrzeni roboczej, więc POST /connections tworzy pierwsze połączenie równie łatwo jak dziesiąte.
Przyznanie dostępu OAuth2 działa inaczej — z założenia jest wydawane wyłącznie dla połączeń, które już istnieją, więc integracja oparta tylko na OAuth2 nie może utworzyć pierwszego połączenia w przestrzeni roboczej. Dlatego każdy przewodnik szybkiego startu zaczyna się od klucza.