Dokumentacja API subskrybentów

Pobierz subskrybentów

Endpoint:

GET /v2/:page_id/subscribers?page=:page&per_page=:per_page&search=:search_query
  • Domyślny numer strony to 1.
  • Domyślna wartość per_page to 50, a maksymalna to 100 elementów na stronę.
  • Opcjonalne zapytanie wyszukiwania filtruje subskrybentów po adresie e-mail lub numerze telefonu.

Przykładowa odpowiedź

[
{
"id": "cm1111x6ofgsd5666mzxcw978qh",
"email": "ali@instatus.com",
"phone": null,
"webhook": null,
"webhookEmail": null,
"confirmed": false,
"all": true,
"components": []
},
{
"id": "cm1111x6ofgsd5666mzxcw978qh",
"email": null,
"phone": "5417543010",
"webhook": null,
"webhookEmail": null,
"confirmed": false,
"all": true,
"components": []
}
]

Dodaj subskrybenta

Endpoint:

POST /v1/:page_id/subscribers

Gdy ktoś zasubskrybuje, sposób potwierdzania wynika z ustawienia subscriberConfirmationMode strony. Użyj autoConfirm w tym endpoincie, aby nadpisać to zachowanie dla pojedynczego subskrybenta.

Przykładowe żądanie

{
"email": "sarah@instatus.com",
"all": true,
"autoConfirm": false
}
  • autoConfirm — opcjonalne. Gdy true, dodaje subskrybenta od razu, bez wysyłania wiadomości potwierdzającej ani powitalnej, niezależnie od ustawienia strony. Tylko w planie Pro.

Przykładowa odpowiedź

{
"id": "cm1111x6ofgsd5666mzxcw978df",
"name": null,
"email": "sarahs@instatus.com",
"phone": null,
"confirmed": false,
"all": true,
"createdAt": "2024-10-01T03:48:41.474Z",
"updatedAt": "2024-10-01T03:48:41.474Z",
"siteId": "cm1111x6ofgsd5666mzxcw978qh",
"unsubscribeToken": "e3b51de6-1234-4664-zxyv-1679gg524260",
"webhook": null,
"webhookEmail": null,
"discord": null,
"discordTeam": null,
"slack": null,
"slackTeam": null,
"language": "en",
"company": null,
"microsoftTeamsWebhook": null,
"googleChatWebhook": null,
"googleChatSpace": null,
"failedAttempts": 0,
"approved": true,
"importedFrom": null,
"hideUnsubLink": false,
"webhookIncidentBody": null,
"webhookMaintenanceBody": null,
"webhookComponentBody": null,
"webhookHttpMethod": "POST",
"webhookHeaders": null,
"site": {
"id": "cm1111x6ofgsd5666mzxcw978qh"
}
}

Subskrypcja wybranych komponentów

Przykładowe żądanie

{
"email": "adam@instatus.com",
"all": false,
"components": ["cl2xv23rl0119e7jlk2mweepd"],
"autoConfirm": false
}

Przykładowa odpowiedź

{
"id": "cl09gt11151422bjluflghewx",
"email": "adam@instatus.com",
"site": {
"id": "ckg8a112344s5v86wrn",
"name": "Test",
"logoUrl": null,
"subdomain": "test",
"publicEmail": null,
"language": "en"
}
}

Dodaj wielu subskrybentów

Endpoint:

POST /v1/:page_id/subscribers/bulk

Ten endpoint pozwala utworzyć wielu subskrybentów w jednym żądaniu.

Przykładowe żądanie

{
"subscribers": [
{
"email": "sarah@instatus.com",
"all": true
},
{
"email": "john@instatus.com",
"components": ["cl2xv23rl0119e7jlk2mweepd"]
},
{
"name": "Jane Doe",
"phone": "5417543010",
"all": true
}
],
"autoConfirm": false
}
  • autoConfirm dotyczy każdego subskrybenta w partii. Tylko w planie Pro.

Przykładowa odpowiedź

{
"success": true,
"created": 3,
"failed": 0,
"results": {
"created": [
{
"id": "cm1111x6ofgsd5666mzxcw978df",
"email": "sarah@instatus.com",
"phone": null,
"confirmed": false,
"all": true,
"site": {
"id": "cm1111x6ofgsd5666mzxcw978qh"
}
},
{
"id": "cm2222x6ofgsd5666mzxcw978df",
"email": "john@instatus.com",
"phone": null,
"confirmed": false,
"all": false,
"site": {
"id": "cm1111x6ofgsd5666mzxcw978qh"
}
},
{
"id": "cm3333x6ofgsd5666mzxcw978df",
"email": null,
"phone": "5417543010",
"name": "Jane Doe",
"confirmed": false,
"all": true,
"site": {
"id": "cm1111x6ofgsd5666mzxcw978qh"
}
}
],
"failed": []
}
}

Odpowiedź, gdy część subskrybentów się nie powiedzie

Jeśli części subskrybentów nie uda się utworzyć (np. zduplikowany e-mail, niepoprawny format), odpowiedź będzie zawierać szczegóły niepowodzeń:

{
"success": false,
"created": 2,
"failed": 1,
"results": {
"created": [
{
"id": "cm1111x6ofgsd5666mzxcw978df",
"email": "sarah@instatus.com",
"site": {
"id": "cm1111x6ofgsd5666mzxcw978qh"
}
},
{
"id": "cm2222x6ofgsd5666mzxcw978df",
"email": "john@instatus.com",
"site": {
"id": "cm1111x6ofgsd5666mzxcw978qh"
}
}
],
"failed": [
{
"index": 2,
"subscriber": {
"email": "duplicate@instatus.com",
"all": true
},
"error": {
"code": "creation_failed",
"message": "Subscriber with this email already exists"
}
}
]
}
}

Uwagi:

  • Maksymalnie 100 subskrybentów na żądanie
  • Każdy obiekt subskrybenta może zawierać te same pola co endpoint pojedynczego subskrybenta
  • Obsługiwane jest częściowe powodzenie — poprawnie utworzeni subskrybenci są zwracani, nawet jeśli część zawiedzie

Zachowanie potwierdzeń

Strony statusu sterują obsługą nowych subskrybentów za pomocą pola subscriberConfirmationMode w endpoincie Zaktualizuj stronę statusu:

WartośćZachowanie
REQUIREDSubskrybenci muszą potwierdzić subskrypcję e-mailem, zanim zaczną otrzymywać aktualizacje. Domyślne.
WELCOMESubskrybenci są dodawani od razu i otrzymują wiadomość powitalną. Tylko w planie Pro.
NONESubskrybenci są dodawani od razu, bez wiadomości e-mail. Tylko w planie Pro.

Parametr autoConfirm w endpointach tworzenia nadpisuje ustawienie strony dla danego żądania i zachowuje się jak NONE.

Usuń subskrybenta

Endpoint:

DELETE /v1/:page_id/subscribers/:subscriber_id

Przykładowa odpowiedź

{
"id": "cm1zvzm3434dlp9255d6jgy8",
"name": null,
"email": "sarah@instatus.com",
"phone": null,
"webhook": null,
"webhookEmail": null,
"discord": null,
"microsoftTeamsWebhook": null,
"company": null,
"site": {
"id": "cm180slpo000g9343478qh"
}
}