Wyzwalacze przychodzące i integracyjne
Poza interfejsem API zgodnym z OpenAI, AiHummer akceptuje wiadomości przychodzące z łączników i platform automatyzacji oraz wysyła strumień zdarzeń po stronie serwera możesz subskrybować. Te punkty końcowe to sposób, w jaki zewnętrzne systemy przekazują pracę do bramy oraz jak interfejsy użytkownika pozostają aktywne.
Punkty końcowe przychodzące
Punkty końcowe przychodzące to sposób, w jaki łączniki kanałów i niestandardowe integracje przekazują wiadomość do silnika przetwarzania. Są chronione przez Wspólny sekret HMAC wysłany w X-AIHummer-Inbound-Secret nagłówek (AIHUMMER_INBOUND_SECRET klucz katalogu ustawień — skonfigurowany w interfejsie administracyjnym w sekcji Zarządzanie → Ustawienia lub za pomocą aihummer settings set, nie w gateway.env).
| Metoda i ścieżka | Cel |
|---|---|
POST /v1/inbound/telegram |
Rodzimy ładunek przychodzący Telegrama |
POST /v1/inbound/generic |
Ogólny inbound dla email→webhook, cron i aplikacji niestandardowych |
POST /v1/inbound/binding/status |
Zgłoś status powiązania kanału |
Ten ogólny punkt końcowy to najprostszy sposób na przesłanie dowolnego źródła do AiHummer. Wyślij małe ciało JSON z nazwą kanału, stabilnym zewnętrznym identyfikatorem oraz tekstem wiadomości:
curl https://your-aihummer.example/v1/inbound/generic \
-H "X-AIHummer-Inbound-Secret: $AIHUMMER_INBOUND_SECRET" \
-H "Content-Type: application/json" \
-d '{
"channel": "email",
"external_id": "ticket-4821",
"text": "A customer asks whether order #4821 has shipped."
}'
[!NOTE] Ogólny dyspozytor przychodzący potrzebuje domyślnej przestrzeni roboczej. Ustaw
AIHUMMER_DEFAULT_WORKSPACE_IDtak aby wiadomości przychodzące mogły być kierowane.
[!WARNING] Punkty końcowe przychodzące nie są chronione przez
ah-Klucz API — oni polegają naX-AIHummer-Inbound-SecretHMAC. Trzymaj ten sekret z dala od kodu po stronie klienta i obróć to, jeśli przecieka.
Wyzwalacze integracji (Zapier / Make)
POST /v1/integrations/trigger jest punktem wejścia dla platform automatyzacji niskokodowej, takich jak Zapier i Zrób. Punkt końcowy jest wyłączone domyślnie: aż do AIHUMMER_INBOUND_TRIGGER_SECRET gdy ustawienie jest skonfigurowane, odpowiada 501 Not Implemented. To jest oddzielny tajny, odrębny od AIHUMMER_INBOUND_SECRET; podobnie jak każdy klucz katalogu ustawień, jest ustawiany w interfejsie administracyjnym (Zarządzanie → Ustawienia) lub za pomocą aihummer settings set.
Po skonfigurowaniu punkt końcowy akceptuje albo X-AIHummer-Signature HMAC lub token Bearer w formie Authorization: Bearer <the AIHUMMER_INBOUND_TRIGGER_SECRET value>.
curl https://your-aihummer.example/v1/integrations/trigger \
-H "Authorization: Bearer $AIHUMMER_INBOUND_TRIGGER_SECRET" \
-H "Content-Type: application/json" \
-d '{
"channel": "zapier",
"external_id": "lead-99",
"text": "New lead captured from the contact form."
}'
Backend Admin Sessions
Te dwie trasy są wewnętrznym transportem zachowanym dla strony Admin Sessions. Nie stanowią obsługiwanego kanału osadzanego dla klientów.
| Metoda i ścieżka | Przeznaczenie |
|---|---|
POST /v1/web/session |
Otwórz lub ponownie dołącz rozmowę Admin Sessions |
GET /v1/web/stream |
Przesyłaj odpowiedź rozmowy strumieniem SSE |
Strumień zdarzeń
GET /v1/events/stream jest wznawialny Kanał Server-Sent Events dla zdarzeń bramki. Punkt końcowy ma dwa twarde wymagania:
- Ten
?workspace_id=<id>parametr jest obowiązkowy — bez tego wniosek jest odrzucony z400. Strażnik najemcy weryfikuje, że przestrzeń robocza należy do najemca dzwoniącego; czyjś innyworkspace_idplony403. - Wymagana jest autoryzacja — sesja administratora (ciasteczko) lub
ah-API wprowadź wAuthorization: Bearernagłówek. Bez niego odpowiedź jest401.
Podaj ?since= kursor do wznawiania od miejsca, w którym zakończyło się poprzednie połączenie, dzięki czemu ponowne połączenie nigdy nie traci zdarzeń.
# Subscribe from the beginning
curl -N -H "Authorization: Bearer ah-..." \
"https://your-aihummer.example/v1/events/stream?workspace_id=<id>"
# Resume after a known cursor
curl -N -H "Authorization: Bearer ah-..." \
"https://your-aihummer.example/v1/events/stream?workspace_id=<id>&since=<cursor>"
[!TIP] Traktuj wartość niesioną przez każde zdarzenie jako następną
sincekursor. Włączony ponownie połączyć się, odtworzyć od tego kursora, aby zagwarantować co najmniej jednokrotne dostarczenie do twojego konsument.
Dokąd dalej
- Tekst przewraca się po powierzchni OpenAI: Ukończenia czatu.
- Parowanie urządzeń, federacja SSO i powierzchnie protokołów: Webhooki, SCIM i parowanie.
- Wszystko
AIHUMMER_*gałki: Zmienne środowiskowe.