Referensi API Pelanggan Langganan

Mendapatkan pelanggan langganan

Endpoint:

GET /v2/:page_id/subscribers?page=:page&per_page=:per_page&search=:search_query
  • Nomor halaman bawaannya adalah 1.
  • Nilai per_page bawaannya adalah 50 dan maksimumnya 100 item per halaman.
  • Kueri pencarian opsional dipakai untuk menyaring pelanggan langganan memakai alamat email atau nomor telepon.

Contoh respons

[
{
"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": []
}
]

Menambahkan pelanggan langganan

Endpoint:

POST /v1/:page_id/subscribers

Saat seseorang berlangganan, perilaku konfirmasi mengikuti pengaturan subscriberConfirmationMode halaman. Pakai autoConfirm pada endpoint ini untuk menimpa perilaku tersebut bagi satu pelanggan langganan.

Contoh permintaan

{
"email": "sarah@instatus.com",
"all": true,
"autoConfirm": false
}
  • autoConfirm — opsional. Bila true, pelanggan langganan langsung ditambahkan tanpa mengirim email konfirmasi atau sambutan, terlepas dari pengaturan halaman. Hanya Pro.

Contoh respons

{
"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"
}
}

Berlangganan komponen tertentu

Contoh permintaan

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

Contoh respons

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

Menambahkan beberapa pelanggan langganan

Endpoint:

POST /v1/:page_id/subscribers/bulk

Endpoint ini memungkinkan Anda membuat beberapa pelanggan langganan dalam satu permintaan.

Contoh permintaan

{
"subscribers": [
{
"email": "sarah@instatus.com",
"all": true
},
{
"email": "john@instatus.com",
"components": ["cl2xv23rl0119e7jlk2mweepd"]
},
{
"name": "Jane Doe",
"phone": "5417543010",
"all": true
}
],
"autoConfirm": false
}
  • autoConfirm berlaku untuk setiap pelanggan langganan dalam batch. Hanya Pro.

Contoh respons

{
"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": []
}
}

Respons saat sebagian pelanggan langganan gagal

Jika sebagian pelanggan langganan gagal dibuat (mis. email duplikat, format salah), respons akan menyertakan detail kegagalannya:

{
"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"
}
}
]
}
}

Catatan:

  • Maksimum 100 pelanggan langganan per permintaan
  • Setiap objek pelanggan langganan bisa memiliki kolom yang sama dengan endpoint pelanggan tunggal
  • Keberhasilan sebagian didukung - pelanggan langganan yang berhasil dibuat tetap dikembalikan meskipun sebagian gagal

Perilaku konfirmasi

Halaman status mengatur cara pelanggan langganan baru ditangani lewat subscriberConfirmationMode pada endpoint Memperbarui halaman status:

NilaiPerilaku
REQUIREDPelanggan langganan harus mengonfirmasi lewat email sebelum menerima pembaruan. Bawaan.
WELCOMEPelanggan langganan langsung ditambahkan dan menerima email sambutan. Hanya Pro.
NONEPelanggan langganan langsung ditambahkan tanpa email. Hanya Pro.

Parameter autoConfirm pada endpoint pembuatan menimpa pengaturan halaman untuk permintaan tersebut dan berperilaku seperti NONE.

Menghapus pelanggan langganan

Endpoint:

DELETE /v1/:page_id/subscribers/:subscriber_id

Contoh respons

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