Referensi Banger API

Gunakan Banger API untuk mengelola kotak surat, mengirim email, mengelola kontak, serta menjalankan kampanye dan Journey di ruang kerja Anda.

Hubungkan ruang kerja Anda

URL dasar: https://api.bangermail.com

Unduh OpenAPI (JSON OpenAPI 3.1 dengan operasi yang sama seperti halaman ini), untuk generator kode, klien API, dan agen AI.

Di aplikasi Banger, buka Pengaturan → Pengembang → Kelola kunci API. Pilih Buat kunci API, masukkan nama, pilih cakupan yang dibutuhkan aplikasi Anda, lalu pilih Buat kunci. Salin kunci sekarang: kunci hanya ditampilkan sekali dan tidak dapat dipulihkan.

Kunci ruang kerja memiliki format bgr_<12-character prefix>_<secret>. Tetapkan kunci Anda sebagai BANGER_API_KEY di lingkungan Anda, lalu autentikasi permintaan ruang kerja dengan:

Authorization: Bearer <workspace API key>

Rute formulir pendaftaran publik di bawah tidak memerlukan autentikasi. Setiap operasi menyatakan apakah token Bearer diperlukan. Ganti placeholder jalur seperti {workspaceId} dengan ID sumber daya Anda sebelum menjalankan contoh.

Permintaan dan respons

Respons JSON umumnya membungkus hasil dalam { data } dan kesalahan dalam { error: { code, message } }. Beberapa endpoint mengembalikan format lain atau tanpa konten; gunakan definisi respons untuk operasi tersebut.

Kirim Idempotency-Key jika tercantum dalam parameter header, dan gunakan kunci yang sama saat mengulang permintaan yang sama. Kontrak menentukan batas panjang berbeda untuk setiap operasi; ikuti tabel parameter.

Paginasi bergantung pada endpoint. Jika parameter bersama cursor dan limit muncul, kursor berupa string (hingga 1,024 karakter), dan batas default 50 dengan rentang 1–100. Endpoint lain menentukan parameter dan field respons sendiri, seperti next_cursor; ikuti skema tersebut.

Contoh dihasilkan dari contoh, default, enum, dan tipe skema dalam kontrak. Ganti nilai ilustrasi dengan data Anda. Jika skema isi atau respons tidak tersedia, hal itu ditandai di bawah.

Kemampuan ini juga tersedia bagi asisten AI melalui Server Banger MCP.

Produk

GET/v1/workspaces/{workspaceId}/products

Daftar produk ruang kerja

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Respons berhasil.

application/json

  • valueobject
  • dataarraywajib
  • Setiap itemobject
  • idstringwajib

    format: "uuid"

  • workspace_idstringwajib

    format: "uuid"

  • namestringwajib
  • slugstringwajib
  • kindstringwajib

    enum: "product", "store", "brand", "newsletter", "company", "other"

  • website_urlstring | nullwajib
  • domainsarraywajib
  • Setiap itemstring
  • descriptionstringwajib
  • contextobjectwajib
  • Properti tambahanNilai apa pun
  • brandobjectwajib
  • company_namestring

    maxLength: 160

  • logo_urlstring

    Ikon: simbol tersendiri, digunakan dalam ukuran kecil (footer email, formulir slide-in) dan sebagai header saat tidak ada logo teks.

    maxLength: 2000

  • wordmark_urlstring

    Logo teks: nama perusahaan dalam bentuk desainnya, ditampilkan sendiri di bagian atas setiap email.

    maxLength: 2000

  • website_urlstring

    maxLength: 2000

  • primary_colorstring

    maxLength: 7

  • accent_colorstring

    maxLength: 7

  • background_colorstring

    maxLength: 7

  • surface_colorstring

    maxLength: 7

  • text_colorstring

    maxLength: 7

  • muted_text_colorstring

    maxLength: 7

  • heading_font_familystring

    maxLength: 200

  • body_font_familystring

    maxLength: 200

  • tonestring

    maxLength: 1000

  • footer_addressstring

    maxLength: 500

  • email_stylestring

    maxLength: 20

  • statusstringwajib

    deleting: dihapus oleh seseorang; dapat dipulihkan hingga delete_after, lalu dihapus permanen.

    enum: "active", "archived", "deleting"

  • delete_afterstring | null

    Waktu produk berstatus deleting dihapus permanen.

    format: "date-time"

  • is_defaultbooleanwajib
  • route_readybooleanwajib
  • setuparraywajib
  • Setiap itemobject
  • keystringwajib

    enum: "context", "domain", "mailboxes", "journeys", "broadcasts", "compliance"

  • statusstringwajib

    enum: "todo", "in_progress", "complete", "not_relevant"

  • completion_sourcestring | nullwajib

    enum: "system", "person", "agent", null

  • notestringwajib
  • updated_atstring | nullwajib

    format: "date-time"

  • created_atstringwajib

    format: "date-time"

  • updated_atstringwajib

    format: "date-time"

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/products' \
  --header "Authorization: Bearer $BANGER_API_KEY"
POST/v1/workspaces/{workspaceId}/products

Buat produk

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan wajib

application/json

  • valueobject
  • namestringwajib

    minLength: 1 · maxLength: 160

  • kindstring

    default: "product" · enum: "product", "store", "brand", "newsletter", "company", "other"

  • website_urlstring | null

    maxLength: 2000

  • descriptionstring

    maxLength: 4000

  • contextobject
  • Properti tambahanNilai apa pun
  • domainsarray

    maxItems: 20

  • Setiap itemstring

    maxLength: 253

Respons berhasil 201

Respons berhasil.

application/json

  • valueobject
  • dataobjectwajib
  • idstringwajib

    format: "uuid"

  • workspace_idstringwajib

    format: "uuid"

  • namestringwajib
  • slugstringwajib
  • kindstringwajib

    enum: "product", "store", "brand", "newsletter", "company", "other"

  • website_urlstring | nullwajib
  • domainsarraywajib
  • Setiap itemstring
  • descriptionstringwajib
  • contextobjectwajib
  • Properti tambahanNilai apa pun
  • brandobjectwajib
  • company_namestring

    maxLength: 160

  • logo_urlstring

    Ikon: simbol tersendiri, digunakan dalam ukuran kecil (footer email, formulir slide-in) dan sebagai header saat tidak ada logo teks.

    maxLength: 2000

  • wordmark_urlstring

    Logo teks: nama perusahaan dalam bentuk desainnya, ditampilkan sendiri di bagian atas setiap email.

    maxLength: 2000

  • website_urlstring

    maxLength: 2000

  • primary_colorstring

    maxLength: 7

  • accent_colorstring

    maxLength: 7

  • background_colorstring

    maxLength: 7

  • surface_colorstring

    maxLength: 7

  • text_colorstring

    maxLength: 7

  • muted_text_colorstring

    maxLength: 7

  • heading_font_familystring

    maxLength: 200

  • body_font_familystring

    maxLength: 200

  • tonestring

    maxLength: 1000

  • footer_addressstring

    maxLength: 500

  • email_stylestring

    maxLength: 20

  • statusstringwajib

    deleting: dihapus oleh seseorang; dapat dipulihkan hingga delete_after, lalu dihapus permanen.

    enum: "active", "archived", "deleting"

  • delete_afterstring | null

    Waktu produk berstatus deleting dihapus permanen.

    format: "date-time"

  • is_defaultbooleanwajib
  • route_readybooleanwajib
  • setuparraywajib
  • Setiap itemobject
  • keystringwajib

    enum: "context", "domain", "mailboxes", "journeys", "broadcasts", "compliance"

  • statusstringwajib

    enum: "todo", "in_progress", "complete", "not_relevant"

  • completion_sourcestring | nullwajib

    enum: "system", "person", "agent", null

  • notestringwajib
  • updated_atstring | nullwajib

    format: "date-time"

  • created_atstringwajib

    format: "date-time"

  • updated_atstringwajib

    format: "date-time"

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/products' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "name": "example",
  "kind": "product",
  "website_url": "example",
  "description": "example",
  "context": {},
  "domains": [
    "example"
  ]
}'
GET/v1/workspaces/{workspaceId}/products/{productId}

Ambil produk

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

productId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Respons berhasil.

application/json

  • valueobject
  • dataobjectwajib
  • idstringwajib

    format: "uuid"

  • workspace_idstringwajib

    format: "uuid"

  • namestringwajib
  • slugstringwajib
  • kindstringwajib

    enum: "product", "store", "brand", "newsletter", "company", "other"

  • website_urlstring | nullwajib
  • domainsarraywajib
  • Setiap itemstring
  • descriptionstringwajib
  • contextobjectwajib
  • Properti tambahanNilai apa pun
  • brandobjectwajib
  • company_namestring

    maxLength: 160

  • logo_urlstring

    Ikon: simbol tersendiri, digunakan dalam ukuran kecil (footer email, formulir slide-in) dan sebagai header saat tidak ada logo teks.

    maxLength: 2000

  • wordmark_urlstring

    Logo teks: nama perusahaan dalam bentuk desainnya, ditampilkan sendiri di bagian atas setiap email.

    maxLength: 2000

  • website_urlstring

    maxLength: 2000

  • primary_colorstring

    maxLength: 7

  • accent_colorstring

    maxLength: 7

  • background_colorstring

    maxLength: 7

  • surface_colorstring

    maxLength: 7

  • text_colorstring

    maxLength: 7

  • muted_text_colorstring

    maxLength: 7

  • heading_font_familystring

    maxLength: 200

  • body_font_familystring

    maxLength: 200

  • tonestring

    maxLength: 1000

  • footer_addressstring

    maxLength: 500

  • email_stylestring

    maxLength: 20

  • statusstringwajib

    deleting: dihapus oleh seseorang; dapat dipulihkan hingga delete_after, lalu dihapus permanen.

    enum: "active", "archived", "deleting"

  • delete_afterstring | null

    Waktu produk berstatus deleting dihapus permanen.

    format: "date-time"

  • is_defaultbooleanwajib
  • route_readybooleanwajib
  • setuparraywajib
  • Setiap itemobject
  • keystringwajib

    enum: "context", "domain", "mailboxes", "journeys", "broadcasts", "compliance"

  • statusstringwajib

    enum: "todo", "in_progress", "complete", "not_relevant"

  • completion_sourcestring | nullwajib

    enum: "system", "person", "agent", null

  • notestringwajib
  • updated_atstring | nullwajib

    format: "date-time"

  • created_atstringwajib

    format: "date-time"

  • updated_atstringwajib

    format: "date-time"

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/products/{productId}' \
  --header "Authorization: Bearer $BANGER_API_KEY"
PATCH/v1/workspaces/{workspaceId}/products/{productId}

Perbarui produk

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

productId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan wajib

application/json

  • valueobject
  • namestring

    maxLength: 160

  • kindstring

    enum: "product", "store", "brand", "newsletter", "company", "other"

  • website_urlstring | null

    maxLength: 2000

  • descriptionstring

    maxLength: 4000

  • contextobject
  • Properti tambahanNilai apa pun
  • brandobject
  • company_namestring

    maxLength: 160

  • logo_urlstring

    Ikon: simbol tersendiri, digunakan dalam ukuran kecil (footer email, formulir slide-in) dan sebagai header saat tidak ada logo teks.

    maxLength: 2000

  • wordmark_urlstring

    Logo teks: nama perusahaan dalam bentuk desainnya, ditampilkan sendiri di bagian atas setiap email.

    maxLength: 2000

  • website_urlstring

    maxLength: 2000

  • primary_colorstring

    maxLength: 7

  • accent_colorstring

    maxLength: 7

  • background_colorstring

    maxLength: 7

  • surface_colorstring

    maxLength: 7

  • text_colorstring

    maxLength: 7

  • muted_text_colorstring

    maxLength: 7

  • heading_font_familystring

    maxLength: 200

  • body_font_familystring

    maxLength: 200

  • tonestring

    maxLength: 1000

  • footer_addressstring

    maxLength: 500

  • email_stylestring

    maxLength: 20

  • statusstring

    enum: "active", "archived"

Respons berhasil 200

Respons berhasil.

application/json

  • valueobject
  • dataobjectwajib
  • idstringwajib

    format: "uuid"

  • workspace_idstringwajib

    format: "uuid"

  • namestringwajib
  • slugstringwajib
  • kindstringwajib

    enum: "product", "store", "brand", "newsletter", "company", "other"

  • website_urlstring | nullwajib
  • domainsarraywajib
  • Setiap itemstring
  • descriptionstringwajib
  • contextobjectwajib
  • Properti tambahanNilai apa pun
  • brandobjectwajib
  • company_namestring

    maxLength: 160

  • logo_urlstring

    Ikon: simbol tersendiri, digunakan dalam ukuran kecil (footer email, formulir slide-in) dan sebagai header saat tidak ada logo teks.

    maxLength: 2000

  • wordmark_urlstring

    Logo teks: nama perusahaan dalam bentuk desainnya, ditampilkan sendiri di bagian atas setiap email.

    maxLength: 2000

  • website_urlstring

    maxLength: 2000

  • primary_colorstring

    maxLength: 7

  • accent_colorstring

    maxLength: 7

  • background_colorstring

    maxLength: 7

  • surface_colorstring

    maxLength: 7

  • text_colorstring

    maxLength: 7

  • muted_text_colorstring

    maxLength: 7

  • heading_font_familystring

    maxLength: 200

  • body_font_familystring

    maxLength: 200

  • tonestring

    maxLength: 1000

  • footer_addressstring

    maxLength: 500

  • email_stylestring

    maxLength: 20

  • statusstringwajib

    deleting: dihapus oleh seseorang; dapat dipulihkan hingga delete_after, lalu dihapus permanen.

    enum: "active", "archived", "deleting"

  • delete_afterstring | null

    Waktu produk berstatus deleting dihapus permanen.

    format: "date-time"

  • is_defaultbooleanwajib
  • route_readybooleanwajib
  • setuparraywajib
  • Setiap itemobject
  • keystringwajib

    enum: "context", "domain", "mailboxes", "journeys", "broadcasts", "compliance"

  • statusstringwajib

    enum: "todo", "in_progress", "complete", "not_relevant"

  • completion_sourcestring | nullwajib

    enum: "system", "person", "agent", null

  • notestringwajib
  • updated_atstring | nullwajib

    format: "date-time"

  • created_atstringwajib

    format: "date-time"

  • updated_atstringwajib

    format: "date-time"

Contoh curl

curl --request PATCH --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/products/{productId}' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "name": "example",
  "kind": "product",
  "website_url": "example",
  "description": "example",
  "context": {},
  "brand": {
    "company_name": "example",
    "logo_url": "example",
    "wordmark_url": "example",
    "website_url": "example",
    "primary_color": "example",
    "accent_color": "example",
    "background_color": "example",
    "surface_color": "example",
    "text_color": "example",
    "muted_text_color": "example",
    "heading_font_family": "example",
    "body_font_family": "example",
    "tone": "example",
    "footer_address": "example",
    "email_style": "example"
  },
  "status": "active"
}'
DELETE/v1/workspaces/{workspaceId}/products/{productId}

Hapus satu produk (proyek di aplikasi) setelah meninjau pratinjau penghapusannya. Produk langsung berhenti digunakan (pengirimannya berhenti) dan dapat dipulihkan selama 24 jam; lalu Banger menghapus domain pengiriman dan setiap baris miliknya. Produk aktif terakhir di ruang kerja tidak dapat dihapus. Memerlukan admin ruang kerja dan sesi yang sudah masuk; kunci API dan izin OAuth ditolak.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

productId
path · wajib
  • valuestring

    format: "uuid"

Idempotency-Key
header · wajib
  • valuestring

    minLength: 16 · maxLength: 128

Isi permintaan wajib

application/json

  • valueobject

    Tidak ada properti tambahan

  • confirm_namestringwajib

    Nama produk yang persis.

    minLength: 1 · maxLength: 160

  • preview_tokenstringwajib

    minLength: 64 · maxLength: 64

Respons berhasil 202

Produk tidak digunakan dan akan dihapus permanen pada delete_after kecuali dipulihkan lebih dulu. Pengulangan idempoten mengembalikan hasil yang sama.

application/json

  • valueobject
  • dataobjectwajib
  • idstringwajib

    format: "uuid"

  • namestringwajib
  • statusstringwajib

    enum: "deleting"

  • delete_afterstringwajib

    Waktu produk dihapus permanen; sebelum itu produk dapat dipulihkan.

    format: "date-time"

  • next_product_idstringwajib

    Produk default ruang kerja saat ini.

    format: "uuid"

  • replayedboolean

Contoh curl

curl --request DELETE --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/products/{productId}' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Idempotency-Key: examplexxxxxxxxx' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "confirm_name": "example",
  "preview_token": "examplexxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
}'
GET/v1/workspaces/{workspaceId}/products/{productId}/deletion-preview

Pratinjau penghapusan satu produk dan semua miliknya tanpa menghapus apa pun. Memerlukan admin ruang kerja, sudah masuk atau melalui OAuth yang diizinkan pengguna.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

productId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Hal yang dihapus dan dihentikan oleh penghapusan produk.

application/json

  • valueobject
  • dataobjectwajib
  • productobjectwajib
  • idstringwajib

    format: "uuid"

  • namestringwajib
  • is_defaultbooleanwajib
  • next_default_producttidak ditentukanwajib

    Produk yang menjadi default ruang kerja saat produk default dihapus.

  • oneOf 1null
  • oneOf 2object
  • idstringwajib

    format: "uuid"

  • namestringwajib
  • last_productbooleanwajib

    Satu-satunya produk aktif tidak dapat dihapus.

  • mailboxesarraywajib
  • Setiap itemobject
  • idstringwajib

    format: "uuid"

  • addressstringwajib
  • domainsarraywajib

    Domain pengiriman yang dihapus Banger setelah masa pemulihan berlalu.

  • Setiap itemobject
  • idstringwajib

    format: "uuid"

  • domainstringwajib
  • journeysintegerwajib
  • broadcastsintegerwajib
  • signup_formsintegerwajib
  • contactsintegerwajib
  • api_keysintegerwajib
  • webhooksintegerwajib
  • pending_sendsintegerwajib
  • impactarraywajib
  • Setiap itemstring
  • preview_tokenstringwajib

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/products/{productId}/deletion-preview' \
  --header "Authorization: Bearer $BANGER_API_KEY"
POST/v1/workspaces/{workspaceId}/products/{productId}/restore

Pulihkan produk yang dihapus sebelum delete_after. Kotak surat, Journey, formulir pendaftaran, webhook, dan integrasinya diaktifkan kembali; Kampanye tetap dijeda. Memerlukan admin ruang kerja, sudah masuk atau melalui OAuth yang diizinkan pengguna.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

productId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Produk aktif kembali.

application/json

  • valueobject
  • dataobjectwajib
  • idstringwajib

    format: "uuid"

  • namestringwajib
  • statusstringwajib

    enum: "active"

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/products/{productId}/restore' \
  --header "Authorization: Bearer $BANGER_API_KEY"
PUT/v1/workspaces/{workspaceId}/products/{productId}/setup/{key}

Perbarui item penyiapan produk

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

productId
path · wajib
  • valuestring

    format: "uuid"

key
path · wajib
  • valuestring

    enum: "context", "domain", "mailboxes", "journeys", "broadcasts", "compliance"

Isi permintaan wajib

application/json

  • valueobject
  • statusstringwajib

    enum: "todo", "in_progress", "complete", "not_relevant"

  • completion_sourcestring

    default: "person" · enum: "system", "person", "agent"

  • notestring

    maxLength: 1000

Respons berhasil 200

Respons berhasil.

application/json

  • valueobject
  • dataobjectwajib
  • keystringwajib

    enum: "context", "domain", "mailboxes", "journeys", "broadcasts", "compliance"

  • statusstringwajib

    enum: "todo", "in_progress", "complete", "not_relevant"

  • completion_sourcestring | nullwajib

    enum: "system", "person", "agent", null

  • notestringwajib
  • updated_atstring | nullwajib

    format: "date-time"

Contoh curl

curl --request PUT --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/products/{productId}/setup/{key}' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "status": "todo",
  "completion_source": "person",
  "note": "example"
}'
POST/v1/workspaces/{workspaceId}/products/{productId}/domains

Kaitkan domain dengan produk

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

productId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan wajib

application/json

  • valueobject
  • domainstringwajib

    minLength: 3 · maxLength: 253

Respons berhasil 201

Respons berhasil.

application/json

  • valueobject
  • dataobjectwajib
  • idstringwajib

    format: "uuid"

  • workspace_idstringwajib

    format: "uuid"

  • namestringwajib
  • slugstringwajib
  • kindstringwajib

    enum: "product", "store", "brand", "newsletter", "company", "other"

  • website_urlstring | nullwajib
  • domainsarraywajib
  • Setiap itemstring
  • descriptionstringwajib
  • contextobjectwajib
  • Properti tambahanNilai apa pun
  • brandobjectwajib
  • company_namestring

    maxLength: 160

  • logo_urlstring

    Ikon: simbol tersendiri, digunakan dalam ukuran kecil (footer email, formulir slide-in) dan sebagai header saat tidak ada logo teks.

    maxLength: 2000

  • wordmark_urlstring

    Logo teks: nama perusahaan dalam bentuk desainnya, ditampilkan sendiri di bagian atas setiap email.

    maxLength: 2000

  • website_urlstring

    maxLength: 2000

  • primary_colorstring

    maxLength: 7

  • accent_colorstring

    maxLength: 7

  • background_colorstring

    maxLength: 7

  • surface_colorstring

    maxLength: 7

  • text_colorstring

    maxLength: 7

  • muted_text_colorstring

    maxLength: 7

  • heading_font_familystring

    maxLength: 200

  • body_font_familystring

    maxLength: 200

  • tonestring

    maxLength: 1000

  • footer_addressstring

    maxLength: 500

  • email_stylestring

    maxLength: 20

  • statusstringwajib

    deleting: dihapus oleh seseorang; dapat dipulihkan hingga delete_after, lalu dihapus permanen.

    enum: "active", "archived", "deleting"

  • delete_afterstring | null

    Waktu produk berstatus deleting dihapus permanen.

    format: "date-time"

  • is_defaultbooleanwajib
  • route_readybooleanwajib
  • setuparraywajib
  • Setiap itemobject
  • keystringwajib

    enum: "context", "domain", "mailboxes", "journeys", "broadcasts", "compliance"

  • statusstringwajib

    enum: "todo", "in_progress", "complete", "not_relevant"

  • completion_sourcestring | nullwajib

    enum: "system", "person", "agent", null

  • notestringwajib
  • updated_atstring | nullwajib

    format: "date-time"

  • created_atstringwajib

    format: "date-time"

  • updated_atstringwajib

    format: "date-time"

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/products/{productId}/domains' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "domain": "example"
}'

Kotak surat

GET/v1/workspaces/{workspaceId}/mailboxes

listMailboxes

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Kotak surat yang terlihat oleh pelaku.

application/json

  • valueobject
  • dataarraywajib
  • Setiap itemobject
  • idstringwajib

    format: "uuid"

  • workspace_idstringwajib

    format: "uuid"

  • product_idstring | null

    Produk (proyek) pemilik kotak surat. Klien menggunakannya untuk mengelompokkan kotak surat dan membuat tautan aplikasi web.

    format: "uuid"

  • domain_idstring | null

    format: "uuid"

  • addressstringwajib

    format: "email"

  • display_namestringwajib
  • providerstringwajib

    enum: "gmail", "smtp"

  • statusstringwajib

    enum: "pending", "active", "suspended", "reconnect_required", "disabled"

  • status_reasonstring | null
  • suspended_atstring | null
  • mailbox_kindstringwajib

    enum: "domain", "starter"

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/mailboxes' \
  --header "Authorization: Bearer $BANGER_API_KEY"
POST/v1/workspaces/{workspaceId}/mailboxes

Buat kotak surat kerja bawaan Banger pada domain pengiriman ruang kerja.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

Idempotency-Key
header · wajib
  • valuestring

    minLength: 16 · maxLength: 128

Isi permintaan wajib

application/json

  • valueobject

    Tidak ada properti tambahan

  • domain_idstringwajib

    format: "uuid"

  • local_partstringwajib

    minLength: 1 · maxLength: 64

  • display_namestring

    maxLength: 200

Respons berhasil 200

Pengulangan idempoten pembuatan kotak surat bawaan.

application/json

  • valueobject
  • dataobjectwajib
  • idstringwajib

    format: "uuid"

  • workspace_idstringwajib

    format: "uuid"

  • product_idstring | null

    Produk (proyek) pemilik kotak surat. Klien menggunakannya untuk mengelompokkan kotak surat dan membuat tautan aplikasi web.

    format: "uuid"

  • domain_idstring | null

    format: "uuid"

  • addressstringwajib

    format: "email"

  • display_namestringwajib
  • providerstringwajib

    enum: "gmail", "smtp"

  • statusstringwajib

    enum: "pending", "active", "suspended", "reconnect_required", "disabled"

  • status_reasonstring | null
  • suspended_atstring | null
  • mailbox_kindstringwajib

    enum: "domain", "starter"

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/mailboxes' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Idempotency-Key: examplexxxxxxxxx' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "domain_id": "00000000-0000-4000-8000-000000000001",
  "local_part": "example",
  "display_name": "example"
}'
GET/v1/workspaces/{workspaceId}/mailboxes/{mailboxId}/deletion-preview

Pratinjau penghapusan permanen kotak surat dan alur pengiriman yang bergantung padanya. Memerlukan admin ruang kerja dan cakupan produk.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

mailboxId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Kotak surat yang persis dan dampak penghapusan saat ini, tanpa menghapus apa pun.

application/json

  • valueobject
  • dataobjectwajib
  • mailboxobjectwajib
  • idstringwajib

    format: "uuid"

  • addressstringwajib
  • providerstringwajib
  • domain_idstring | nullwajib

    format: "uuid"

  • provider_connection_idstring | nullwajib

    format: "uuid"

  • messagesintegerwajib
  • draftsintegerwajib
  • pending_sendsintegerwajib
  • broadcastsarraywajib
  • Setiap itemobject
  • idstringwajib

    format: "uuid"

  • namestringwajib
  • statusstringwajib
  • journeysarraywajib
  • Setiap itemobject
  • idstringwajib

    format: "uuid"

  • namestringwajib
  • statusstringwajib
  • signup_formsarraywajib
  • Setiap itemobject
  • idstringwajib

    format: "uuid"

  • namestringwajib
  • statusstringwajib
  • impactarraywajib
  • Setiap itemstring
  • preview_tokenstringwajib

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/mailboxes/{mailboxId}/deletion-preview' \
  --header "Authorization: Bearer $BANGER_API_KEY"
PATCH/v1/workspaces/{workspaceId}/mailboxes/{mailboxId}

Tetapkan nama pengirim yang dilihat penerima pada email dari satu kotak surat Banger ("Name <address>"). Kotak surat Gmail mempertahankan nama yang ditetapkan di Gmail. Memerlukan admin ruang kerja.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

mailboxId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan wajib

application/json

  • valueobject

    Tidak ada properti tambahan

  • display_namestringwajib

    Satu baris. Jika kosong, hanya alamat yang dikirim.

    maxLength: 200

Respons berhasil 200

Kotak surat beserta nama pengirimnya.

application/json

  • valueobject
  • dataobjectwajib
  • idstringwajib

    format: "uuid"

  • workspace_idstringwajib

    format: "uuid"

  • product_idstring | null

    Produk (proyek) pemilik kotak surat. Klien menggunakannya untuk mengelompokkan kotak surat dan membuat tautan aplikasi web.

    format: "uuid"

  • domain_idstring | null

    format: "uuid"

  • addressstringwajib

    format: "email"

  • display_namestringwajib
  • providerstringwajib

    enum: "gmail", "smtp"

  • statusstringwajib

    enum: "pending", "active", "suspended", "reconnect_required", "disabled"

  • status_reasonstring | null
  • suspended_atstring | null
  • mailbox_kindstringwajib

    enum: "domain", "starter"

Contoh curl

curl --request PATCH --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/mailboxes/{mailboxId}' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "display_name": "example"
}'
DELETE/v1/workspaces/{workspaceId}/mailboxes/{mailboxId}

Hapus permanen satu kotak surat, dengan mempertahankan domain dan kotak surat lain. Memerlukan admin ruang kerja dan cakupan produk.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

mailboxId
path · wajib
  • valuestring

    format: "uuid"

Idempotency-Key
header · wajib
  • valuestring

    minLength: 16 · maxLength: 128

Isi permintaan wajib

application/json

  • valueobject

    Tidak ada properti tambahan

  • confirm_addressstringwajib

    minLength: 3 · maxLength: 320

  • preview_tokenstringwajib

    minLength: 64 · maxLength: 64

Respons berhasil 200

Dihapus atau pengulangan idempoten. File tersimpan masuk antrean pembersihan permanen.

application/json

  • valueobject
  • dataobjectwajib
  • idstringwajib

    format: "uuid"

  • addressstringwajib
  • deletedbooleanwajib
  • replayedboolean

Contoh curl

curl --request DELETE --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/mailboxes/{mailboxId}' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Idempotency-Key: examplexxxxxxxxx' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "confirm_address": "example",
  "preview_token": "examplexxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
}'
POST/v1/workspaces/{workspaceId}/mailboxes/starter

Buat kotak surat yang dihosting dan dibatasi pada kotak masuk yang dihosting di produk yang sama serta penerima pendaftaran ruang kerja.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

Idempotency-Key
header · wajib
  • valuestring

    minLength: 16 · maxLength: 128

Isi permintaan wajib

application/json

  • valueobject

    Tidak ada properti tambahan

  • create_newboolean

    Buat kotak surat tambahan yang dihosting alih-alih melanjutkan kotak surat awal.

  • local_partstring

    Nama sebelum @bangermail.com. Tanpanya, kotak surat mendapat nama berupa kata seperti quiet-maple-harbor.

    minLength: 3 · maxLength: 40

  • display_namestring

    maxLength: 200

Respons berhasil 200

Pengulangan idempoten pembuatan identitas awal.

application/json

  • valueobject
  • dataobjectwajib
  • idstringwajib

    format: "uuid"

  • workspace_idstringwajib

    format: "uuid"

  • product_idstring | null

    Produk (proyek) pemilik kotak surat. Klien menggunakannya untuk mengelompokkan kotak surat dan membuat tautan aplikasi web.

    format: "uuid"

  • domain_idstring | null

    format: "uuid"

  • addressstringwajib

    format: "email"

  • display_namestringwajib
  • providerstringwajib

    enum: "gmail", "smtp"

  • statusstringwajib

    enum: "pending", "active", "suspended", "reconnect_required", "disabled"

  • status_reasonstring | null
  • suspended_atstring | null
  • mailbox_kindstringwajib

    enum: "domain", "starter"

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/mailboxes/starter' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Idempotency-Key: examplexxxxxxxxx' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "create_new": true,
  "local_part": "example",
  "display_name": "example"
}'
POST/v1/workspaces/{workspaceId}/mailboxes/{mailboxId}/reactivate

Lanjutkan kotak surat yang dijeda karena reputasi pengirim, sesuai aturan pelanjutan mandiri resumeSending.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

mailboxId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan wajib

application/json

  • valueobject

    Tidak ada properti tambahan

  • acknowledge_recipient_complaintbooleanwajib

    const: true

  • reasonstring

    Alasan pengiriman dipulihkan; dicatat dalam log audit.

    maxLength: 500

Respons berhasil 200

Kotak surat diaktifkan kembali, atau sudah aktif setelah permintaan sebelumnya berhasil.

application/json

  • valueobject
  • dataobjectwajib
  • idstringwajib

    format: "uuid"

  • workspace_idstringwajib

    format: "uuid"

  • product_idstring | null

    Produk (proyek) pemilik kotak surat. Klien menggunakannya untuk mengelompokkan kotak surat dan membuat tautan aplikasi web.

    format: "uuid"

  • domain_idstring | null

    format: "uuid"

  • addressstringwajib

    format: "email"

  • display_namestringwajib
  • providerstringwajib

    enum: "gmail", "smtp"

  • statusstringwajib

    enum: "pending", "active", "suspended", "reconnect_required", "disabled"

  • status_reasonstring | null
  • suspended_atstring | null
  • mailbox_kindstringwajib

    enum: "domain", "starter"

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/mailboxes/{mailboxId}/reactivate' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "acknowledge_recipient_complaint": true,
  "reason": "example"
}'

Draf

GET/v1/workspaces/{workspaceId}/drafts

listDrafts

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

mailbox_id
query
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Respons berhasil.

application/json

  • valueobject
  • dataarraywajib
  • Setiap itemobject
  • idstringwajib

    format: "uuid"

  • mailbox_idstringwajib

    format: "uuid"

  • thread_idstring | nullwajib

    format: "uuid"

  • versionintegerwajib
  • toarraywajib
  • Setiap itemobject
  • emailstringwajib
  • namestring
  • ccarraywajib
  • Setiap itemobject
  • emailstringwajib
  • namestring
  • bccarraywajib
  • Setiap itemobject
  • emailstringwajib
  • namestring
  • subjectstringwajib
  • body_textstringwajib
  • statusstringwajib
  • created_atstringwajib

    format: "date-time"

  • updated_atstringwajib

    format: "date-time"

  • attachmentsarraywajib
  • Setiap itemobject
  • idstringwajib

    format: "uuid"

  • filenamestringwajib
  • content_typestringwajib
  • size_bytesintegerwajib
  • sha256string
  • created_atstring

    format: "date-time"

  • body_html_urlstring

    format: "uri"

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/drafts?mailbox_id=00000000-0000-4000-8000-000000000001' \
  --header "Authorization: Bearer $BANGER_API_KEY"
POST/v1/workspaces/{workspaceId}/drafts

createDraft

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan wajib

application/json

  • valueobject

    Tidak ada properti tambahan

  • mailbox_idstringwajib

    format: "uuid"

  • thread_idstring

    format: "uuid"

  • toarray

    maxItems: 500

  • Setiap itemobject
  • namestring
  • emailstringwajib

    format: "email"

  • ccarray

    maxItems: 500

  • Setiap itemobject
  • namestring
  • emailstringwajib

    format: "email"

  • bccarray

    maxItems: 500

  • Setiap itemobject
  • namestring
  • emailstringwajib

    format: "email"

  • subjectstring

    maxLength: 10000

  • body_textstring

    maxLength: 2000000

  • body_htmlstring

    maxLength: 2000000

Respons berhasil 201

Respons berhasil.

application/json

  • valueobject
  • dataobjectwajib
  • idstringwajib

    format: "uuid"

  • mailbox_idstringwajib

    format: "uuid"

  • thread_idstring | nullwajib

    format: "uuid"

  • versionintegerwajib
  • toarraywajib
  • Setiap itemobject
  • emailstringwajib
  • namestring
  • ccarraywajib
  • Setiap itemobject
  • emailstringwajib
  • namestring
  • bccarraywajib
  • Setiap itemobject
  • emailstringwajib
  • namestring
  • subjectstringwajib
  • body_textstringwajib
  • statusstringwajib
  • created_atstringwajib

    format: "date-time"

  • updated_atstringwajib

    format: "date-time"

  • attachmentsarraywajib
  • Setiap itemobject
  • idstringwajib

    format: "uuid"

  • filenamestringwajib
  • content_typestringwajib
  • size_bytesintegerwajib
  • sha256string
  • created_atstring

    format: "date-time"

  • body_html_urlstring

    format: "uri"

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/drafts' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "mailbox_id": "00000000-0000-4000-8000-000000000001",
  "thread_id": "00000000-0000-4000-8000-000000000001",
  "to": [
    {
      "name": "example",
      "email": "person@example.com"
    }
  ],
  "cc": [
    {
      "name": "example",
      "email": "person@example.com"
    }
  ],
  "bcc": [
    {
      "name": "example",
      "email": "person@example.com"
    }
  ],
  "subject": "example",
  "body_text": "example",
  "body_html": "example"
}'
GET/v1/workspaces/{workspaceId}/drafts/{draftId}

getDraft

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

draftId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Performa keterkiriman, kondisi, dan insiden kanonis.

application/json

  • valueobject
  • dataobjectwajib
  • idstringwajib

    format: "uuid"

  • mailbox_idstringwajib

    format: "uuid"

  • thread_idstring | nullwajib

    format: "uuid"

  • versionintegerwajib
  • toarraywajib
  • Setiap itemobject
  • emailstringwajib
  • namestring
  • ccarraywajib
  • Setiap itemobject
  • emailstringwajib
  • namestring
  • bccarraywajib
  • Setiap itemobject
  • emailstringwajib
  • namestring
  • subjectstringwajib
  • body_textstringwajib
  • statusstringwajib
  • created_atstringwajib

    format: "date-time"

  • updated_atstringwajib

    format: "date-time"

  • attachmentsarraywajib
  • Setiap itemobject
  • idstringwajib

    format: "uuid"

  • filenamestringwajib
  • content_typestringwajib
  • size_bytesintegerwajib
  • sha256string
  • created_atstring

    format: "date-time"

  • body_html_urlstring

    format: "uri"

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/drafts/{draftId}' \
  --header "Authorization: Bearer $BANGER_API_KEY"
PUT/v1/workspaces/{workspaceId}/drafts/{draftId}

updateDraft

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

draftId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan wajib

application/json

  • valuetidak ditentukan
  • allOf 1object

    Tidak ada properti tambahan

  • mailbox_idstringwajib

    format: "uuid"

  • thread_idstring

    format: "uuid"

  • toarray

    maxItems: 500

  • Setiap itemobject
  • namestring
  • emailstringwajib

    format: "email"

  • ccarray

    maxItems: 500

  • Setiap itemobject
  • namestring
  • emailstringwajib

    format: "email"

  • bccarray

    maxItems: 500

  • Setiap itemobject
  • namestring
  • emailstringwajib

    format: "email"

  • subjectstring

    maxLength: 10000

  • body_textstring

    maxLength: 2000000

  • body_htmlstring

    maxLength: 2000000

  • allOf 2object
  • versionintegerwajib

    minimum: 1

Respons berhasil 200

Respons berhasil.

application/json

  • valueobject
  • dataobjectwajib
  • idstringwajib

    format: "uuid"

  • mailbox_idstringwajib

    format: "uuid"

  • thread_idstring | nullwajib

    format: "uuid"

  • versionintegerwajib
  • toarraywajib
  • Setiap itemobject
  • emailstringwajib
  • namestring
  • ccarraywajib
  • Setiap itemobject
  • emailstringwajib
  • namestring
  • bccarraywajib
  • Setiap itemobject
  • emailstringwajib
  • namestring
  • subjectstringwajib
  • body_textstringwajib
  • statusstringwajib
  • created_atstringwajib

    format: "date-time"

  • updated_atstringwajib

    format: "date-time"

  • attachmentsarraywajib
  • Setiap itemobject
  • idstringwajib

    format: "uuid"

  • filenamestringwajib
  • content_typestringwajib
  • size_bytesintegerwajib
  • sha256string
  • created_atstring

    format: "date-time"

  • body_html_urlstring

    format: "uri"

Contoh curl

curl --request PUT --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/drafts/{draftId}' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "mailbox_id": "00000000-0000-4000-8000-000000000001",
  "thread_id": "00000000-0000-4000-8000-000000000001",
  "to": [
    {
      "name": "example",
      "email": "person@example.com"
    }
  ],
  "cc": [
    {
      "name": "example",
      "email": "person@example.com"
    }
  ],
  "bcc": [
    {
      "name": "example",
      "email": "person@example.com"
    }
  ],
  "subject": "example",
  "body_text": "example",
  "body_html": "example",
  "version": 1
}'
DELETE/v1/workspaces/{workspaceId}/drafts/{draftId}

deleteDraft

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

draftId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 204

Draf dan objek yang dirujuk dijadwalkan untuk dihapus.

Tanpa isi respons.

Contoh curl

curl --request DELETE --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/drafts/{draftId}' \
  --header "Authorization: Bearer $BANGER_API_KEY"
POST/v1/workspaces/{workspaceId}/drafts/{draftId}/send

sendDraft

Kirim draf dari kotak suratnya, yang harus dapat diakses pemanggil. Pemanggil yang pengirimannya perlu persetujuan mendapat persetujuan tertunda; seseorang yang dapat mengirim draf langsung akan memutuskannya.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

draftId
path · wajib
  • valuestring

    format: "uuid"

Idempotency-Key
header · wajib
  • valuestring

    minLength: 16 · maxLength: 128

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 202

Pengiriman masuk antrean atau menunggu persetujuan.

application/json

  • valueobject
  • datatidak ditentukanwajib
  • oneOf 1object
  • idstringwajib

    format: "uuid"

  • typestringwajib
  • statusstringwajib

    enum: "accepted", "executing", "succeeded", "failed"

  • workspace_revisionintegerwajib

    format: "int64"

  • created_atstringwajib

    format: "date-time"

  • oneOf 2object

    Tidak ada properti tambahan

  • approvalobjectwajib
  • idstringwajib

    format: "uuid"

  • requested_by_actor_idstringwajib
  • action_kindstringwajib
  • summarystringwajib
  • capability_scopesarraywajib
  • Setiap itemstring
  • resource_scopeobjectwajib
  • Properti tambahanarray
  • Setiap itemstring

    Penumpukan lebih lanjut dihilangkan

  • payloadobjectwajib
  • Properti tambahanNilai apa pun
  • payload_sha256stringwajib

    pattern: "^[0-9a-f]{64}$"

  • statusstringwajib

    enum: "pending", "approved", "rejected", "cancelled", "expired"

  • missedbooleanwajib
  • expires_atstringwajib

    format: "date-time"

  • decided_by_actor_idstring | null
  • decision_reasonstring | null
  • created_atstringwajib

    format: "date-time"

  • updated_atstringwajib

    format: "date-time"

  • decided_atstring | null

    format: "date-time"

  • execution_job_idstring

    format: "uuid"

  • reviewobject

    Tidak ada properti tambahan

  • dispositionstringwajib

    enum: "automatic", "human_required"

  • recipient_countinteger | nullwajib

    minimum: 0

  • reasonsarraywajib
  • Setiap itemstring

    Penumpukan lebih lanjut dihilangkan

  • checksarraywajib
  • Setiap itemstring

    Penumpukan lebih lanjut dihilangkan

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/drafts/{draftId}/send' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Idempotency-Key: examplexxxxxxxxx'
POST/v1/workspaces/{workspaceId}/drafts/{draftId}/attachments

uploadDraftAttachment

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

draftId
path · wajib
  • valuestring

    format: "uuid"

X-Banger-Filename
header · wajib
  • valuestring

    minLength: 1 · maxLength: 500

Isi permintaan wajib

application/octet-stream

  • valuestring

    format: "binary" · maxLength: 26214400

Respons berhasil 201

Respons berhasil.

application/json

  • valueobject
  • dataobjectwajib
  • idstringwajib

    format: "uuid"

  • filenamestringwajib
  • content_typestringwajib
  • size_bytesintegerwajib
  • sha256string
  • created_atstring

    format: "date-time"

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/drafts/{draftId}/attachments' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'X-Banger-Filename: example' \
  --header 'Content-Type: application/octet-stream' \
  --data-binary @request-body
DELETE/v1/workspaces/{workspaceId}/drafts/{draftId}/attachments/{attachmentId}

deleteDraftAttachment

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

draftId
path · wajib
  • valuestring

    format: "uuid"

attachmentId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 204

Lampiran dijadwalkan untuk penghapusan B2 yang memperhitungkan versi.

Tanpa isi respons.

Contoh curl

curl --request DELETE --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/drafts/{draftId}/attachments/{attachmentId}' \
  --header "Authorization: Bearer $BANGER_API_KEY"
GET/v1/workspaces/{workspaceId}/drafts/{draftId}/html

Baca isi HTML draf

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

draftId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

HTML draf.

text/html

  • valuestring

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/drafts/{draftId}/html' \
  --header "Authorization: Bearer $BANGER_API_KEY"

Pengiriman

GET/v1/workspaces/{workspaceId}/send-intents

listSendIntents

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

limit
query
  • valueinteger

    minimum: 1 · maximum: 100 · default: 50

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Pengiriman kanonis terbaru dan status penyedianya.

application/json

  • valueobject
  • dataarraywajib
  • Setiap itemobject

    Tidak ada properti tambahan

  • idstringwajib

    format: "uuid"

  • statusstringwajib

    enum: "accepted", "scheduled", "queued", "executing", "partially_succeeded", "succeeded", "failed", "canceled"

  • traffic_classstringwajib

    enum: "mailbox", "product", "broadcast"

  • recipient_countintegerwajib

    minimum: 1

  • provider_keystringwajib
  • provider_statestringwajib

    enum: "pending", "leased", "submitted", "accepted", "ambiguous", "reconciling", "succeeded", "failed", "canceled"

  • provider_message_idstring | null
  • error_codestring | null
  • created_atstringwajib

    format: "date-time"

  • updated_atstringwajib

    format: "date-time"

  • completed_atstring | null

    format: "date-time"

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/send-intents?limit=50' \
  --header "Authorization: Bearer $BANGER_API_KEY"
GET/v1/workspaces/{workspaceId}/send-intents/{sendIntentId}

getSendIntent

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

sendIntentId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Status pengiriman asinkron kanonis.

application/json

  • valueobject
  • dataobjectwajib

    Tidak ada properti tambahan

  • idstringwajib

    format: "uuid"

  • statusstringwajib

    enum: "accepted", "scheduled", "queued", "executing", "partially_succeeded", "succeeded", "failed", "canceled"

  • traffic_classstringwajib

    enum: "mailbox", "product", "broadcast"

  • recipient_countintegerwajib

    minimum: 1

  • provider_keystringwajib
  • provider_statestringwajib

    enum: "pending", "leased", "submitted", "accepted", "ambiguous", "reconciling", "succeeded", "failed", "canceled"

  • provider_message_idstring | null
  • error_codestring | null
  • created_atstringwajib

    format: "date-time"

  • updated_atstringwajib

    format: "date-time"

  • completed_atstring | null

    format: "date-time"

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/send-intents/{sendIntentId}' \
  --header "Authorization: Bearer $BANGER_API_KEY"

Pengiriman transaksional

GET/v1/workspaces/{workspaceId}/transactional-sends

listTransactionalSends

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

limit
query
  • valueinteger

    minimum: 1 · maximum: 500 · default: 200

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Respons berhasil.

application/json

  • valueobject
  • dataarraywajib
  • Setiap itemobject
  • idstringwajib

    format: "uuid"

  • mailbox_idstring | nullwajib

    format: "uuid"

  • command_idstring | nullwajib

    format: "uuid"

  • statusstringwajib
  • command_statusstring | nullwajib
  • subjectstring
  • recipientsarray
  • Setiap itemobject
  • emailstringwajib
  • namestring
  • recipient_countintegerwajib
  • error_codestring | null
  • send_intent_idstring

    format: "uuid"

  • providerstring | null
  • route_kindstring | null
  • sourcestring
  • from_addressstring
  • recipient_statesobject
  • Properti tambahaninteger
  • provider_message_idstring | null
  • languagetidak ditentukan

    Bahasa pengiriman email ini; null jika tidak diterjemahkan.

  • anyOf 1object

    Bahasa email yang diterima seseorang. Hanya email terjemahan (konten terkelola) yang memilikinya.

  • localestringwajib

    Tag BCP 47 bahasa penulisan email.

  • requested_localestring

    Hanya ada pada pengiriman lama dalam bahasa lain: bahasa yang seharusnya diterima orang tersebut.

  • fallback_reasonstring

    enum: "translation_missing", "translation_pending", "translation_review_required", "translation_failed", "translation_timeout"

  • anyOf 2null
  • journeyobject | null

    Langkah dan pendaftaran Journey yang mengirim email ini; null untuk pengiriman lain.

  • journey_idstringwajib

    format: "uuid"

  • step_idstringwajib

    format: "uuid"

  • enrollment_idstringwajib

    format: "uuid"

  • experimentobject | null

    Varian eksperimen email ini; null jika tidak ada yang berlaku.

  • experiment_idstringwajib

    format: "uuid"

  • variant_keystringwajib
  • created_atstringwajib

    format: "date-time"

  • updated_atstringwajib

    format: "date-time"

  • completed_atstring | nullwajib

    format: "date-time"

  • template_idstring | null

    format: "uuid"

  • template_versioninteger | null
  • workspace_revisioninteger | null
  • command_resultobject
  • Properti tambahanNilai apa pun
  • command_started_atstring | null

    format: "date-time"

  • command_completed_atstring | null

    format: "date-time"

  • body_textstring
  • body_htmlstring
  • reply_toarray
  • Setiap itemobject
  • emailstringwajib
  • namestring
  • headersobject
  • Properti tambahanstring
  • tagsarray
  • Setiap itemobject
  • namestringwajib
  • valuestringwajib

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/transactional-sends?limit=200' \
  --header "Authorization: Bearer $BANGER_API_KEY"
POST/v1/workspaces/{workspaceId}/transactional-sends

createTransactionalSend

Satu penerima per pengiriman Journey. To menerima satu penerima dalam bentuk RecipientInput apa pun ("a@example.com", "Pat <a@example.com>", { email, name }, atau daftar satu elemen); Cc dan Bcc harus kosong. reply_to default ke kotak surat Journey (daftar kosong juga berarti default); email Produk memerlukan tepat satu. Journey API baru default ke konten sumber terkelola; Journey kode lama tetap mengirim konten lengkap. Penolakan (4xx) tidak meninggalkan apa pun yang dibekukan untuk penerima, sehingga panggilan yang diperbaiki dengan kunci idempotensi baru akan mengirim.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

Idempotency-Key
header · wajib
  • valuestring

    minLength: 16 · maxLength: 128

Isi permintaan wajib

application/json

  • valueobject
  • mailbox_idstringwajib

    format: "uuid"

  • totidak ditentukanwajib

    Penerima untuk to, cc, bcc, dan reply_to: alamat ("a@example.com" atau "Pat <a@example.com>"), objek { email, name }, atau daftar yang mencampur keduanya. Banger menyimpannya sebagai objek { email, name } dengan email berhuruf kecil. Hash idempotensi mencakup isi sebagaimana dikirim, jadi ulangi dengan bentuk yang sama.

  • oneOf 1string

    minLength: 3 · maxLength: 1000

  • oneOf 2object
  • namestring
  • emailstringwajib

    format: "email"

  • oneOf 3array

    maxItems: 500

  • Setiap itemtidak ditentukan
  • oneOf 1string

    minLength: 3 · maxLength: 1000

  • oneOf 2object
  • namestring
  • emailstringwajib

    format: "email"

  • ccarray

    maxItems: 0

  • Setiap itemobject
  • namestring
  • emailstringwajib

    format: "email"

  • bccarray

    maxItems: 0

  • Setiap itemobject
  • namestring
  • emailstringwajib

    format: "email"

  • subjectstring

    maxLength: 10000

  • expires_atstring

    Buang pengiriman Journey yang ditunda setelah waktu ini; paling lama tujuh hari dari permintaan awal.

    format: "date-time"

  • expires_after_secondsinteger

    minimum: 1 · maximum: 604800

  • body_textstring

    maxLength: 2000000

  • body_htmlstring

    maxLength: 2000000

  • reply_totidak ditentukan

    Penerima untuk to, cc, bcc, dan reply_to: alamat ("a@example.com" atau "Pat <a@example.com>"), objek { email, name }, atau daftar yang mencampur keduanya. Banger menyimpannya sebagai objek { email, name } dengan email berhuruf kecil. Hash idempotensi mencakup isi sebagaimana dikirim, jadi ulangi dengan bentuk yang sama.

  • oneOf 1string

    minLength: 3 · maxLength: 1000

  • oneOf 2object
  • namestring
  • emailstringwajib

    format: "email"

  • oneOf 3array

    maxItems: 500

  • Setiap itemtidak ditentukan
  • oneOf 1string

    minLength: 3 · maxLength: 1000

  • oneOf 2object
  • namestring
  • emailstringwajib

    format: "email"

  • headersobject
  • Properti tambahanstring

    maxLength: 5000

  • tagsarray

    maxItems: 49

  • Setiap itemobject

    Tidak ada properti tambahan

  • namestringwajib

    minLength: 1 · maxLength: 256

  • valuestringwajib

    minLength: 1 · maxLength: 256

Respons berhasil 202

Respons berhasil.

application/json

  • valueobject
  • dataobjectwajib
  • action_kindstringwajib

    enum: "transactional.send"

  • idstring

    format: "uuid"

  • send_intent_idstring

    format: "uuid"

  • provider_attempt_idstring

    format: "uuid"

  • statusstringwajib

    Status sent/queued dari pengiriman, atau untuk permintaan yang dibekukan: deferred (dijadwalkan oleh kebijakan atau menunggu terjemahan), processing (sedang dikirim), discarded.

  • replayedboolean
  • journeytidak ditentukanwajib
  • anyOf 1object
  • journey_idstringwajib

    format: "uuid"

  • enrollment_idstringwajib

    format: "uuid"

  • step_idstringwajib

    format: "uuid"

  • step_positionintegerwajib
  • originstring

    enum: "journey"

  • journey_identitystring
  • anyOf 2null
  • ignored_variablesarraywajib
  • Setiap itemstring
  • scheduled_atstring

    format: "date-time"

  • reasonstring
  • communication_reservation_idstring

    format: "uuid"

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/transactional-sends' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Idempotency-Key: examplexxxxxxxxx' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "mailbox_id": "00000000-0000-4000-8000-000000000001",
  "to": "example",
  "cc": [
    {
      "name": "example",
      "email": "person@example.com"
    }
  ],
  "bcc": [
    {
      "name": "example",
      "email": "person@example.com"
    }
  ],
  "subject": "example",
  "expires_at": "2026-01-01T00:00:00Z",
  "expires_after_seconds": 1,
  "body_text": "example",
  "body_html": "example",
  "reply_to": "example",
  "headers": {},
  "tags": [
    {
      "name": "example",
      "value": "example"
    }
  ]
}'
GET/v1/workspaces/{workspaceId}/transactional-sends/{transactionalSendId}

getTransactionalSend

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

transactionalSendId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Respons berhasil.

application/json

  • valueobject
  • dataobjectwajib
  • idstringwajib

    format: "uuid"

  • mailbox_idstring | nullwajib

    format: "uuid"

  • command_idstring | nullwajib

    format: "uuid"

  • statusstringwajib
  • command_statusstring | nullwajib
  • subjectstring
  • recipientsarray
  • Setiap itemobject
  • emailstringwajib
  • namestring
  • recipient_countintegerwajib
  • error_codestring | null
  • send_intent_idstring

    format: "uuid"

  • providerstring | null
  • route_kindstring | null
  • sourcestring
  • from_addressstring
  • recipient_statesobject
  • Properti tambahaninteger
  • provider_message_idstring | null
  • languagetidak ditentukan

    Bahasa pengiriman email ini; null jika tidak diterjemahkan.

  • anyOf 1object

    Bahasa email yang diterima seseorang. Hanya email terjemahan (konten terkelola) yang memilikinya.

  • localestringwajib

    Tag BCP 47 bahasa penulisan email.

  • requested_localestring

    Hanya ada pada pengiriman lama dalam bahasa lain: bahasa yang seharusnya diterima orang tersebut.

  • fallback_reasonstring

    enum: "translation_missing", "translation_pending", "translation_review_required", "translation_failed", "translation_timeout"

  • anyOf 2null
  • journeyobject | null

    Langkah dan pendaftaran Journey yang mengirim email ini; null untuk pengiriman lain.

  • journey_idstringwajib

    format: "uuid"

  • step_idstringwajib

    format: "uuid"

  • enrollment_idstringwajib

    format: "uuid"

  • experimentobject | null

    Varian eksperimen email ini; null jika tidak ada yang berlaku.

  • experiment_idstringwajib

    format: "uuid"

  • variant_keystringwajib
  • created_atstringwajib

    format: "date-time"

  • updated_atstringwajib

    format: "date-time"

  • completed_atstring | nullwajib

    format: "date-time"

  • template_idstring | null

    format: "uuid"

  • template_versioninteger | null
  • workspace_revisioninteger | null
  • command_resultobject
  • Properti tambahanNilai apa pun
  • command_started_atstring | null

    format: "date-time"

  • command_completed_atstring | null

    format: "date-time"

  • body_textstring
  • body_htmlstring
  • reply_toarray
  • Setiap itemobject
  • emailstringwajib
  • namestring
  • headersobject
  • Properti tambahanstring
  • tagsarray
  • Setiap itemobject
  • namestringwajib
  • valuestringwajib

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/transactional-sends/{transactionalSendId}' \
  --header "Authorization: Bearer $BANGER_API_KEY"
GET/v1/workspaces/{workspaceId}/transactional-sends/{transactionalSendId}/timeline

listTransactionalSendTimeline

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

transactionalSendId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Linimasa berurutan untuk penerimaan, percobaan penyedia, dan peristiwa penerima.

application/json

  • valueobject
  • dataarraywajib
  • Setiap itemobject
  • occurred_atstringwajib

    format: "date-time"

  • event_typestringwajib
  • labelstringwajib
  • providerstring | null
  • recipient_domainstring | null
  • error_codestring | null

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/transactional-sends/{transactionalSendId}/timeline' \
  --header "Authorization: Bearer $BANGER_API_KEY"
POST/v1/workspaces/{workspaceId}/transactional-sends/{transactionalSendId}/retry

retryTransactionalSend

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

transactionalSendId
path · wajib
  • valuestring

    format: "uuid"

Idempotency-Key
header · wajib
  • valuestring

    minLength: 16 · maxLength: 128

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 202

Respons berhasil.

application/json

  • valueobject
  • dataobjectwajib
  • action_kindstringwajib

    enum: "transactional.send"

  • idstringwajib

    format: "uuid"

  • send_intent_idstringwajib

    format: "uuid"

  • provider_attempt_idstringwajib

    format: "uuid"

  • statusstringwajib
  • replayedbooleanwajib

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/transactional-sends/{transactionalSendId}/retry' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Idempotency-Key: examplexxxxxxxxx'

Utas

GET/v1/workspaces/{workspaceId}/threads

listThreads

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

cursor
query
  • valuestring

    maxLength: 1024

limit
query
  • valueinteger

    minimum: 1 · maximum: 100 · default: 50

mailbox_id
query
  • valuestring

    format: "uuid"

label_id
query

Kembalikan hanya utas dengan label kotak surat ini.

  • valuestring

    format: "uuid"

view
query
  • valuestring

    default: "inbox" · enum: "inbox", "sent", "drafts", "archive", "trash", "spam", "all"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Utas ruang kerja dengan paginasi keyset.

application/json

  • valueobject
  • dataarraywajib
  • Setiap itemobject
  • idstringwajib

    format: "uuid"

  • mailbox_idstringwajib

    format: "uuid"

  • subjectstringwajib
  • snippetstringwajib
  • last_message_atstringwajib

    format: "date-time"

  • message_countintegerwajib
  • unread_countintegerwajib
  • is_archivedbooleanwajib
  • is_trashbooleanwajib
  • is_spambooleanwajib
  • is_starredbooleanwajib
  • is_sentbooleanwajib
  • has_attachmentsbooleanwajib
  • labelsarraywajib
  • Setiap itemstring
  • participantsarray
  • Setiap itemobject
  • namestring
  • emailstringwajib

    format: "email"

  • pageobjectwajib
  • next_cursorstring
  • has_morebooleanwajib

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/threads?cursor=example&limit=50&mailbox_id=00000000-0000-4000-8000-000000000001&label_id=00000000-0000-4000-8000-000000000001&view=inbox' \
  --header "Authorization: Bearer $BANGER_API_KEY"
GET/v1/workspaces/{workspaceId}/threads/{threadId}

getThread

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

threadId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Utas dan pesan berurutan.

application/json

  • valueobject
  • datatidak ditentukanwajib
  • allOf 1object
  • idstringwajib

    format: "uuid"

  • mailbox_idstringwajib

    format: "uuid"

  • subjectstringwajib
  • snippetstringwajib
  • last_message_atstringwajib

    format: "date-time"

  • message_countintegerwajib
  • unread_countintegerwajib
  • is_archivedbooleanwajib
  • is_trashbooleanwajib
  • is_spambooleanwajib
  • is_starredbooleanwajib
  • is_sentbooleanwajib
  • has_attachmentsbooleanwajib
  • labelsarraywajib
  • Setiap itemstring
  • participantsarray
  • Setiap itemobject
  • namestring
  • emailstringwajib

    format: "email"

  • allOf 2object
  • messagesarraywajib
  • Setiap itemobject
  • idstringwajib

    format: "uuid"

  • mailbox_idstringwajib

    format: "uuid"

  • thread_idstringwajib

    format: "uuid"

  • sent_atstringwajib

    format: "date-time"

  • received_atstring

    format: "date-time"

  • envelope_recipientsarray

    Penerima amplop SMTP asli, dinormalisasi hurufnya oleh edge SMTP sebelum perutean alias khusus penerimaan. Kosong untuk pesan lama atau sumber non-SMTP. Terpisah dari header To/Cc yang terlihat.

  • Setiap itemstring

    format: "email"

    Penumpukan lebih lanjut dihilangkan

  • fromobjectwajib
  • namestring

    Penumpukan lebih lanjut dihilangkan

  • emailstringwajib

    format: "email"

    Penumpukan lebih lanjut dihilangkan

  • toarraywajib
  • Setiap itemobject

    Penumpukan lebih lanjut dihilangkan

  • ccarray
  • Setiap itemobject

    Penumpukan lebih lanjut dihilangkan

  • reply_toarray
  • Setiap itemobject

    Penumpukan lebih lanjut dihilangkan

  • is_sentboolean

    Apakah pesan ini dikirim oleh kotak surat, termasuk dari alias.

  • body_textstring
  • body_html_urlstring

    format: "uri"

  • reply_originobject
  • send_intent_idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • sourcestringwajib

    enum: "gateway", "transactional", "marketing", "mailbox", "agent"

    Penumpukan lebih lanjut dihilangkan

  • source_idstring

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • traffic_classstringwajib

    enum: "transactional", "marketing", "mailbox"

    Penumpukan lebih lanjut dihilangkan

  • kindstringwajib

    enum: "campaign", "sequence", "transactional", "mailbox", "agent"

    Penumpukan lebih lanjut dihilangkan

  • namestring

    Penumpukan lebih lanjut dihilangkan

  • has_attachmentsbooleanwajib
  • attachmentsarray
  • Setiap itemobject

    Penumpukan lebih lanjut dihilangkan

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/threads/{threadId}' \
  --header "Authorization: Bearer $BANGER_API_KEY"

Pesan

GET/v1/workspaces/{workspaceId}/messages/{messageId}/html

getMessageHtml

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

messageId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Isi pesan HTML terautentikasi dengan batasan sandbox.

text/html

  • valuestring

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/messages/{messageId}/html' \
  --header "Authorization: Bearer $BANGER_API_KEY"

Lampiran

GET/v1/workspaces/{workspaceId}/attachments/{attachmentId}/content

downloadAttachment

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

attachmentId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Aliran lampiran terautentikasi.

application/octet-stream

  • valuestring

    format: "binary"

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/attachments/{attachmentId}/content' \
  --header "Authorization: Bearer $BANGER_API_KEY"
GET/v1/workspaces/{workspaceId}/search

searchMail

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

q
query · wajib
  • valuestring

    minLength: 1 · maxLength: 512

cursor
query
  • valuestring

    maxLength: 1024

limit
query
  • valueinteger

    minimum: 1 · maximum: 100 · default: 50

mailbox_id
query
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Hasil pencarian seluruh ruang kerja.

application/json

  • valueobject
  • dataarraywajib
  • Setiap itemobject
  • idstringwajib

    format: "uuid"

  • mailbox_idstringwajib

    format: "uuid"

  • subjectstringwajib
  • snippetstringwajib
  • last_message_atstringwajib

    format: "date-time"

  • message_countintegerwajib
  • unread_countintegerwajib
  • is_archivedbooleanwajib
  • is_trashbooleanwajib
  • is_spambooleanwajib
  • is_starredbooleanwajib
  • is_sentbooleanwajib
  • has_attachmentsbooleanwajib
  • labelsarraywajib
  • Setiap itemstring
  • participantsarray
  • Setiap itemobject
  • namestring
  • emailstringwajib

    format: "email"

  • pageobjectwajib
  • next_cursorstring
  • has_morebooleanwajib

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/search?q=example&cursor=example&limit=50&mailbox_id=00000000-0000-4000-8000-000000000001' \
  --header "Authorization: Bearer $BANGER_API_KEY"

Kontak

GET/v1/workspaces/{workspaceId}/contacts

listContacts

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

cursor
query
  • valuestring

    maxLength: 1024

limit
query
  • valueinteger

    minimum: 1 · maximum: 100 · default: 50

q
query
  • valuestring

    maxLength: 512

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Respons berhasil.

application/json

  • valueobject
  • dataarraywajib
  • Setiap itemobject
  • idstringwajib

    format: "uuid"

  • emailstringwajib

    format: "email"

  • display_namestring | nullwajib
  • attributesobjectwajib
  • Properti tambahanNilai apa pun
  • statusstringwajib

    enum: "subscribed", "unsubscribed", "bounced", "complained"

  • created_atstringwajib

    format: "date-time"

  • updated_atstringwajib

    format: "date-time"

  • pageobjectwajib
  • next_cursorstring
  • has_morebooleanwajib

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/contacts?cursor=example&limit=50&q=example' \
  --header "Authorization: Bearer $BANGER_API_KEY"
POST/v1/workspaces/{workspaceId}/contacts

upsertContact

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan wajib

application/json

  • valueobject

    Tidak ada properti tambahan

  • emailstringwajib

    format: "email"

  • display_namestring

    maxLength: 1000

  • statusstringwajib

    enum: "subscribed", "unsubscribed", "bounced", "complained"

  • attributesobject
  • Properti tambahanNilai apa pun
  • consent_confirmedboolean

    Wajib saat baru mendaftarkan alamat sebagai pelanggan.

Respons berhasil 201

Respons berhasil.

application/json

  • valueobject
  • dataobjectwajib
  • idstringwajib

    format: "uuid"

  • emailstringwajib

    format: "email"

  • display_namestring | nullwajib
  • attributesobjectwajib
  • Properti tambahanNilai apa pun
  • statusstringwajib

    enum: "subscribed", "unsubscribed", "bounced", "complained"

  • created_atstringwajib

    format: "date-time"

  • updated_atstringwajib

    format: "date-time"

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/contacts' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "email": "person@example.com",
  "display_name": "example",
  "status": "subscribed",
  "attributes": {},
  "consent_confirmed": true
}'
GET/v1/workspaces/{workspaceId}/contacts/{contactId}

getContact

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

contactId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Respons berhasil.

application/json

  • valueobject
  • dataobjectwajib
  • idstringwajib

    format: "uuid"

  • emailstringwajib

    format: "email"

  • display_namestring | nullwajib
  • attributesobjectwajib
  • Properti tambahanNilai apa pun
  • statusstringwajib

    enum: "subscribed", "unsubscribed", "bounced", "complained"

  • created_atstringwajib

    format: "date-time"

  • updated_atstringwajib

    format: "date-time"

  • suppressedbooleanwajib
  • suppression_reasonstring | nullwajib
  • sourcesarraywajib
  • Setiap itemobject
  • kindstringwajib
  • referencestringwajib
  • connection_idstring | nullwajib

    format: "uuid"

  • metadataobjectwajib
  • Properti tambahanNilai apa pun
  • first_seen_atstringwajib

    format: "date-time"

  • last_seen_atstringwajib

    format: "date-time"

  • listsarraywajib
  • Setiap itemobject
  • idstringwajib

    format: "uuid"

  • namestringwajib
  • subscription_statusstringwajib
  • consent_evidencearraywajib
  • Setiap itemobject
  • kindstringwajib
  • referencestringwajib
  • connection_idstring | nullwajib

    format: "uuid"

  • metadataobjectwajib
  • Properti tambahanNilai apa pun
  • first_seen_atstringwajib

    format: "date-time"

  • last_seen_atstringwajib

    format: "date-time"

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/contacts/{contactId}' \
  --header "Authorization: Bearer $BANGER_API_KEY"
DELETE/v1/workspaces/{workspaceId}/contacts/{contactId}

deleteContact

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

contactId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 204

Kontak dihapus.

Tanpa isi respons.

Contoh curl

curl --request DELETE --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/contacts/{contactId}' \
  --header "Authorization: Bearer $BANGER_API_KEY"
GET/v1/workspaces/{workspaceId}/contacts/imports

listContactImports

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Respons berhasil.

application/json

  • valueobject
  • dataarraywajib
  • Setiap itemobject
  • idstring

    format: "uuid"

  • filenamestring
  • list_idstring | null

    format: "uuid"

  • list_namestring | null
  • statusstring
  • total_rowsinteger
  • imported_rowsinteger
  • invalid_rowsinteger
  • error_summaryarray
  • Setiap itemstring
  • consent_confirmedboolean
  • consent_confirmed_atstring | null

    format: "date-time"

  • processed_rowsinteger
  • attempt_countinteger
  • last_error_codestring | null
  • created_atstring

    format: "date-time"

  • completed_atstring | null

    format: "date-time"

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/contacts/imports' \
  --header "Authorization: Bearer $BANGER_API_KEY"
POST/v1/workspaces/{workspaceId}/contacts/imports

importContacts

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan wajib

application/json

  • valueobject
  • filenamestringwajib

    minLength: 1 · maxLength: 500

  • list_idstring

    format: "uuid"

  • consent_confirmedboolean

    Wajib jika ada baris impor yang berlangganan.

  • rowsarraywajib

    minItems: 1 · maxItems: 5000

  • Setiap itemobject
  • emailstringwajib

    format: "email"

  • display_namestring

    maxLength: 1000

  • statusstring

    enum: "subscribed", "unsubscribed", "bounced", "complained"

  • attributesobject
  • Properti tambahanNilai apa pun

Respons berhasil 201

Respons berhasil.

application/json

  • valueobject
  • dataobjectwajib
  • idstringwajib

    format: "uuid"

  • statusstringwajib

    enum: "queued"

  • total_rowsintegerwajib
  • imported_rowsintegerwajib
  • invalid_rowsintegerwajib
  • list_idstring | nullwajib

    format: "uuid"

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/contacts/imports' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "filename": "example",
  "list_id": "00000000-0000-4000-8000-000000000001",
  "consent_confirmed": true,
  "rows": [
    {
      "email": "person@example.com",
      "display_name": "example",
      "status": "subscribed",
      "attributes": {}
    }
  ]
}'
PATCH/v1/workspaces/{workspaceId}/contacts/{contactId}/attributes

Gabungkan atribut bertipe tanpa mengubah langganan atau persetujuan

Memerlukan contacts:write dan contacts:read. Hanya memperbarui kontak yang ada. Atribut yang dihilangkan dipertahankan, false eksplisit disimpan, dan null menghapus field. Berikan fakta sumber terverifikasi; data yang tidak ada bukan false. Langganan, penekanan, identitas, dan riwayat sumber tidak berubah.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

X-Banger-Product-Id
header · wajib

Produk operasi eksplisit; harus sesuai dengan kredensial OAuth bercakupan produk.

  • valuestring

    format: "uuid"

contactId
path · wajib
  • valuestring

    format: "uuid"

Idempotency-Key
header · wajib
  • valuestring

    minLength: 1 · maxLength: 256

Isi permintaan wajib

application/json

  • valueobject

    Tidak ada properti tambahan

  • attributesobjectwajib
  • Properti tambahanNilai apa pun

Respons berhasil 200

Pembacaan kembali kontak saat ini; replayed bernilai true jika mutasi ini sudah diterapkan.

application/json

  • valueobject
  • dataobjectwajib
  • idstringwajib

    format: "uuid"

  • attributesobjectwajib
  • Properti tambahanNilai apa pun
  • statusstringwajib

    enum: "subscribed", "unsubscribed", "bounced", "complained"

  • replayedbooleanwajib
  • Properti tambahanNilai apa pun

Contoh curl

curl --request PATCH --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/contacts/{contactId}/attributes' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'X-Banger-Product-Id: 00000000-0000-4000-8000-000000000001' \
  --header 'Idempotency-Key: example' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "attributes": {}
}'
POST/v1/workspaces/{workspaceId}/contacts/upsert

upsertProductContact

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

X-Banger-Product-Id
header · wajib

Produk operasi eksplisit; harus sesuai dengan kredensial OAuth bercakupan produk.

  • valuestring

    format: "uuid"

Idempotency-Key
header · wajib
  • valuestring

    minLength: 1 · maxLength: 256

Isi permintaan wajib

application/json

  • valueobject

    Tidak ada properti tambahan

  • emailstringwajib

    format: "email" · maxLength: 320

  • display_namestring

    minLength: 0 · maxLength: 1000

  • attributesobject
  • Properti tambahanNilai apa pun
  • statusstringwajib

    enum: "subscribed", "unsubscribed", "bounced", "complained"

  • consent_evidenceobject

    Tidak ada properti tambahan

  • sourcestring

    minLength: 1 · maxLength: 2000

  • referencestring

    minLength: 1 · maxLength: 2000

  • observed_atstring

    format: "date-time"

  • statementstring

    minLength: 1 · maxLength: 2000

  • consent_confirmedboolean

Respons berhasil 200

Pembacaan kembali kanonis atau tanda terima idempoten. Penerimaan penyedia adalah sent; delivered memerlukan peristiwa pengiriman dan tidak membuktikan masuk ke kotak masuk.

application/json

  • valueobject
  • datatidak ditentukanwajib
  • allOf 1object
  • idstringwajib

    format: "uuid"

  • emailstringwajib

    format: "email"

  • display_namestring | nullwajib
  • attributesobjectwajib
  • Properti tambahanNilai apa pun
  • statusstringwajib

    enum: "subscribed", "unsubscribed", "bounced", "complained"

  • created_atstringwajib

    format: "date-time"

  • updated_atstringwajib

    format: "date-time"

  • suppressedbooleanwajib
  • suppression_reasonstring | nullwajib
  • sourcesarraywajib
  • Setiap itemobject
  • kindstringwajib
  • referencestringwajib
  • connection_idstring | nullwajib

    format: "uuid"

  • metadataobjectwajib
  • Properti tambahanNilai apa pun
  • first_seen_atstringwajib

    format: "date-time"

  • last_seen_atstringwajib

    format: "date-time"

  • listsarraywajib
  • Setiap itemobject
  • idstringwajib

    format: "uuid"

  • namestringwajib
  • subscription_statusstringwajib
  • consent_evidencearraywajib
  • Setiap itemobject
  • kindstringwajib
  • referencestringwajib
  • connection_idstring | nullwajib

    format: "uuid"

  • metadataobjectwajib
  • Properti tambahanNilai apa pun
  • first_seen_atstringwajib

    format: "date-time"

  • last_seen_atstringwajib

    format: "date-time"

  • allOf 2object
  • replayedbooleanwajib

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/contacts/upsert' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'X-Banger-Product-Id: 00000000-0000-4000-8000-000000000001' \
  --header 'Idempotency-Key: example' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "email": "person@example.com",
  "display_name": "example",
  "attributes": {},
  "status": "subscribed",
  "consent_evidence": {
    "source": "example",
    "reference": "example",
    "observed_at": "2026-01-01T00:00:00Z",
    "statement": "example"
  },
  "consent_confirmed": true
}'
POST/v1/workspaces/{workspaceId}/contacts/import-validation

validateProductContactImport

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

X-Banger-Product-Id
header · wajib

Produk operasi eksplisit; harus sesuai dengan kredensial OAuth bercakupan produk.

  • valuestring

    format: "uuid"

Isi permintaan wajib

application/json

  • valueobject

    Tidak ada properti tambahan

  • rowsarraywajib

    minItems: 1 · maxItems: 5000

  • Setiap itemobject

    Tidak ada properti tambahan

  • emailstringwajib

    format: "email" · maxLength: 320

  • display_namestring

    minLength: 0 · maxLength: 1000

  • attributesobject
  • Properti tambahanNilai apa pun
  • statusstringwajib

    enum: "subscribed", "unsubscribed", "bounced", "complained"

  • consent_evidenceobject

    Tidak ada properti tambahan

  • sourcestring

    minLength: 1 · maxLength: 2000

  • referencestring

    minLength: 1 · maxLength: 2000

  • observed_atstring

    format: "date-time"

  • statementstring

    minLength: 1 · maxLength: 2000

  • consent_confirmedboolean

Respons berhasil 200

Pembacaan kembali kanonis atau tanda terima idempoten. Penerimaan penyedia adalah sent; delivered memerlukan peristiwa pengiriman dan tidak membuktikan masuk ke kotak masuk.

application/json

  • valueobject
  • dataobjectwajib
  • validbooleanwajib
  • total_rowsintegerwajib
  • valid_rowsintegerwajib
  • errorsarraywajib
  • Setiap itemobject
  • rowintegerwajib
  • codestringwajib
  • messagestringwajib

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/contacts/import-validation' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'X-Banger-Product-Id: 00000000-0000-4000-8000-000000000001' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "rows": [
    {
      "email": "person@example.com",
      "display_name": "example",
      "attributes": {},
      "status": "subscribed",
      "consent_evidence": {
        "source": "example",
        "reference": "example",
        "observed_at": "2026-01-01T00:00:00Z",
        "statement": "example"
      }
    }
  ],
  "consent_confirmed": true
}'
GET/v1/workspaces/{workspaceId}/contacts/imports/{importId}

getProductContactImport

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

X-Banger-Product-Id
header · wajib

Produk operasi eksplisit; harus sesuai dengan kredensial OAuth bercakupan produk.

  • valuestring

    format: "uuid"

importId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Pembacaan kembali kanonis atau tanda terima idempoten. Penerimaan penyedia adalah sent; delivered memerlukan peristiwa pengiriman dan tidak membuktikan masuk ke kotak masuk.

application/json

  • valueobject
  • dataobjectwajib
  • idstring

    format: "uuid"

  • filenamestring
  • list_idstring | null

    format: "uuid"

  • list_namestring | null
  • statusstring
  • total_rowsinteger
  • imported_rowsinteger
  • invalid_rowsinteger
  • error_summaryarray
  • Setiap itemstring
  • consent_confirmedboolean
  • consent_confirmed_atstring | null

    format: "date-time"

  • processed_rowsinteger
  • attempt_countinteger
  • last_error_codestring | null
  • created_atstring

    format: "date-time"

  • completed_atstring | null

    format: "date-time"

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/contacts/imports/{importId}' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'X-Banger-Product-Id: 00000000-0000-4000-8000-000000000001'
GET/v1/workspaces/{workspaceId}/contacts/fields

Daftar kunci atribut kontak tersimpan

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Respons berhasil.

application/json

  • valueobject
  • dataarraywajib
  • Setiap itemstring

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/contacts/fields' \
  --header "Authorization: Bearer $BANGER_API_KEY"
POST/v1/workspaces/{workspaceId}/contacts/import-mapping

Usulkan pemetaan kolom impor kontak

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan wajib

application/json

  • valueobject
  • filenamestring

    maxLength: 500

  • columnsarraywajib

    minItems: 1 · maxItems: 100

  • Setiap itemobject
  • namestringwajib

    minLength: 1 · maxLength: 200

  • samplesarray

    maxItems: 8

  • Setiap itemstring

    maxLength: 120

  • filledinteger

    minimum: 0

  • rowsinteger

    minimum: 0

Respons berhasil 200

Respons berhasil.

application/json

  • valueobject
  • dataobjectwajib
  • mappingobjectwajib
  • columnsarraywajib
  • Setiap itemobject
  • columnstringwajib
  • targetstringwajib

    enum: "email", "display_name", "first_name", "last_name", "locale", "time_zone", "status", "unsubscribed_flag", "subscribed_flag", "field", "ignore"

  • field_keystring
  • field_typestring

    enum: "text", "number", "boolean", "date", "choice", "choices"

  • confidencenumberwajib
  • sourcestringwajib

    enum: "saved", "ai", "rules", "person"

  • alternativesarray
  • Setiap itemobject

    Penumpukan lebih lanjut dihilangkan

  • locale_valuesobjectwajib
  • Properti tambahanstring | null
  • reviewobjectwajib
  • neededbooleanwajib
  • reasonsarraywajib
  • Setiap itemstring
  • columnsarraywajib
  • Setiap itemstring
  • sourcestringwajib

    enum: "saved", "ai", "rules"

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/contacts/import-mapping' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "filename": "example",
  "columns": [
    {
      "name": "example",
      "samples": [
        "example"
      ],
      "filled": 0,
      "rows": 0
    }
  ]
}'

Daftar kontak

GET/v1/workspaces/{workspaceId}/contact-lists

listContactLists

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Respons berhasil.

application/json

  • valueobject
  • dataarraywajib
  • Setiap itemobject
  • idstringwajib

    format: "uuid"

  • namestringwajib
  • descriptionstringwajib
  • member_countintegerwajib
  • created_atstringwajib

    format: "date-time"

  • updated_atstringwajib

    format: "date-time"

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/contact-lists' \
  --header "Authorization: Bearer $BANGER_API_KEY"
POST/v1/workspaces/{workspaceId}/contact-lists

createContactList

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan wajib

application/json

  • valueobject
  • namestringwajib

    minLength: 1 · maxLength: 200

  • descriptionstring

    maxLength: 2000

Respons berhasil 201

Respons berhasil.

application/json

  • valueobject
  • dataobjectwajib
  • idstringwajib

    format: "uuid"

  • namestringwajib
  • descriptionstringwajib
  • member_countintegerwajib
  • created_atstringwajib

    format: "date-time"

  • updated_atstringwajib

    format: "date-time"

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/contact-lists' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "name": "example",
  "description": "example"
}'
GET/v1/workspaces/{workspaceId}/contact-lists/{listId}

getContactList

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

listId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Respons berhasil.

application/json

  • valueobject
  • dataobjectwajib
  • idstringwajib

    format: "uuid"

  • namestringwajib
  • descriptionstringwajib
  • created_atstringwajib

    format: "date-time"

  • updated_atstringwajib

    format: "date-time"

  • membersarraywajib
  • Setiap itemobject
  • idstringwajib

    format: "uuid"

  • emailstringwajib
  • display_namestring | nullwajib
  • statusstringwajib
  • attributesobjectwajib
  • Properti tambahanNilai apa pun
  • updated_atstringwajib

    format: "date-time"

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/contact-lists/{listId}' \
  --header "Authorization: Bearer $BANGER_API_KEY"
DELETE/v1/workspaces/{workspaceId}/contact-lists/{listId}

deleteContactList

Hapus daftar ini dan kontak yang hanya ada di dalamnya. Kontak yang termasuk daftar lain dipertahankan. Memerlukan contacts:write.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

listId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Jumlah kontak eksklusif yang dihapus (atau akan dihapus) dan kontak bersama yang dipertahankan.

application/json

  • valueobject
  • dataobjectwajib
  • deleted_contactsintegerwajib

    minimum: 0

  • kept_contactsintegerwajib

    minimum: 0

Contoh curl

curl --request DELETE --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/contact-lists/{listId}' \
  --header "Authorization: Bearer $BANGER_API_KEY"
GET/v1/workspaces/{workspaceId}/contact-lists/{listId}/deletion-preview

previewContactListDeletion

Pratinjau jumlah penghapusan daftar. Keanggotaan diperiksa kembali saat penghapusan. Memerlukan contacts:read.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

listId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Jumlah kontak eksklusif yang dihapus (atau akan dihapus) dan kontak bersama yang dipertahankan.

application/json

  • valueobject
  • dataobjectwajib
  • deleted_contactsintegerwajib

    minimum: 0

  • kept_contactsintegerwajib

    minimum: 0

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/contact-lists/{listId}/deletion-preview' \
  --header "Authorization: Bearer $BANGER_API_KEY"
POST/v1/workspaces/{workspaceId}/contact-lists/{listId}/members

addContactListMembers

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

listId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan wajib

application/json

  • valueobject
  • contact_idsarraywajib

    maxItems: 1000

  • Setiap itemstring

    format: "uuid"

Respons berhasil 204

Keanggotaan daftar diperbarui.

Tanpa isi respons.

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/contact-lists/{listId}/members' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "contact_ids": [
    "00000000-0000-4000-8000-000000000001"
  ]
}'
DELETE/v1/workspaces/{workspaceId}/contact-lists/{listId}/members

removeContactListMembers

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

listId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan wajib

application/json

  • valueobject
  • contact_idsarraywajib

    maxItems: 1000

  • Setiap itemstring

    format: "uuid"

Respons berhasil 204

Keanggotaan daftar diperbarui.

Tanpa isi respons.

Contoh curl

curl --request DELETE --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/contact-lists/{listId}/members' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "contact_ids": [
    "00000000-0000-4000-8000-000000000001"
  ]
}'

Field kontak

GET/v1/workspaces/{workspaceId}/contact-fields

Field kontak produk (bawaan, dinyatakan, dan ditemukan) beserta tipe, pilihan, sumber, jumlah kontak yang memiliki nilai, dan operator segmen yang didukung tiap field.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Respons berhasil.

application/json

  • valueobject
  • dataarraywajib
  • Setiap itemobject
  • keystringwajib

    pattern: "^[a-z][a-z0-9_]{0,39}$"

  • labelstringwajib

    maxLength: 80

  • descriptionstringwajib

    maxLength: 500

  • typestringwajib

    enum: "text", "number", "boolean", "date", "choice", "choices"

  • optionsarraywajib

    maxItems: 50

  • Setiap itemstring
  • originstringwajib

    enum: "system", "person", "agent", "form", "import", "api", "event", "discovered"

  • statusstringwajib

    enum: "active", "hidden"

  • created_atstring

    format: "date-time"

  • updated_atstring

    format: "date-time"

  • operatorsarray
  • Setiap itemstring
  • contacts_with_valueinteger

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/contact-fields' \
  --header "Authorization: Bearer $BANGER_API_KEY"
POST/v1/workspaces/{workspaceId}/contact-fields

Nyatakan field kontak: label, tipe (text, number, boolean, date, choice, choices), key opsional, opsi, dan deskripsi.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan wajib

application/json

  • valueobject
  • keystring

    pattern: "^[a-z][a-z0-9_]{0,39}$"

  • labelstringwajib

    minLength: 1 · maxLength: 80

  • descriptionstring

    maxLength: 500

  • typestring

    default: "text" · enum: "text", "number", "boolean", "date", "choice", "choices"

  • optionsarray

    maxItems: 50

  • Setiap itemstring

Respons berhasil 201

Respons berhasil.

application/json

  • valueobject
  • dataobjectwajib
  • keystringwajib

    pattern: "^[a-z][a-z0-9_]{0,39}$"

  • labelstringwajib

    maxLength: 80

  • descriptionstringwajib

    maxLength: 500

  • typestringwajib

    enum: "text", "number", "boolean", "date", "choice", "choices"

  • optionsarraywajib

    maxItems: 50

  • Setiap itemstring
  • originstringwajib

    enum: "system", "person", "agent", "form", "import", "api", "event", "discovered"

  • statusstringwajib

    enum: "active", "hidden"

  • created_atstring

    format: "date-time"

  • updated_atstring

    format: "date-time"

  • operatorsarray
  • Setiap itemstring
  • contacts_with_valueinteger

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/contact-fields' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "key": "example",
  "label": "example",
  "description": "example",
  "type": "text",
  "options": [
    "example"
  ]
}'
PATCH/v1/workspaces/{workspaceId}/contact-fields/{key}

Ubah nama, deskripsi, tipe (mengonversi nilai tersimpan, atau 409 dengan contoh yang tidak cocok), pilihan, atau sembunyikan field.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

key
path · wajib
  • valuestring

    pattern: "^[a-z][a-z0-9_]{0,39}$"

Isi permintaan wajib

application/json

  • valueobject
  • labelstring

    maxLength: 80

  • descriptionstring

    maxLength: 500

  • typestring

    enum: "text", "number", "boolean", "date", "choice", "choices"

  • optionsarray

    maxItems: 50

  • Setiap itemstring
  • statusstring

    enum: "active", "hidden"

Respons berhasil 200

Respons berhasil.

application/json

  • valueobject
  • dataobjectwajib
  • keystringwajib

    pattern: "^[a-z][a-z0-9_]{0,39}$"

  • labelstringwajib

    maxLength: 80

  • descriptionstringwajib

    maxLength: 500

  • typestringwajib

    enum: "text", "number", "boolean", "date", "choice", "choices"

  • optionsarraywajib

    maxItems: 50

  • Setiap itemstring
  • originstringwajib

    enum: "system", "person", "agent", "form", "import", "api", "event", "discovered"

  • statusstringwajib

    enum: "active", "hidden"

  • created_atstring

    format: "date-time"

  • updated_atstring

    format: "date-time"

  • operatorsarray
  • Setiap itemstring
  • contacts_with_valueinteger

Contoh curl

curl --request PATCH --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/contact-fields/{key}' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "label": "example",
  "description": "example",
  "type": "text",
  "options": [
    "example"
  ],
  "status": "active"
}'

Segmen

GET/v1/workspaces/{workspaceId}/segments

listSegments

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Respons berhasil.

application/json

  • valueobject
  • dataarraywajib
  • Setiap itemobject
  • idstringwajib

    format: "uuid"

  • namestringwajib
  • filterobjectwajib

    Kondisi harus merujuk field kontak yang dinyatakan dan memakai operator yang didukung tipenya. set dan not_set menghilangkan value; within_days memakai 1–3650 hari.

    Tidak ada properti tambahan

  • statusstring

    enum: "subscribed", "unsubscribed", "bounced", "complained"

  • attributesobject
  • Properti tambahanNilai apa pun
  • conditionsarray

    maxItems: 20

  • Setiap itemobject
  • fieldstringwajib

    Penumpukan lebih lanjut dihilangkan

  • opstringwajib

    enum: "is", "is_not", "contains", "set", "not_set", "gt", "gte", "lt", "lte", "within_days", "any_of", "includes"

    Penumpukan lebih lanjut dihilangkan

  • valuetidak ditentukan

    Penumpukan lebih lanjut dihilangkan

  • matchstring

    enum: "all", "any"

  • created_atstringwajib

    format: "date-time"

  • updated_atstringwajib

    format: "date-time"

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/segments' \
  --header "Authorization: Bearer $BANGER_API_KEY"
POST/v1/workspaces/{workspaceId}/segments

createSegment

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan wajib

application/json

  • valueobject
  • namestringwajib

    minLength: 1 · maxLength: 200

  • filterobject

    Kondisi harus merujuk field kontak yang dinyatakan dan memakai operator yang didukung tipenya. set dan not_set menghilangkan value; within_days memakai 1–3650 hari.

    Tidak ada properti tambahan

  • statusstring

    enum: "subscribed", "unsubscribed", "bounced", "complained"

  • attributesobject
  • Properti tambahanNilai apa pun
  • conditionsarray

    maxItems: 20

  • Setiap itemobject
  • fieldstringwajib
  • opstringwajib

    enum: "is", "is_not", "contains", "set", "not_set", "gt", "gte", "lt", "lte", "within_days", "any_of", "includes"

  • valuetidak ditentukan
  • anyOf 1string
  • anyOf 2number
  • anyOf 3boolean
  • anyOf 4array
  • Setiap itemstring

    Penumpukan lebih lanjut dihilangkan

  • matchstring

    enum: "all", "any"

Respons berhasil 201

Respons berhasil.

application/json

  • valueobject
  • dataobjectwajib
  • idstringwajib

    format: "uuid"

  • namestringwajib
  • filterobjectwajib

    Kondisi harus merujuk field kontak yang dinyatakan dan memakai operator yang didukung tipenya. set dan not_set menghilangkan value; within_days memakai 1–3650 hari.

    Tidak ada properti tambahan

  • statusstring

    enum: "subscribed", "unsubscribed", "bounced", "complained"

  • attributesobject
  • Properti tambahanNilai apa pun
  • conditionsarray

    maxItems: 20

  • Setiap itemobject
  • fieldstringwajib
  • opstringwajib

    enum: "is", "is_not", "contains", "set", "not_set", "gt", "gte", "lt", "lte", "within_days", "any_of", "includes"

  • valuetidak ditentukan
  • anyOf 1string

    Penumpukan lebih lanjut dihilangkan

  • anyOf 2number

    Penumpukan lebih lanjut dihilangkan

  • anyOf 3boolean

    Penumpukan lebih lanjut dihilangkan

  • anyOf 4array

    Penumpukan lebih lanjut dihilangkan

  • matchstring

    enum: "all", "any"

  • created_atstringwajib

    format: "date-time"

  • updated_atstringwajib

    format: "date-time"

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/segments' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "name": "example",
  "filter": {
    "status": "subscribed",
    "attributes": {},
    "conditions": [
      {
        "field": "example",
        "op": "is",
        "value": "example"
      }
    ],
    "match": "all"
  }
}'
GET/v1/workspaces/{workspaceId}/segments/{segmentId}/preview

previewSegment

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

segmentId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Respons berhasil.

application/json

  • valueobject
  • datatidak ditentukanwajib
  • allOf 1object
  • idstringwajib

    format: "uuid"

  • namestringwajib
  • filterobjectwajib

    Kondisi harus merujuk field kontak yang dinyatakan dan memakai operator yang didukung tipenya. set dan not_set menghilangkan value; within_days memakai 1–3650 hari.

    Tidak ada properti tambahan

  • statusstring

    enum: "subscribed", "unsubscribed", "bounced", "complained"

  • attributesobject
  • Properti tambahanNilai apa pun
  • conditionsarray

    maxItems: 20

  • Setiap itemobject
  • fieldstringwajib

    Penumpukan lebih lanjut dihilangkan

  • opstringwajib

    enum: "is", "is_not", "contains", "set", "not_set", "gt", "gte", "lt", "lte", "within_days", "any_of", "includes"

    Penumpukan lebih lanjut dihilangkan

  • valuetidak ditentukan

    Penumpukan lebih lanjut dihilangkan

  • matchstring

    enum: "all", "any"

  • created_atstringwajib

    format: "date-time"

  • updated_atstringwajib

    format: "date-time"

  • allOf 2object
  • countintegerwajib
  • missing_consent_evidence_countintegerwajib
  • samplearraywajib
  • Setiap itemobject
  • idstringwajib

    format: "uuid"

  • emailstringwajib
  • display_namestring | nullwajib
  • attributesobjectwajib
  • Properti tambahanNilai apa pun
  • excludedobjectwajib
  • suppressedintegerwajib
  • not_subscribedintegerwajib
  • missing_recipient_hashintegerwajib
  • missing_consent_evidenceintegerwajib

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/segments/{segmentId}/preview' \
  --header "Authorization: Bearer $BANGER_API_KEY"
DELETE/v1/workspaces/{workspaceId}/segments/{segmentId}

Hapus segmen

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

segmentId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Respons berhasil.

application/json

  • valueobject
  • dataobjectwajib
  • idstringwajib

    format: "uuid"

  • deletedbooleanwajib

    const: true

Contoh curl

curl --request DELETE --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/segments/{segmentId}' \
  --header "Authorization: Bearer $BANGER_API_KEY"

Audiens

POST/v1/workspaces/{workspaceId}/audience/lists

createProductContactList

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

X-Banger-Product-Id
header · wajib

Produk operasi eksplisit; harus sesuai dengan kredensial OAuth bercakupan produk.

  • valuestring

    format: "uuid"

Idempotency-Key
header · wajib
  • valuestring

    minLength: 1 · maxLength: 256

Isi permintaan wajib

application/json

  • valueobject

    Tidak ada properti tambahan

  • namestringwajib

    minLength: 1 · maxLength: 200

  • descriptionstring

    minLength: 0 · maxLength: 2000

Respons berhasil 200

Pembacaan kembali kanonis atau tanda terima idempoten. Penerimaan penyedia adalah sent; delivered memerlukan peristiwa pengiriman dan tidak membuktikan masuk ke kotak masuk.

application/json

  • valueobject
  • datatidak ditentukanwajib
  • allOf 1object
  • idstringwajib

    format: "uuid"

  • namestringwajib
  • descriptionstringwajib
  • created_atstringwajib

    format: "date-time"

  • updated_atstringwajib

    format: "date-time"

  • membersarraywajib
  • Setiap itemobject
  • idstringwajib

    format: "uuid"

  • emailstringwajib
  • display_namestring | nullwajib
  • statusstringwajib
  • attributesobjectwajib
  • Properti tambahanNilai apa pun
  • updated_atstringwajib

    format: "date-time"

  • allOf 2object
  • replayedbooleanwajib

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/audience/lists' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'X-Banger-Product-Id: 00000000-0000-4000-8000-000000000001' \
  --header 'Idempotency-Key: example' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "name": "example",
  "description": "example"
}'
GET/v1/workspaces/{workspaceId}/audience/lists/{listId}

getProductContactList

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

X-Banger-Product-Id
header · wajib

Produk operasi eksplisit; harus sesuai dengan kredensial OAuth bercakupan produk.

  • valuestring

    format: "uuid"

listId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Pembacaan kembali kanonis atau tanda terima idempoten. Penerimaan penyedia adalah sent; delivered memerlukan peristiwa pengiriman dan tidak membuktikan masuk ke kotak masuk.

application/json

  • valueobject
  • dataobjectwajib
  • idstringwajib

    format: "uuid"

  • namestringwajib
  • descriptionstringwajib
  • created_atstringwajib

    format: "date-time"

  • updated_atstringwajib

    format: "date-time"

  • membersarraywajib
  • Setiap itemobject
  • idstringwajib

    format: "uuid"

  • emailstringwajib
  • display_namestring | nullwajib
  • statusstringwajib
  • attributesobjectwajib
  • Properti tambahanNilai apa pun
  • updated_atstringwajib

    format: "date-time"

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/audience/lists/{listId}' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'X-Banger-Product-Id: 00000000-0000-4000-8000-000000000001'
POST/v1/workspaces/{workspaceId}/audience/lists/{listId}/members

addProductContactListMembers

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

X-Banger-Product-Id
header · wajib

Produk operasi eksplisit; harus sesuai dengan kredensial OAuth bercakupan produk.

  • valuestring

    format: "uuid"

listId
path · wajib
  • valuestring

    format: "uuid"

Idempotency-Key
header · wajib
  • valuestring

    minLength: 1 · maxLength: 256

Isi permintaan wajib

application/json

  • valueobject

    Tidak ada properti tambahan

  • contact_idsarraywajib

    maxItems: 1000

  • Setiap itemstring

    format: "uuid"

Respons berhasil 200

Pembacaan kembali kanonis atau tanda terima idempoten. Penerimaan penyedia adalah sent; delivered memerlukan peristiwa pengiriman dan tidak membuktikan masuk ke kotak masuk.

application/json

  • valueobject
  • datatidak ditentukanwajib
  • allOf 1object
  • idstringwajib

    format: "uuid"

  • namestringwajib
  • descriptionstringwajib
  • created_atstringwajib

    format: "date-time"

  • updated_atstringwajib

    format: "date-time"

  • membersarraywajib
  • Setiap itemobject
  • idstringwajib

    format: "uuid"

  • emailstringwajib
  • display_namestring | nullwajib
  • statusstringwajib
  • attributesobjectwajib
  • Properti tambahanNilai apa pun
  • updated_atstringwajib

    format: "date-time"

  • allOf 2object
  • replayedbooleanwajib

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/audience/lists/{listId}/members' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'X-Banger-Product-Id: 00000000-0000-4000-8000-000000000001' \
  --header 'Idempotency-Key: example' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "contact_ids": [
    "00000000-0000-4000-8000-000000000001"
  ]
}'
DELETE/v1/workspaces/{workspaceId}/audience/lists/{listId}/members

removeProductContactListMembers

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

X-Banger-Product-Id
header · wajib

Produk operasi eksplisit; harus sesuai dengan kredensial OAuth bercakupan produk.

  • valuestring

    format: "uuid"

listId
path · wajib
  • valuestring

    format: "uuid"

Idempotency-Key
header · wajib
  • valuestring

    minLength: 1 · maxLength: 256

Isi permintaan wajib

application/json

  • valueobject

    Tidak ada properti tambahan

  • contact_idsarraywajib

    maxItems: 1000

  • Setiap itemstring

    format: "uuid"

Respons berhasil 200

Pembacaan kembali kanonis atau tanda terima idempoten. Penerimaan penyedia adalah sent; delivered memerlukan peristiwa pengiriman dan tidak membuktikan masuk ke kotak masuk.

application/json

  • valueobject
  • datatidak ditentukanwajib
  • allOf 1object
  • idstringwajib

    format: "uuid"

  • namestringwajib
  • descriptionstringwajib
  • created_atstringwajib

    format: "date-time"

  • updated_atstringwajib

    format: "date-time"

  • membersarraywajib
  • Setiap itemobject
  • idstringwajib

    format: "uuid"

  • emailstringwajib
  • display_namestring | nullwajib
  • statusstringwajib
  • attributesobjectwajib
  • Properti tambahanNilai apa pun
  • updated_atstringwajib

    format: "date-time"

  • allOf 2object
  • replayedbooleanwajib

Contoh curl

curl --request DELETE --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/audience/lists/{listId}/members' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'X-Banger-Product-Id: 00000000-0000-4000-8000-000000000001' \
  --header 'Idempotency-Key: example' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "contact_ids": [
    "00000000-0000-4000-8000-000000000001"
  ]
}'
POST/v1/workspaces/{workspaceId}/audience/segments

createProductSegment

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

X-Banger-Product-Id
header · wajib

Produk operasi eksplisit; harus sesuai dengan kredensial OAuth bercakupan produk.

  • valuestring

    format: "uuid"

Idempotency-Key
header · wajib
  • valuestring

    minLength: 1 · maxLength: 256

Isi permintaan wajib

application/json

  • valueobject

    Tidak ada properti tambahan

  • namestringwajib

    minLength: 1 · maxLength: 200

  • filterobjectwajib

    Tidak ada properti tambahan

  • statusstring

    enum: "subscribed", "unsubscribed", "bounced", "complained"

  • attributesobject
  • Properti tambahanNilai apa pun

Respons berhasil 200

Pembacaan kembali kanonis atau tanda terima idempoten. Penerimaan penyedia adalah sent; delivered memerlukan peristiwa pengiriman dan tidak membuktikan masuk ke kotak masuk.

application/json

  • valueobject
  • datatidak ditentukanwajib
  • allOf 1tidak ditentukan
  • allOf 1object
  • idstringwajib

    format: "uuid"

  • namestringwajib
  • filterobjectwajib

    Kondisi harus merujuk field kontak yang dinyatakan dan memakai operator yang didukung tipenya. set dan not_set menghilangkan value; within_days memakai 1–3650 hari.

    Tidak ada properti tambahan

  • statusstring

    enum: "subscribed", "unsubscribed", "bounced", "complained"

  • attributesobject
  • Properti tambahanNilai apa pun
  • conditionsarray

    maxItems: 20

  • Setiap itemobject

    Penumpukan lebih lanjut dihilangkan

  • matchstring

    enum: "all", "any"

  • created_atstringwajib

    format: "date-time"

  • updated_atstringwajib

    format: "date-time"

  • allOf 2object
  • countintegerwajib
  • missing_consent_evidence_countintegerwajib
  • samplearraywajib
  • Setiap itemobject
  • idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • emailstringwajib

    Penumpukan lebih lanjut dihilangkan

  • display_namestring | nullwajib

    Penumpukan lebih lanjut dihilangkan

  • attributesobjectwajib

    Penumpukan lebih lanjut dihilangkan

  • excludedobjectwajib
  • suppressedintegerwajib
  • not_subscribedintegerwajib
  • missing_recipient_hashintegerwajib
  • missing_consent_evidenceintegerwajib
  • allOf 2object
  • replayedbooleanwajib

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/audience/segments' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'X-Banger-Product-Id: 00000000-0000-4000-8000-000000000001' \
  --header 'Idempotency-Key: example' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "name": "example",
  "filter": {
    "status": "subscribed",
    "attributes": {}
  }
}'
GET/v1/workspaces/{workspaceId}/audience/segments/{segmentId}/preview

previewProductSegment

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

X-Banger-Product-Id
header · wajib

Produk operasi eksplisit; harus sesuai dengan kredensial OAuth bercakupan produk.

  • valuestring

    format: "uuid"

segmentId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Pembacaan kembali kanonis atau tanda terima idempoten. Penerimaan penyedia adalah sent; delivered memerlukan peristiwa pengiriman dan tidak membuktikan masuk ke kotak masuk.

application/json

  • valueobject
  • datatidak ditentukanwajib
  • allOf 1object
  • idstringwajib

    format: "uuid"

  • namestringwajib
  • filterobjectwajib

    Kondisi harus merujuk field kontak yang dinyatakan dan memakai operator yang didukung tipenya. set dan not_set menghilangkan value; within_days memakai 1–3650 hari.

    Tidak ada properti tambahan

  • statusstring

    enum: "subscribed", "unsubscribed", "bounced", "complained"

  • attributesobject
  • Properti tambahanNilai apa pun
  • conditionsarray

    maxItems: 20

  • Setiap itemobject
  • fieldstringwajib

    Penumpukan lebih lanjut dihilangkan

  • opstringwajib

    enum: "is", "is_not", "contains", "set", "not_set", "gt", "gte", "lt", "lte", "within_days", "any_of", "includes"

    Penumpukan lebih lanjut dihilangkan

  • valuetidak ditentukan

    Penumpukan lebih lanjut dihilangkan

  • matchstring

    enum: "all", "any"

  • created_atstringwajib

    format: "date-time"

  • updated_atstringwajib

    format: "date-time"

  • allOf 2object
  • countintegerwajib
  • missing_consent_evidence_countintegerwajib
  • samplearraywajib
  • Setiap itemobject
  • idstringwajib

    format: "uuid"

  • emailstringwajib
  • display_namestring | nullwajib
  • attributesobjectwajib
  • Properti tambahanNilai apa pun
  • excludedobjectwajib
  • suppressedintegerwajib
  • not_subscribedintegerwajib
  • missing_recipient_hashintegerwajib
  • missing_consent_evidenceintegerwajib

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/audience/segments/{segmentId}/preview' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'X-Banger-Product-Id: 00000000-0000-4000-8000-000000000001'
GET/v1/workspaces/{workspaceId}/audience/approvals

listProductApprovalEvidence

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

X-Banger-Product-Id
header · wajib

Produk operasi eksplisit; harus sesuai dengan kredensial OAuth bercakupan produk.

  • valuestring

    format: "uuid"

status
query
  • valuestring

    enum: "pending", "approved", "rejected", "cancelled", "expired", "undecided"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Pembacaan kembali kanonis atau tanda terima idempoten. Penerimaan penyedia adalah sent; delivered memerlukan peristiwa pengiriman dan tidak membuktikan masuk ke kotak masuk.

application/json

  • valueobject
  • dataarraywajib
  • Setiap itemtidak ditentukan
  • allOf 1object
  • idstringwajib

    format: "uuid"

  • requested_by_actor_idstringwajib
  • action_kindstringwajib
  • summarystringwajib
  • capability_scopesarraywajib
  • Setiap itemstring
  • resource_scopeobjectwajib
  • Properti tambahanarray
  • Setiap itemstring

    Penumpukan lebih lanjut dihilangkan

  • payloadobjectwajib
  • Properti tambahanNilai apa pun
  • payload_sha256stringwajib

    pattern: "^[0-9a-f]{64}$"

  • statusstringwajib

    enum: "pending", "approved", "rejected", "cancelled", "expired"

  • missedbooleanwajib
  • expires_atstringwajib

    format: "date-time"

  • decided_by_actor_idstring | null
  • decision_reasonstring | null
  • created_atstringwajib

    format: "date-time"

  • updated_atstringwajib

    format: "date-time"

  • decided_atstring | null

    format: "date-time"

  • execution_job_idstring

    format: "uuid"

  • reviewobject

    Tidak ada properti tambahan

  • dispositionstringwajib

    enum: "automatic", "human_required"

  • recipient_countinteger | nullwajib

    minimum: 0

  • reasonsarraywajib
  • Setiap itemstring

    Penumpukan lebih lanjut dihilangkan

  • checksarraywajib
  • Setiap itemstring

    Penumpukan lebih lanjut dihilangkan

  • allOf 2object
  • approval_idstringwajib

    format: "uuid"

  • broadcast_idstring | nullwajib

    format: "uuid"

  • import_idstring | nullwajib

    format: "uuid"

  • blockersarraywajib
  • Setiap itemobject
  • codestringwajib

    Penumpukan lebih lanjut dihilangkan

  • messagestringwajib

    Penumpukan lebih lanjut dihilangkan

  • executionsarraywajib
  • Setiap itemobject
  • idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • statusstringwajib

    Penumpukan lebih lanjut dihilangkan

  • resultobjectwajib

    Penumpukan lebih lanjut dihilangkan

  • error_codestring | nullwajib

    Penumpukan lebih lanjut dihilangkan

  • execution_job_idsarraywajib
  • Setiap itemstring

    format: "uuid"

  • execution_statusstringwajib

    enum: "completed", "failed", "queued", "awaiting_review", "not_queued"

  • human_review_urlstring | nullwajib
  • human_review_instructionstring | nullwajib

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/audience/approvals?status=pending' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'X-Banger-Product-Id: 00000000-0000-4000-8000-000000000001'
GET/v1/workspaces/{workspaceId}/audience/approvals/{approvalId}

getProductApprovalEvidence

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

X-Banger-Product-Id
header · wajib

Produk operasi eksplisit; harus sesuai dengan kredensial OAuth bercakupan produk.

  • valuestring

    format: "uuid"

approvalId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Pembacaan kembali kanonis atau tanda terima idempoten. Penerimaan penyedia adalah sent; delivered memerlukan peristiwa pengiriman dan tidak membuktikan masuk ke kotak masuk.

application/json

  • valueobject
  • datatidak ditentukanwajib
  • allOf 1object
  • idstringwajib

    format: "uuid"

  • requested_by_actor_idstringwajib
  • action_kindstringwajib
  • summarystringwajib
  • capability_scopesarraywajib
  • Setiap itemstring
  • resource_scopeobjectwajib
  • Properti tambahanarray
  • Setiap itemstring
  • payloadobjectwajib
  • Properti tambahanNilai apa pun
  • payload_sha256stringwajib

    pattern: "^[0-9a-f]{64}$"

  • statusstringwajib

    enum: "pending", "approved", "rejected", "cancelled", "expired"

  • missedbooleanwajib
  • expires_atstringwajib

    format: "date-time"

  • decided_by_actor_idstring | null
  • decision_reasonstring | null
  • created_atstringwajib

    format: "date-time"

  • updated_atstringwajib

    format: "date-time"

  • decided_atstring | null

    format: "date-time"

  • execution_job_idstring

    format: "uuid"

  • reviewobject

    Tidak ada properti tambahan

  • dispositionstringwajib

    enum: "automatic", "human_required"

  • recipient_countinteger | nullwajib

    minimum: 0

  • reasonsarraywajib
  • Setiap itemstring
  • checksarraywajib
  • Setiap itemstring
  • allOf 2object
  • approval_idstringwajib

    format: "uuid"

  • broadcast_idstring | nullwajib

    format: "uuid"

  • import_idstring | nullwajib

    format: "uuid"

  • blockersarraywajib
  • Setiap itemobject
  • codestringwajib
  • messagestringwajib
  • executionsarraywajib
  • Setiap itemobject
  • idstringwajib

    format: "uuid"

  • statusstringwajib
  • resultobjectwajib
  • Properti tambahanNilai apa pun
  • error_codestring | nullwajib
  • execution_job_idsarraywajib
  • Setiap itemstring

    format: "uuid"

  • execution_statusstringwajib

    enum: "completed", "failed", "queued", "awaiting_review", "not_queued"

  • human_review_urlstring | nullwajib
  • human_review_instructionstring | nullwajib

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/audience/approvals/{approvalId}' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'X-Banger-Product-Id: 00000000-0000-4000-8000-000000000001'

Formulir pendaftaran

GET/v1/workspaces/{workspaceId}/signup-forms

Formulir pendaftaran produk beserta kode sematan, tautan yang dihosting, tampilan, pendaftaran, konfirmasi, pelanggan, dan tingkat konversi.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

include_archived
query
  • valueboolean

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Respons berhasil.

application/json

  • valueobject
  • dataarraywajib
  • Setiap itemobject
  • idstringwajib

    format: "uuid"

  • product_idstringwajib

    format: "uuid"

  • public_idstringwajib

    pattern: "^f_[a-z0-9]{16}$"

  • namestringwajib
  • kindstringwajib

    enum: "inline", "popup", "bar", "slide_in", "page"

  • list_idstringwajib

    format: "uuid"

  • list_namestringwajib
  • mailbox_idstring | nullwajib

    format: "uuid"

  • double_opt_inbooleanwajib
  • configobjectwajib

    Tidak ada properti tambahan

  • eyebrowstring

    maxLength: 60

  • headlinestring

    minLength: 1 · maxLength: 140

  • bodystring

    maxLength: 400

  • button_labelstring

    minLength: 1 · maxLength: 40

  • email_placeholderstring

    maxLength: 80

  • name_placeholderstring

    maxLength: 60

  • fine_printstring

    maxLength: 160

  • incentivestring

    maxLength: 160

  • success_headlinestring

    maxLength: 120

  • success_bodystring

    maxLength: 400

  • redirect_urlstring

    maxLength: 2000 · pattern: "^(|https://[^\\s\"'<>]+)$"

  • image_urlstring

    maxLength: 2000 · pattern: "^(|https://[^\\s\"'<>]+)$"

  • artstring

    enum: "arcs", "blocks", "horizon", "confetti", "frame", "bands", "dots"

  • stylestring

    enum: "", "brand", "material", "clarity", "editorial", "bold", "luxe", "playful", "plain"

  • count_nounstring

    maxLength: 30

  • confirm_promisestring

    maxLength: 200

  • localestring
  • collect_nameboolean
  • show_logoboolean
  • show_countboolean
  • exit_intentboolean
  • delay_secondsinteger

    minimum: 0 · maximum: 600

  • scroll_percentinteger

    minimum: 0 · maximum: 100

  • frequency_daysinteger

    minimum: 0 · maximum: 365

  • imagestring

    enum: "none", "photo", "art"

  • layoutstring

    enum: "stacked", "split"

  • themestring

    enum: "light", "dark", "brand", "auto"

  • positionstring

    enum: "bottom", "top", "right", "left"

  • fieldsarray

    maxItems: 6

  • Setiap itemobject

    Pertanyaan pilihan memerlukan opsi. Tipe pertanyaan lain tidak menerima opsi. Kunci harus unik dan tidak boleh memakai field formulir yang dicadangkan; kunci yang dihilangkan diturunkan dari label.

    Tidak ada properti tambahan

  • keystring

    pattern: "^[a-z][a-z0-9_]{0,39}$"

    Penumpukan lebih lanjut dihilangkan

  • labelstringwajib

    minLength: 1 · maxLength: 80

    Penumpukan lebih lanjut dihilangkan

  • typestring

    default: "text" · enum: "text", "select", "checkbox"

    Penumpukan lebih lanjut dihilangkan

  • requiredboolean

    default: false

    Penumpukan lebih lanjut dihilangkan

  • placeholderstring

    maxLength: 80

    Penumpukan lebih lanjut dihilangkan

  • optionsarray

    minItems: 1 · maxItems: 20 · uniqueItems: true

    Penumpukan lebih lanjut dihilangkan

  • statusstringwajib

    enum: "active", "paused", "archived"

  • viewsintegerwajib
  • submissionsintegerwajib
  • confirmationsintegerwajib
  • subscribersintegerwajib
  • versionintegerwajib
  • created_atstringwajib

    format: "date-time"

  • updated_atstringwajib

    format: "date-time"

  • hosted_urlstringwajib
  • embed_codestringwajib
  • embed_slotstringwajib
  • open_buttonstringwajib
  • conversion_ratenumberwajib

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/signup-forms?include_archived=true' \
  --header "Authorization: Bearer $BANGER_API_KEY"
POST/v1/workspaces/{workspaceId}/signup-forms

Buat formulir: kind (inline, popup, bar, slide_in, page), list_id atau list_name, mailbox_id opsional, double_opt_in (default true), dan config parsial.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

Idempotency-Key
header · wajib
  • valuestring

    minLength: 1 · maxLength: 256

Isi permintaan wajib

application/json

  • valueobject
  • namestring

    maxLength: 200

  • kindstring

    default: "inline" · enum: "inline", "popup", "bar", "slide_in", "page"

  • list_idstring

    format: "uuid"

  • list_namestring

    maxLength: 200

  • mailbox_idstring | null

    format: "uuid"

  • double_opt_inboolean

    default: true

  • configobject

    Tidak ada properti tambahan

  • eyebrowstring

    maxLength: 60

  • headlinestring

    minLength: 1 · maxLength: 140

  • bodystring

    maxLength: 400

  • button_labelstring

    minLength: 1 · maxLength: 40

  • email_placeholderstring

    maxLength: 80

  • name_placeholderstring

    maxLength: 60

  • fine_printstring

    maxLength: 160

  • incentivestring

    maxLength: 160

  • success_headlinestring

    maxLength: 120

  • success_bodystring

    maxLength: 400

  • redirect_urlstring

    maxLength: 2000 · pattern: "^(|https://[^\\s\"'<>]+)$"

  • image_urlstring

    maxLength: 2000 · pattern: "^(|https://[^\\s\"'<>]+)$"

  • artstring

    enum: "arcs", "blocks", "horizon", "confetti", "frame", "bands", "dots"

  • stylestring

    enum: "", "brand", "material", "clarity", "editorial", "bold", "luxe", "playful", "plain"

  • count_nounstring

    maxLength: 30

  • confirm_promisestring

    maxLength: 200

  • localestring
  • collect_nameboolean
  • show_logoboolean
  • show_countboolean
  • exit_intentboolean
  • delay_secondsinteger

    minimum: 0 · maximum: 600

  • scroll_percentinteger

    minimum: 0 · maximum: 100

  • frequency_daysinteger

    minimum: 0 · maximum: 365

  • imagestring

    enum: "none", "photo", "art"

  • layoutstring

    enum: "stacked", "split"

  • themestring

    enum: "light", "dark", "brand", "auto"

  • positionstring

    enum: "bottom", "top", "right", "left"

  • fieldsarray

    maxItems: 6

  • Setiap itemobject

    Pertanyaan pilihan memerlukan opsi. Tipe pertanyaan lain tidak menerima opsi. Kunci harus unik dan tidak boleh memakai field formulir yang dicadangkan; kunci yang dihilangkan diturunkan dari label.

    Tidak ada properti tambahan

  • keystring

    pattern: "^[a-z][a-z0-9_]{0,39}$"

  • labelstringwajib

    minLength: 1 · maxLength: 80

  • typestring

    default: "text" · enum: "text", "select", "checkbox"

  • requiredboolean

    default: false

  • placeholderstring

    maxLength: 80

  • optionsarray

    minItems: 1 · maxItems: 20 · uniqueItems: true

  • Setiap itemstring

    minLength: 1 · maxLength: 80

Respons berhasil 200

Respons berhasil.

application/json

  • valueobject
  • dataobjectwajib
  • idstring

    format: "uuid"

  • product_idstring

    format: "uuid"

  • public_idstring

    pattern: "^f_[a-z0-9]{16}$"

  • namestring
  • kindstring

    enum: "inline", "popup", "bar", "slide_in", "page"

  • list_idstring

    format: "uuid"

  • list_namestring
  • mailbox_idstring | null

    format: "uuid"

  • double_opt_inboolean
  • configobject

    Tidak ada properti tambahan

  • eyebrowstring

    maxLength: 60

  • headlinestring

    minLength: 1 · maxLength: 140

  • bodystring

    maxLength: 400

  • button_labelstring

    minLength: 1 · maxLength: 40

  • email_placeholderstring

    maxLength: 80

  • name_placeholderstring

    maxLength: 60

  • fine_printstring

    maxLength: 160

  • incentivestring

    maxLength: 160

  • success_headlinestring

    maxLength: 120

  • success_bodystring

    maxLength: 400

  • redirect_urlstring

    maxLength: 2000 · pattern: "^(|https://[^\\s\"'<>]+)$"

  • image_urlstring

    maxLength: 2000 · pattern: "^(|https://[^\\s\"'<>]+)$"

  • artstring

    enum: "arcs", "blocks", "horizon", "confetti", "frame", "bands", "dots"

  • stylestring

    enum: "", "brand", "material", "clarity", "editorial", "bold", "luxe", "playful", "plain"

  • count_nounstring

    maxLength: 30

  • confirm_promisestring

    maxLength: 200

  • localestring
  • collect_nameboolean
  • show_logoboolean
  • show_countboolean
  • exit_intentboolean
  • delay_secondsinteger

    minimum: 0 · maximum: 600

  • scroll_percentinteger

    minimum: 0 · maximum: 100

  • frequency_daysinteger

    minimum: 0 · maximum: 365

  • imagestring

    enum: "none", "photo", "art"

  • layoutstring

    enum: "stacked", "split"

  • themestring

    enum: "light", "dark", "brand", "auto"

  • positionstring

    enum: "bottom", "top", "right", "left"

  • fieldsarray

    maxItems: 6

  • Setiap itemobject

    Pertanyaan pilihan memerlukan opsi. Tipe pertanyaan lain tidak menerima opsi. Kunci harus unik dan tidak boleh memakai field formulir yang dicadangkan; kunci yang dihilangkan diturunkan dari label.

    Tidak ada properti tambahan

  • keystring

    pattern: "^[a-z][a-z0-9_]{0,39}$"

  • labelstringwajib

    minLength: 1 · maxLength: 80

  • typestring

    default: "text" · enum: "text", "select", "checkbox"

  • requiredboolean

    default: false

  • placeholderstring

    maxLength: 80

  • optionsarray

    minItems: 1 · maxItems: 20 · uniqueItems: true

  • Setiap itemstring

    minLength: 1 · maxLength: 80

    Penumpukan lebih lanjut dihilangkan

  • statusstring

    enum: "active", "paused", "archived"

  • viewsinteger
  • submissionsinteger
  • confirmationsinteger
  • subscribersinteger
  • versioninteger
  • created_atstring

    format: "date-time"

  • updated_atstring

    format: "date-time"

  • hosted_urlstring
  • embed_codestring
  • embed_slotstring
  • open_buttonstring
  • conversion_ratenumber
  • replayedboolean

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/signup-forms' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Idempotency-Key: example' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "name": "example",
  "kind": "inline",
  "list_id": "00000000-0000-4000-8000-000000000001",
  "list_name": "example",
  "mailbox_id": "00000000-0000-4000-8000-000000000001",
  "double_opt_in": true,
  "config": {
    "eyebrow": "example",
    "headline": "example",
    "body": "example",
    "button_label": "example",
    "email_placeholder": "example",
    "name_placeholder": "example",
    "fine_print": "example",
    "incentive": "example",
    "success_headline": "example",
    "success_body": "example",
    "redirect_url": "example",
    "image_url": "example",
    "art": "arcs",
    "style": "",
    "count_noun": "example",
    "confirm_promise": "example",
    "locale": "example",
    "collect_name": true,
    "show_logo": true,
    "show_count": true,
    "exit_intent": true,
    "delay_seconds": 0,
    "scroll_percent": 0,
    "frequency_days": 0,
    "image": "none",
    "layout": "stacked",
    "theme": "light",
    "position": "bottom",
    "fields": [
      {
        "key": "example",
        "label": "example",
        "type": "text",
        "required": false,
        "placeholder": "example",
        "options": [
          "example"
        ]
      }
    ]
  }
}'
GET/v1/workspaces/{workspaceId}/signup-forms/readiness

Apakah produk ini dapat mengaktifkan formulir (jalur produknya mengirim dari domain terverifikasi).

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Respons berhasil.

application/json

  • valueobject
  • dataobjectwajib
  • forms_enabledbooleanwajib
  • reasonstring

    enum: "verified_domain_required"

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/signup-forms/readiness' \
  --header "Authorization: Bearer $BANGER_API_KEY"
POST/v1/workspaces/{workspaceId}/signup-forms/preview

Render pengaturan formulir yang belum disimpan sebagai halaman HTML lengkap di situs sketsa.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan wajib

application/json

  • valueobject
  • kindstring

    enum: "inline", "popup", "bar", "slide_in", "page"

  • configobject

    Tidak ada properti tambahan

  • eyebrowstring

    maxLength: 60

  • headlinestring

    minLength: 1 · maxLength: 140

  • bodystring

    maxLength: 400

  • button_labelstring

    minLength: 1 · maxLength: 40

  • email_placeholderstring

    maxLength: 80

  • name_placeholderstring

    maxLength: 60

  • fine_printstring

    maxLength: 160

  • incentivestring

    maxLength: 160

  • success_headlinestring

    maxLength: 120

  • success_bodystring

    maxLength: 400

  • redirect_urlstring

    maxLength: 2000 · pattern: "^(|https://[^\\s\"'<>]+)$"

  • image_urlstring

    maxLength: 2000 · pattern: "^(|https://[^\\s\"'<>]+)$"

  • artstring

    enum: "arcs", "blocks", "horizon", "confetti", "frame", "bands", "dots"

  • stylestring

    enum: "", "brand", "material", "clarity", "editorial", "bold", "luxe", "playful", "plain"

  • count_nounstring

    maxLength: 30

  • confirm_promisestring

    maxLength: 200

  • localestring
  • collect_nameboolean
  • show_logoboolean
  • show_countboolean
  • exit_intentboolean
  • delay_secondsinteger

    minimum: 0 · maximum: 600

  • scroll_percentinteger

    minimum: 0 · maximum: 100

  • frequency_daysinteger

    minimum: 0 · maximum: 365

  • imagestring

    enum: "none", "photo", "art"

  • layoutstring

    enum: "stacked", "split"

  • themestring

    enum: "light", "dark", "brand", "auto"

  • positionstring

    enum: "bottom", "top", "right", "left"

  • fieldsarray

    maxItems: 6

  • Setiap itemobject

    Pertanyaan pilihan memerlukan opsi. Tipe pertanyaan lain tidak menerima opsi. Kunci harus unik dan tidak boleh memakai field formulir yang dicadangkan; kunci yang dihilangkan diturunkan dari label.

    Tidak ada properti tambahan

  • keystring

    pattern: "^[a-z][a-z0-9_]{0,39}$"

  • labelstringwajib

    minLength: 1 · maxLength: 80

  • typestring

    default: "text" · enum: "text", "select", "checkbox"

  • requiredboolean

    default: false

  • placeholderstring

    maxLength: 80

  • optionsarray

    minItems: 1 · maxItems: 20 · uniqueItems: true

  • Setiap itemstring

    minLength: 1 · maxLength: 80

  • double_opt_inboolean
  • statestring

    enum: "form", "success"

Respons berhasil 200

Respons berhasil.

application/json

  • valueobject
  • dataobjectwajib
  • kindstringwajib

    enum: "inline", "popup", "bar", "slide_in", "page"

  • statestringwajib

    enum: "form", "success"

  • htmlstringwajib

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/signup-forms/preview' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "kind": "inline",
  "config": {
    "eyebrow": "example",
    "headline": "example",
    "body": "example",
    "button_label": "example",
    "email_placeholder": "example",
    "name_placeholder": "example",
    "fine_print": "example",
    "incentive": "example",
    "success_headline": "example",
    "success_body": "example",
    "redirect_url": "example",
    "image_url": "example",
    "art": "arcs",
    "style": "",
    "count_noun": "example",
    "confirm_promise": "example",
    "locale": "example",
    "collect_name": true,
    "show_logo": true,
    "show_count": true,
    "exit_intent": true,
    "delay_seconds": 0,
    "scroll_percent": 0,
    "frequency_days": 0,
    "image": "none",
    "layout": "stacked",
    "theme": "light",
    "position": "bottom",
    "fields": [
      {
        "key": "example",
        "label": "example",
        "type": "text",
        "required": false,
        "placeholder": "example",
        "options": [
          "example"
        ]
      }
    ]
  },
  "double_opt_in": true,
  "state": "form"
}'
GET/v1/workspaces/{workspaceId}/signup-forms/{formId}

getSignupForm

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

formId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Respons berhasil.

application/json

  • valueobject
  • dataobjectwajib
  • idstringwajib

    format: "uuid"

  • product_idstringwajib

    format: "uuid"

  • public_idstringwajib

    pattern: "^f_[a-z0-9]{16}$"

  • namestringwajib
  • kindstringwajib

    enum: "inline", "popup", "bar", "slide_in", "page"

  • list_idstringwajib

    format: "uuid"

  • list_namestringwajib
  • mailbox_idstring | nullwajib

    format: "uuid"

  • double_opt_inbooleanwajib
  • configobjectwajib

    Tidak ada properti tambahan

  • eyebrowstring

    maxLength: 60

  • headlinestring

    minLength: 1 · maxLength: 140

  • bodystring

    maxLength: 400

  • button_labelstring

    minLength: 1 · maxLength: 40

  • email_placeholderstring

    maxLength: 80

  • name_placeholderstring

    maxLength: 60

  • fine_printstring

    maxLength: 160

  • incentivestring

    maxLength: 160

  • success_headlinestring

    maxLength: 120

  • success_bodystring

    maxLength: 400

  • redirect_urlstring

    maxLength: 2000 · pattern: "^(|https://[^\\s\"'<>]+)$"

  • image_urlstring

    maxLength: 2000 · pattern: "^(|https://[^\\s\"'<>]+)$"

  • artstring

    enum: "arcs", "blocks", "horizon", "confetti", "frame", "bands", "dots"

  • stylestring

    enum: "", "brand", "material", "clarity", "editorial", "bold", "luxe", "playful", "plain"

  • count_nounstring

    maxLength: 30

  • confirm_promisestring

    maxLength: 200

  • localestring
  • collect_nameboolean
  • show_logoboolean
  • show_countboolean
  • exit_intentboolean
  • delay_secondsinteger

    minimum: 0 · maximum: 600

  • scroll_percentinteger

    minimum: 0 · maximum: 100

  • frequency_daysinteger

    minimum: 0 · maximum: 365

  • imagestring

    enum: "none", "photo", "art"

  • layoutstring

    enum: "stacked", "split"

  • themestring

    enum: "light", "dark", "brand", "auto"

  • positionstring

    enum: "bottom", "top", "right", "left"

  • fieldsarray

    maxItems: 6

  • Setiap itemobject

    Pertanyaan pilihan memerlukan opsi. Tipe pertanyaan lain tidak menerima opsi. Kunci harus unik dan tidak boleh memakai field formulir yang dicadangkan; kunci yang dihilangkan diturunkan dari label.

    Tidak ada properti tambahan

  • keystring

    pattern: "^[a-z][a-z0-9_]{0,39}$"

  • labelstringwajib

    minLength: 1 · maxLength: 80

  • typestring

    default: "text" · enum: "text", "select", "checkbox"

  • requiredboolean

    default: false

  • placeholderstring

    maxLength: 80

  • optionsarray

    minItems: 1 · maxItems: 20 · uniqueItems: true

  • Setiap itemstring

    minLength: 1 · maxLength: 80

    Penumpukan lebih lanjut dihilangkan

  • statusstringwajib

    enum: "active", "paused", "archived"

  • viewsintegerwajib
  • submissionsintegerwajib
  • confirmationsintegerwajib
  • subscribersintegerwajib
  • versionintegerwajib
  • created_atstringwajib

    format: "date-time"

  • updated_atstringwajib

    format: "date-time"

  • hosted_urlstringwajib
  • embed_codestringwajib
  • embed_slotstringwajib
  • open_buttonstringwajib
  • conversion_ratenumberwajib

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/signup-forms/{formId}' \
  --header "Authorization: Bearer $BANGER_API_KEY"
PATCH/v1/workspaces/{workspaceId}/signup-forms/{formId}

Pembaruan parsial; config digabung ke pengaturan tersimpan; status active, paused, atau archived; expected_version menjaga dari suntingan bersamaan.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

formId
path · wajib
  • valuestring

    format: "uuid"

Idempotency-Key
header · wajib
  • valuestring

    minLength: 1 · maxLength: 256

Isi permintaan wajib

application/json

  • valueobject
  • namestring

    maxLength: 200

  • kindstring

    default: "inline" · enum: "inline", "popup", "bar", "slide_in", "page"

  • list_idstring

    format: "uuid"

  • list_namestring

    maxLength: 200

  • mailbox_idstring | null

    format: "uuid"

  • double_opt_inboolean

    default: true

  • configobject

    Tidak ada properti tambahan

  • eyebrowstring

    maxLength: 60

  • headlinestring

    minLength: 1 · maxLength: 140

  • bodystring

    maxLength: 400

  • button_labelstring

    minLength: 1 · maxLength: 40

  • email_placeholderstring

    maxLength: 80

  • name_placeholderstring

    maxLength: 60

  • fine_printstring

    maxLength: 160

  • incentivestring

    maxLength: 160

  • success_headlinestring

    maxLength: 120

  • success_bodystring

    maxLength: 400

  • redirect_urlstring

    maxLength: 2000 · pattern: "^(|https://[^\\s\"'<>]+)$"

  • image_urlstring

    maxLength: 2000 · pattern: "^(|https://[^\\s\"'<>]+)$"

  • artstring

    enum: "arcs", "blocks", "horizon", "confetti", "frame", "bands", "dots"

  • stylestring

    enum: "", "brand", "material", "clarity", "editorial", "bold", "luxe", "playful", "plain"

  • count_nounstring

    maxLength: 30

  • confirm_promisestring

    maxLength: 200

  • localestring
  • collect_nameboolean
  • show_logoboolean
  • show_countboolean
  • exit_intentboolean
  • delay_secondsinteger

    minimum: 0 · maximum: 600

  • scroll_percentinteger

    minimum: 0 · maximum: 100

  • frequency_daysinteger

    minimum: 0 · maximum: 365

  • imagestring

    enum: "none", "photo", "art"

  • layoutstring

    enum: "stacked", "split"

  • themestring

    enum: "light", "dark", "brand", "auto"

  • positionstring

    enum: "bottom", "top", "right", "left"

  • fieldsarray

    maxItems: 6

  • Setiap itemobject

    Pertanyaan pilihan memerlukan opsi. Tipe pertanyaan lain tidak menerima opsi. Kunci harus unik dan tidak boleh memakai field formulir yang dicadangkan; kunci yang dihilangkan diturunkan dari label.

    Tidak ada properti tambahan

  • keystring

    pattern: "^[a-z][a-z0-9_]{0,39}$"

  • labelstringwajib

    minLength: 1 · maxLength: 80

  • typestring

    default: "text" · enum: "text", "select", "checkbox"

  • requiredboolean

    default: false

  • placeholderstring

    maxLength: 80

  • optionsarray

    minItems: 1 · maxItems: 20 · uniqueItems: true

  • Setiap itemstring

    minLength: 1 · maxLength: 80

  • statusstring

    enum: "active", "paused", "archived"

  • expected_versioninteger

Respons berhasil 200

Respons berhasil.

application/json

  • valueobject
  • dataobjectwajib
  • idstringwajib

    format: "uuid"

  • product_idstringwajib

    format: "uuid"

  • public_idstringwajib

    pattern: "^f_[a-z0-9]{16}$"

  • namestringwajib
  • kindstringwajib

    enum: "inline", "popup", "bar", "slide_in", "page"

  • list_idstringwajib

    format: "uuid"

  • list_namestringwajib
  • mailbox_idstring | nullwajib

    format: "uuid"

  • double_opt_inbooleanwajib
  • configobjectwajib

    Tidak ada properti tambahan

  • eyebrowstring

    maxLength: 60

  • headlinestring

    minLength: 1 · maxLength: 140

  • bodystring

    maxLength: 400

  • button_labelstring

    minLength: 1 · maxLength: 40

  • email_placeholderstring

    maxLength: 80

  • name_placeholderstring

    maxLength: 60

  • fine_printstring

    maxLength: 160

  • incentivestring

    maxLength: 160

  • success_headlinestring

    maxLength: 120

  • success_bodystring

    maxLength: 400

  • redirect_urlstring

    maxLength: 2000 · pattern: "^(|https://[^\\s\"'<>]+)$"

  • image_urlstring

    maxLength: 2000 · pattern: "^(|https://[^\\s\"'<>]+)$"

  • artstring

    enum: "arcs", "blocks", "horizon", "confetti", "frame", "bands", "dots"

  • stylestring

    enum: "", "brand", "material", "clarity", "editorial", "bold", "luxe", "playful", "plain"

  • count_nounstring

    maxLength: 30

  • confirm_promisestring

    maxLength: 200

  • localestring
  • collect_nameboolean
  • show_logoboolean
  • show_countboolean
  • exit_intentboolean
  • delay_secondsinteger

    minimum: 0 · maximum: 600

  • scroll_percentinteger

    minimum: 0 · maximum: 100

  • frequency_daysinteger

    minimum: 0 · maximum: 365

  • imagestring

    enum: "none", "photo", "art"

  • layoutstring

    enum: "stacked", "split"

  • themestring

    enum: "light", "dark", "brand", "auto"

  • positionstring

    enum: "bottom", "top", "right", "left"

  • fieldsarray

    maxItems: 6

  • Setiap itemobject

    Pertanyaan pilihan memerlukan opsi. Tipe pertanyaan lain tidak menerima opsi. Kunci harus unik dan tidak boleh memakai field formulir yang dicadangkan; kunci yang dihilangkan diturunkan dari label.

    Tidak ada properti tambahan

  • keystring

    pattern: "^[a-z][a-z0-9_]{0,39}$"

  • labelstringwajib

    minLength: 1 · maxLength: 80

  • typestring

    default: "text" · enum: "text", "select", "checkbox"

  • requiredboolean

    default: false

  • placeholderstring

    maxLength: 80

  • optionsarray

    minItems: 1 · maxItems: 20 · uniqueItems: true

  • Setiap itemstring

    minLength: 1 · maxLength: 80

    Penumpukan lebih lanjut dihilangkan

  • statusstringwajib

    enum: "active", "paused", "archived"

  • viewsintegerwajib
  • submissionsintegerwajib
  • confirmationsintegerwajib
  • subscribersintegerwajib
  • versionintegerwajib
  • created_atstringwajib

    format: "date-time"

  • updated_atstringwajib

    format: "date-time"

  • hosted_urlstringwajib
  • embed_codestringwajib
  • embed_slotstringwajib
  • open_buttonstringwajib
  • conversion_ratenumberwajib
  • replayedbooleanwajib

Contoh curl

curl --request PATCH --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/signup-forms/{formId}' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Idempotency-Key: example' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "name": "example",
  "kind": "inline",
  "list_id": "00000000-0000-4000-8000-000000000001",
  "list_name": "example",
  "mailbox_id": "00000000-0000-4000-8000-000000000001",
  "double_opt_in": true,
  "config": {
    "eyebrow": "example",
    "headline": "example",
    "body": "example",
    "button_label": "example",
    "email_placeholder": "example",
    "name_placeholder": "example",
    "fine_print": "example",
    "incentive": "example",
    "success_headline": "example",
    "success_body": "example",
    "redirect_url": "example",
    "image_url": "example",
    "art": "arcs",
    "style": "",
    "count_noun": "example",
    "confirm_promise": "example",
    "locale": "example",
    "collect_name": true,
    "show_logo": true,
    "show_count": true,
    "exit_intent": true,
    "delay_seconds": 0,
    "scroll_percent": 0,
    "frequency_days": 0,
    "image": "none",
    "layout": "stacked",
    "theme": "light",
    "position": "bottom",
    "fields": [
      {
        "key": "example",
        "label": "example",
        "type": "text",
        "required": false,
        "placeholder": "example",
        "options": [
          "example"
        ]
      }
    ]
  },
  "status": "active",
  "expected_version": 1
}'
POST/v1/workspaces/{workspaceId}/signup-forms/{formId}/preview

Render formulir tersimpan, opsional dengan perubahan yang belum disimpan, dalam status formulir atau berhasil.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

formId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan wajib

application/json

  • valueobject
  • kindstring

    enum: "inline", "popup", "bar", "slide_in", "page"

  • configobject

    Tidak ada properti tambahan

  • eyebrowstring

    maxLength: 60

  • headlinestring

    minLength: 1 · maxLength: 140

  • bodystring

    maxLength: 400

  • button_labelstring

    minLength: 1 · maxLength: 40

  • email_placeholderstring

    maxLength: 80

  • name_placeholderstring

    maxLength: 60

  • fine_printstring

    maxLength: 160

  • incentivestring

    maxLength: 160

  • success_headlinestring

    maxLength: 120

  • success_bodystring

    maxLength: 400

  • redirect_urlstring

    maxLength: 2000 · pattern: "^(|https://[^\\s\"'<>]+)$"

  • image_urlstring

    maxLength: 2000 · pattern: "^(|https://[^\\s\"'<>]+)$"

  • artstring

    enum: "arcs", "blocks", "horizon", "confetti", "frame", "bands", "dots"

  • stylestring

    enum: "", "brand", "material", "clarity", "editorial", "bold", "luxe", "playful", "plain"

  • count_nounstring

    maxLength: 30

  • confirm_promisestring

    maxLength: 200

  • localestring
  • collect_nameboolean
  • show_logoboolean
  • show_countboolean
  • exit_intentboolean
  • delay_secondsinteger

    minimum: 0 · maximum: 600

  • scroll_percentinteger

    minimum: 0 · maximum: 100

  • frequency_daysinteger

    minimum: 0 · maximum: 365

  • imagestring

    enum: "none", "photo", "art"

  • layoutstring

    enum: "stacked", "split"

  • themestring

    enum: "light", "dark", "brand", "auto"

  • positionstring

    enum: "bottom", "top", "right", "left"

  • fieldsarray

    maxItems: 6

  • Setiap itemobject

    Pertanyaan pilihan memerlukan opsi. Tipe pertanyaan lain tidak menerima opsi. Kunci harus unik dan tidak boleh memakai field formulir yang dicadangkan; kunci yang dihilangkan diturunkan dari label.

    Tidak ada properti tambahan

  • keystring

    pattern: "^[a-z][a-z0-9_]{0,39}$"

  • labelstringwajib

    minLength: 1 · maxLength: 80

  • typestring

    default: "text" · enum: "text", "select", "checkbox"

  • requiredboolean

    default: false

  • placeholderstring

    maxLength: 80

  • optionsarray

    minItems: 1 · maxItems: 20 · uniqueItems: true

  • Setiap itemstring

    minLength: 1 · maxLength: 80

  • double_opt_inboolean
  • statestring

    enum: "form", "success"

Respons berhasil 200

Respons berhasil.

application/json

  • valueobject
  • dataobjectwajib
  • kindstringwajib

    enum: "inline", "popup", "bar", "slide_in", "page"

  • statestringwajib

    enum: "form", "success"

  • htmlstringwajib

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/signup-forms/{formId}/preview' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "kind": "inline",
  "config": {
    "eyebrow": "example",
    "headline": "example",
    "body": "example",
    "button_label": "example",
    "email_placeholder": "example",
    "name_placeholder": "example",
    "fine_print": "example",
    "incentive": "example",
    "success_headline": "example",
    "success_body": "example",
    "redirect_url": "example",
    "image_url": "example",
    "art": "arcs",
    "style": "",
    "count_noun": "example",
    "confirm_promise": "example",
    "locale": "example",
    "collect_name": true,
    "show_logo": true,
    "show_count": true,
    "exit_intent": true,
    "delay_seconds": 0,
    "scroll_percent": 0,
    "frequency_days": 0,
    "image": "none",
    "layout": "stacked",
    "theme": "light",
    "position": "bottom",
    "fields": [
      {
        "key": "example",
        "label": "example",
        "type": "text",
        "required": false,
        "placeholder": "example",
        "options": [
          "example"
        ]
      }
    ]
  },
  "double_opt_in": true,
  "state": "form"
}'

Formulir pendaftaran publik

GET/v1/forms/embed.js

Pemuat formulir pendaftaran. Satu tag script per formulir (data-banger-form="f_…") merender widget di shadow root serta menangani pemicu dan pengiriman.

Endpoint publik: tidak perlu autentikasi.

Parameter

Tidak ada parameter yang ditentukan.

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Pemuat formulir pendaftaran yang dapat disematkan.

text/javascript

  • valuestring

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/forms/embed.js'
OPTIONS/v1/forms/embed.js

Baca kebijakan CORS pendaftaran publik

Endpoint publik: tidak perlu autentikasi.

Parameter

Tidak ada parameter yang ditentukan.

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 204

Respons berhasil.

Tanpa isi respons.

Contoh curl

curl --request OPTIONS --globoff 'https://api.bangermail.com/v1/forms/embed.js'
HEAD/v1/forms/embed.js

Baca header skrip sematan

Endpoint publik: tidak perlu autentikasi.

Parameter

Tidak ada parameter yang ditentukan.

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Respons berhasil.

Kontrak tidak menentukan skema respons.

Contoh curl

curl --request HEAD --globoff 'https://api.bangermail.com/v1/forms/embed.js'
GET/v1/forms/{publicId}/widget

Widget formulir aktif yang dirender (html, css, tautan font) dan perilaku popup. Publik, CORS terbuka, disimpan di cache selama satu menit.

Endpoint publik: tidak perlu autentikasi.

Parameter

Nama / lokasiSkema
publicId
path · wajib
  • valuestring

    pattern: "^f_[a-z0-9]{16}$"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Respons berhasil.

application/json

  • valueobject
  • dataobjectwajib
  • kindstringwajib

    enum: "inline", "popup", "bar", "slide_in", "page"

  • langstringwajib
  • htmlstringwajib
  • cssstringwajib
  • font_hrefstringwajib
  • redirect_urlstringwajib
  • behaviorobjectwajib
  • delay_secondsnumberwajib
  • scroll_percentnumberwajib
  • exit_intentbooleanwajib
  • frequency_daysnumberwajib

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/forms/{publicId}/widget'
OPTIONS/v1/forms/{publicId}/widget

Baca kebijakan CORS pendaftaran publik

Endpoint publik: tidak perlu autentikasi.

Parameter

Nama / lokasiSkema
publicId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 204

Respons berhasil.

Tanpa isi respons.

Contoh curl

curl --request OPTIONS --globoff 'https://api.bangermail.com/v1/forms/{publicId}/widget'
POST/v1/forms/{publicId}/subscribe

Pengunjung mendaftar. Dikodekan sebagai formulir (email, name, page, lang opsional) agar browser melewati preflight; JSON juga diterima. Pesan dan email konfirmasi mengikuti bahasa formulir, lalu lang, lalu Accept-Language. Dengan double opt-in, email konfirmasi dikirim dan orang masuk daftar setelah mengonfirmasi.

Endpoint publik: tidak perlu autentikasi.

Parameter

Nama / lokasiSkema
publicId
path · wajib
  • valuestring

    pattern: "^f_[a-z0-9]{16}$"

Isi permintaan wajib

application/x-www-form-urlencoded

  • valueobject

    Jawaban khusus memakai x_<field key> (atau kunci tanpa awalan). Jawaban wajib bergantung pada konfigurasi formulir. Handler membaca 8000 karakter pertama isi.

  • emailstringwajib

    format: "email" · maxLength: 320

  • namestring

    maxLength: 100

  • pagestring

    maxLength: 2000

  • elapsednumber | string

    Milidetik sejak formulir ditampilkan.

  • langstring

    maxLength: 35

  • localestring

    maxLength: 35

  • websitestring

    Honeypot; biarkan kosong.

    maxLength: 200

  • Properti tambahanstring | number

application/json

  • valueobject

    Jawaban khusus memakai x_<field key> (atau kunci tanpa awalan). Jawaban wajib bergantung pada konfigurasi formulir. Handler membaca 8000 karakter pertama isi.

  • emailstringwajib

    format: "email" · maxLength: 320

  • namestring

    maxLength: 100

  • pagestring

    maxLength: 2000

  • elapsednumber | string

    Milidetik sejak formulir ditampilkan.

  • langstring

    maxLength: 35

  • localestring

    maxLength: 35

  • websitestring

    Honeypot; biarkan kosong.

    maxLength: 200

  • Properti tambahanstring | number

Respons berhasil 200

Pendaftaran diterima.

application/json

  • valueobject
  • okbooleanwajib

    const: true

  • statusstringwajib

    enum: "pending_confirmation", "subscribed", "already_subscribed"

  • redirect_urlstring

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/forms/{publicId}/subscribe' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "email": "person@example.com",
  "name": "example",
  "page": "example",
  "elapsed": 1,
  "lang": "example",
  "locale": "example",
  "website": "example"
}'
OPTIONS/v1/forms/{publicId}/subscribe

Baca kebijakan CORS pendaftaran publik

Endpoint publik: tidak perlu autentikasi.

Parameter

Nama / lokasiSkema
publicId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 204

Respons berhasil.

Tanpa isi respons.

Contoh curl

curl --request OPTIONS --globoff 'https://api.bangermail.com/v1/forms/{publicId}/subscribe'
POST/v1/forms/{publicId}/view

Hitung satu tampilan widget.

Endpoint publik: tidak perlu autentikasi.

Parameter

Nama / lokasiSkema
publicId
path · wajib
  • valuestring

    pattern: "^f_[a-z0-9]{16}$"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 204

Dihitung.

Tanpa isi respons.

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/forms/{publicId}/view'
OPTIONS/v1/forms/{publicId}/view

Baca kebijakan CORS pendaftaran publik

Endpoint publik: tidak perlu autentikasi.

Parameter

Nama / lokasiSkema
publicId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 204

Respons berhasil.

Tanpa isi respons.

Contoh curl

curl --request OPTIONS --globoff 'https://api.bangermail.com/v1/forms/{publicId}/view'

Templat

GET/v1/workspaces/{workspaceId}/templates

listTemplates

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Respons berhasil.

application/json

  • valueobject
  • dataarraywajib
  • Setiap itemobject
  • idstringwajib

    format: "uuid"

  • product_idstring

    format: "uuid"

  • namestringwajib
  • subjectstringwajib
  • body_textstringwajib
  • contentobjectwajib
  • Properti tambahanstring
  • slotsarraywajib
  • Setiap itemobject
  • keystringwajib

    pattern: "^[A-Za-z0-9_$.-]{1,200}$"

  • labelstring

    maxLength: 120

  • typestring

    enum: "text", "paragraph", "url", "image"

  • helpstring

    maxLength: 300

  • statusstringwajib

    enum: "active", "archived"

  • originstringwajib

    enum: "person", "agent", "starter", "import"

  • created_by_actor_idstring | null
  • campaign_idstring | null

    format: "uuid"

  • message_kindstring
  • starter_idstring | null
  • starter_versioninteger | null
  • versionintegerwajib
  • created_atstringwajib

    format: "date-time"

  • updated_atstringwajib

    format: "date-time"

  • body_html_urlstring

    format: "uri"

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/templates' \
  --header "Authorization: Bearer $BANGER_API_KEY"
POST/v1/workspaces/{workspaceId}/templates

createTemplate

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan wajib

application/json

  • valueobject
  • namestringwajib

    minLength: 1 · maxLength: 200

  • subjectstring

    maxLength: 10000

  • body_textstring

    maxLength: 2000000

  • body_htmlstring

    maxLength: 2000000

  • contentobject
  • Properti tambahanstring
  • slotsarray
  • Setiap itemobject
  • keystringwajib

    pattern: "^[A-Za-z0-9_$.-]{1,200}$"

  • labelstring

    maxLength: 120

  • typestring

    enum: "text", "paragraph", "url", "image"

  • helpstring

    maxLength: 300

  • originstring

    enum: "person", "agent", "starter", "import"

  • message_kindstring
  • starter_idstring

    maxLength: 80

  • starter_versioninteger

    minimum: 1

Respons berhasil 201

Respons berhasil.

application/json

  • valueobject
  • dataobjectwajib
  • idstringwajib

    format: "uuid"

  • product_idstring

    format: "uuid"

  • namestringwajib
  • subjectstringwajib
  • body_textstringwajib
  • contentobjectwajib
  • Properti tambahanstring
  • slotsarraywajib
  • Setiap itemobject
  • keystringwajib

    pattern: "^[A-Za-z0-9_$.-]{1,200}$"

  • labelstring

    maxLength: 120

  • typestring

    enum: "text", "paragraph", "url", "image"

  • helpstring

    maxLength: 300

  • statusstringwajib

    enum: "active", "archived"

  • originstringwajib

    enum: "person", "agent", "starter", "import"

  • created_by_actor_idstring | null
  • campaign_idstring | null

    format: "uuid"

  • message_kindstring
  • starter_idstring | null
  • starter_versioninteger | null
  • versionintegerwajib
  • created_atstringwajib

    format: "date-time"

  • updated_atstringwajib

    format: "date-time"

  • body_html_urlstring

    format: "uri"

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/templates' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "name": "example",
  "subject": "example",
  "body_text": "example",
  "body_html": "example",
  "content": {},
  "slots": [
    {
      "key": "example",
      "label": "example",
      "type": "text",
      "help": "example"
    }
  ],
  "origin": "person",
  "message_kind": "example",
  "starter_id": "example",
  "starter_version": 1
}'
POST/v1/workspaces/{workspaceId}/templates/preview

previewDesign

Render masukan desain yang belum disimpan dengan nilai contoh atau audiens dan laporkan kekurangan placeholder.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan wajib

application/json

  • valueobject
  • subjectstring

    maxLength: 10000

  • body_textstring

    maxLength: 2000000

  • body_htmlstring

    maxLength: 2000000

  • contentobject
  • Properti tambahanstring
  • audienceobject

    Pilih semua kontak berlangganan atau setidaknya satu daftar contact_ids, list_ids, atau segment_ids yang tidak kosong.

  • all_subscribedboolean
  • contact_idsarray

    maxItems: 10000

  • Setiap itemstring

    format: "uuid"

  • list_idsarray

    maxItems: 1000

  • Setiap itemstring

    format: "uuid"

  • segment_idsarray

    maxItems: 1000

  • Setiap itemstring

    format: "uuid"

  • sample_emailstring

    Email kontak yang ada. Alamat tidak dikenal mengembalikan sample_recipient_not_found. Hilangkan untuk memakai nilai contoh atau audiens.

    maxLength: 320

Respons berhasil 200

Respons berhasil.

application/json

  • valueobject
  • dataobjectwajib
  • subjectstringwajib
  • body_textstringwajib
  • body_htmlstring
  • font_renderingarraywajib
  • Setiap itemobject
  • stackstringwajib
  • fontstringwajib
  • web_fontbooleanwajib
  • clientsarraywajib
  • Setiap itemobject
  • clientstringwajib

    Penumpukan lebih lanjut dihilangkan

  • labelstringwajib

    Penumpukan lebih lanjut dihilangkan

  • fontstringwajib

    Penumpukan lebih lanjut dihilangkan

  • web_fontbooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • fallbackbooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • sample_recipienttidak ditentukanwajib
  • anyOf 1object
  • emailstringwajib
  • display_namestring | nullwajib
  • anyOf 2null
  • required_variablesarraywajib
  • Setiap itemstring
  • effective_slotsarraywajib
  • Setiap itemobject
  • keystringwajib

    pattern: "^[A-Za-z0-9_$.-]{1,200}$"

  • labelstring

    maxLength: 120

  • typestring

    enum: "text", "paragraph", "url", "image"

  • helpstring

    maxLength: 300

  • audience_countinteger
  • gapsarray
  • Setiap itemobject
  • variablestringwajib
  • missing_countintegerwajib
  • sample_emailsarraywajib
  • Setiap itemstring

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/templates/preview' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "subject": "example",
  "body_text": "example",
  "body_html": "example",
  "content": {},
  "audience": {
    "all_subscribed": true,
    "contact_ids": [
      "00000000-0000-4000-8000-000000000001"
    ],
    "list_ids": [
      "00000000-0000-4000-8000-000000000001"
    ],
    "segment_ids": [
      "00000000-0000-4000-8000-000000000001"
    ]
  },
  "sample_email": "example"
}'
GET/v1/workspaces/{workspaceId}/templates/{templateId}

getTemplate

Satu desain beserta HTML inline, konten isian, dan slot efektifnya.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

templateId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Respons berhasil.

application/json

  • valueobject
  • dataobjectwajib
  • idstringwajib

    format: "uuid"

  • product_idstring

    format: "uuid"

  • namestringwajib
  • subjectstringwajib
  • body_textstringwajib
  • contentobjectwajib
  • Properti tambahanstring
  • slotsarraywajib
  • Setiap itemobject
  • keystringwajib

    pattern: "^[A-Za-z0-9_$.-]{1,200}$"

  • labelstring

    maxLength: 120

  • typestring

    enum: "text", "paragraph", "url", "image"

  • helpstring

    maxLength: 300

  • statusstringwajib

    enum: "active", "archived"

  • originstringwajib

    enum: "person", "agent", "starter", "import"

  • created_by_actor_idstring | null
  • campaign_idstring | null

    format: "uuid"

  • message_kindstring
  • starter_idstring | null
  • starter_versioninteger | null
  • versionintegerwajib
  • created_atstringwajib

    format: "date-time"

  • updated_atstringwajib

    format: "date-time"

  • body_html_urlstring

    format: "uri"

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/templates/{templateId}' \
  --header "Authorization: Bearer $BANGER_API_KEY"
PATCH/v1/workspaces/{workspaceId}/templates/{templateId}

updateTemplate

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

templateId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan wajib

application/json

  • valueobject
  • namestring

    maxLength: 200

  • subjectstring

    maxLength: 10000

  • body_textstring

    maxLength: 2000000

  • body_htmlstring

    minLength: 1 · maxLength: 2000000

  • contentobject
  • Properti tambahanstring

    maxLength: 20000

  • slotsarray

    maxItems: 100

  • Setiap itemobject
  • keystringwajib

    maxLength: 200

  • labelstring

    maxLength: 120

  • typestring

    enum: "text", "paragraph", "url", "image"

  • helpstring

    maxLength: 300

  • statusstring

    enum: "active", "archived"

Respons berhasil 200

Respons berhasil.

application/json

  • valueobject
  • dataobjectwajib
  • idstringwajib

    format: "uuid"

  • product_idstring

    format: "uuid"

  • namestringwajib
  • subjectstringwajib
  • body_textstringwajib
  • contentobjectwajib
  • Properti tambahanstring
  • slotsarraywajib
  • Setiap itemobject
  • keystringwajib

    pattern: "^[A-Za-z0-9_$.-]{1,200}$"

  • labelstring

    maxLength: 120

  • typestring

    enum: "text", "paragraph", "url", "image"

  • helpstring

    maxLength: 300

  • statusstringwajib

    enum: "active", "archived"

  • originstringwajib

    enum: "person", "agent", "starter", "import"

  • created_by_actor_idstring | null
  • campaign_idstring | null

    format: "uuid"

  • message_kindstring
  • starter_idstring | null
  • starter_versioninteger | null
  • versionintegerwajib
  • created_atstringwajib

    format: "date-time"

  • updated_atstringwajib

    format: "date-time"

  • body_html_urlstring

    format: "uri"

Contoh curl

curl --request PATCH --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/templates/{templateId}' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "name": "example",
  "subject": "example",
  "body_text": "example",
  "body_html": "example",
  "content": {},
  "slots": [
    {
      "key": "example",
      "label": "example",
      "type": "text",
      "help": "example"
    }
  ],
  "status": "active"
}'
POST/v1/workspaces/{workspaceId}/templates/{templateId}/duplicate

duplicateTemplate

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

templateId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan wajib

application/json

  • valueobject
  • namestring

    maxLength: 200

Respons berhasil 201

Respons berhasil.

application/json

  • valueobject
  • dataobjectwajib
  • idstringwajib

    format: "uuid"

  • product_idstring

    format: "uuid"

  • namestringwajib
  • subjectstringwajib
  • body_textstringwajib
  • contentobjectwajib
  • Properti tambahanstring
  • slotsarraywajib
  • Setiap itemobject
  • keystringwajib

    pattern: "^[A-Za-z0-9_$.-]{1,200}$"

  • labelstring

    maxLength: 120

  • typestring

    enum: "text", "paragraph", "url", "image"

  • helpstring

    maxLength: 300

  • statusstringwajib

    enum: "active", "archived"

  • originstringwajib

    enum: "person", "agent", "starter", "import"

  • created_by_actor_idstring | null
  • campaign_idstring | null

    format: "uuid"

  • message_kindstring
  • starter_idstring | null
  • starter_versioninteger | null
  • versionintegerwajib
  • created_atstringwajib

    format: "date-time"

  • updated_atstringwajib

    format: "date-time"

  • body_html_urlstring

    format: "uri"

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/templates/{templateId}/duplicate' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "name": "example"
}'
POST/v1/workspaces/{workspaceId}/templates/{templateId}/preview

previewTemplate

Render desain tersimpan dengan nilai contoh atau audiens dan laporkan kekurangan placeholder.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

templateId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan wajib

application/json

  • valueobject
  • contentobject
  • Properti tambahanstring
  • audienceobject

    Pilih semua kontak berlangganan atau setidaknya satu daftar contact_ids, list_ids, atau segment_ids yang tidak kosong.

  • all_subscribedboolean
  • contact_idsarray

    maxItems: 10000

  • Setiap itemstring

    format: "uuid"

  • list_idsarray

    maxItems: 1000

  • Setiap itemstring

    format: "uuid"

  • segment_idsarray

    maxItems: 1000

  • Setiap itemstring

    format: "uuid"

  • sample_emailstring

    Email kontak yang ada. Alamat tidak dikenal mengembalikan sample_recipient_not_found. Hilangkan untuk memakai nilai contoh atau audiens.

    maxLength: 320

Respons berhasil 200

Respons berhasil.

application/json

  • valueobject
  • dataobjectwajib
  • subjectstringwajib
  • body_textstringwajib
  • body_htmlstring
  • font_renderingarraywajib
  • Setiap itemobject
  • stackstringwajib
  • fontstringwajib
  • web_fontbooleanwajib
  • clientsarraywajib
  • Setiap itemobject
  • clientstringwajib

    Penumpukan lebih lanjut dihilangkan

  • labelstringwajib

    Penumpukan lebih lanjut dihilangkan

  • fontstringwajib

    Penumpukan lebih lanjut dihilangkan

  • web_fontbooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • fallbackbooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • sample_recipienttidak ditentukanwajib
  • anyOf 1object
  • emailstringwajib
  • display_namestring | nullwajib
  • anyOf 2null
  • required_variablesarraywajib
  • Setiap itemstring
  • effective_slotsarraywajib
  • Setiap itemobject
  • keystringwajib

    pattern: "^[A-Za-z0-9_$.-]{1,200}$"

  • labelstring

    maxLength: 120

  • typestring

    enum: "text", "paragraph", "url", "image"

  • helpstring

    maxLength: 300

  • audience_countinteger
  • gapsarray
  • Setiap itemobject
  • variablestringwajib
  • missing_countintegerwajib
  • sample_emailsarraywajib
  • Setiap itemstring

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/templates/{templateId}/preview' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "content": {},
  "audience": {
    "all_subscribed": true,
    "contact_ids": [
      "00000000-0000-4000-8000-000000000001"
    ],
    "list_ids": [
      "00000000-0000-4000-8000-000000000001"
    ],
    "segment_ids": [
      "00000000-0000-4000-8000-000000000001"
    ]
  },
  "sample_email": "example"
}'
GET/v1/workspaces/{workspaceId}/templates/{templateId}/html

getTemplateHtml

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

templateId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Isi templat email HTML tanpa skrip.

text/html

  • valuestring

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/templates/{templateId}/html' \
  --header "Authorization: Bearer $BANGER_API_KEY"

Kampanye

POST/v1/workspaces/{workspaceId}/campaigns/coverage-preview

previewCampaignCoverage

Placeholder wajib yang tidak dapat diisi audiens, sebelum Kampanye disimpan.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan wajib

application/json

  • valueobject
  • subjectstring

    maxLength: 10000

  • body_textstring

    maxLength: 2000000

  • body_htmlstring

    maxLength: 2000000

  • contentobject
  • Properti tambahanstring
  • audienceobjectwajib

    Pilih semua kontak berlangganan atau setidaknya satu daftar contact_ids, list_ids, atau segment_ids yang tidak kosong.

  • all_subscribedboolean
  • contact_idsarray

    maxItems: 10000

  • Setiap itemstring

    format: "uuid"

  • list_idsarray

    maxItems: 1000

  • Setiap itemstring

    format: "uuid"

  • segment_idsarray

    maxItems: 1000

  • Setiap itemstring

    format: "uuid"

  • sample_emailstring

    maxLength: 320

  • template_idstring

    format: "uuid"

Respons berhasil 200

Respons berhasil.

application/json

  • valueobject
  • dataobjectwajib
  • required_variablesarraywajib
  • Setiap itemstring
  • audience_countintegerwajib
  • gapsarraywajib
  • Setiap itemobject
  • variablestringwajib
  • missing_countintegerwajib
  • sample_emailsarraywajib
  • Setiap itemstring

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/campaigns/coverage-preview' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "subject": "example",
  "body_text": "example",
  "body_html": "example",
  "content": {},
  "audience": {
    "all_subscribed": true,
    "contact_ids": [
      "00000000-0000-4000-8000-000000000001"
    ],
    "list_ids": [
      "00000000-0000-4000-8000-000000000001"
    ],
    "segment_ids": [
      "00000000-0000-4000-8000-000000000001"
    ]
  },
  "sample_email": "example",
  "template_id": "00000000-0000-4000-8000-000000000001"
}'
GET/v1/workspaces/{workspaceId}/campaigns

listCampaigns

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Respons berhasil.

application/json

  • valueobject
  • dataarraywajib
  • Setiap itemobject
  • idstringwajib

    format: "uuid"

  • product_idstring

    format: "uuid"

  • namestringwajib
  • mailbox_idstring

    format: "uuid"

  • template_idstring | null

    format: "uuid"

  • managed_content_idstring | null

    format: "uuid"

  • managed_source_revision_idstring | null

    format: "uuid"

  • managed_publication_idstring | null

    format: "uuid"

  • managed_locales_snapshotarray
  • Setiap itemstring
  • expires_after_secondsinteger | null
  • statusstringwajib
  • versionintegerwajib
  • subject_variantsarray
  • Setiap itemstring
  • selected_subject_variantinteger
  • content_overridesobject
  • Properti tambahanstring
  • audience_queryobject

    Pilih semua kontak berlangganan atau setidaknya satu daftar contact_ids, list_ids, atau segment_ids yang tidak kosong.

  • all_subscribedboolean
  • contact_idsarray

    maxItems: 10000

  • Setiap itemstring

    format: "uuid"

  • list_idsarray

    maxItems: 1000

  • Setiap itemstring

    format: "uuid"

  • segment_idsarray

    maxItems: 1000

  • Setiap itemstring

    format: "uuid"

  • audience_frozen_atstring | null

    format: "date-time"

  • audience_recipient_countinteger | null
  • audience_snapshot_sha256string | null
  • audience_snapshot_campaign_versioninteger | null
  • scheduled_atstring | null

    format: "date-time"

  • started_atstring | null

    format: "date-time"

  • completed_atstring | null

    format: "date-time"

  • created_atstring

    format: "date-time"

  • updated_atstring

    format: "date-time"

  • archived_atstring | null

    format: "date-time"

  • statsobject
  • Properti tambahanNilai apa pun

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/campaigns' \
  --header "Authorization: Bearer $BANGER_API_KEY"
POST/v1/workspaces/{workspaceId}/campaigns

createCampaign

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan wajib

application/json

  • valueobject
  • namestringwajib

    maxLength: 200

  • mailbox_idstring

    format: "uuid"

  • template_idstringwajib

    format: "uuid"

  • subject_variantsarray

    maxItems: 8

  • Setiap itemstring

    minLength: 1 · maxLength: 998

  • selected_subject_variantinteger

    minimum: 0

  • audienceobjectwajib
  • all_subscribedboolean

    default: false

  • contact_idsarray

    maxItems: 10000

  • Setiap itemstring

    format: "uuid"

  • list_idsarray

    maxItems: 1000

  • Setiap itemstring

    format: "uuid"

  • segment_idsarray

    maxItems: 1000

  • Setiap itemstring

    format: "uuid"

Respons berhasil 201

Respons berhasil.

application/json

  • valueobject
  • dataobjectwajib
  • idstringwajib

    format: "uuid"

  • product_idstring

    format: "uuid"

  • namestringwajib
  • mailbox_idstring

    format: "uuid"

  • template_idstring | null

    format: "uuid"

  • managed_content_idstring | null

    format: "uuid"

  • managed_source_revision_idstring | null

    format: "uuid"

  • managed_publication_idstring | null

    format: "uuid"

  • managed_locales_snapshotarray
  • Setiap itemstring
  • expires_after_secondsinteger | null
  • statusstringwajib
  • versionintegerwajib
  • subject_variantsarray
  • Setiap itemstring
  • selected_subject_variantinteger
  • content_overridesobject
  • Properti tambahanstring
  • audience_queryobject

    Pilih semua kontak berlangganan atau setidaknya satu daftar contact_ids, list_ids, atau segment_ids yang tidak kosong.

  • all_subscribedboolean
  • contact_idsarray

    maxItems: 10000

  • Setiap itemstring

    format: "uuid"

  • list_idsarray

    maxItems: 1000

  • Setiap itemstring

    format: "uuid"

  • segment_idsarray

    maxItems: 1000

  • Setiap itemstring

    format: "uuid"

  • audience_frozen_atstring | null

    format: "date-time"

  • audience_recipient_countinteger | null
  • audience_snapshot_sha256string | null
  • audience_snapshot_campaign_versioninteger | null
  • scheduled_atstring | null

    format: "date-time"

  • started_atstring | null

    format: "date-time"

  • completed_atstring | null

    format: "date-time"

  • created_atstring

    format: "date-time"

  • updated_atstring

    format: "date-time"

  • archived_atstring | null

    format: "date-time"

  • statsobject
  • Properti tambahanNilai apa pun

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/campaigns' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "name": "example",
  "mailbox_id": "00000000-0000-4000-8000-000000000001",
  "template_id": "00000000-0000-4000-8000-000000000001",
  "subject_variants": [
    "example"
  ],
  "selected_subject_variant": 0,
  "audience": {
    "all_subscribed": false,
    "contact_ids": [
      "00000000-0000-4000-8000-000000000001"
    ],
    "list_ids": [
      "00000000-0000-4000-8000-000000000001"
    ],
    "segment_ids": [
      "00000000-0000-4000-8000-000000000001"
    ]
  }
}'
POST/v1/workspaces/{workspaceId}/campaigns/audience-preview

previewCampaignAudience

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan wajib

application/json

  • valueobject
  • audienceobjectwajib

    Pilih semua kontak berlangganan atau setidaknya satu daftar contact_ids, list_ids, atau segment_ids yang tidak kosong.

  • all_subscribedboolean
  • contact_idsarray

    maxItems: 10000

  • Setiap itemstring

    format: "uuid"

  • list_idsarray

    maxItems: 1000

  • Setiap itemstring

    format: "uuid"

  • segment_idsarray

    maxItems: 1000

  • Setiap itemstring

    format: "uuid"

Respons berhasil 200

Respons berhasil.

application/json

  • valueobject
  • dataobjectwajib
  • countintegerwajib
  • missing_consent_evidence_countintegerwajib
  • samplearraywajib
  • Setiap itemobject
  • idstringwajib

    format: "uuid"

  • emailstringwajib
  • display_namestring | nullwajib
  • attributesobjectwajib
  • Properti tambahanNilai apa pun
  • excludedobjectwajib
  • suppressedintegerwajib
  • not_subscribedintegerwajib
  • missing_recipient_hashintegerwajib
  • missing_consent_evidenceintegerwajib

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/campaigns/audience-preview' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "audience": {
    "all_subscribed": true,
    "contact_ids": [
      "00000000-0000-4000-8000-000000000001"
    ],
    "list_ids": [
      "00000000-0000-4000-8000-000000000001"
    ],
    "segment_ids": [
      "00000000-0000-4000-8000-000000000001"
    ]
  }
}'
GET/v1/workspaces/{workspaceId}/campaigns/{campaignId}

getCampaign

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

campaignId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Respons berhasil.

application/json

  • valueobject
  • dataobjectwajib
  • idstringwajib

    format: "uuid"

  • product_idstring

    format: "uuid"

  • namestringwajib
  • mailbox_idstring

    format: "uuid"

  • template_idstring | null

    format: "uuid"

  • managed_content_idstring | null

    format: "uuid"

  • managed_source_revision_idstring | null

    format: "uuid"

  • managed_publication_idstring | null

    format: "uuid"

  • managed_locales_snapshotarray
  • Setiap itemstring
  • expires_after_secondsinteger | null
  • statusstringwajib
  • versionintegerwajib
  • subject_variantsarray
  • Setiap itemstring
  • selected_subject_variantinteger
  • content_overridesobject
  • Properti tambahanstring
  • audience_queryobject

    Pilih semua kontak berlangganan atau setidaknya satu daftar contact_ids, list_ids, atau segment_ids yang tidak kosong.

  • all_subscribedboolean
  • contact_idsarray

    maxItems: 10000

  • Setiap itemstring

    format: "uuid"

  • list_idsarray

    maxItems: 1000

  • Setiap itemstring

    format: "uuid"

  • segment_idsarray

    maxItems: 1000

  • Setiap itemstring

    format: "uuid"

  • audience_frozen_atstring | null

    format: "date-time"

  • audience_recipient_countinteger | null
  • audience_snapshot_sha256string | null
  • audience_snapshot_campaign_versioninteger | null
  • scheduled_atstring | null

    format: "date-time"

  • started_atstring | null

    format: "date-time"

  • completed_atstring | null

    format: "date-time"

  • created_atstring

    format: "date-time"

  • updated_atstring

    format: "date-time"

  • archived_atstring | null

    format: "date-time"

  • statsobject
  • Properti tambahanNilai apa pun

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/campaigns/{campaignId}' \
  --header "Authorization: Bearer $BANGER_API_KEY"
PATCH/v1/workspaces/{workspaceId}/campaigns/{campaignId}

updateCampaign

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

campaignId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan wajib

application/json

  • valueobject
  • namestringwajib

    maxLength: 200

  • mailbox_idstringwajib

    format: "uuid"

  • template_idstring

    format: "uuid"

  • subject_variantsarray

    maxItems: 8

  • Setiap itemstring

    minLength: 1 · maxLength: 998

  • selected_subject_variantinteger

    minimum: 0

  • audienceobjectwajib

    Properti yang tidak ditentukan dalam kontrak

Respons berhasil 200

Respons berhasil.

application/json

  • valueobject
  • dataobjectwajib
  • idstringwajib

    format: "uuid"

  • product_idstring

    format: "uuid"

  • namestringwajib
  • mailbox_idstring

    format: "uuid"

  • template_idstring | null

    format: "uuid"

  • managed_content_idstring | null

    format: "uuid"

  • managed_source_revision_idstring | null

    format: "uuid"

  • managed_publication_idstring | null

    format: "uuid"

  • managed_locales_snapshotarray
  • Setiap itemstring
  • expires_after_secondsinteger | null
  • statusstringwajib
  • versionintegerwajib
  • subject_variantsarray
  • Setiap itemstring
  • selected_subject_variantinteger
  • content_overridesobject
  • Properti tambahanstring
  • audience_queryobject

    Pilih semua kontak berlangganan atau setidaknya satu daftar contact_ids, list_ids, atau segment_ids yang tidak kosong.

  • all_subscribedboolean
  • contact_idsarray

    maxItems: 10000

  • Setiap itemstring

    format: "uuid"

  • list_idsarray

    maxItems: 1000

  • Setiap itemstring

    format: "uuid"

  • segment_idsarray

    maxItems: 1000

  • Setiap itemstring

    format: "uuid"

  • audience_frozen_atstring | null

    format: "date-time"

  • audience_recipient_countinteger | null
  • audience_snapshot_sha256string | null
  • audience_snapshot_campaign_versioninteger | null
  • scheduled_atstring | null

    format: "date-time"

  • started_atstring | null

    format: "date-time"

  • completed_atstring | null

    format: "date-time"

  • created_atstring

    format: "date-time"

  • updated_atstring

    format: "date-time"

  • archived_atstring | null

    format: "date-time"

  • statsobject
  • Properti tambahanNilai apa pun

Contoh curl

curl --request PATCH --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/campaigns/{campaignId}' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "name": "example",
  "mailbox_id": "00000000-0000-4000-8000-000000000001",
  "template_id": "00000000-0000-4000-8000-000000000001",
  "subject_variants": [
    "example"
  ],
  "selected_subject_variant": 0,
  "audience": {}
}'
DELETE/v1/workspaces/{workspaceId}/campaigns/{campaignId}

Hapus kampanye yang belum dikirim

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

campaignId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Respons berhasil.

application/json

  • valueobject
  • dataobjectwajib
  • idstringwajib

    format: "uuid"

  • deletedbooleanwajib

    const: true

Contoh curl

curl --request DELETE --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/campaigns/{campaignId}' \
  --header "Authorization: Bearer $BANGER_API_KEY"
GET/v1/workspaces/{workspaceId}/campaigns/{campaignId}/recipients

listCampaignRecipients

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

campaignId
path · wajib
  • valuestring

    format: "uuid"

cursor
query
  • valuestring

    maxLength: 1024

limit
query
  • valueinteger

    minimum: 1 · maximum: 100 · default: 50

status
query
  • valuestring

    enum: "pending", "queued", "sent", "failed", "skipped", "delivered", "deferred", "bounced", "complained", "unsubscribed"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Respons berhasil.

application/json

  • valueobject
  • dataarraywajib
  • Setiap itemobject
  • contact_idstring | null

    format: "uuid"

  • recipient_emailstring
  • recipient_namestring | null
  • recipient_hashstring
  • statusstring
  • dispatch_statusstring
  • command_idstring | null

    format: "uuid"

  • error_codestring | null
  • created_atstring

    format: "date-time"

  • updated_atstring

    format: "date-time"

  • delivery_statestring | null
  • provider_message_keystring | null
  • last_event_atstring | null

    format: "date-time"

  • first_delivered_atstring | null

    format: "date-time"

  • first_opened_atstring | null

    format: "date-time"

  • first_clicked_atstring | null

    format: "date-time"

  • first_human_likely_opened_atstring | null

    format: "date-time"

  • first_human_likely_clicked_atstring | null

    format: "date-time"

  • first_replied_atstring | null

    format: "date-time"

  • machine_open_countinteger
  • machine_click_countinteger
  • privacy_proxy_open_countinteger
  • unknown_open_countinteger
  • unknown_click_countinteger
  • first_unsubscribed_atstring | null

    format: "date-time"

  • pageobjectwajib
  • next_cursorstring
  • has_morebooleanwajib

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/campaigns/{campaignId}/recipients?cursor=example&limit=50&status=pending' \
  --header "Authorization: Bearer $BANGER_API_KEY"
GET/v1/workspaces/{workspaceId}/campaigns/{campaignId}/timeline

listCampaignTimeline

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

campaignId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Respons berhasil.

application/json

  • valueobject
  • dataarraywajib
  • Setiap itemobject
  • idstringwajib
  • typestringwajib
  • occurred_atstringwajib

    format: "date-time"

  • actor_idstring | nullwajib
  • detailobjectwajib
  • Properti tambahanNilai apa pun

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/campaigns/{campaignId}/timeline' \
  --header "Authorization: Bearer $BANGER_API_KEY"
POST/v1/workspaces/{workspaceId}/campaigns/{campaignId}/pause

pauseCampaign

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

campaignId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Respons berhasil.

application/json

  • valueobject
  • dataobjectwajib
  • idstringwajib

    format: "uuid"

  • product_idstringwajib

    format: "uuid"

  • namestringwajib
  • mailbox_idstringwajib

    format: "uuid"

  • template_idstring | nullwajib

    format: "uuid"

  • statusstringwajib
  • audience_queryobjectwajib

    Pilih semua kontak berlangganan atau setidaknya satu daftar contact_ids, list_ids, atau segment_ids yang tidak kosong.

  • all_subscribedboolean
  • contact_idsarray

    maxItems: 10000

  • Setiap itemstring

    format: "uuid"

  • list_idsarray

    maxItems: 1000

  • Setiap itemstring

    format: "uuid"

  • segment_idsarray

    maxItems: 1000

  • Setiap itemstring

    format: "uuid"

  • scheduled_atstring | nullwajib

    format: "date-time"

  • started_atstring | nullwajib

    format: "date-time"

  • completed_atstring | nullwajib

    format: "date-time"

  • created_atstringwajib

    format: "date-time"

  • updated_atstringwajib

    format: "date-time"

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/campaigns/{campaignId}/pause' \
  --header "Authorization: Bearer $BANGER_API_KEY"
POST/v1/workspaces/{workspaceId}/campaigns/{campaignId}/resume

resumeCampaign

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

campaignId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Respons berhasil.

application/json

  • valueobject
  • dataobjectwajib
  • idstringwajib

    format: "uuid"

  • product_idstringwajib

    format: "uuid"

  • namestringwajib
  • mailbox_idstringwajib

    format: "uuid"

  • template_idstring | nullwajib

    format: "uuid"

  • statusstringwajib
  • audience_queryobjectwajib

    Pilih semua kontak berlangganan atau setidaknya satu daftar contact_ids, list_ids, atau segment_ids yang tidak kosong.

  • all_subscribedboolean
  • contact_idsarray

    maxItems: 10000

  • Setiap itemstring

    format: "uuid"

  • list_idsarray

    maxItems: 1000

  • Setiap itemstring

    format: "uuid"

  • segment_idsarray

    maxItems: 1000

  • Setiap itemstring

    format: "uuid"

  • scheduled_atstring | nullwajib

    format: "date-time"

  • started_atstring | nullwajib

    format: "date-time"

  • completed_atstring | nullwajib

    format: "date-time"

  • created_atstringwajib

    format: "date-time"

  • updated_atstringwajib

    format: "date-time"

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/campaigns/{campaignId}/resume' \
  --header "Authorization: Bearer $BANGER_API_KEY"
POST/v1/workspaces/{workspaceId}/campaigns/{campaignId}/cancel

cancelCampaign

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

campaignId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Respons berhasil.

application/json

  • valueobject
  • dataobjectwajib
  • idstringwajib

    format: "uuid"

  • product_idstringwajib

    format: "uuid"

  • namestringwajib
  • mailbox_idstringwajib

    format: "uuid"

  • template_idstring | nullwajib

    format: "uuid"

  • statusstringwajib
  • audience_queryobjectwajib

    Pilih semua kontak berlangganan atau setidaknya satu daftar contact_ids, list_ids, atau segment_ids yang tidak kosong.

  • all_subscribedboolean
  • contact_idsarray

    maxItems: 10000

  • Setiap itemstring

    format: "uuid"

  • list_idsarray

    maxItems: 1000

  • Setiap itemstring

    format: "uuid"

  • segment_idsarray

    maxItems: 1000

  • Setiap itemstring

    format: "uuid"

  • scheduled_atstring | nullwajib

    format: "date-time"

  • started_atstring | nullwajib

    format: "date-time"

  • completed_atstring | nullwajib

    format: "date-time"

  • created_atstringwajib

    format: "date-time"

  • updated_atstringwajib

    format: "date-time"

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/campaigns/{campaignId}/cancel' \
  --header "Authorization: Bearer $BANGER_API_KEY"
POST/v1/workspaces/{workspaceId}/campaigns/{campaignId}/schedule

scheduleCampaign

Tidak digunakan lagi

Batas penjadwalan langsung yang tidak digunakan lagi. Selalu mengembalikan governed_review_required; gunakan endpoint peninjauan kampanye agar ambang penerima ruang kerja diterapkan.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

campaignId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil

Kontrak tidak menentukan respons berhasil.

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/campaigns/{campaignId}/schedule' \
  --header "Authorization: Bearer $BANGER_API_KEY"
POST/v1/workspaces/{workspaceId}/campaigns/{campaignId}/test

testCampaign

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

campaignId
path · wajib
  • valuestring

    format: "uuid"

Idempotency-Key
header · wajib
  • valuestring

    minLength: 16 · maxLength: 128

Isi permintaan wajib

application/json

  • valueobject
  • tostringwajib

    minLength: 3 · maxLength: 320

  • data_modestring

    default: "contact" · enum: "sample", "fallback", "contact"

  • contact_emailstring

    maxLength: 320

  • variant_keystring

    maxLength: 80

  • localestring

Respons berhasil 202

Respons berhasil.

application/json

  • valueobject
  • dataobjectwajib
  • action_kindstringwajib

    enum: "transactional.send"

  • idstringwajib

    format: "uuid"

  • send_intent_idstringwajib

    format: "uuid"

  • provider_attempt_idstringwajib

    format: "uuid"

  • statusstringwajib
  • replayedbooleanwajib

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/campaigns/{campaignId}/test' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Idempotency-Key: examplexxxxxxxxx' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "to": "example",
  "data_mode": "contact",
  "contact_email": "example",
  "variant_key": "example",
  "locale": "example"
}'
POST/v1/workspaces/{workspaceId}/campaigns/{campaignId}/review

requestCampaignReview

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

campaignId
path · wajib
  • valuestring

    format: "uuid"

Idempotency-Key
header · wajib
  • valuestring

    minLength: 16 · maxLength: 128

Isi permintaan wajib

application/json

  • valueobject

    Tidak ada properti tambahan

  • expected_versioninteger

    minimum: 1

  • expected_design_versioninteger

    minimum: 1

  • recipient_selectionobject

    Tidak ada properti tambahan

  • all_subscribedboolean
  • contact_idsarray

    maxItems: 10000

  • Setiap itemstring

    format: "uuid"

  • list_idsarray

    maxItems: 1000

  • Setiap itemstring

    format: "uuid"

  • segment_idsarray

    maxItems: 1000

  • Setiap itemstring

    format: "uuid"

  • scheduled_atstring

    format: "date-time"

  • send_nowboolean

    const: true

  • approve_as_launcherboolean

    Seseorang yang menekan Kirim menyetujui permintaan persis ini saat kebijakan peninjauan memerlukan manusia. Diabaikan untuk kunci API dan agen, yang menunggu di Persetujuan.

  • oneOf 1tidak ditentukan
  • oneOf 2tidak ditentukan

Respons berhasil 201

Persetujuan penjadwalan kampanye dibuat.

application/json

  • valueobject
  • dataobjectwajib
  • idstringwajib

    format: "uuid"

  • requested_by_actor_idstringwajib
  • action_kindstringwajib
  • summarystringwajib
  • capability_scopesarraywajib
  • Setiap itemstring
  • resource_scopeobjectwajib
  • Properti tambahanarray
  • Setiap itemstring
  • payloadobjectwajib
  • Properti tambahanNilai apa pun
  • payload_sha256stringwajib

    pattern: "^[0-9a-f]{64}$"

  • statusstringwajib

    enum: "pending", "approved", "rejected", "cancelled", "expired"

  • missedbooleanwajib
  • expires_atstringwajib

    format: "date-time"

  • decided_by_actor_idstring | null
  • decision_reasonstring | null
  • created_atstringwajib

    format: "date-time"

  • updated_atstringwajib

    format: "date-time"

  • decided_atstring | null

    format: "date-time"

  • execution_job_idstring

    format: "uuid"

  • reviewobject

    Tidak ada properti tambahan

  • dispositionstringwajib

    enum: "automatic", "human_required"

  • recipient_countinteger | nullwajib

    minimum: 0

  • reasonsarraywajib
  • Setiap itemstring
  • checksarraywajib
  • Setiap itemstring

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/campaigns/{campaignId}/review' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Idempotency-Key: examplexxxxxxxxx' \
  --header 'Content-Type: application/json' \
  --data-raw '"example"'
POST/v1/workspaces/{workspaceId}/campaigns/{campaignId}/archive

Arsipkan kampanye

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

campaignId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Respons berhasil.

application/json

  • valueobject
  • dataobjectwajib
  • idstringwajib

    format: "uuid"

  • namestringwajib
  • statusstringwajib
  • archived_atstring | nullwajib

    format: "date-time"

  • updated_atstringwajib

    format: "date-time"

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/campaigns/{campaignId}/archive' \
  --header "Authorization: Bearer $BANGER_API_KEY"
POST/v1/workspaces/{workspaceId}/campaigns/{campaignId}/unarchive

Keluarkan kampanye dari arsip

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

campaignId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Respons berhasil.

application/json

  • valueobject
  • dataobjectwajib
  • idstringwajib

    format: "uuid"

  • namestringwajib
  • statusstringwajib
  • archived_atstring | nullwajib

    format: "date-time"

  • updated_atstringwajib

    format: "date-time"

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/campaigns/{campaignId}/unarchive' \
  --header "Authorization: Bearer $BANGER_API_KEY"
PUT/v1/workspaces/{workspaceId}/campaigns/{campaignId}/design-test

Simpan satu hingga empat desain email kampanye

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

campaignId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan wajib

application/json

  • valueobject
  • namestringwajib

    minLength: 1 · maxLength: 200

  • mailbox_idstringwajib

    format: "uuid"

  • audienceobjectwajib

    Pilih semua kontak berlangganan atau setidaknya satu daftar contact_ids, list_ids, atau segment_ids yang tidak kosong.

  • all_subscribedboolean
  • contact_idsarray

    maxItems: 10000

  • Setiap itemstring

    format: "uuid"

  • list_idsarray

    maxItems: 1000

  • Setiap itemstring

    format: "uuid"

  • segment_idsarray

    maxItems: 1000

  • Setiap itemstring

    format: "uuid"

  • automatic_translationboolean
  • variantsarraywajib

    minItems: 1 · maxItems: 4

  • Setiap itemobject
  • body_htmlstringwajib

    minLength: 1 · maxLength: 2000000

  • subjectstring

    maxLength: 10000

  • body_textstring

    maxLength: 2000000

  • contentobject
  • Properti tambahanstring

Respons berhasil 200

Respons berhasil.

application/json

  • valueobject
  • dataobjectwajib
  • idstringwajib

    format: "uuid"

  • product_idstring

    format: "uuid"

  • namestringwajib
  • mailbox_idstring

    format: "uuid"

  • template_idstring | null

    format: "uuid"

  • managed_content_idstring | null

    format: "uuid"

  • managed_source_revision_idstring | null

    format: "uuid"

  • managed_publication_idstring | null

    format: "uuid"

  • managed_locales_snapshotarray
  • Setiap itemstring
  • expires_after_secondsinteger | null
  • statusstringwajib
  • versionintegerwajib
  • subject_variantsarray
  • Setiap itemstring
  • selected_subject_variantinteger
  • content_overridesobject
  • Properti tambahanstring
  • audience_queryobject

    Pilih semua kontak berlangganan atau setidaknya satu daftar contact_ids, list_ids, atau segment_ids yang tidak kosong.

  • all_subscribedboolean
  • contact_idsarray

    maxItems: 10000

  • Setiap itemstring

    format: "uuid"

  • list_idsarray

    maxItems: 1000

  • Setiap itemstring

    format: "uuid"

  • segment_idsarray

    maxItems: 1000

  • Setiap itemstring

    format: "uuid"

  • audience_frozen_atstring | null

    format: "date-time"

  • audience_recipient_countinteger | null
  • audience_snapshot_sha256string | null
  • audience_snapshot_campaign_versioninteger | null
  • scheduled_atstring | null

    format: "date-time"

  • started_atstring | null

    format: "date-time"

  • completed_atstring | null

    format: "date-time"

  • created_atstring

    format: "date-time"

  • updated_atstring

    format: "date-time"

  • archived_atstring | null

    format: "date-time"

  • statsobject
  • Properti tambahanNilai apa pun
  • design_template_idstringwajib

    format: "uuid"

Contoh curl

curl --request PUT --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/campaigns/{campaignId}/design-test' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "name": "example",
  "mailbox_id": "00000000-0000-4000-8000-000000000001",
  "audience": {
    "all_subscribed": true,
    "contact_ids": [
      "00000000-0000-4000-8000-000000000001"
    ],
    "list_ids": [
      "00000000-0000-4000-8000-000000000001"
    ],
    "segment_ids": [
      "00000000-0000-4000-8000-000000000001"
    ]
  },
  "automatic_translation": true,
  "variants": [
    {
      "body_html": "example",
      "subject": "example",
      "body_text": "example",
      "content": {}
    }
  ]
}'

Kampanye

POST/v1/workspaces/{workspaceId}/broadcasts

createBroadcast

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

X-Banger-Product-Id
header · wajib

Produk operasi eksplisit; harus sesuai dengan kredensial OAuth bercakupan produk.

  • valuestring

    format: "uuid"

Idempotency-Key
header · wajib
  • valuestring

    minLength: 1 · maxLength: 256

Isi permintaan wajib

application/json

  • valueobject

    Tidak ada properti tambahan

  • namestringwajib

    minLength: 1 · maxLength: 200

  • mailbox_idstring

    Alamat pengirim yang ada. Hilangkan untuk memakai pengirim onboarding, lalu kotak surat khusus aktif, lalu yang dihosting.

    format: "uuid"

  • template_idstring

    format: "uuid"

  • audienceobject

    Tidak ada properti tambahan

  • all_subscribedboolean
  • contact_idsarray

    maxItems: 10000

  • Setiap itemstring

    format: "uuid"

  • list_idsarray

    maxItems: 1000

  • Setiap itemstring

    format: "uuid"

  • segment_idsarray

    maxItems: 1000

  • Setiap itemstring

    format: "uuid"

  • subject_variantsarray

    maxItems: 8

  • Setiap itemstring

    minLength: 1 · maxLength: 998

  • selected_subject_variantinteger

    minimum: 0 · maximum: 7

  • expires_after_secondsinteger

    Buang penerima yang belum dikirim setelah sekian detik dari waktu terjadwal; default tujuh hari.

    minimum: 1 · maximum: 604800

  • content_overridesobject
  • Properti tambahanstring

    maxLength: 20000

Respons berhasil 200

Pembacaan kembali kanonis atau tanda terima idempoten. Penerimaan penyedia adalah sent; delivered memerlukan peristiwa pengiriman dan tidak membuktikan masuk ke kotak masuk.

application/json

  • valueobject
  • datatidak ditentukanwajib
  • allOf 1tidak ditentukan
  • allOf 1object
  • idstringwajib

    format: "uuid"

  • product_idstringwajib

    format: "uuid"

  • namestringwajib
  • mailbox_idstring

    format: "uuid"

  • template_idstring | null

    format: "uuid"

  • managed_content_idstring | null

    format: "uuid"

  • managed_source_revision_idstring | null

    format: "uuid"

  • managed_publication_idstring | null

    format: "uuid"

  • managed_locales_snapshotarray
  • Setiap itemstring
  • expires_after_secondsinteger | null
  • statusstring
  • versionintegerwajib
  • subject_variantsarray
  • Setiap itemstring
  • selected_subject_variantinteger
  • content_overridesobject
  • Properti tambahanstring
  • audience_queryobject

    Pilih semua kontak berlangganan atau setidaknya satu daftar contact_ids, list_ids, atau segment_ids yang tidak kosong.

  • all_subscribedboolean
  • contact_idsarray

    maxItems: 10000

  • Setiap itemstring

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • list_idsarray

    maxItems: 1000

  • Setiap itemstring

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • segment_idsarray

    maxItems: 1000

  • Setiap itemstring

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • audience_frozen_atstring | null

    format: "date-time"

  • audience_recipient_countinteger | null
  • audience_snapshot_sha256string | null
  • audience_snapshot_campaign_versioninteger | null
  • scheduled_atstring | null

    format: "date-time"

  • started_atstring | null

    format: "date-time"

  • completed_atstring | null

    format: "date-time"

  • created_atstring

    format: "date-time"

  • updated_atstring

    format: "date-time"

  • archived_atstring | null

    format: "date-time"

  • statsobject
  • Properti tambahanNilai apa pun
  • broadcast_idstringwajib

    format: "uuid"

  • sender_addressstring | nullwajib
  • sending_blockertidak ditentukanwajib
  • anyOf 1object
  • codestringwajib

    Penumpukan lebih lanjut dihilangkan

  • messagestringwajib

    Penumpukan lebih lanjut dihilangkan

  • anyOf 2null
  • designtidak ditentukanwajib
  • anyOf 1object
  • idstring

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • product_idstring

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • namestring

    Penumpukan lebih lanjut dihilangkan

  • subjectstring

    Penumpukan lebih lanjut dihilangkan

  • body_textstring

    Penumpukan lebih lanjut dihilangkan

  • contentobject

    Penumpukan lebih lanjut dihilangkan

  • slotsarray

    Penumpukan lebih lanjut dihilangkan

  • statusstring

    enum: "active", "archived"

    Penumpukan lebih lanjut dihilangkan

  • originstring

    enum: "person", "agent", "starter", "import"

    Penumpukan lebih lanjut dihilangkan

  • created_by_actor_idstring | null

    Penumpukan lebih lanjut dihilangkan

  • campaign_idstring | null

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • message_kindstring

    Penumpukan lebih lanjut dihilangkan

  • starter_idstring | null

    Penumpukan lebih lanjut dihilangkan

  • starter_versioninteger | null

    Penumpukan lebih lanjut dihilangkan

  • versioninteger

    Penumpukan lebih lanjut dihilangkan

  • created_atstring

    format: "date-time"

    Penumpukan lebih lanjut dihilangkan

  • updated_atstring

    format: "date-time"

    Penumpukan lebih lanjut dihilangkan

  • body_html_urlstring

    format: "uri"

    Penumpukan lebih lanjut dihilangkan

  • body_htmlstring | null

    Penumpukan lebih lanjut dihilangkan

  • body_html_b2_keystring | null

    Penumpukan lebih lanjut dihilangkan

  • anyOf 2null
  • managed_contenttidak ditentukanwajib
  • anyOf 1tidak ditentukan
  • allOf 1object

    Penumpukan lebih lanjut dihilangkan

  • allOf 2object

    Penumpukan lebih lanjut dihilangkan

  • anyOf 2null
  • subjectstring | nullwajib
  • sender_mailboxtidak ditentukanwajib
  • anyOf 1object
  • idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • addressstringwajib

    Penumpukan lebih lanjut dihilangkan

  • display_namestringwajib

    Penumpukan lebih lanjut dihilangkan

  • statusstringwajib

    Penumpukan lebih lanjut dihilangkan

  • anyOf 2null
  • reply_mailboxtidak ditentukanwajib
  • anyOf 1object
  • idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • addressstringwajib

    Penumpukan lebih lanjut dihilangkan

  • display_namestringwajib

    Penumpukan lebih lanjut dihilangkan

  • statusstringwajib

    Penumpukan lebih lanjut dihilangkan

  • anyOf 2null
  • design_versioninteger | nullwajib
  • audienceobjectwajib

    Pilih semua kontak berlangganan atau setidaknya satu daftar contact_ids, list_ids, atau segment_ids yang tidak kosong.

  • all_subscribedboolean
  • contact_idsarray

    maxItems: 10000

  • Setiap itemstring

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • list_idsarray

    maxItems: 1000

  • Setiap itemstring

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • segment_idsarray

    maxItems: 1000

  • Setiap itemstring

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • allOf 2object
  • replayedbooleanwajib
  • allOf 2object
  • previewobject
  • subjectstringwajib
  • preheaderstring
  • htmlstringwajib
  • textstringwajib
  • localestringwajib
  • directionstringwajib

    enum: "ltr", "rtl"

  • warningsarray
  • Setiap itemstring
  • Properti tambahanNilai apa pun
  • translation_jobsarraywajib
  • Setiap itemstring

    format: "uuid"

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/broadcasts' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'X-Banger-Product-Id: 00000000-0000-4000-8000-000000000001' \
  --header 'Idempotency-Key: example' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "name": "example",
  "mailbox_id": "00000000-0000-4000-8000-000000000001",
  "template_id": "00000000-0000-4000-8000-000000000001",
  "audience": {
    "all_subscribed": true,
    "contact_ids": [
      "00000000-0000-4000-8000-000000000001"
    ],
    "list_ids": [
      "00000000-0000-4000-8000-000000000001"
    ],
    "segment_ids": [
      "00000000-0000-4000-8000-000000000001"
    ]
  },
  "subject_variants": [
    "example"
  ],
  "selected_subject_variant": 0,
  "expires_after_seconds": 1,
  "content_overrides": {}
}'
GET/v1/workspaces/{workspaceId}/broadcasts/{broadcastId}

getBroadcast

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

X-Banger-Product-Id
header · wajib

Produk operasi eksplisit; harus sesuai dengan kredensial OAuth bercakupan produk.

  • valuestring

    format: "uuid"

broadcastId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Pembacaan kembali kanonis atau tanda terima idempoten. Penerimaan penyedia adalah sent; delivered memerlukan peristiwa pengiriman dan tidak membuktikan masuk ke kotak masuk.

application/json

  • valueobject
  • dataobjectwajib
  • idstringwajib

    format: "uuid"

  • product_idstringwajib

    format: "uuid"

  • namestringwajib
  • mailbox_idstring

    format: "uuid"

  • template_idstring | null

    format: "uuid"

  • managed_content_idstring | null

    format: "uuid"

  • managed_source_revision_idstring | null

    format: "uuid"

  • managed_publication_idstring | null

    format: "uuid"

  • managed_locales_snapshotarray
  • Setiap itemstring
  • expires_after_secondsinteger | null
  • statusstring
  • versionintegerwajib
  • subject_variantsarray
  • Setiap itemstring
  • selected_subject_variantinteger
  • content_overridesobject
  • Properti tambahanstring
  • audience_queryobject

    Pilih semua kontak berlangganan atau setidaknya satu daftar contact_ids, list_ids, atau segment_ids yang tidak kosong.

  • all_subscribedboolean
  • contact_idsarray

    maxItems: 10000

  • Setiap itemstring

    format: "uuid"

  • list_idsarray

    maxItems: 1000

  • Setiap itemstring

    format: "uuid"

  • segment_idsarray

    maxItems: 1000

  • Setiap itemstring

    format: "uuid"

  • audience_frozen_atstring | null

    format: "date-time"

  • audience_recipient_countinteger | null
  • audience_snapshot_sha256string | null
  • audience_snapshot_campaign_versioninteger | null
  • scheduled_atstring | null

    format: "date-time"

  • started_atstring | null

    format: "date-time"

  • completed_atstring | null

    format: "date-time"

  • created_atstring

    format: "date-time"

  • updated_atstring

    format: "date-time"

  • archived_atstring | null

    format: "date-time"

  • statsobject
  • Properti tambahanNilai apa pun
  • broadcast_idstringwajib

    format: "uuid"

  • sender_addressstring | nullwajib
  • sending_blockertidak ditentukanwajib
  • anyOf 1object
  • codestringwajib
  • messagestringwajib
  • anyOf 2null
  • designtidak ditentukanwajib
  • anyOf 1object
  • idstring

    format: "uuid"

  • product_idstring

    format: "uuid"

  • namestring
  • subjectstring
  • body_textstring
  • contentobject
  • Properti tambahanstring
  • slotsarray
  • Setiap itemobject
  • keystringwajib

    pattern: "^[A-Za-z0-9_$.-]{1,200}$"

    Penumpukan lebih lanjut dihilangkan

  • labelstring

    maxLength: 120

    Penumpukan lebih lanjut dihilangkan

  • typestring

    enum: "text", "paragraph", "url", "image"

    Penumpukan lebih lanjut dihilangkan

  • helpstring

    maxLength: 300

    Penumpukan lebih lanjut dihilangkan

  • statusstring

    enum: "active", "archived"

  • originstring

    enum: "person", "agent", "starter", "import"

  • created_by_actor_idstring | null
  • campaign_idstring | null

    format: "uuid"

  • message_kindstring
  • starter_idstring | null
  • starter_versioninteger | null
  • versioninteger
  • created_atstring

    format: "date-time"

  • updated_atstring

    format: "date-time"

  • body_html_urlstring

    format: "uri"

  • body_htmlstring | null
  • body_html_b2_keystring | null
  • anyOf 2null
  • managed_contenttidak ditentukanwajib
  • anyOf 1tidak ditentukan
  • allOf 1object
  • idstringwajib

    format: "uuid"

  • namestringwajib
  • versionintegerwajib

    minimum: 1

  • review_requiredbooleanwajib
  • draft_revision_idstring | null

    format: "uuid"

  • submitted_revision_idstring | null

    format: "uuid"

  • approved_revision_idstring | null

    format: "uuid"

  • published_revision_idstring | null

    format: "uuid"

  • published_publication_idstring | null

    format: "uuid"

  • source_revisionobject
  • Properti tambahanNilai apa pun
  • translationsarray
  • Setiap itemobject

    Penumpukan lebih lanjut dihilangkan

  • translation_jobsarray
  • Setiap itemobject

    Penumpukan lebih lanjut dihilangkan

  • allOf 2object
  • source_revisiontidak ditentukanwajib
  • anyOf 1object

    Penumpukan lebih lanjut dihilangkan

  • anyOf 2null

    Penumpukan lebih lanjut dihilangkan

  • published_source_revisiontidak ditentukanwajib
  • anyOf 1object

    Penumpukan lebih lanjut dihilangkan

  • anyOf 2null

    Penumpukan lebih lanjut dihilangkan

  • translationsarraywajib
  • Setiap itemobject

    Penumpukan lebih lanjut dihilangkan

  • anyOf 2null
  • subjectstring | nullwajib
  • sender_mailboxtidak ditentukanwajib
  • anyOf 1object
  • idstringwajib

    format: "uuid"

  • addressstringwajib
  • display_namestringwajib
  • statusstringwajib
  • anyOf 2null
  • reply_mailboxtidak ditentukanwajib
  • anyOf 1object
  • idstringwajib

    format: "uuid"

  • addressstringwajib
  • display_namestringwajib
  • statusstringwajib
  • anyOf 2null
  • design_versioninteger | nullwajib
  • audienceobjectwajib

    Pilih semua kontak berlangganan atau setidaknya satu daftar contact_ids, list_ids, atau segment_ids yang tidak kosong.

  • all_subscribedboolean
  • contact_idsarray

    maxItems: 10000

  • Setiap itemstring

    format: "uuid"

  • list_idsarray

    maxItems: 1000

  • Setiap itemstring

    format: "uuid"

  • segment_idsarray

    maxItems: 1000

  • Setiap itemstring

    format: "uuid"

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/broadcasts/{broadcastId}' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'X-Banger-Product-Id: 00000000-0000-4000-8000-000000000001'
PATCH/v1/workspaces/{workspaceId}/broadcasts/{broadcastId}

updateBroadcast

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

X-Banger-Product-Id
header · wajib

Produk operasi eksplisit; harus sesuai dengan kredensial OAuth bercakupan produk.

  • valuestring

    format: "uuid"

broadcastId
path · wajib
  • valuestring

    format: "uuid"

Idempotency-Key
header · wajib
  • valuestring

    minLength: 1 · maxLength: 256

Isi permintaan wajib

application/json

  • valueobject

    Tidak ada properti tambahan

  • namestring

    minLength: 1 · maxLength: 200

  • mailbox_idstring

    format: "uuid"

  • template_idstring

    format: "uuid"

  • audienceobject

    Tidak ada properti tambahan

  • all_subscribedboolean
  • contact_idsarray

    maxItems: 10000

  • Setiap itemstring

    format: "uuid"

  • list_idsarray

    maxItems: 1000

  • Setiap itemstring

    format: "uuid"

  • segment_idsarray

    maxItems: 1000

  • Setiap itemstring

    format: "uuid"

  • subject_variantsarray

    maxItems: 8

  • Setiap itemstring

    minLength: 1 · maxLength: 998

  • selected_subject_variantinteger

    minimum: 0 · maximum: 7

  • expires_after_secondsinteger

    Buang penerima yang belum dikirim setelah sekian detik dari waktu terjadwal.

    minimum: 1 · maximum: 604800

  • content_overridesobject
  • Properti tambahanstring

    maxLength: 20000

  • expected_versionintegerwajib

    minimum: 1

Respons berhasil 200

Pembacaan kembali kanonis atau tanda terima idempoten. Penerimaan penyedia adalah sent; delivered memerlukan peristiwa pengiriman dan tidak membuktikan masuk ke kotak masuk.

application/json

  • valueobject
  • datatidak ditentukanwajib
  • allOf 1object
  • idstringwajib

    format: "uuid"

  • product_idstringwajib

    format: "uuid"

  • namestringwajib
  • mailbox_idstring

    format: "uuid"

  • template_idstring | null

    format: "uuid"

  • managed_content_idstring | null

    format: "uuid"

  • managed_source_revision_idstring | null

    format: "uuid"

  • managed_publication_idstring | null

    format: "uuid"

  • managed_locales_snapshotarray
  • Setiap itemstring
  • expires_after_secondsinteger | null
  • statusstring
  • versionintegerwajib
  • subject_variantsarray
  • Setiap itemstring
  • selected_subject_variantinteger
  • content_overridesobject
  • Properti tambahanstring
  • audience_queryobject

    Pilih semua kontak berlangganan atau setidaknya satu daftar contact_ids, list_ids, atau segment_ids yang tidak kosong.

  • all_subscribedboolean
  • contact_idsarray

    maxItems: 10000

  • Setiap itemstring

    format: "uuid"

  • list_idsarray

    maxItems: 1000

  • Setiap itemstring

    format: "uuid"

  • segment_idsarray

    maxItems: 1000

  • Setiap itemstring

    format: "uuid"

  • audience_frozen_atstring | null

    format: "date-time"

  • audience_recipient_countinteger | null
  • audience_snapshot_sha256string | null
  • audience_snapshot_campaign_versioninteger | null
  • scheduled_atstring | null

    format: "date-time"

  • started_atstring | null

    format: "date-time"

  • completed_atstring | null

    format: "date-time"

  • created_atstring

    format: "date-time"

  • updated_atstring

    format: "date-time"

  • archived_atstring | null

    format: "date-time"

  • statsobject
  • Properti tambahanNilai apa pun
  • broadcast_idstringwajib

    format: "uuid"

  • sender_addressstring | nullwajib
  • sending_blockertidak ditentukanwajib
  • anyOf 1object
  • codestringwajib
  • messagestringwajib
  • anyOf 2null
  • designtidak ditentukanwajib
  • anyOf 1object
  • idstring

    format: "uuid"

  • product_idstring

    format: "uuid"

  • namestring
  • subjectstring
  • body_textstring
  • contentobject
  • Properti tambahanstring

    Penumpukan lebih lanjut dihilangkan

  • slotsarray
  • Setiap itemobject

    Penumpukan lebih lanjut dihilangkan

  • statusstring

    enum: "active", "archived"

  • originstring

    enum: "person", "agent", "starter", "import"

  • created_by_actor_idstring | null
  • campaign_idstring | null

    format: "uuid"

  • message_kindstring
  • starter_idstring | null
  • starter_versioninteger | null
  • versioninteger
  • created_atstring

    format: "date-time"

  • updated_atstring

    format: "date-time"

  • body_html_urlstring

    format: "uri"

  • body_htmlstring | null
  • body_html_b2_keystring | null
  • anyOf 2null
  • managed_contenttidak ditentukanwajib
  • anyOf 1tidak ditentukan
  • allOf 1object
  • idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • namestringwajib

    Penumpukan lebih lanjut dihilangkan

  • versionintegerwajib

    minimum: 1

    Penumpukan lebih lanjut dihilangkan

  • review_requiredbooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • draft_revision_idstring | null

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • submitted_revision_idstring | null

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • approved_revision_idstring | null

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • published_revision_idstring | null

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • published_publication_idstring | null

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • source_revisionobject

    Penumpukan lebih lanjut dihilangkan

  • translationsarray

    Penumpukan lebih lanjut dihilangkan

  • translation_jobsarray

    Penumpukan lebih lanjut dihilangkan

  • allOf 2object
  • source_revisiontidak ditentukanwajib

    Penumpukan lebih lanjut dihilangkan

  • published_source_revisiontidak ditentukanwajib

    Penumpukan lebih lanjut dihilangkan

  • translationsarraywajib

    Penumpukan lebih lanjut dihilangkan

  • anyOf 2null
  • subjectstring | nullwajib
  • sender_mailboxtidak ditentukanwajib
  • anyOf 1object
  • idstringwajib

    format: "uuid"

  • addressstringwajib
  • display_namestringwajib
  • statusstringwajib
  • anyOf 2null
  • reply_mailboxtidak ditentukanwajib
  • anyOf 1object
  • idstringwajib

    format: "uuid"

  • addressstringwajib
  • display_namestringwajib
  • statusstringwajib
  • anyOf 2null
  • design_versioninteger | nullwajib
  • audienceobjectwajib

    Pilih semua kontak berlangganan atau setidaknya satu daftar contact_ids, list_ids, atau segment_ids yang tidak kosong.

  • all_subscribedboolean
  • contact_idsarray

    maxItems: 10000

  • Setiap itemstring

    format: "uuid"

  • list_idsarray

    maxItems: 1000

  • Setiap itemstring

    format: "uuid"

  • segment_idsarray

    maxItems: 1000

  • Setiap itemstring

    format: "uuid"

  • allOf 2object
  • replayedbooleanwajib

Contoh curl

curl --request PATCH --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/broadcasts/{broadcastId}' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'X-Banger-Product-Id: 00000000-0000-4000-8000-000000000001' \
  --header 'Idempotency-Key: example' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "name": "example",
  "mailbox_id": "00000000-0000-4000-8000-000000000001",
  "template_id": "00000000-0000-4000-8000-000000000001",
  "audience": {
    "all_subscribed": true,
    "contact_ids": [
      "00000000-0000-4000-8000-000000000001"
    ],
    "list_ids": [
      "00000000-0000-4000-8000-000000000001"
    ],
    "segment_ids": [
      "00000000-0000-4000-8000-000000000001"
    ]
  },
  "subject_variants": [
    "example"
  ],
  "selected_subject_variant": 0,
  "expires_after_seconds": 1,
  "content_overrides": {},
  "expected_version": 1
}'
POST/v1/workspaces/{workspaceId}/broadcasts/audience-preview

previewBroadcastAudience

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

X-Banger-Product-Id
header · wajib

Produk operasi eksplisit; harus sesuai dengan kredensial OAuth bercakupan produk.

  • valuestring

    format: "uuid"

Isi permintaan wajib

application/json

  • valueobject

    Tidak ada properti tambahan

  • audienceobjectwajib

    Tidak ada properti tambahan

  • all_subscribedboolean
  • contact_idsarray

    maxItems: 10000

  • Setiap itemstring

    format: "uuid"

  • list_idsarray

    maxItems: 1000

  • Setiap itemstring

    format: "uuid"

  • segment_idsarray

    maxItems: 1000

  • Setiap itemstring

    format: "uuid"

  • template_idstring

    format: "uuid"

  • subjectstring

    minLength: 0 · maxLength: 10000

  • content_overridesobject
  • Properti tambahanstring

    maxLength: 20000

Respons berhasil 200

Pembacaan kembali kanonis atau tanda terima idempoten. Penerimaan penyedia adalah sent; delivered memerlukan peristiwa pengiriman dan tidak membuktikan masuk ke kotak masuk.

application/json

  • valueobject
  • datatidak ditentukanwajib
  • allOf 1object
  • countintegerwajib
  • missing_consent_evidence_countintegerwajib
  • samplearraywajib
  • Setiap itemobject
  • idstringwajib

    format: "uuid"

  • emailstringwajib
  • display_namestring | nullwajib
  • attributesobjectwajib
  • Properti tambahanNilai apa pun
  • excludedobjectwajib
  • suppressedintegerwajib
  • not_subscribedintegerwajib
  • missing_recipient_hashintegerwajib
  • missing_consent_evidenceintegerwajib
  • allOf 2object
  • eligible_countintegerwajib
  • required_variablesarraywajib
  • Setiap itemstring
  • missing_personalization_fieldsarraywajib
  • Setiap itemobject
  • variablestringwajib
  • missingCountintegerwajib
  • sampleEmailsarraywajib
  • Setiap itemstring

    Penumpukan lebih lanjut dihilangkan

  • audienceobjectwajib

    Pilih semua kontak berlangganan atau setidaknya satu daftar contact_ids, list_ids, atau segment_ids yang tidak kosong.

  • all_subscribedboolean
  • contact_idsarray

    maxItems: 10000

  • Setiap itemstring

    format: "uuid"

  • list_idsarray

    maxItems: 1000

  • Setiap itemstring

    format: "uuid"

  • segment_idsarray

    maxItems: 1000

  • Setiap itemstring

    format: "uuid"

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/broadcasts/audience-preview' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'X-Banger-Product-Id: 00000000-0000-4000-8000-000000000001' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "audience": {
    "all_subscribed": true,
    "contact_ids": [
      "00000000-0000-4000-8000-000000000001"
    ],
    "list_ids": [
      "00000000-0000-4000-8000-000000000001"
    ],
    "segment_ids": [
      "00000000-0000-4000-8000-000000000001"
    ]
  },
  "template_id": "00000000-0000-4000-8000-000000000001",
  "subject": "example",
  "content_overrides": {}
}'
POST/v1/workspaces/{workspaceId}/broadcasts/{broadcastId}/audience-preview

previewSavedBroadcastAudience

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

X-Banger-Product-Id
header · wajib

Produk operasi eksplisit; harus sesuai dengan kredensial OAuth bercakupan produk.

  • valuestring

    format: "uuid"

broadcastId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan wajib

application/json

  • valueobject

    Tidak ada properti tambahan

  • audienceobject

    Tidak ada properti tambahan

  • all_subscribedboolean
  • contact_idsarray

    maxItems: 10000

  • Setiap itemstring

    format: "uuid"

  • list_idsarray

    maxItems: 1000

  • Setiap itemstring

    format: "uuid"

  • segment_idsarray

    maxItems: 1000

  • Setiap itemstring

    format: "uuid"

Respons berhasil 200

Pembacaan kembali kanonis atau tanda terima idempoten. Penerimaan penyedia adalah sent; delivered memerlukan peristiwa pengiriman dan tidak membuktikan masuk ke kotak masuk.

application/json

  • valueobject
  • datatidak ditentukanwajib
  • allOf 1object
  • countintegerwajib
  • missing_consent_evidence_countintegerwajib
  • samplearraywajib
  • Setiap itemobject
  • idstringwajib

    format: "uuid"

  • emailstringwajib
  • display_namestring | nullwajib
  • attributesobjectwajib
  • Properti tambahanNilai apa pun
  • excludedobjectwajib
  • suppressedintegerwajib
  • not_subscribedintegerwajib
  • missing_recipient_hashintegerwajib
  • missing_consent_evidenceintegerwajib
  • allOf 2object
  • eligible_countintegerwajib
  • required_variablesarraywajib
  • Setiap itemstring
  • missing_personalization_fieldsarraywajib
  • Setiap itemobject
  • variablestringwajib
  • missingCountintegerwajib
  • sampleEmailsarraywajib
  • Setiap itemstring

    Penumpukan lebih lanjut dihilangkan

  • audienceobjectwajib

    Pilih semua kontak berlangganan atau setidaknya satu daftar contact_ids, list_ids, atau segment_ids yang tidak kosong.

  • all_subscribedboolean
  • contact_idsarray

    maxItems: 10000

  • Setiap itemstring

    format: "uuid"

  • list_idsarray

    maxItems: 1000

  • Setiap itemstring

    format: "uuid"

  • segment_idsarray

    maxItems: 1000

  • Setiap itemstring

    format: "uuid"

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/broadcasts/{broadcastId}/audience-preview' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'X-Banger-Product-Id: 00000000-0000-4000-8000-000000000001' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "audience": {
    "all_subscribed": true,
    "contact_ids": [
      "00000000-0000-4000-8000-000000000001"
    ],
    "list_ids": [
      "00000000-0000-4000-8000-000000000001"
    ],
    "segment_ids": [
      "00000000-0000-4000-8000-000000000001"
    ]
  }
}'
GET/v1/workspaces/{workspaceId}/broadcasts/{broadcastId}/readiness

checkBroadcastReadiness

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

X-Banger-Product-Id
header · wajib

Produk operasi eksplisit; harus sesuai dengan kredensial OAuth bercakupan produk.

  • valuestring

    format: "uuid"

broadcastId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Pembacaan kembali kanonis atau tanda terima idempoten. Penerimaan penyedia adalah sent; delivered memerlukan peristiwa pengiriman dan tidak membuktikan masuk ke kotak masuk.

application/json

  • valueobject
  • dataobjectwajib
  • broadcast_idstringwajib

    format: "uuid"

  • product_idstringwajib

    format: "uuid"

  • readybooleanwajib
  • blockersarraywajib
  • Setiap itemobject
  • codestringwajib
  • messagestringwajib
  • audiencetidak ditentukanwajib
  • allOf 1object
  • countintegerwajib
  • missing_consent_evidence_countintegerwajib
  • samplearraywajib
  • Setiap itemobject
  • idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • emailstringwajib

    Penumpukan lebih lanjut dihilangkan

  • display_namestring | nullwajib

    Penumpukan lebih lanjut dihilangkan

  • attributesobjectwajib

    Penumpukan lebih lanjut dihilangkan

  • excludedobjectwajib
  • suppressedintegerwajib
  • not_subscribedintegerwajib
  • missing_recipient_hashintegerwajib
  • missing_consent_evidenceintegerwajib
  • allOf 2object
  • eligible_countintegerwajib
  • required_variablesarraywajib
  • Setiap itemstring
  • missing_personalization_fieldsarraywajib
  • Setiap itemobject
  • variablestringwajib

    Penumpukan lebih lanjut dihilangkan

  • missingCountintegerwajib

    Penumpukan lebih lanjut dihilangkan

  • sampleEmailsarraywajib

    Penumpukan lebih lanjut dihilangkan

  • audienceobjectwajib

    Pilih semua kontak berlangganan atau setidaknya satu daftar contact_ids, list_ids, atau segment_ids yang tidak kosong.

  • all_subscribedboolean
  • contact_idsarray

    maxItems: 10000

  • Setiap itemstring

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • list_idsarray

    maxItems: 1000

  • Setiap itemstring

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • segment_idsarray

    maxItems: 1000

  • Setiap itemstring

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • campaign_versionintegerwajib
  • design_versioninteger | nullwajib
  • languagestidak ditentukanwajib
  • anyOf 1object

    Bahasa audiens yang masih diterjemahkan tidak pernah menahan Kampanye. Pembacanya menerima setelah terjemahan siap, dan dilewati (translation_failed, translation_awaiting_review, atau translation_still_preparing) jika belum siap dalam sehari setelah pengiriman.

  • requestedarraywajib
  • Setiap itemobject
  • localestringwajib

    Penumpukan lebih lanjut dihilangkan

  • countintegerwajib

    Penumpukan lebih lanjut dihilangkan

  • pending_localesarraywajib
  • Setiap itemstring
  • waiting_localesarraywajib
  • Setiap itemstring
  • anyOf 2null
  • sendingobjectwajib
  • route_kindstring | null
  • sending_stream_idstring | null

    format: "uuid"

  • banger_send_limitinteger | string | null
  • daily_send_limitinteger | string | null
  • usedinteger | string | null
  • daily_usedinteger | string | null
  • delivery_pacetidak ditentukanwajib
  • anyOf 1object
  • daysintegerwajib
  • daily_limitintegerwajib
  • messagestringwajib
  • anyOf 2null
  • approval_requirementsobjectwajib
  • dispositionstringwajib

    enum: "automatic", "human_required"

  • recipient_countinteger | nullwajib
  • reasonsarraywajib
  • Setiap itemstring
  • checksarraywajib
  • Setiap itemstring
  • footerobjectwajib
  • identity_presentbooleanwajib
  • address_presentbooleanwajib
  • checks_are_advisorybooleanwajib

    const: true

  • next_actionstringwajib

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/broadcasts/{broadcastId}/readiness' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'X-Banger-Product-Id: 00000000-0000-4000-8000-000000000001'
GET/v1/workspaces/{workspaceId}/broadcasts/{broadcastId}/recipients

listBroadcastRecipients

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

X-Banger-Product-Id
header · wajib

Produk operasi eksplisit; harus sesuai dengan kredensial OAuth bercakupan produk.

  • valuestring

    format: "uuid"

broadcastId
path · wajib
  • valuestring

    format: "uuid"

cursor
query
  • valuestring

    minLength: 0 · maxLength: 1024

limit
query
  • valueinteger

    minimum: 1 · maximum: 100

status
query
  • valuestring

    enum: "pending", "queued", "sent", "delivered", "failed", "skipped", "bounced", "complained"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Pembacaan kembali kanonis atau tanda terima idempoten. Penerimaan penyedia adalah sent; delivered memerlukan peristiwa pengiriman dan tidak membuktikan masuk ke kotak masuk.

application/json

  • valueobject
  • dataarraywajib
  • Setiap itemobject
  • contact_idstring | null

    format: "uuid"

  • recipient_emailstring
  • recipient_namestring | null
  • recipient_hashstring
  • statusstring
  • dispatch_statusstring
  • command_idstring | null

    format: "uuid"

  • error_codestring | null
  • created_atstring

    format: "date-time"

  • updated_atstring

    format: "date-time"

  • delivery_statestring | null
  • provider_message_keystring | null
  • last_event_atstring | null

    format: "date-time"

  • first_delivered_atstring | null

    format: "date-time"

  • first_opened_atstring | null

    format: "date-time"

  • first_clicked_atstring | null

    format: "date-time"

  • first_human_likely_opened_atstring | null

    format: "date-time"

  • first_human_likely_clicked_atstring | null

    format: "date-time"

  • first_replied_atstring | null

    format: "date-time"

  • machine_open_countinteger
  • machine_click_countinteger
  • privacy_proxy_open_countinteger
  • unknown_open_countinteger
  • unknown_click_countinteger
  • first_unsubscribed_atstring | null

    format: "date-time"

  • pageobjectwajib
  • next_cursorstring
  • has_morebooleanwajib
  • delivery_semanticsstringwajib

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/broadcasts/{broadcastId}/recipients?cursor=example&limit=1&status=pending' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'X-Banger-Product-Id: 00000000-0000-4000-8000-000000000001'
GET/v1/workspaces/{workspaceId}/broadcasts/{broadcastId}/timeline

listBroadcastTimeline

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

X-Banger-Product-Id
header · wajib

Produk operasi eksplisit; harus sesuai dengan kredensial OAuth bercakupan produk.

  • valuestring

    format: "uuid"

broadcastId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Pembacaan kembali kanonis atau tanda terima idempoten. Penerimaan penyedia adalah sent; delivered memerlukan peristiwa pengiriman dan tidak membuktikan masuk ke kotak masuk.

application/json

  • valueobject
  • dataarraywajib
  • Setiap itemobject
  • idstringwajib
  • typestringwajib
  • occurred_atstringwajib

    format: "date-time"

  • actor_idstring | nullwajib
  • detailobjectwajib
  • Properti tambahanNilai apa pun
  • delivery_semanticsstringwajib

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/broadcasts/{broadcastId}/timeline' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'X-Banger-Product-Id: 00000000-0000-4000-8000-000000000001'

Journey

GET/v1/workspaces/{workspaceId}/journeys

listJourneys

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

status
query
  • valuestring

    enum: "draft", "discovered", "active", "paused", "archived"

trigger_kind
query
  • valuestring
testing
query
  • valuestring

    enum: "1"

q
query
  • valuestring

    maxLength: 200

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Journey produk.

application/json

  • valueobject
  • dataarraywajib
  • Setiap itemtidak ditentukan
  • allOf 1object

    Tidak ada properti tambahan

  • namestringwajib

    minLength: 1 · maxLength: 200

  • descriptionstring

    maxLength: 2000

  • mailbox_idstring

    Pengirim yang ada. Hilangkan untuk memprioritaskan pengirim onboarding, lalu kotak surat khusus aktif, lalu yang dihosting. Pengirim tersimpan dan eksplisit tidak berubah.

    format: "uuid"

  • from_local_partstring

    maxLength: 64 · pattern: "^[a-z0-9][a-z0-9._+-]{0,62}$"

  • triggerobjectwajib
  • kindstringwajib

    enum: "manual", "contact_created", "audience_joined", "event", "schedule", "inbound_email", "api"

  • connection_idstring

    format: "uuid"

  • configobject
  • eventstring

    Penumpukan lebih lanjut dihilangkan

  • once_per_personboolean

    Setiap orang masuk sekali. Tetapkan false agar orang dapat masuk kembali setelah selesai.

    default: true

    Penumpukan lebih lanjut dihilangkan

  • reentry_daysinteger

    Jika once_per_person false, jumlah hari setelah masuk terakhir sebelum orang dapat masuk lagi.

    minimum: 1 · maximum: 365

    Penumpukan lebih lanjut dihilangkan

  • Properti tambahanNilai apa pun
  • conditionsarray
  • Setiap itemobject

    Penumpukan lebih lanjut dihilangkan

  • audienceobject
  • Properti tambahanNilai apa pun
  • goalobject

    Tidak ada properti tambahan

  • kindstringwajib

    enum: "none", "event", "reply", "conversion"

  • connection_idstring

    format: "uuid"

  • configobjectwajib
  • Properti tambahanNilai apa pun
  • exitobject

    Tidak ada properti tambahan

  • on_replyboolean

    default: true

  • on_unsubscribeboolean

    default: true

  • on_suppressionboolean

    default: true

  • eventstring

    maxLength: 200

  • approval_modestring

    enum: "policy", "required"

  • apiobject
  • keystring

    maxLength: 100

  • content_modestring

    enum: "code", "managed"

  • identitystring

    maxLength: 300

  • managed_contentobject

    Pintasan khusus pembuatan: simpan secara atomik draf email terkelola sumber dan Journey yang langkah emailnya merujuk draf itu. Bahasa target yang belum ada masuk antrean terjemahan gratis; ini tidak menerbitkan atau mengaktifkan Journey.

    Tidak ada properti tambahan

  • source_localestring

    Lokal sumber BCP 47 kanonis; mewarisi pengaturan produk jika dihilangkan.

  • configured_localesarray

    Lokal sumber dan target; sumber yang dihilangkan ditambahkan oleh server.

    maxItems: 100 · uniqueItems: true

  • Setiap itemstring

    Penumpukan lebih lanjut dihilangkan

  • fallback_localestring
  • layout_idstring

    Tata letak pakai ulang yang dipilih; server menyimpan snapshot revisi terbitnya ke revisi konten ini.

    format: "uuid"

  • localization_policyobject

    Email Journey hanya dikirim dalam bahasa orang tersebut: menunggu terjemahan sekitar satu menit untuk tanda terima, kode, dan pemberitahuan keamanan, dan hingga sehari untuk email lain, lalu tidak dikirim jika terjemahan belum siap.

    Tidak ada properti tambahan

  • manual_reviewboolean

    default: false

    Penumpukan lebih lanjut dihilangkan

  • sourceobjectwajib

    Tidak ada properti tambahan

  • subjectstringwajib

    minLength: 1 · maxLength: 100000

    Penumpukan lebih lanjut dihilangkan

  • preheaderstring

    maxLength: 100000

    Penumpukan lebih lanjut dihilangkan

  • body_textstring

    Diterima untuk kompatibilitas sumber; teks biasa yang dirender diturunkan dari HTML final.

    maxLength: 100000

    Penumpukan lebih lanjut dihilangkan

  • body_htmlstringwajib

    minLength: 1 · maxLength: 100000

    Penumpukan lebih lanjut dihilangkan

  • layoutstring

    Harus berisi satu slot {{ content }}.

    maxLength: 100000

    Penumpukan lebih lanjut dihilangkan

  • variantsobject

    Versi sumber opsional. Setiap versi diterjemahkan otomatis dalam revisi yang sama.

    Penumpukan lebih lanjut dihilangkan

  • variablesobjectwajib

    Penumpukan lebih lanjut dihilangkan

  • samplesobject

    Kumpulan nilai contoh bernama untuk pratinjau dan validasi sumber.

  • Properti tambahanobject

    Penumpukan lebih lanjut dihilangkan

  • translationsobject

    Katalog pesan ICU sumber dan katalog target opsional yang disediakan. Target terkonfigurasi yang belum ada masuk antrean terjemahan asinkron; penyimpanan tidak memerlukannya.

  • Properti tambahanobject

    Penumpukan lebih lanjut dihilangkan

  • stepsarraywajib

    maxItems: 100

  • Setiap itemobject

    Tidak ada properti tambahan

  • idstring

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • positioninteger

    minimum: 1 · maximum: 100

    Penumpukan lebih lanjut dihilangkan

  • kindstringwajib

    enum: "email", "wait", "condition", "action", "split"

    Penumpukan lebih lanjut dihilangkan

  • namestringwajib

    minLength: 1 · maxLength: 200

    Penumpukan lebih lanjut dihilangkan

  • managed_contentobject

    Kontrak sumber bertipe dan identitas revisi draf/terbit untuk langkah email.

    Penumpukan lebih lanjut dihilangkan

  • configobjectwajib

    Langkah tunggu opsional menerima until dengan name, path, operator (equals, not_equals, contains, atau exists), dan value, serta on_met wajib (continue atau end_journey). continue melewati email pengingat berikutnya; end_journey menyelesaikan Journey. Email pengingat harus langsung mengikuti di cabang yang sama. Penantian memeriksa data pelanggan saat ini setiap menit hingga amount/unit. Field yang hilang dianggap tidak diketahui dan menahan pengingat. Penantian biasa dan kondisi mandiri tetap berperilaku seperti sebelumnya. Namai pemeriksaan dengan tonggak pelanggan terverifikasi. Langkah email terkelola merujuk konten terbit melalui managed_content_id; aktivasi menolak referensi belum terbit. Langkah email dapat menetapkan expires_after_seconds (1-604800) untuk membuang pengiriman tertunda setelah interval itu dari awal aslinya; default tujuh hari.

    Penumpukan lebih lanjut dihilangkan

  • armsarray

    minItems: 2 · maxItems: 4

    Penumpukan lebih lanjut dihilangkan

  • allOf 2object
  • idstringwajib

    format: "uuid"

  • statusstringwajib

    enum: "draft", "discovered", "active", "paused", "archived"

  • api_keystring | null
  • content_modestring | null

    enum: "code", "managed", null

  • identitystring | null
  • identity_aliasesarray
  • Setiap itemstring
  • samplesarray
  • Setiap itemobject
  • Properti tambahanNilai apa pun
  • versionintegerwajib

    minimum: 1

  • statsobjectwajib
  • Properti tambahanNilai apa pun
  • stepStatsarray
  • Setiap itemobject
  • Properti tambahanNilai apa pun
  • armStatsarray
  • Setiap itemobject
  • Properti tambahanNilai apa pun
  • healthobjectwajib
  • Properti tambahanNilai apa pun
  • indicatorobjectwajib
  • Properti tambahanNilai apa pun
  • sparklinearraywajib
  • Setiap itemnumber
  • activated_atstring | null

    format: "date-time"

  • updated_atstring

    format: "date-time"

  • last_activity_atstring | null

    format: "date-time"

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/journeys?status=draft&trigger_kind=example&testing=1&q=example' \
  --header "Authorization: Bearer $BANGER_API_KEY"
POST/v1/workspaces/{workspaceId}/journeys

createJourney

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

Idempotency-Key
header · wajib
  • valuestring

    minLength: 16 · maxLength: 128

Isi permintaan wajib

application/json

  • valueobject

    Tidak ada properti tambahan

  • namestringwajib

    minLength: 1 · maxLength: 200

  • descriptionstring

    maxLength: 2000

  • mailbox_idstring

    Pengirim yang ada. Hilangkan untuk memprioritaskan pengirim onboarding, lalu kotak surat khusus aktif, lalu yang dihosting. Pengirim tersimpan dan eksplisit tidak berubah.

    format: "uuid"

  • from_local_partstring

    maxLength: 64 · pattern: "^[a-z0-9][a-z0-9._+-]{0,62}$"

  • triggerobjectwajib
  • kindstringwajib

    enum: "manual", "contact_created", "audience_joined", "event", "schedule", "inbound_email", "api"

  • connection_idstring

    format: "uuid"

  • configobject
  • eventstring
  • once_per_personboolean

    Setiap orang masuk sekali. Tetapkan false agar orang dapat masuk kembali setelah selesai.

    default: true

  • reentry_daysinteger

    Jika once_per_person false, jumlah hari setelah masuk terakhir sebelum orang dapat masuk lagi.

    minimum: 1 · maximum: 365

  • Properti tambahanNilai apa pun
  • conditionsarray
  • Setiap itemobject
  • Properti tambahanNilai apa pun
  • audienceobject
  • Properti tambahanNilai apa pun
  • goalobject

    Tidak ada properti tambahan

  • kindstringwajib

    enum: "none", "event", "reply", "conversion"

  • connection_idstring

    format: "uuid"

  • configobjectwajib
  • Properti tambahanNilai apa pun
  • exitobject

    Tidak ada properti tambahan

  • on_replyboolean

    default: true

  • on_unsubscribeboolean

    default: true

  • on_suppressionboolean

    default: true

  • eventstring

    maxLength: 200

  • approval_modestring

    enum: "policy", "required"

  • apiobject
  • keystring

    maxLength: 100

  • content_modestring

    enum: "code", "managed"

  • identitystring

    maxLength: 300

  • managed_contentobject

    Pintasan khusus pembuatan: simpan secara atomik draf email terkelola sumber dan Journey yang langkah emailnya merujuk draf itu. Bahasa target yang belum ada masuk antrean terjemahan gratis; ini tidak menerbitkan atau mengaktifkan Journey.

    Tidak ada properti tambahan

  • source_localestring

    Lokal sumber BCP 47 kanonis; mewarisi pengaturan produk jika dihilangkan.

  • configured_localesarray

    Lokal sumber dan target; sumber yang dihilangkan ditambahkan oleh server.

    maxItems: 100 · uniqueItems: true

  • Setiap itemstring
  • fallback_localestring
  • layout_idstring

    Tata letak pakai ulang yang dipilih; server menyimpan snapshot revisi terbitnya ke revisi konten ini.

    format: "uuid"

  • localization_policyobject

    Email Journey hanya dikirim dalam bahasa orang tersebut: menunggu terjemahan sekitar satu menit untuk tanda terima, kode, dan pemberitahuan keamanan, dan hingga sehari untuk email lain, lalu tidak dikirim jika terjemahan belum siap.

    Tidak ada properti tambahan

  • manual_reviewboolean

    default: false

  • sourceobjectwajib

    Tidak ada properti tambahan

  • subjectstringwajib

    minLength: 1 · maxLength: 100000

  • preheaderstring

    maxLength: 100000

  • body_textstring

    Diterima untuk kompatibilitas sumber; teks biasa yang dirender diturunkan dari HTML final.

    maxLength: 100000

  • body_htmlstringwajib

    minLength: 1 · maxLength: 100000

  • layoutstring

    Harus berisi satu slot {{ content }}.

    maxLength: 100000

  • variantsobject

    Versi sumber opsional. Setiap versi diterjemahkan otomatis dalam revisi yang sama.

  • Properti tambahanobject

    Tidak ada properti tambahan

  • subjectstringwajib

    minLength: 1 · maxLength: 100000

  • preheaderstring

    maxLength: 100000

  • body_htmlstringwajib

    minLength: 1 · maxLength: 100000

  • body_textstring

    maxLength: 100000

  • layoutstring

    maxLength: 100000

  • variablesobjectwajib
  • Properti tambahantidak ditentukan

    Variabel bertipe rekursif. Nilai uang memakai {amount_cents: integer, currency: ISO 4217 code}; nilai date berupa tanggal kalender ISO dan datetime berupa timestamp ISO dengan offset.

  • oneOf 1object

    Tidak ada properti tambahan

  • typestringwajib

    enum: "string", "text", "url", "image_url", "html", "date", "datetime", "number", "boolean", "money"

    Penumpukan lebih lanjut dihilangkan

  • requiredboolean

    Penumpukan lebih lanjut dihilangkan

  • descriptionstring

    maxLength: 2000

    Penumpukan lebih lanjut dihilangkan

  • defaulttidak ditentukan

    Harus sesuai tipe field.

    Penumpukan lebih lanjut dihilangkan

  • oneOf 2object

    Tidak ada properti tambahan

  • typetidak ditentukanwajib

    const: "object"

    Penumpukan lebih lanjut dihilangkan

  • requiredboolean

    Penumpukan lebih lanjut dihilangkan

  • descriptionstring

    maxLength: 2000

    Penumpukan lebih lanjut dihilangkan

  • defaultobject

    Penumpukan lebih lanjut dihilangkan

  • propertiesobjectwajib

    Penumpukan lebih lanjut dihilangkan

  • oneOf 3object

    Tidak ada properti tambahan

  • typetidak ditentukanwajib

    const: "list"

    Penumpukan lebih lanjut dihilangkan

  • requiredboolean

    Penumpukan lebih lanjut dihilangkan

  • descriptionstring

    maxLength: 2000

    Penumpukan lebih lanjut dihilangkan

  • defaultarray

    Penumpukan lebih lanjut dihilangkan

  • itemstidak ditentukanwajib

    Variabel bertipe rekursif. Nilai uang memakai {amount_cents: integer, currency: ISO 4217 code}; nilai date berupa tanggal kalender ISO dan datetime berupa timestamp ISO dengan offset.

    Penumpukan lebih lanjut dihilangkan

  • samplesobject

    Kumpulan nilai contoh bernama untuk pratinjau dan validasi sumber.

  • Properti tambahanobject
  • Properti tambahanNilai apa pun
  • translationsobject

    Katalog pesan ICU sumber dan katalog target opsional yang disediakan. Target terkonfigurasi yang belum ada masuk antrean terjemahan asinkron; penyimpanan tidak memerlukannya.

  • Properti tambahanobject
  • Properti tambahanstring
  • stepsarraywajib

    maxItems: 100

  • Setiap itemobject

    Tidak ada properti tambahan

  • idstring

    format: "uuid"

  • positioninteger

    minimum: 1 · maximum: 100

  • kindstringwajib

    enum: "email", "wait", "condition", "action", "split"

  • namestringwajib

    minLength: 1 · maxLength: 200

  • managed_contentobject

    Kontrak sumber bertipe dan identitas revisi draf/terbit untuk langkah email.

  • idstring

    format: "uuid"

  • versioninteger
  • draft_revision_idstring | null

    format: "uuid"

  • published_revision_idstring | null

    format: "uuid"

  • published_publication_idstring | null

    format: "uuid"

  • source_revision_idstring | null

    format: "uuid"

  • layout_revision_idstring | null

    format: "uuid"

  • published_layout_revision_idstring | null

    format: "uuid"

  • source_localestring | null
  • configured_localesarray
  • Setiap itemstring
  • variablesobject
  • Properti tambahanNilai apa pun
  • published_variablesobject
  • Properti tambahanNilai apa pun
  • configobjectwajib

    Langkah tunggu opsional menerima until dengan name, path, operator (equals, not_equals, contains, atau exists), dan value, serta on_met wajib (continue atau end_journey). continue melewati email pengingat berikutnya; end_journey menyelesaikan Journey. Email pengingat harus langsung mengikuti di cabang yang sama. Penantian memeriksa data pelanggan saat ini setiap menit hingga amount/unit. Field yang hilang dianggap tidak diketahui dan menahan pengingat. Penantian biasa dan kondisi mandiri tetap berperilaku seperti sebelumnya. Namai pemeriksaan dengan tonggak pelanggan terverifikasi. Langkah email terkelola merujuk konten terbit melalui managed_content_id; aktivasi menolak referensi belum terbit. Langkah email dapat menetapkan expires_after_seconds (1-604800) untuk membuang pengiriman tertunda setelah interval itu dari awal aslinya; default tujuh hari.

  • Properti tambahanNilai apa pun
  • armsarray

    minItems: 2 · maxItems: 4

  • Setiap itemobject

    Tidak ada properti tambahan

  • keystringwajib

    enum: "A", "B", "C", "D"

  • labelstringwajib

    maxLength: 120

  • allocationnumberwajib

    minimum: 0 · maximum: 100

  • stepsarraywajib
  • Setiap itemobject

    Tidak ada properti tambahan

    Penumpukan lebih lanjut dihilangkan

Respons berhasil 201

Journey dibuat.

application/json

  • valueobject
  • datatidak ditentukan
  • allOf 1object

    Tidak ada properti tambahan

  • namestringwajib

    minLength: 1 · maxLength: 200

  • descriptionstring

    maxLength: 2000

  • mailbox_idstring

    Pengirim yang ada. Hilangkan untuk memprioritaskan pengirim onboarding, lalu kotak surat khusus aktif, lalu yang dihosting. Pengirim tersimpan dan eksplisit tidak berubah.

    format: "uuid"

  • from_local_partstring

    maxLength: 64 · pattern: "^[a-z0-9][a-z0-9._+-]{0,62}$"

  • triggerobjectwajib
  • kindstringwajib

    enum: "manual", "contact_created", "audience_joined", "event", "schedule", "inbound_email", "api"

  • connection_idstring

    format: "uuid"

  • configobject
  • eventstring
  • once_per_personboolean

    Setiap orang masuk sekali. Tetapkan false agar orang dapat masuk kembali setelah selesai.

    default: true

  • reentry_daysinteger

    Jika once_per_person false, jumlah hari setelah masuk terakhir sebelum orang dapat masuk lagi.

    minimum: 1 · maximum: 365

  • Properti tambahanNilai apa pun
  • conditionsarray
  • Setiap itemobject
  • Properti tambahanNilai apa pun
  • audienceobject
  • Properti tambahanNilai apa pun
  • goalobject

    Tidak ada properti tambahan

  • kindstringwajib

    enum: "none", "event", "reply", "conversion"

  • connection_idstring

    format: "uuid"

  • configobjectwajib
  • Properti tambahanNilai apa pun
  • exitobject

    Tidak ada properti tambahan

  • on_replyboolean

    default: true

  • on_unsubscribeboolean

    default: true

  • on_suppressionboolean

    default: true

  • eventstring

    maxLength: 200

  • approval_modestring

    enum: "policy", "required"

  • apiobject
  • keystring

    maxLength: 100

  • content_modestring

    enum: "code", "managed"

  • identitystring

    maxLength: 300

  • managed_contentobject

    Pintasan khusus pembuatan: simpan secara atomik draf email terkelola sumber dan Journey yang langkah emailnya merujuk draf itu. Bahasa target yang belum ada masuk antrean terjemahan gratis; ini tidak menerbitkan atau mengaktifkan Journey.

    Tidak ada properti tambahan

  • source_localestring

    Lokal sumber BCP 47 kanonis; mewarisi pengaturan produk jika dihilangkan.

  • configured_localesarray

    Lokal sumber dan target; sumber yang dihilangkan ditambahkan oleh server.

    maxItems: 100 · uniqueItems: true

  • Setiap itemstring
  • fallback_localestring
  • layout_idstring

    Tata letak pakai ulang yang dipilih; server menyimpan snapshot revisi terbitnya ke revisi konten ini.

    format: "uuid"

  • localization_policyobject

    Email Journey hanya dikirim dalam bahasa orang tersebut: menunggu terjemahan sekitar satu menit untuk tanda terima, kode, dan pemberitahuan keamanan, dan hingga sehari untuk email lain, lalu tidak dikirim jika terjemahan belum siap.

    Tidak ada properti tambahan

  • manual_reviewboolean

    default: false

  • sourceobjectwajib

    Tidak ada properti tambahan

  • subjectstringwajib

    minLength: 1 · maxLength: 100000

  • preheaderstring

    maxLength: 100000

  • body_textstring

    Diterima untuk kompatibilitas sumber; teks biasa yang dirender diturunkan dari HTML final.

    maxLength: 100000

  • body_htmlstringwajib

    minLength: 1 · maxLength: 100000

  • layoutstring

    Harus berisi satu slot {{ content }}.

    maxLength: 100000

  • variantsobject

    Versi sumber opsional. Setiap versi diterjemahkan otomatis dalam revisi yang sama.

  • Properti tambahanobject

    Tidak ada properti tambahan

    Penumpukan lebih lanjut dihilangkan

  • variablesobjectwajib
  • Properti tambahantidak ditentukan

    Variabel bertipe rekursif. Nilai uang memakai {amount_cents: integer, currency: ISO 4217 code}; nilai date berupa tanggal kalender ISO dan datetime berupa timestamp ISO dengan offset.

    Penumpukan lebih lanjut dihilangkan

  • samplesobject

    Kumpulan nilai contoh bernama untuk pratinjau dan validasi sumber.

  • Properti tambahanobject
  • Properti tambahanNilai apa pun
  • translationsobject

    Katalog pesan ICU sumber dan katalog target opsional yang disediakan. Target terkonfigurasi yang belum ada masuk antrean terjemahan asinkron; penyimpanan tidak memerlukannya.

  • Properti tambahanobject
  • Properti tambahanstring

    Penumpukan lebih lanjut dihilangkan

  • stepsarraywajib

    maxItems: 100

  • Setiap itemobject

    Tidak ada properti tambahan

  • idstring

    format: "uuid"

  • positioninteger

    minimum: 1 · maximum: 100

  • kindstringwajib

    enum: "email", "wait", "condition", "action", "split"

  • namestringwajib

    minLength: 1 · maxLength: 200

  • managed_contentobject

    Kontrak sumber bertipe dan identitas revisi draf/terbit untuk langkah email.

  • idstring

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • versioninteger

    Penumpukan lebih lanjut dihilangkan

  • draft_revision_idstring | null

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • published_revision_idstring | null

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • published_publication_idstring | null

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • source_revision_idstring | null

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • layout_revision_idstring | null

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • published_layout_revision_idstring | null

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • source_localestring | null

    Penumpukan lebih lanjut dihilangkan

  • configured_localesarray

    Penumpukan lebih lanjut dihilangkan

  • variablesobject

    Penumpukan lebih lanjut dihilangkan

  • published_variablesobject

    Penumpukan lebih lanjut dihilangkan

  • configobjectwajib

    Langkah tunggu opsional menerima until dengan name, path, operator (equals, not_equals, contains, atau exists), dan value, serta on_met wajib (continue atau end_journey). continue melewati email pengingat berikutnya; end_journey menyelesaikan Journey. Email pengingat harus langsung mengikuti di cabang yang sama. Penantian memeriksa data pelanggan saat ini setiap menit hingga amount/unit. Field yang hilang dianggap tidak diketahui dan menahan pengingat. Penantian biasa dan kondisi mandiri tetap berperilaku seperti sebelumnya. Namai pemeriksaan dengan tonggak pelanggan terverifikasi. Langkah email terkelola merujuk konten terbit melalui managed_content_id; aktivasi menolak referensi belum terbit. Langkah email dapat menetapkan expires_after_seconds (1-604800) untuk membuang pengiriman tertunda setelah interval itu dari awal aslinya; default tujuh hari.

  • Properti tambahanNilai apa pun
  • armsarray

    minItems: 2 · maxItems: 4

  • Setiap itemobject

    Tidak ada properti tambahan

    Penumpukan lebih lanjut dihilangkan

  • allOf 2object
  • idstringwajib

    format: "uuid"

  • statusstringwajib

    enum: "draft", "discovered", "active", "paused", "archived"

  • api_keystring | null
  • content_modestring | null

    enum: "code", "managed", null

  • identitystring | null
  • identity_aliasesarray
  • Setiap itemstring
  • samplesarray
  • Setiap itemobject
  • Properti tambahanNilai apa pun
  • versionintegerwajib

    minimum: 1

  • statsobjectwajib
  • Properti tambahanNilai apa pun
  • stepStatsarray
  • Setiap itemobject
  • Properti tambahanNilai apa pun
  • armStatsarray
  • Setiap itemobject
  • Properti tambahanNilai apa pun
  • healthobjectwajib
  • Properti tambahanNilai apa pun
  • indicatorobjectwajib
  • Properti tambahanNilai apa pun
  • sparklinearraywajib
  • Setiap itemnumber
  • activated_atstring | null

    format: "date-time"

  • updated_atstring

    format: "date-time"

  • last_activity_atstring | null

    format: "date-time"

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/journeys' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Idempotency-Key: examplexxxxxxxxx' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "name": "example",
  "description": "example",
  "mailbox_id": "00000000-0000-4000-8000-000000000001",
  "from_local_part": "example",
  "trigger": {
    "kind": "manual",
    "connection_id": "00000000-0000-4000-8000-000000000001",
    "config": {
      "event": "example",
      "once_per_person": true,
      "reentry_days": 1
    },
    "conditions": [
      {}
    ]
  },
  "audience": {},
  "goal": {
    "kind": "none",
    "connection_id": "00000000-0000-4000-8000-000000000001",
    "config": {}
  },
  "exit": {
    "on_reply": true,
    "on_unsubscribe": true,
    "on_suppression": true,
    "event": "example"
  },
  "approval_mode": "policy",
  "api": {
    "key": "example",
    "content_mode": "code",
    "identity": "example"
  },
  "managed_content": {
    "source_locale": "example",
    "configured_locales": [
      "example"
    ],
    "fallback_locale": "example",
    "layout_id": "00000000-0000-4000-8000-000000000001",
    "localization_policy": {
      "manual_review": false
    },
    "source": {
      "subject": "example",
      "preheader": "example",
      "body_text": "example",
      "body_html": "example",
      "layout": "example",
      "variants": {},
      "variables": {}
    },
    "samples": {},
    "translations": {}
  },
  "steps": [
    {
      "id": "00000000-0000-4000-8000-000000000001",
      "position": 1,
      "kind": "email",
      "name": "example",
      "config": {},
      "arms": [
        {
          "key": "A",
          "label": "example",
          "allocation": 0,
          "steps": [
            {
              "id": null,
              "position": null,
              "kind": null,
              "name": null,
              "config": null,
              "arms": null
            }
          ]
        }
      ]
    }
  ]
}'
GET/v1/workspaces/{workspaceId}/journeys/{journeyId}

getJourney

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

journeyId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Definisi Journey, aktivitas pendaftaran, dan pengujian.

application/json

  • valueobject
  • datatidak ditentukan
  • allOf 1object

    Tidak ada properti tambahan

  • namestringwajib

    minLength: 1 · maxLength: 200

  • descriptionstring

    maxLength: 2000

  • mailbox_idstring

    Pengirim yang ada. Hilangkan untuk memprioritaskan pengirim onboarding, lalu kotak surat khusus aktif, lalu yang dihosting. Pengirim tersimpan dan eksplisit tidak berubah.

    format: "uuid"

  • from_local_partstring

    maxLength: 64 · pattern: "^[a-z0-9][a-z0-9._+-]{0,62}$"

  • triggerobjectwajib
  • kindstringwajib

    enum: "manual", "contact_created", "audience_joined", "event", "schedule", "inbound_email", "api"

  • connection_idstring

    format: "uuid"

  • configobject
  • eventstring
  • once_per_personboolean

    Setiap orang masuk sekali. Tetapkan false agar orang dapat masuk kembali setelah selesai.

    default: true

  • reentry_daysinteger

    Jika once_per_person false, jumlah hari setelah masuk terakhir sebelum orang dapat masuk lagi.

    minimum: 1 · maximum: 365

  • Properti tambahanNilai apa pun
  • conditionsarray
  • Setiap itemobject
  • Properti tambahanNilai apa pun
  • audienceobject
  • Properti tambahanNilai apa pun
  • goalobject

    Tidak ada properti tambahan

  • kindstringwajib

    enum: "none", "event", "reply", "conversion"

  • connection_idstring

    format: "uuid"

  • configobjectwajib
  • Properti tambahanNilai apa pun
  • exitobject

    Tidak ada properti tambahan

  • on_replyboolean

    default: true

  • on_unsubscribeboolean

    default: true

  • on_suppressionboolean

    default: true

  • eventstring

    maxLength: 200

  • approval_modestring

    enum: "policy", "required"

  • apiobject
  • keystring

    maxLength: 100

  • content_modestring

    enum: "code", "managed"

  • identitystring

    maxLength: 300

  • managed_contentobject

    Pintasan khusus pembuatan: simpan secara atomik draf email terkelola sumber dan Journey yang langkah emailnya merujuk draf itu. Bahasa target yang belum ada masuk antrean terjemahan gratis; ini tidak menerbitkan atau mengaktifkan Journey.

    Tidak ada properti tambahan

  • source_localestring

    Lokal sumber BCP 47 kanonis; mewarisi pengaturan produk jika dihilangkan.

  • configured_localesarray

    Lokal sumber dan target; sumber yang dihilangkan ditambahkan oleh server.

    maxItems: 100 · uniqueItems: true

  • Setiap itemstring
  • fallback_localestring
  • layout_idstring

    Tata letak pakai ulang yang dipilih; server menyimpan snapshot revisi terbitnya ke revisi konten ini.

    format: "uuid"

  • localization_policyobject

    Email Journey hanya dikirim dalam bahasa orang tersebut: menunggu terjemahan sekitar satu menit untuk tanda terima, kode, dan pemberitahuan keamanan, dan hingga sehari untuk email lain, lalu tidak dikirim jika terjemahan belum siap.

    Tidak ada properti tambahan

  • manual_reviewboolean

    default: false

  • sourceobjectwajib

    Tidak ada properti tambahan

  • subjectstringwajib

    minLength: 1 · maxLength: 100000

  • preheaderstring

    maxLength: 100000

  • body_textstring

    Diterima untuk kompatibilitas sumber; teks biasa yang dirender diturunkan dari HTML final.

    maxLength: 100000

  • body_htmlstringwajib

    minLength: 1 · maxLength: 100000

  • layoutstring

    Harus berisi satu slot {{ content }}.

    maxLength: 100000

  • variantsobject

    Versi sumber opsional. Setiap versi diterjemahkan otomatis dalam revisi yang sama.

  • Properti tambahanobject

    Tidak ada properti tambahan

    Penumpukan lebih lanjut dihilangkan

  • variablesobjectwajib
  • Properti tambahantidak ditentukan

    Variabel bertipe rekursif. Nilai uang memakai {amount_cents: integer, currency: ISO 4217 code}; nilai date berupa tanggal kalender ISO dan datetime berupa timestamp ISO dengan offset.

    Penumpukan lebih lanjut dihilangkan

  • samplesobject

    Kumpulan nilai contoh bernama untuk pratinjau dan validasi sumber.

  • Properti tambahanobject
  • Properti tambahanNilai apa pun
  • translationsobject

    Katalog pesan ICU sumber dan katalog target opsional yang disediakan. Target terkonfigurasi yang belum ada masuk antrean terjemahan asinkron; penyimpanan tidak memerlukannya.

  • Properti tambahanobject
  • Properti tambahanstring

    Penumpukan lebih lanjut dihilangkan

  • stepsarraywajib

    maxItems: 100

  • Setiap itemobject

    Tidak ada properti tambahan

  • idstring

    format: "uuid"

  • positioninteger

    minimum: 1 · maximum: 100

  • kindstringwajib

    enum: "email", "wait", "condition", "action", "split"

  • namestringwajib

    minLength: 1 · maxLength: 200

  • managed_contentobject

    Kontrak sumber bertipe dan identitas revisi draf/terbit untuk langkah email.

  • idstring

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • versioninteger

    Penumpukan lebih lanjut dihilangkan

  • draft_revision_idstring | null

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • published_revision_idstring | null

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • published_publication_idstring | null

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • source_revision_idstring | null

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • layout_revision_idstring | null

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • published_layout_revision_idstring | null

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • source_localestring | null

    Penumpukan lebih lanjut dihilangkan

  • configured_localesarray

    Penumpukan lebih lanjut dihilangkan

  • variablesobject

    Penumpukan lebih lanjut dihilangkan

  • published_variablesobject

    Penumpukan lebih lanjut dihilangkan

  • configobjectwajib

    Langkah tunggu opsional menerima until dengan name, path, operator (equals, not_equals, contains, atau exists), dan value, serta on_met wajib (continue atau end_journey). continue melewati email pengingat berikutnya; end_journey menyelesaikan Journey. Email pengingat harus langsung mengikuti di cabang yang sama. Penantian memeriksa data pelanggan saat ini setiap menit hingga amount/unit. Field yang hilang dianggap tidak diketahui dan menahan pengingat. Penantian biasa dan kondisi mandiri tetap berperilaku seperti sebelumnya. Namai pemeriksaan dengan tonggak pelanggan terverifikasi. Langkah email terkelola merujuk konten terbit melalui managed_content_id; aktivasi menolak referensi belum terbit. Langkah email dapat menetapkan expires_after_seconds (1-604800) untuk membuang pengiriman tertunda setelah interval itu dari awal aslinya; default tujuh hari.

  • Properti tambahanNilai apa pun
  • armsarray

    minItems: 2 · maxItems: 4

  • Setiap itemobject

    Tidak ada properti tambahan

    Penumpukan lebih lanjut dihilangkan

  • allOf 2object
  • idstringwajib

    format: "uuid"

  • statusstringwajib

    enum: "draft", "discovered", "active", "paused", "archived"

  • api_keystring | null
  • content_modestring | null

    enum: "code", "managed", null

  • identitystring | null
  • identity_aliasesarray
  • Setiap itemstring
  • samplesarray
  • Setiap itemobject
  • Properti tambahanNilai apa pun
  • versionintegerwajib

    minimum: 1

  • statsobjectwajib
  • Properti tambahanNilai apa pun
  • stepStatsarray
  • Setiap itemobject
  • Properti tambahanNilai apa pun
  • armStatsarray
  • Setiap itemobject
  • Properti tambahanNilai apa pun
  • healthobjectwajib
  • Properti tambahanNilai apa pun
  • indicatorobjectwajib
  • Properti tambahanNilai apa pun
  • sparklinearraywajib
  • Setiap itemnumber
  • activated_atstring | null

    format: "date-time"

  • updated_atstring

    format: "date-time"

  • last_activity_atstring | null

    format: "date-time"

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/journeys/{journeyId}' \
  --header "Authorization: Bearer $BANGER_API_KEY"
PUT/v1/workspaces/{workspaceId}/journeys/{journeyId}

updateJourney

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

journeyId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan wajib

application/json

  • valueobject

    Tidak ada properti tambahan

  • namestringwajib

    minLength: 1 · maxLength: 200

  • descriptionstring

    maxLength: 2000

  • mailbox_idstring

    Pengirim yang ada. Hilangkan untuk memprioritaskan pengirim onboarding, lalu kotak surat khusus aktif, lalu yang dihosting. Pengirim tersimpan dan eksplisit tidak berubah.

    format: "uuid"

  • from_local_partstring

    maxLength: 64 · pattern: "^[a-z0-9][a-z0-9._+-]{0,62}$"

  • triggerobjectwajib
  • kindstringwajib

    enum: "manual", "contact_created", "audience_joined", "event", "schedule", "inbound_email", "api"

  • connection_idstring

    format: "uuid"

  • configobject
  • eventstring
  • once_per_personboolean

    Setiap orang masuk sekali. Tetapkan false agar orang dapat masuk kembali setelah selesai.

    default: true

  • reentry_daysinteger

    Jika once_per_person false, jumlah hari setelah masuk terakhir sebelum orang dapat masuk lagi.

    minimum: 1 · maximum: 365

  • Properti tambahanNilai apa pun
  • conditionsarray
  • Setiap itemobject
  • Properti tambahanNilai apa pun
  • audienceobject
  • Properti tambahanNilai apa pun
  • goalobject

    Tidak ada properti tambahan

  • kindstringwajib

    enum: "none", "event", "reply", "conversion"

  • connection_idstring

    format: "uuid"

  • configobjectwajib
  • Properti tambahanNilai apa pun
  • exitobject

    Tidak ada properti tambahan

  • on_replyboolean

    default: true

  • on_unsubscribeboolean

    default: true

  • on_suppressionboolean

    default: true

  • eventstring

    maxLength: 200

  • approval_modestring

    enum: "policy", "required"

  • apiobject
  • keystring

    maxLength: 100

  • content_modestring

    enum: "code", "managed"

  • identitystring

    maxLength: 300

  • managed_contentobject

    Pintasan khusus pembuatan: simpan secara atomik draf email terkelola sumber dan Journey yang langkah emailnya merujuk draf itu. Bahasa target yang belum ada masuk antrean terjemahan gratis; ini tidak menerbitkan atau mengaktifkan Journey.

    Tidak ada properti tambahan

  • source_localestring

    Lokal sumber BCP 47 kanonis; mewarisi pengaturan produk jika dihilangkan.

  • configured_localesarray

    Lokal sumber dan target; sumber yang dihilangkan ditambahkan oleh server.

    maxItems: 100 · uniqueItems: true

  • Setiap itemstring
  • fallback_localestring
  • layout_idstring

    Tata letak pakai ulang yang dipilih; server menyimpan snapshot revisi terbitnya ke revisi konten ini.

    format: "uuid"

  • localization_policyobject

    Email Journey hanya dikirim dalam bahasa orang tersebut: menunggu terjemahan sekitar satu menit untuk tanda terima, kode, dan pemberitahuan keamanan, dan hingga sehari untuk email lain, lalu tidak dikirim jika terjemahan belum siap.

    Tidak ada properti tambahan

  • manual_reviewboolean

    default: false

  • sourceobjectwajib

    Tidak ada properti tambahan

  • subjectstringwajib

    minLength: 1 · maxLength: 100000

  • preheaderstring

    maxLength: 100000

  • body_textstring

    Diterima untuk kompatibilitas sumber; teks biasa yang dirender diturunkan dari HTML final.

    maxLength: 100000

  • body_htmlstringwajib

    minLength: 1 · maxLength: 100000

  • layoutstring

    Harus berisi satu slot {{ content }}.

    maxLength: 100000

  • variantsobject

    Versi sumber opsional. Setiap versi diterjemahkan otomatis dalam revisi yang sama.

  • Properti tambahanobject

    Tidak ada properti tambahan

  • subjectstringwajib

    minLength: 1 · maxLength: 100000

  • preheaderstring

    maxLength: 100000

  • body_htmlstringwajib

    minLength: 1 · maxLength: 100000

  • body_textstring

    maxLength: 100000

  • layoutstring

    maxLength: 100000

  • variablesobjectwajib
  • Properti tambahantidak ditentukan

    Variabel bertipe rekursif. Nilai uang memakai {amount_cents: integer, currency: ISO 4217 code}; nilai date berupa tanggal kalender ISO dan datetime berupa timestamp ISO dengan offset.

  • oneOf 1object

    Tidak ada properti tambahan

  • typestringwajib

    enum: "string", "text", "url", "image_url", "html", "date", "datetime", "number", "boolean", "money"

    Penumpukan lebih lanjut dihilangkan

  • requiredboolean

    Penumpukan lebih lanjut dihilangkan

  • descriptionstring

    maxLength: 2000

    Penumpukan lebih lanjut dihilangkan

  • defaulttidak ditentukan

    Harus sesuai tipe field.

    Penumpukan lebih lanjut dihilangkan

  • oneOf 2object

    Tidak ada properti tambahan

  • typetidak ditentukanwajib

    const: "object"

    Penumpukan lebih lanjut dihilangkan

  • requiredboolean

    Penumpukan lebih lanjut dihilangkan

  • descriptionstring

    maxLength: 2000

    Penumpukan lebih lanjut dihilangkan

  • defaultobject

    Penumpukan lebih lanjut dihilangkan

  • propertiesobjectwajib

    Penumpukan lebih lanjut dihilangkan

  • oneOf 3object

    Tidak ada properti tambahan

  • typetidak ditentukanwajib

    const: "list"

    Penumpukan lebih lanjut dihilangkan

  • requiredboolean

    Penumpukan lebih lanjut dihilangkan

  • descriptionstring

    maxLength: 2000

    Penumpukan lebih lanjut dihilangkan

  • defaultarray

    Penumpukan lebih lanjut dihilangkan

  • itemstidak ditentukanwajib

    Variabel bertipe rekursif. Nilai uang memakai {amount_cents: integer, currency: ISO 4217 code}; nilai date berupa tanggal kalender ISO dan datetime berupa timestamp ISO dengan offset.

    Penumpukan lebih lanjut dihilangkan

  • samplesobject

    Kumpulan nilai contoh bernama untuk pratinjau dan validasi sumber.

  • Properti tambahanobject
  • Properti tambahanNilai apa pun
  • translationsobject

    Katalog pesan ICU sumber dan katalog target opsional yang disediakan. Target terkonfigurasi yang belum ada masuk antrean terjemahan asinkron; penyimpanan tidak memerlukannya.

  • Properti tambahanobject
  • Properti tambahanstring
  • stepsarraywajib

    maxItems: 100

  • Setiap itemobject

    Tidak ada properti tambahan

  • idstring

    format: "uuid"

  • positioninteger

    minimum: 1 · maximum: 100

  • kindstringwajib

    enum: "email", "wait", "condition", "action", "split"

  • namestringwajib

    minLength: 1 · maxLength: 200

  • managed_contentobject

    Kontrak sumber bertipe dan identitas revisi draf/terbit untuk langkah email.

  • idstring

    format: "uuid"

  • versioninteger
  • draft_revision_idstring | null

    format: "uuid"

  • published_revision_idstring | null

    format: "uuid"

  • published_publication_idstring | null

    format: "uuid"

  • source_revision_idstring | null

    format: "uuid"

  • layout_revision_idstring | null

    format: "uuid"

  • published_layout_revision_idstring | null

    format: "uuid"

  • source_localestring | null
  • configured_localesarray
  • Setiap itemstring
  • variablesobject
  • Properti tambahanNilai apa pun
  • published_variablesobject
  • Properti tambahanNilai apa pun
  • configobjectwajib

    Langkah tunggu opsional menerima until dengan name, path, operator (equals, not_equals, contains, atau exists), dan value, serta on_met wajib (continue atau end_journey). continue melewati email pengingat berikutnya; end_journey menyelesaikan Journey. Email pengingat harus langsung mengikuti di cabang yang sama. Penantian memeriksa data pelanggan saat ini setiap menit hingga amount/unit. Field yang hilang dianggap tidak diketahui dan menahan pengingat. Penantian biasa dan kondisi mandiri tetap berperilaku seperti sebelumnya. Namai pemeriksaan dengan tonggak pelanggan terverifikasi. Langkah email terkelola merujuk konten terbit melalui managed_content_id; aktivasi menolak referensi belum terbit. Langkah email dapat menetapkan expires_after_seconds (1-604800) untuk membuang pengiriman tertunda setelah interval itu dari awal aslinya; default tujuh hari.

  • Properti tambahanNilai apa pun
  • armsarray

    minItems: 2 · maxItems: 4

  • Setiap itemobject

    Tidak ada properti tambahan

  • keystringwajib

    enum: "A", "B", "C", "D"

  • labelstringwajib

    maxLength: 120

  • allocationnumberwajib

    minimum: 0 · maximum: 100

  • stepsarraywajib
  • Setiap itemobject

    Tidak ada properti tambahan

    Penumpukan lebih lanjut dihilangkan

Respons berhasil 200

Journey diperbarui.

application/json

  • valueobject
  • datatidak ditentukan
  • allOf 1object

    Tidak ada properti tambahan

  • namestringwajib

    minLength: 1 · maxLength: 200

  • descriptionstring

    maxLength: 2000

  • mailbox_idstring

    Pengirim yang ada. Hilangkan untuk memprioritaskan pengirim onboarding, lalu kotak surat khusus aktif, lalu yang dihosting. Pengirim tersimpan dan eksplisit tidak berubah.

    format: "uuid"

  • from_local_partstring

    maxLength: 64 · pattern: "^[a-z0-9][a-z0-9._+-]{0,62}$"

  • triggerobjectwajib
  • kindstringwajib

    enum: "manual", "contact_created", "audience_joined", "event", "schedule", "inbound_email", "api"

  • connection_idstring

    format: "uuid"

  • configobject
  • eventstring
  • once_per_personboolean

    Setiap orang masuk sekali. Tetapkan false agar orang dapat masuk kembali setelah selesai.

    default: true

  • reentry_daysinteger

    Jika once_per_person false, jumlah hari setelah masuk terakhir sebelum orang dapat masuk lagi.

    minimum: 1 · maximum: 365

  • Properti tambahanNilai apa pun
  • conditionsarray
  • Setiap itemobject
  • Properti tambahanNilai apa pun
  • audienceobject
  • Properti tambahanNilai apa pun
  • goalobject

    Tidak ada properti tambahan

  • kindstringwajib

    enum: "none", "event", "reply", "conversion"

  • connection_idstring

    format: "uuid"

  • configobjectwajib
  • Properti tambahanNilai apa pun
  • exitobject

    Tidak ada properti tambahan

  • on_replyboolean

    default: true

  • on_unsubscribeboolean

    default: true

  • on_suppressionboolean

    default: true

  • eventstring

    maxLength: 200

  • approval_modestring

    enum: "policy", "required"

  • apiobject
  • keystring

    maxLength: 100

  • content_modestring

    enum: "code", "managed"

  • identitystring

    maxLength: 300

  • managed_contentobject

    Pintasan khusus pembuatan: simpan secara atomik draf email terkelola sumber dan Journey yang langkah emailnya merujuk draf itu. Bahasa target yang belum ada masuk antrean terjemahan gratis; ini tidak menerbitkan atau mengaktifkan Journey.

    Tidak ada properti tambahan

  • source_localestring

    Lokal sumber BCP 47 kanonis; mewarisi pengaturan produk jika dihilangkan.

  • configured_localesarray

    Lokal sumber dan target; sumber yang dihilangkan ditambahkan oleh server.

    maxItems: 100 · uniqueItems: true

  • Setiap itemstring
  • fallback_localestring
  • layout_idstring

    Tata letak pakai ulang yang dipilih; server menyimpan snapshot revisi terbitnya ke revisi konten ini.

    format: "uuid"

  • localization_policyobject

    Email Journey hanya dikirim dalam bahasa orang tersebut: menunggu terjemahan sekitar satu menit untuk tanda terima, kode, dan pemberitahuan keamanan, dan hingga sehari untuk email lain, lalu tidak dikirim jika terjemahan belum siap.

    Tidak ada properti tambahan

  • manual_reviewboolean

    default: false

  • sourceobjectwajib

    Tidak ada properti tambahan

  • subjectstringwajib

    minLength: 1 · maxLength: 100000

  • preheaderstring

    maxLength: 100000

  • body_textstring

    Diterima untuk kompatibilitas sumber; teks biasa yang dirender diturunkan dari HTML final.

    maxLength: 100000

  • body_htmlstringwajib

    minLength: 1 · maxLength: 100000

  • layoutstring

    Harus berisi satu slot {{ content }}.

    maxLength: 100000

  • variantsobject

    Versi sumber opsional. Setiap versi diterjemahkan otomatis dalam revisi yang sama.

  • Properti tambahanobject

    Tidak ada properti tambahan

    Penumpukan lebih lanjut dihilangkan

  • variablesobjectwajib
  • Properti tambahantidak ditentukan

    Variabel bertipe rekursif. Nilai uang memakai {amount_cents: integer, currency: ISO 4217 code}; nilai date berupa tanggal kalender ISO dan datetime berupa timestamp ISO dengan offset.

    Penumpukan lebih lanjut dihilangkan

  • samplesobject

    Kumpulan nilai contoh bernama untuk pratinjau dan validasi sumber.

  • Properti tambahanobject
  • Properti tambahanNilai apa pun
  • translationsobject

    Katalog pesan ICU sumber dan katalog target opsional yang disediakan. Target terkonfigurasi yang belum ada masuk antrean terjemahan asinkron; penyimpanan tidak memerlukannya.

  • Properti tambahanobject
  • Properti tambahanstring

    Penumpukan lebih lanjut dihilangkan

  • stepsarraywajib

    maxItems: 100

  • Setiap itemobject

    Tidak ada properti tambahan

  • idstring

    format: "uuid"

  • positioninteger

    minimum: 1 · maximum: 100

  • kindstringwajib

    enum: "email", "wait", "condition", "action", "split"

  • namestringwajib

    minLength: 1 · maxLength: 200

  • managed_contentobject

    Kontrak sumber bertipe dan identitas revisi draf/terbit untuk langkah email.

  • idstring

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • versioninteger

    Penumpukan lebih lanjut dihilangkan

  • draft_revision_idstring | null

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • published_revision_idstring | null

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • published_publication_idstring | null

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • source_revision_idstring | null

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • layout_revision_idstring | null

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • published_layout_revision_idstring | null

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • source_localestring | null

    Penumpukan lebih lanjut dihilangkan

  • configured_localesarray

    Penumpukan lebih lanjut dihilangkan

  • variablesobject

    Penumpukan lebih lanjut dihilangkan

  • published_variablesobject

    Penumpukan lebih lanjut dihilangkan

  • configobjectwajib

    Langkah tunggu opsional menerima until dengan name, path, operator (equals, not_equals, contains, atau exists), dan value, serta on_met wajib (continue atau end_journey). continue melewati email pengingat berikutnya; end_journey menyelesaikan Journey. Email pengingat harus langsung mengikuti di cabang yang sama. Penantian memeriksa data pelanggan saat ini setiap menit hingga amount/unit. Field yang hilang dianggap tidak diketahui dan menahan pengingat. Penantian biasa dan kondisi mandiri tetap berperilaku seperti sebelumnya. Namai pemeriksaan dengan tonggak pelanggan terverifikasi. Langkah email terkelola merujuk konten terbit melalui managed_content_id; aktivasi menolak referensi belum terbit. Langkah email dapat menetapkan expires_after_seconds (1-604800) untuk membuang pengiriman tertunda setelah interval itu dari awal aslinya; default tujuh hari.

  • Properti tambahanNilai apa pun
  • armsarray

    minItems: 2 · maxItems: 4

  • Setiap itemobject

    Tidak ada properti tambahan

    Penumpukan lebih lanjut dihilangkan

  • allOf 2object
  • idstringwajib

    format: "uuid"

  • statusstringwajib

    enum: "draft", "discovered", "active", "paused", "archived"

  • api_keystring | null
  • content_modestring | null

    enum: "code", "managed", null

  • identitystring | null
  • identity_aliasesarray
  • Setiap itemstring
  • samplesarray
  • Setiap itemobject
  • Properti tambahanNilai apa pun
  • versionintegerwajib

    minimum: 1

  • statsobjectwajib
  • Properti tambahanNilai apa pun
  • stepStatsarray
  • Setiap itemobject
  • Properti tambahanNilai apa pun
  • armStatsarray
  • Setiap itemobject
  • Properti tambahanNilai apa pun
  • healthobjectwajib
  • Properti tambahanNilai apa pun
  • indicatorobjectwajib
  • Properti tambahanNilai apa pun
  • sparklinearraywajib
  • Setiap itemnumber
  • activated_atstring | null

    format: "date-time"

  • updated_atstring

    format: "date-time"

  • last_activity_atstring | null

    format: "date-time"

Contoh curl

curl --request PUT --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/journeys/{journeyId}' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "name": "example",
  "description": "example",
  "mailbox_id": "00000000-0000-4000-8000-000000000001",
  "from_local_part": "example",
  "trigger": {
    "kind": "manual",
    "connection_id": "00000000-0000-4000-8000-000000000001",
    "config": {
      "event": "example",
      "once_per_person": true,
      "reentry_days": 1
    },
    "conditions": [
      {}
    ]
  },
  "audience": {},
  "goal": {
    "kind": "none",
    "connection_id": "00000000-0000-4000-8000-000000000001",
    "config": {}
  },
  "exit": {
    "on_reply": true,
    "on_unsubscribe": true,
    "on_suppression": true,
    "event": "example"
  },
  "approval_mode": "policy",
  "api": {
    "key": "example",
    "content_mode": "code",
    "identity": "example"
  },
  "managed_content": {
    "source_locale": "example",
    "configured_locales": [
      "example"
    ],
    "fallback_locale": "example",
    "layout_id": "00000000-0000-4000-8000-000000000001",
    "localization_policy": {
      "manual_review": false
    },
    "source": {
      "subject": "example",
      "preheader": "example",
      "body_text": "example",
      "body_html": "example",
      "layout": "example",
      "variants": {},
      "variables": {}
    },
    "samples": {},
    "translations": {}
  },
  "steps": [
    {
      "id": "00000000-0000-4000-8000-000000000001",
      "position": 1,
      "kind": "email",
      "name": "example",
      "config": {},
      "arms": [
        {
          "key": "A",
          "label": "example",
          "allocation": 0,
          "steps": [
            {
              "id": null,
              "position": null,
              "kind": null,
              "name": null,
              "config": null,
              "arms": null
            }
          ]
        }
      ]
    }
  ]
}'
PATCH/v1/workspaces/{workspaceId}/journeys/{journeyId}

Perbarui field Journey terpilih dengan mempertahankan field definisi lainnya.

Mendukung name, description, mailbox_id, from_local_part, trigger, audience, goal, exit, approval_mode, api, dan steps. Objek trigger, goal, api, dan exit digabung satu tingkat; steps mengganti pohon yang disediakan. Sertakan expected_version untuk menolak suntingan kedaluwarsa.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

journeyId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan wajib

application/json

  • valueobject

    Tidak ada properti tambahan

  • expected_versioninteger

    minimum: 1

  • namestring
  • descriptionstring
  • mailbox_idstring

    format: "uuid"

  • from_local_partstring
  • triggerobject
  • Properti tambahanNilai apa pun
  • audienceobject
  • Properti tambahanNilai apa pun
  • goalobject
  • Properti tambahanNilai apa pun
  • exitobject
  • Properti tambahanNilai apa pun
  • approval_modestring

    enum: "policy", "required"

  • apiobject
  • Properti tambahanNilai apa pun
  • stepsarray
  • Setiap itemobject

    Tidak ada properti tambahan

  • idstring

    format: "uuid"

  • positioninteger

    minimum: 1 · maximum: 100

  • kindstringwajib

    enum: "email", "wait", "condition", "action", "split"

  • namestringwajib

    minLength: 1 · maxLength: 200

  • managed_contentobject

    Kontrak sumber bertipe dan identitas revisi draf/terbit untuk langkah email.

  • idstring

    format: "uuid"

  • versioninteger
  • draft_revision_idstring | null

    format: "uuid"

  • published_revision_idstring | null

    format: "uuid"

  • published_publication_idstring | null

    format: "uuid"

  • source_revision_idstring | null

    format: "uuid"

  • layout_revision_idstring | null

    format: "uuid"

  • published_layout_revision_idstring | null

    format: "uuid"

  • source_localestring | null
  • configured_localesarray
  • Setiap itemstring
  • variablesobject
  • Properti tambahanNilai apa pun
  • published_variablesobject
  • Properti tambahanNilai apa pun
  • configobjectwajib

    Langkah tunggu opsional menerima until dengan name, path, operator (equals, not_equals, contains, atau exists), dan value, serta on_met wajib (continue atau end_journey). continue melewati email pengingat berikutnya; end_journey menyelesaikan Journey. Email pengingat harus langsung mengikuti di cabang yang sama. Penantian memeriksa data pelanggan saat ini setiap menit hingga amount/unit. Field yang hilang dianggap tidak diketahui dan menahan pengingat. Penantian biasa dan kondisi mandiri tetap berperilaku seperti sebelumnya. Namai pemeriksaan dengan tonggak pelanggan terverifikasi. Langkah email terkelola merujuk konten terbit melalui managed_content_id; aktivasi menolak referensi belum terbit. Langkah email dapat menetapkan expires_after_seconds (1-604800) untuk membuang pengiriman tertunda setelah interval itu dari awal aslinya; default tujuh hari.

  • Properti tambahanNilai apa pun
  • armsarray

    minItems: 2 · maxItems: 4

  • Setiap itemobject

    Tidak ada properti tambahan

  • keystringwajib

    enum: "A", "B", "C", "D"

  • labelstringwajib

    maxLength: 120

  • allocationnumberwajib

    minimum: 0 · maximum: 100

  • stepsarraywajib
  • Setiap itemobject

    Tidak ada properti tambahan

    Penumpukan lebih lanjut dihilangkan

Respons berhasil 200

Journey diperbarui.

application/json

  • valueobject
  • datatidak ditentukanwajib
  • allOf 1object

    Tidak ada properti tambahan

  • namestringwajib

    minLength: 1 · maxLength: 200

  • descriptionstring

    maxLength: 2000

  • mailbox_idstring

    Pengirim yang ada. Hilangkan untuk memprioritaskan pengirim onboarding, lalu kotak surat khusus aktif, lalu yang dihosting. Pengirim tersimpan dan eksplisit tidak berubah.

    format: "uuid"

  • from_local_partstring

    maxLength: 64 · pattern: "^[a-z0-9][a-z0-9._+-]{0,62}$"

  • triggerobjectwajib
  • kindstringwajib

    enum: "manual", "contact_created", "audience_joined", "event", "schedule", "inbound_email", "api"

  • connection_idstring

    format: "uuid"

  • configobject
  • eventstring
  • once_per_personboolean

    Setiap orang masuk sekali. Tetapkan false agar orang dapat masuk kembali setelah selesai.

    default: true

  • reentry_daysinteger

    Jika once_per_person false, jumlah hari setelah masuk terakhir sebelum orang dapat masuk lagi.

    minimum: 1 · maximum: 365

  • Properti tambahanNilai apa pun
  • conditionsarray
  • Setiap itemobject
  • Properti tambahanNilai apa pun
  • audienceobject
  • Properti tambahanNilai apa pun
  • goalobject

    Tidak ada properti tambahan

  • kindstringwajib

    enum: "none", "event", "reply", "conversion"

  • connection_idstring

    format: "uuid"

  • configobjectwajib
  • Properti tambahanNilai apa pun
  • exitobject

    Tidak ada properti tambahan

  • on_replyboolean

    default: true

  • on_unsubscribeboolean

    default: true

  • on_suppressionboolean

    default: true

  • eventstring

    maxLength: 200

  • approval_modestring

    enum: "policy", "required"

  • apiobject
  • keystring

    maxLength: 100

  • content_modestring

    enum: "code", "managed"

  • identitystring

    maxLength: 300

  • managed_contentobject

    Pintasan khusus pembuatan: simpan secara atomik draf email terkelola sumber dan Journey yang langkah emailnya merujuk draf itu. Bahasa target yang belum ada masuk antrean terjemahan gratis; ini tidak menerbitkan atau mengaktifkan Journey.

    Tidak ada properti tambahan

  • source_localestring

    Lokal sumber BCP 47 kanonis; mewarisi pengaturan produk jika dihilangkan.

  • configured_localesarray

    Lokal sumber dan target; sumber yang dihilangkan ditambahkan oleh server.

    maxItems: 100 · uniqueItems: true

  • Setiap itemstring
  • fallback_localestring
  • layout_idstring

    Tata letak pakai ulang yang dipilih; server menyimpan snapshot revisi terbitnya ke revisi konten ini.

    format: "uuid"

  • localization_policyobject

    Email Journey hanya dikirim dalam bahasa orang tersebut: menunggu terjemahan sekitar satu menit untuk tanda terima, kode, dan pemberitahuan keamanan, dan hingga sehari untuk email lain, lalu tidak dikirim jika terjemahan belum siap.

    Tidak ada properti tambahan

  • manual_reviewboolean

    default: false

  • sourceobjectwajib

    Tidak ada properti tambahan

  • subjectstringwajib

    minLength: 1 · maxLength: 100000

  • preheaderstring

    maxLength: 100000

  • body_textstring

    Diterima untuk kompatibilitas sumber; teks biasa yang dirender diturunkan dari HTML final.

    maxLength: 100000

  • body_htmlstringwajib

    minLength: 1 · maxLength: 100000

  • layoutstring

    Harus berisi satu slot {{ content }}.

    maxLength: 100000

  • variantsobject

    Versi sumber opsional. Setiap versi diterjemahkan otomatis dalam revisi yang sama.

  • Properti tambahanobject

    Tidak ada properti tambahan

    Penumpukan lebih lanjut dihilangkan

  • variablesobjectwajib
  • Properti tambahantidak ditentukan

    Variabel bertipe rekursif. Nilai uang memakai {amount_cents: integer, currency: ISO 4217 code}; nilai date berupa tanggal kalender ISO dan datetime berupa timestamp ISO dengan offset.

    Penumpukan lebih lanjut dihilangkan

  • samplesobject

    Kumpulan nilai contoh bernama untuk pratinjau dan validasi sumber.

  • Properti tambahanobject
  • Properti tambahanNilai apa pun
  • translationsobject

    Katalog pesan ICU sumber dan katalog target opsional yang disediakan. Target terkonfigurasi yang belum ada masuk antrean terjemahan asinkron; penyimpanan tidak memerlukannya.

  • Properti tambahanobject
  • Properti tambahanstring

    Penumpukan lebih lanjut dihilangkan

  • stepsarraywajib

    maxItems: 100

  • Setiap itemobject

    Tidak ada properti tambahan

  • idstring

    format: "uuid"

  • positioninteger

    minimum: 1 · maximum: 100

  • kindstringwajib

    enum: "email", "wait", "condition", "action", "split"

  • namestringwajib

    minLength: 1 · maxLength: 200

  • managed_contentobject

    Kontrak sumber bertipe dan identitas revisi draf/terbit untuk langkah email.

  • idstring

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • versioninteger

    Penumpukan lebih lanjut dihilangkan

  • draft_revision_idstring | null

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • published_revision_idstring | null

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • published_publication_idstring | null

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • source_revision_idstring | null

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • layout_revision_idstring | null

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • published_layout_revision_idstring | null

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • source_localestring | null

    Penumpukan lebih lanjut dihilangkan

  • configured_localesarray

    Penumpukan lebih lanjut dihilangkan

  • variablesobject

    Penumpukan lebih lanjut dihilangkan

  • published_variablesobject

    Penumpukan lebih lanjut dihilangkan

  • configobjectwajib

    Langkah tunggu opsional menerima until dengan name, path, operator (equals, not_equals, contains, atau exists), dan value, serta on_met wajib (continue atau end_journey). continue melewati email pengingat berikutnya; end_journey menyelesaikan Journey. Email pengingat harus langsung mengikuti di cabang yang sama. Penantian memeriksa data pelanggan saat ini setiap menit hingga amount/unit. Field yang hilang dianggap tidak diketahui dan menahan pengingat. Penantian biasa dan kondisi mandiri tetap berperilaku seperti sebelumnya. Namai pemeriksaan dengan tonggak pelanggan terverifikasi. Langkah email terkelola merujuk konten terbit melalui managed_content_id; aktivasi menolak referensi belum terbit. Langkah email dapat menetapkan expires_after_seconds (1-604800) untuk membuang pengiriman tertunda setelah interval itu dari awal aslinya; default tujuh hari.

  • Properti tambahanNilai apa pun
  • armsarray

    minItems: 2 · maxItems: 4

  • Setiap itemobject

    Tidak ada properti tambahan

    Penumpukan lebih lanjut dihilangkan

  • allOf 2object
  • idstringwajib

    format: "uuid"

  • statusstringwajib

    enum: "draft", "discovered", "active", "paused", "archived"

  • api_keystring | null
  • content_modestring | null

    enum: "code", "managed", null

  • identitystring | null
  • identity_aliasesarray
  • Setiap itemstring
  • samplesarray
  • Setiap itemobject
  • Properti tambahanNilai apa pun
  • versionintegerwajib

    minimum: 1

  • statsobjectwajib
  • Properti tambahanNilai apa pun
  • stepStatsarray
  • Setiap itemobject
  • Properti tambahanNilai apa pun
  • armStatsarray
  • Setiap itemobject
  • Properti tambahanNilai apa pun
  • healthobjectwajib
  • Properti tambahanNilai apa pun
  • indicatorobjectwajib
  • Properti tambahanNilai apa pun
  • sparklinearraywajib
  • Setiap itemnumber
  • activated_atstring | null

    format: "date-time"

  • updated_atstring

    format: "date-time"

  • last_activity_atstring | null

    format: "date-time"

Contoh curl

curl --request PATCH --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/journeys/{journeyId}' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "expected_version": 1,
  "name": "example",
  "description": "example",
  "mailbox_id": "00000000-0000-4000-8000-000000000001",
  "from_local_part": "example",
  "trigger": {},
  "audience": {},
  "goal": {},
  "exit": {},
  "approval_mode": "policy",
  "api": {},
  "steps": [
    {
      "id": "00000000-0000-4000-8000-000000000001",
      "position": 1,
      "kind": "email",
      "name": "example",
      "config": {},
      "arms": [
        {
          "key": "A",
          "label": "example",
          "allocation": 0,
          "steps": [
            {
              "id": null,
              "position": null,
              "kind": null,
              "name": null,
              "config": null,
              "arms": null
            }
          ]
        }
      ]
    }
  ]
}'
DELETE/v1/workspaces/{workspaceId}/journeys/{journeyId}

deleteJourney

Hapus Journey dari daftar default dan hentikan pendaftaran aktif dengan mengarsipkannya. Riwayat pengiriman dipertahankan.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

journeyId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 204

Journey dihapus.

Tanpa isi respons.

Contoh curl

curl --request DELETE --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/journeys/{journeyId}' \
  --header "Authorization: Bearer $BANGER_API_KEY"
POST/v1/workspaces/{workspaceId}/journeys/{journeyId}/convert-managed

Konversi Journey lama yang dijeda atau berupa draf menjadi konten terkelola siap pakai.

Konversi satu arah. Untuk Journey dengan satu langkah email, berikan contract. Untuk banyak email, termasuk cabang terpisah, berikan step_contents dengan tepat satu step_id tersimpan dan kontrak HTML/Liquid siap per email. Konversi atomik dan mengubah Journey menjadi draf. Setiap revisi konten terkelola baru mendapat peninjauan penerbitan terkendali sendiri; tidak ada email dikirim atau diterbitkan selama konversi. Banger tidak pernah mengimpor atau menjalankan kode sumber.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

X-Banger-Product-Id
header · wajib

Produk operasi eksplisit; harus sesuai dengan kredensial OAuth bercakupan produk.

  • valuestring

    format: "uuid"

journeyId
path · wajib
  • valuestring

    format: "uuid"

Idempotency-Key
header · wajib
  • valuestring

    minLength: 16 · maxLength: 128

Isi permintaan wajib

application/json

  • valueobject

    Tidak ada properti tambahan

  • expected_versionintegerwajib

    minimum: 1

  • contractobject

    Tidak ada properti tambahan

  • source_localestring

    Lokal sumber BCP 47 kanonis; mewarisi pengaturan produk jika dihilangkan.

  • configured_localesarray

    Lokal sumber dan target; sumber yang dihilangkan ditambahkan oleh server.

    maxItems: 100 · uniqueItems: true

  • Setiap itemstring
  • fallback_localestring
  • layout_idstring

    Tata letak pakai ulang yang dipilih; server menyimpan snapshot revisi terbitnya ke revisi konten ini.

    format: "uuid"

  • localization_policyobject

    Email Journey hanya dikirim dalam bahasa orang tersebut: menunggu terjemahan sekitar satu menit untuk tanda terima, kode, dan pemberitahuan keamanan, dan hingga sehari untuk email lain, lalu tidak dikirim jika terjemahan belum siap.

    Tidak ada properti tambahan

  • manual_reviewboolean

    default: false

  • sourceobjectwajib

    Tidak ada properti tambahan

  • subjectstringwajib

    minLength: 1 · maxLength: 100000

  • preheaderstring

    maxLength: 100000

  • body_textstring

    Diterima untuk kompatibilitas sumber; teks biasa yang dirender diturunkan dari HTML final.

    maxLength: 100000

  • body_htmlstringwajib

    minLength: 1 · maxLength: 100000

  • layoutstring

    Harus berisi satu slot {{ content }}.

    maxLength: 100000

  • variantsobject

    Versi sumber opsional. Setiap versi diterjemahkan otomatis dalam revisi yang sama.

  • Properti tambahanobject

    Tidak ada properti tambahan

  • subjectstringwajib

    minLength: 1 · maxLength: 100000

  • preheaderstring

    maxLength: 100000

  • body_htmlstringwajib

    minLength: 1 · maxLength: 100000

  • body_textstring

    maxLength: 100000

  • layoutstring

    maxLength: 100000

  • variablesobjectwajib
  • Properti tambahantidak ditentukan

    Variabel bertipe rekursif. Nilai uang memakai {amount_cents: integer, currency: ISO 4217 code}; nilai date berupa tanggal kalender ISO dan datetime berupa timestamp ISO dengan offset.

  • oneOf 1object

    Tidak ada properti tambahan

  • typestringwajib

    enum: "string", "text", "url", "image_url", "html", "date", "datetime", "number", "boolean", "money"

    Penumpukan lebih lanjut dihilangkan

  • requiredboolean

    Penumpukan lebih lanjut dihilangkan

  • descriptionstring

    maxLength: 2000

    Penumpukan lebih lanjut dihilangkan

  • defaulttidak ditentukan

    Harus sesuai tipe field.

    Penumpukan lebih lanjut dihilangkan

  • oneOf 2object

    Tidak ada properti tambahan

  • typetidak ditentukanwajib

    const: "object"

    Penumpukan lebih lanjut dihilangkan

  • requiredboolean

    Penumpukan lebih lanjut dihilangkan

  • descriptionstring

    maxLength: 2000

    Penumpukan lebih lanjut dihilangkan

  • defaultobject

    Penumpukan lebih lanjut dihilangkan

  • propertiesobjectwajib

    Penumpukan lebih lanjut dihilangkan

  • oneOf 3object

    Tidak ada properti tambahan

  • typetidak ditentukanwajib

    const: "list"

    Penumpukan lebih lanjut dihilangkan

  • requiredboolean

    Penumpukan lebih lanjut dihilangkan

  • descriptionstring

    maxLength: 2000

    Penumpukan lebih lanjut dihilangkan

  • defaultarray

    Penumpukan lebih lanjut dihilangkan

  • itemstidak ditentukanwajib

    Variabel bertipe rekursif. Nilai uang memakai {amount_cents: integer, currency: ISO 4217 code}; nilai date berupa tanggal kalender ISO dan datetime berupa timestamp ISO dengan offset.

    Penumpukan lebih lanjut dihilangkan

  • samplesobject

    Kumpulan nilai contoh bernama untuk pratinjau dan validasi sumber.

  • Properti tambahanobject
  • Properti tambahanNilai apa pun
  • translationsobject

    Katalog pesan ICU sumber dan katalog target opsional yang disediakan. Target terkonfigurasi yang belum ada masuk antrean terjemahan asinkron; penyimpanan tidak memerlukannya.

  • Properti tambahanobject
  • Properti tambahanstring
  • step_contentsarray

    minItems: 1

  • Setiap itemobject

    Tidak ada properti tambahan

  • step_idstringwajib

    format: "uuid"

  • contractobjectwajib

    Tidak ada properti tambahan

  • source_localestring

    Lokal sumber BCP 47 kanonis; mewarisi pengaturan produk jika dihilangkan.

  • configured_localesarray

    Lokal sumber dan target; sumber yang dihilangkan ditambahkan oleh server.

    maxItems: 100 · uniqueItems: true

  • Setiap itemstring
  • fallback_localestring
  • layout_idstring

    Tata letak pakai ulang yang dipilih; server menyimpan snapshot revisi terbitnya ke revisi konten ini.

    format: "uuid"

  • localization_policyobject

    Email Journey hanya dikirim dalam bahasa orang tersebut: menunggu terjemahan sekitar satu menit untuk tanda terima, kode, dan pemberitahuan keamanan, dan hingga sehari untuk email lain, lalu tidak dikirim jika terjemahan belum siap.

    Tidak ada properti tambahan

  • manual_reviewboolean

    default: false

  • sourceobjectwajib

    Tidak ada properti tambahan

  • subjectstringwajib

    minLength: 1 · maxLength: 100000

  • preheaderstring

    maxLength: 100000

  • body_textstring

    Diterima untuk kompatibilitas sumber; teks biasa yang dirender diturunkan dari HTML final.

    maxLength: 100000

  • body_htmlstringwajib

    minLength: 1 · maxLength: 100000

  • layoutstring

    Harus berisi satu slot {{ content }}.

    maxLength: 100000

  • variantsobject

    Versi sumber opsional. Setiap versi diterjemahkan otomatis dalam revisi yang sama.

  • Properti tambahanobject

    Tidak ada properti tambahan

    Penumpukan lebih lanjut dihilangkan

  • variablesobjectwajib
  • Properti tambahantidak ditentukan

    Variabel bertipe rekursif. Nilai uang memakai {amount_cents: integer, currency: ISO 4217 code}; nilai date berupa tanggal kalender ISO dan datetime berupa timestamp ISO dengan offset.

    Penumpukan lebih lanjut dihilangkan

  • samplesobject

    Kumpulan nilai contoh bernama untuk pratinjau dan validasi sumber.

  • Properti tambahanobject
  • Properti tambahanNilai apa pun
  • translationsobject

    Katalog pesan ICU sumber dan katalog target opsional yang disediakan. Target terkonfigurasi yang belum ada masuk antrean terjemahan asinkron; penyimpanan tidak memerlukannya.

  • Properti tambahanobject
  • Properti tambahanstring

    Penumpukan lebih lanjut dihilangkan

  • oneOf 1tidak ditentukan
  • oneOf 2tidak ditentukan

Respons berhasil 200

Pengulangan idempoten konversi yang sama.

application/json

  • valueobject
  • dataobjectwajib
  • journey_idstringwajib

    format: "uuid"

  • statusstringwajib

    enum: "draft"

  • review_requiredbooleanwajib

    const: true

  • managed_content_stepsarraywajib
  • Setiap itemobject
  • step_idstringwajib

    format: "uuid"

  • managed_content_idstringwajib

    format: "uuid"

  • content_versionintegerwajib
  • source_revision_idstring | nullwajib

    format: "uuid"

  • previewobjectwajib
  • subjectstringwajib
  • preheaderstring
  • htmlstringwajib
  • textstringwajib
  • localestringwajib
  • directionstringwajib

    enum: "ltr", "rtl"

  • warningsarray
  • Setiap itemstring

    Penumpukan lebih lanjut dihilangkan

  • Properti tambahanNilai apa pun
  • translation_jobsarraywajib
  • Setiap itemstring

    format: "uuid"

  • managed_content_idstring

    format: "uuid"

  • content_versioninteger
  • source_revision_idstring | null

    format: "uuid"

  • previewobject
  • subjectstringwajib
  • preheaderstring
  • htmlstringwajib
  • textstringwajib
  • localestringwajib
  • directionstringwajib

    enum: "ltr", "rtl"

  • warningsarray
  • Setiap itemstring
  • Properti tambahanNilai apa pun
  • replayedbooleanwajib
  • approvalsarraywajib
  • Setiap itemobject
  • step_idstringwajib

    format: "uuid"

  • approvalobjectwajib
  • idstringwajib

    format: "uuid"

  • requested_by_actor_idstringwajib
  • action_kindstringwajib
  • summarystringwajib
  • capability_scopesarraywajib
  • Setiap itemstring

    Penumpukan lebih lanjut dihilangkan

  • resource_scopeobjectwajib
  • Properti tambahanarray

    Penumpukan lebih lanjut dihilangkan

  • payloadobjectwajib
  • Properti tambahanNilai apa pun
  • payload_sha256stringwajib

    pattern: "^[0-9a-f]{64}$"

  • statusstringwajib

    enum: "pending", "approved", "rejected", "cancelled", "expired"

  • missedbooleanwajib
  • expires_atstringwajib

    format: "date-time"

  • decided_by_actor_idstring | null
  • decision_reasonstring | null
  • created_atstringwajib

    format: "date-time"

  • updated_atstringwajib

    format: "date-time"

  • decided_atstring | null

    format: "date-time"

  • execution_job_idstring

    format: "uuid"

  • reviewobject

    Tidak ada properti tambahan

  • dispositionstringwajib

    enum: "automatic", "human_required"

    Penumpukan lebih lanjut dihilangkan

  • recipient_countinteger | nullwajib

    minimum: 0

    Penumpukan lebih lanjut dihilangkan

  • reasonsarraywajib

    Penumpukan lebih lanjut dihilangkan

  • checksarraywajib

    Penumpukan lebih lanjut dihilangkan

  • approvalobject
  • idstringwajib

    format: "uuid"

  • requested_by_actor_idstringwajib
  • action_kindstringwajib
  • summarystringwajib
  • capability_scopesarraywajib
  • Setiap itemstring
  • resource_scopeobjectwajib
  • Properti tambahanarray
  • Setiap itemstring
  • payloadobjectwajib
  • Properti tambahanNilai apa pun
  • payload_sha256stringwajib

    pattern: "^[0-9a-f]{64}$"

  • statusstringwajib

    enum: "pending", "approved", "rejected", "cancelled", "expired"

  • missedbooleanwajib
  • expires_atstringwajib

    format: "date-time"

  • decided_by_actor_idstring | null
  • decision_reasonstring | null
  • created_atstringwajib

    format: "date-time"

  • updated_atstringwajib

    format: "date-time"

  • decided_atstring | null

    format: "date-time"

  • execution_job_idstring

    format: "uuid"

  • reviewobject

    Tidak ada properti tambahan

  • dispositionstringwajib

    enum: "automatic", "human_required"

  • recipient_countinteger | nullwajib

    minimum: 0

  • reasonsarraywajib
  • Setiap itemstring
  • checksarraywajib
  • Setiap itemstring

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/journeys/{journeyId}/convert-managed' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'X-Banger-Product-Id: 00000000-0000-4000-8000-000000000001' \
  --header 'Idempotency-Key: examplexxxxxxxxx' \
  --header 'Content-Type: application/json' \
  --data-raw '"example"'
POST/v1/workspaces/{workspaceId}/journeys/{journeyId}/render

Render satu langkah email Journey tersimpan tanpa mengirim.

Tentukan step_id saat Journey memiliki banyak langkah email, termasuk cabang terpisah. Memakai revisi konten tetap draf atau terbit yang dipilih.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

X-Banger-Product-Id
header · wajib

Produk operasi eksplisit; harus sesuai dengan kredensial OAuth bercakupan produk.

  • valuestring

    format: "uuid"

journeyId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan wajib

application/json

  • valueobject

    Tidak ada properti tambahan

  • step_idstring

    format: "uuid"

  • content_statestring

    default: "draft" · enum: "draft", "published"

  • localestring
  • timezonestring
  • sample_setstring
  • variablesobject
  • Properti tambahanNilai apa pun

Respons berhasil 200

Subjek, HTML, teks biasa, lokal, pengenal revisi, dan peringatan ekstraksi yang dirender.

application/json

  • valueobject
  • datatidak ditentukanwajib
  • allOf 1object
  • subjectstringwajib
  • preheaderstring
  • htmlstringwajib
  • textstringwajib
  • localestringwajib
  • directionstringwajib

    enum: "ltr", "rtl"

  • warningsarray
  • Setiap itemstring
  • Properti tambahanNilai apa pun
  • allOf 2object
  • source_revision_idstringwajib

    format: "uuid"

  • layout_revision_idstring | nullwajib

    format: "uuid"

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/journeys/{journeyId}/render' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'X-Banger-Product-Id: 00000000-0000-4000-8000-000000000001' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "step_id": "00000000-0000-4000-8000-000000000001",
  "content_state": "draft",
  "locale": "example",
  "timezone": "example",
  "sample_set": "example",
  "variables": {}
}'
POST/v1/workspaces/{workspaceId}/journeys/{journeyId}/simulate

Uji coba Journey tersimpan dengan kelayakan saat pemicu dan Kampanye terkelola opsional.

Simulasi hanya baca. Hilangkan enrollment untuk pratinjau setelah pendaftaran, atau berikan skenario pemicu eksplisit untuk memeriksa kelayakan kontak tersimpan saat ini. enrollment yang ada menghasilkan scope from_trigger dan entri linimasa pertama dengan kind enrollment; penerima tidak layak melewati langkah Journey sementara kandidat kampanye mandiri berlanjut. assume_active memodelkan aktivasi hipotetis, bukan persetujuan tata kelola. Penerimaan/deduplikasi peristiwa penyedia, pengiriman dan latensi penyedia, status audiens historis, pemicu jadwal dan email masuk tidak disimulasikan. Journey API yang ditemukan memakai jalur upsert onboarding khususnya; penekanan pengiriman berikutnya terpisah. Journey API aktif memeriksa audiens tersimpan sebelum upsert kontak; simulasi memodelkan urutan itu tanpa menulis. Karena itu penerima API yang ditekan dapat memiliki entri pendaftaran layak diikuti exit/suppress, tanpa pengiriman yang dirender; kampanye tertunda dibatalkan.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

X-Banger-Product-Id
header · wajib

Produk operasi eksplisit; harus sesuai dengan kredensial OAuth bercakupan produk.

  • valuestring

    format: "uuid"

journeyId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan wajib

application/json

  • valueobject

    Tidak ada properti tambahan

  • atstringwajib

    format: "date-time"

  • enrollment_idstring
  • content_statestring

    default: "draft" · enum: "draft", "published"

  • localestring
  • variablesobject
  • Properti tambahanNilai apa pun
  • communication_historyarray

    Pengiriman atau reservasi sebelumnya untuk penerima simulasi ini.

    maxItems: 10000

  • Setiap itemstring

    format: "date-time"

  • contactobjectwajib
  • emailstringwajib

    format: "email"

  • display_namestringwajib
  • attributesobjectwajib
  • Properti tambahanNilai apa pun
  • enrollmentobject

    Percobaan pemicu opsional pada timestamp at tingkat atas. Kontak tersimpan memakai langganan, penekanan, dan keanggotaan audiens saat ini. Kontak API/peristiwa hipotetis memerlukan status subscribed dan suppressed=false eksplisit serta audiens all_subscribed.

    Tidak ada properti tambahan

  • kindstringwajib

    enum: "manual", "api", "contact_created", "audience_joined", "event"

  • eventstring

    maxLength: 200

  • assume_activeboolean

    default: false

  • contact_statusstring

    enum: "subscribed", "unsubscribed"

  • suppressedboolean
  • eventsarray

    maxItems: 1000

  • Setiap itemobject
  • atstringwajib

    format: "date-time"

  • kindstringwajib

    enum: "attributes", "reply", "unsubscribe", "suppress", "goal"

  • attributesobject
  • Properti tambahanNilai apa pun
  • broadcastsarray

    Kampanye terjadwal tersimpan atau kandidat konten terkelola eksplisit yang dievaluasi pada linimasa penerima yang sama.

    maxItems: 20

  • Setiap itemobject

    Tidak ada properti tambahan

  • idstring

    maxLength: 100

  • atstring

    format: "date-time"

  • expires_atstring

    format: "date-time"

  • campaign_idstring

    format: "uuid"

  • content_idstring

    format: "uuid"

  • source_revision_idstring

    format: "uuid"

  • localestring
  • variablesobject
  • Properti tambahanNilai apa pun
  • oneOf 1tidak ditentukan
  • oneOf 2tidak ditentukan

Respons berhasil 200

Linimasa berurutan, detail email yang dirender, scope, dan peringatan simulasi. Hasil pendaftaran meliputi eligible, eligible_assuming_activation, trigger_mismatch, event_mismatch, journey_not_active_or_reviewed, contact_unsubscribed, recipient_hash_missing, contact_suppressed, outside_journey_audience, already_enrolled, contact_predates_enrollment_scan, saved_contact_required, contact_state_unverified, dan audience_unverified. Detail mengidentifikasi pemicu dan sumber status kontak serta dapat menyatakan bahwa kondisi pemicu tersimpan tidak dievaluasi runtime saat ini. Penerima kampanye tersimpan yang sudah masuk antrean pengiriman menghasilkan already_queued; already_sent hanya untuk pengiriman yang diterima.

application/json

  • valueobject
  • dataobjectwajib
  • journey_idstringwajib

    format: "uuid"

  • journey_versionintegerwajib
  • content_statestringwajib

    enum: "draft", "published"

  • scopestringwajib

    enum: "from_trigger", "after_enrollment"

  • communication_policy_versionintegerwajib
  • timelinearraywajib
  • Setiap itemobject
  • atstringwajib

    format: "date-time"

  • step_idstring

    format: "uuid"

  • kindstringwajib
  • outcomestringwajib
  • detailstidak ditentukan

    Bukti simulasi khusus hasil.

  • emailsarraywajib
  • Setiap itemobject
  • step_idstring | nullwajib

    format: "uuid"

  • namestringwajib
  • armobject
  • split_step_idstring

    format: "uuid"

  • keystringwajib
  • labelstringwajib
  • sourcestringwajib

    enum: "managed", "design", "inline", "empty"

  • statusstringwajib

    enum: "rendered", "blocked"

  • subjectstring
  • previewstring
  • codestring
  • messagestring
  • warningsarraywajib
  • Setiap itemstring

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/journeys/{journeyId}/simulate' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'X-Banger-Product-Id: 00000000-0000-4000-8000-000000000001' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "at": "2026-01-01T00:00:00Z",
  "enrollment_id": "example",
  "content_state": "draft",
  "locale": "example",
  "variables": {},
  "communication_history": [
    "2026-01-01T00:00:00Z"
  ],
  "contact": {
    "email": "person@example.com",
    "display_name": "example",
    "attributes": {}
  },
  "enrollment": {
    "kind": "manual",
    "event": "example",
    "assume_active": false,
    "contact_status": "subscribed",
    "suppressed": true
  },
  "events": [
    {
      "at": "2026-01-01T00:00:00Z",
      "kind": "attributes",
      "attributes": {}
    }
  ],
  "broadcasts": [
    "example"
  ]
}'
POST/v1/workspaces/{workspaceId}/journeys/{journeyId}/status

setJourneyStatus

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

journeyId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan wajib

application/json

  • valueobject
  • statusstringwajib

    enum: "draft", "active", "paused", "archived"

Respons berhasil 200

Status Journey diperbarui.

application/json

  • valueobject
  • datatidak ditentukanwajib
  • allOf 1object

    Tidak ada properti tambahan

  • namestringwajib

    minLength: 1 · maxLength: 200

  • descriptionstring

    maxLength: 2000

  • mailbox_idstring

    Pengirim yang ada. Hilangkan untuk memprioritaskan pengirim onboarding, lalu kotak surat khusus aktif, lalu yang dihosting. Pengirim tersimpan dan eksplisit tidak berubah.

    format: "uuid"

  • from_local_partstring

    maxLength: 64 · pattern: "^[a-z0-9][a-z0-9._+-]{0,62}$"

  • triggerobjectwajib
  • kindstringwajib

    enum: "manual", "contact_created", "audience_joined", "event", "schedule", "inbound_email", "api"

  • connection_idstring

    format: "uuid"

  • configobject
  • eventstring
  • once_per_personboolean

    Setiap orang masuk sekali. Tetapkan false agar orang dapat masuk kembali setelah selesai.

    default: true

  • reentry_daysinteger

    Jika once_per_person false, jumlah hari setelah masuk terakhir sebelum orang dapat masuk lagi.

    minimum: 1 · maximum: 365

  • Properti tambahanNilai apa pun
  • conditionsarray
  • Setiap itemobject
  • Properti tambahanNilai apa pun
  • audienceobject
  • Properti tambahanNilai apa pun
  • goalobject

    Tidak ada properti tambahan

  • kindstringwajib

    enum: "none", "event", "reply", "conversion"

  • connection_idstring

    format: "uuid"

  • configobjectwajib
  • Properti tambahanNilai apa pun
  • exitobject

    Tidak ada properti tambahan

  • on_replyboolean

    default: true

  • on_unsubscribeboolean

    default: true

  • on_suppressionboolean

    default: true

  • eventstring

    maxLength: 200

  • approval_modestring

    enum: "policy", "required"

  • apiobject
  • keystring

    maxLength: 100

  • content_modestring

    enum: "code", "managed"

  • identitystring

    maxLength: 300

  • managed_contentobject

    Pintasan khusus pembuatan: simpan secara atomik draf email terkelola sumber dan Journey yang langkah emailnya merujuk draf itu. Bahasa target yang belum ada masuk antrean terjemahan gratis; ini tidak menerbitkan atau mengaktifkan Journey.

    Tidak ada properti tambahan

  • source_localestring

    Lokal sumber BCP 47 kanonis; mewarisi pengaturan produk jika dihilangkan.

  • configured_localesarray

    Lokal sumber dan target; sumber yang dihilangkan ditambahkan oleh server.

    maxItems: 100 · uniqueItems: true

  • Setiap itemstring
  • fallback_localestring
  • layout_idstring

    Tata letak pakai ulang yang dipilih; server menyimpan snapshot revisi terbitnya ke revisi konten ini.

    format: "uuid"

  • localization_policyobject

    Email Journey hanya dikirim dalam bahasa orang tersebut: menunggu terjemahan sekitar satu menit untuk tanda terima, kode, dan pemberitahuan keamanan, dan hingga sehari untuk email lain, lalu tidak dikirim jika terjemahan belum siap.

    Tidak ada properti tambahan

  • manual_reviewboolean

    default: false

  • sourceobjectwajib

    Tidak ada properti tambahan

  • subjectstringwajib

    minLength: 1 · maxLength: 100000

  • preheaderstring

    maxLength: 100000

  • body_textstring

    Diterima untuk kompatibilitas sumber; teks biasa yang dirender diturunkan dari HTML final.

    maxLength: 100000

  • body_htmlstringwajib

    minLength: 1 · maxLength: 100000

  • layoutstring

    Harus berisi satu slot {{ content }}.

    maxLength: 100000

  • variantsobject

    Versi sumber opsional. Setiap versi diterjemahkan otomatis dalam revisi yang sama.

  • Properti tambahanobject

    Tidak ada properti tambahan

    Penumpukan lebih lanjut dihilangkan

  • variablesobjectwajib
  • Properti tambahantidak ditentukan

    Variabel bertipe rekursif. Nilai uang memakai {amount_cents: integer, currency: ISO 4217 code}; nilai date berupa tanggal kalender ISO dan datetime berupa timestamp ISO dengan offset.

    Penumpukan lebih lanjut dihilangkan

  • samplesobject

    Kumpulan nilai contoh bernama untuk pratinjau dan validasi sumber.

  • Properti tambahanobject
  • Properti tambahanNilai apa pun
  • translationsobject

    Katalog pesan ICU sumber dan katalog target opsional yang disediakan. Target terkonfigurasi yang belum ada masuk antrean terjemahan asinkron; penyimpanan tidak memerlukannya.

  • Properti tambahanobject
  • Properti tambahanstring

    Penumpukan lebih lanjut dihilangkan

  • stepsarraywajib

    maxItems: 100

  • Setiap itemobject

    Tidak ada properti tambahan

  • idstring

    format: "uuid"

  • positioninteger

    minimum: 1 · maximum: 100

  • kindstringwajib

    enum: "email", "wait", "condition", "action", "split"

  • namestringwajib

    minLength: 1 · maxLength: 200

  • managed_contentobject

    Kontrak sumber bertipe dan identitas revisi draf/terbit untuk langkah email.

  • idstring

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • versioninteger

    Penumpukan lebih lanjut dihilangkan

  • draft_revision_idstring | null

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • published_revision_idstring | null

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • published_publication_idstring | null

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • source_revision_idstring | null

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • layout_revision_idstring | null

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • published_layout_revision_idstring | null

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • source_localestring | null

    Penumpukan lebih lanjut dihilangkan

  • configured_localesarray

    Penumpukan lebih lanjut dihilangkan

  • variablesobject

    Penumpukan lebih lanjut dihilangkan

  • published_variablesobject

    Penumpukan lebih lanjut dihilangkan

  • configobjectwajib

    Langkah tunggu opsional menerima until dengan name, path, operator (equals, not_equals, contains, atau exists), dan value, serta on_met wajib (continue atau end_journey). continue melewati email pengingat berikutnya; end_journey menyelesaikan Journey. Email pengingat harus langsung mengikuti di cabang yang sama. Penantian memeriksa data pelanggan saat ini setiap menit hingga amount/unit. Field yang hilang dianggap tidak diketahui dan menahan pengingat. Penantian biasa dan kondisi mandiri tetap berperilaku seperti sebelumnya. Namai pemeriksaan dengan tonggak pelanggan terverifikasi. Langkah email terkelola merujuk konten terbit melalui managed_content_id; aktivasi menolak referensi belum terbit. Langkah email dapat menetapkan expires_after_seconds (1-604800) untuk membuang pengiriman tertunda setelah interval itu dari awal aslinya; default tujuh hari.

  • Properti tambahanNilai apa pun
  • armsarray

    minItems: 2 · maxItems: 4

  • Setiap itemobject

    Tidak ada properti tambahan

    Penumpukan lebih lanjut dihilangkan

  • allOf 2object
  • idstringwajib

    format: "uuid"

  • statusstringwajib

    enum: "draft", "discovered", "active", "paused", "archived"

  • api_keystring | null
  • content_modestring | null

    enum: "code", "managed", null

  • identitystring | null
  • identity_aliasesarray
  • Setiap itemstring
  • samplesarray
  • Setiap itemobject
  • Properti tambahanNilai apa pun
  • versionintegerwajib

    minimum: 1

  • statsobjectwajib
  • Properti tambahanNilai apa pun
  • stepStatsarray
  • Setiap itemobject
  • Properti tambahanNilai apa pun
  • armStatsarray
  • Setiap itemobject
  • Properti tambahanNilai apa pun
  • healthobjectwajib
  • Properti tambahanNilai apa pun
  • indicatorobjectwajib
  • Properti tambahanNilai apa pun
  • sparklinearraywajib
  • Setiap itemnumber
  • activated_atstring | null

    format: "date-time"

  • updated_atstring

    format: "date-time"

  • last_activity_atstring | null

    format: "date-time"

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/journeys/{journeyId}/status' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "status": "draft"
}'
POST/v1/workspaces/{workspaceId}/journeys/{journeyId}/preview

previewJourney

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

journeyId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Pratinjau audiens dan kesiapan Journey.

application/json

  • valueobject
  • dataobjectwajib
  • sequence_idstringwajib

    format: "uuid"

  • recipient_countintegerwajib
  • sample_recipientsarraywajib
  • Setiap itemobject
  • idstringwajib

    format: "uuid"

  • emailstringwajib
  • display_namestring | nullwajib
  • stepsarraywajib
  • Setiap itemobject

    Tidak ada properti tambahan

  • idstring

    format: "uuid"

  • positioninteger

    minimum: 1 · maximum: 100

  • kindstringwajib

    enum: "email", "wait", "condition", "action", "split"

  • namestringwajib

    minLength: 1 · maxLength: 200

  • managed_contentobject

    Kontrak sumber bertipe dan identitas revisi draf/terbit untuk langkah email.

  • idstring

    format: "uuid"

  • versioninteger
  • draft_revision_idstring | null

    format: "uuid"

  • published_revision_idstring | null

    format: "uuid"

  • published_publication_idstring | null

    format: "uuid"

  • source_revision_idstring | null

    format: "uuid"

  • layout_revision_idstring | null

    format: "uuid"

  • published_layout_revision_idstring | null

    format: "uuid"

  • source_localestring | null
  • configured_localesarray
  • Setiap itemstring

    Penumpukan lebih lanjut dihilangkan

  • variablesobject
  • Properti tambahanNilai apa pun
  • published_variablesobject
  • Properti tambahanNilai apa pun
  • configobjectwajib

    Langkah tunggu opsional menerima until dengan name, path, operator (equals, not_equals, contains, atau exists), dan value, serta on_met wajib (continue atau end_journey). continue melewati email pengingat berikutnya; end_journey menyelesaikan Journey. Email pengingat harus langsung mengikuti di cabang yang sama. Penantian memeriksa data pelanggan saat ini setiap menit hingga amount/unit. Field yang hilang dianggap tidak diketahui dan menahan pengingat. Penantian biasa dan kondisi mandiri tetap berperilaku seperti sebelumnya. Namai pemeriksaan dengan tonggak pelanggan terverifikasi. Langkah email terkelola merujuk konten terbit melalui managed_content_id; aktivasi menolak referensi belum terbit. Langkah email dapat menetapkan expires_after_seconds (1-604800) untuk membuang pengiriman tertunda setelah interval itu dari awal aslinya; default tujuh hari.

  • Properti tambahanNilai apa pun
  • armsarray

    minItems: 2 · maxItems: 4

  • Setiap itemobject

    Tidak ada properti tambahan

  • keystringwajib

    enum: "A", "B", "C", "D"

    Penumpukan lebih lanjut dihilangkan

  • labelstringwajib

    maxLength: 120

    Penumpukan lebih lanjut dihilangkan

  • allocationnumberwajib

    minimum: 0 · maximum: 100

    Penumpukan lebih lanjut dihilangkan

  • stepsarraywajib

    Penumpukan lebih lanjut dihilangkan

  • readybooleanwajib
  • exit_configobjectwajib

    Tidak ada properti tambahan

  • on_replyboolean

    default: true

  • on_unsubscribeboolean

    default: true

  • on_suppressionboolean

    default: true

  • eventstring

    maxLength: 200

  • emailsarraywajib
  • Setiap itemobject
  • step_idstring | nullwajib

    format: "uuid"

  • namestringwajib
  • armobject
  • split_step_idstring

    format: "uuid"

  • keystringwajib
  • labelstringwajib
  • sourcestringwajib

    enum: "managed", "design", "inline", "empty"

  • template_idstring

    format: "uuid"

  • managed_content_idstring

    format: "uuid"

  • subjectstringwajib
  • previewstringwajib
  • blockersarraywajib
  • Setiap itemobject
  • codestringwajib

    Penumpukan lebih lanjut dihilangkan

  • messagestringwajib

    Penumpukan lebih lanjut dihilangkan

  • blockersarraywajib
  • Setiap itemobject
  • codestringwajib
  • messagestringwajib
  • step_idstring | nullwajib

    format: "uuid"

  • step_namestringwajib
  • armstring

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/journeys/{journeyId}/preview' \
  --header "Authorization: Bearer $BANGER_API_KEY"
POST/v1/workspaces/{workspaceId}/journeys/{journeyId}/enroll

Daftarkan kontak eksplisit ke Journey melalui persetujuan terkendali.

Alias POST /approvals dengan action_kind sequence.enroll dan payload {sequence_id, contact_ids, sequence_version?, sequence_definition_sha256?}. Memakai Idempotency-Key yang sama, sehingga kunci yang sama mengembalikan persetujuan yang sama dari kedua rute. Memerlukan campaigns:send dan produk.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

journeyId
path · wajib
  • valuestring

    format: "uuid"

Idempotency-Key
header · wajib
  • valuestring

    minLength: 16 · maxLength: 128

Isi permintaan wajib

application/json

  • valueobject

    Tidak ada properti tambahan

  • contact_idsarraywajib

    minItems: 1 · maxItems: 2000

  • Setiap itemstring

    format: "uuid"

  • sequence_versioninteger

    minimum: 1

  • sequence_definition_sha256string

    pattern: "^[a-f0-9]{64}$"

Respons berhasil 200

Idempotency-Key yang sama mengulang persetujuan yang ada.

application/json

  • valueobject
  • dataobjectwajib
  • idstringwajib

    format: "uuid"

  • requested_by_actor_idstringwajib
  • action_kindstringwajib
  • summarystringwajib
  • capability_scopesarraywajib
  • Setiap itemstring
  • resource_scopeobjectwajib
  • Properti tambahanarray
  • Setiap itemstring
  • payloadobjectwajib
  • Properti tambahanNilai apa pun
  • payload_sha256stringwajib

    pattern: "^[0-9a-f]{64}$"

  • statusstringwajib

    enum: "pending", "approved", "rejected", "cancelled", "expired"

  • missedbooleanwajib
  • expires_atstringwajib

    format: "date-time"

  • decided_by_actor_idstring | null
  • decision_reasonstring | null
  • created_atstringwajib

    format: "date-time"

  • updated_atstringwajib

    format: "date-time"

  • decided_atstring | null

    format: "date-time"

  • execution_job_idstring

    format: "uuid"

  • reviewobject

    Tidak ada properti tambahan

  • dispositionstringwajib

    enum: "automatic", "human_required"

  • recipient_countinteger | nullwajib

    minimum: 0

  • reasonsarraywajib
  • Setiap itemstring
  • checksarraywajib
  • Setiap itemstring

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/journeys/{journeyId}/enroll' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Idempotency-Key: examplexxxxxxxxx' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "contact_ids": [
    "00000000-0000-4000-8000-000000000001"
  ],
  "sequence_version": 1,
  "sequence_definition_sha256": "example"
}'
GET/v1/workspaces/{workspaceId}/journeys/{journeyId}/executions

listJourneyExecutions

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

journeyId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Eksekusi langkah Journey.

application/json

  • valueobject
  • dataarraywajib
  • Setiap itemobject
  • enrollment_idstringwajib

    format: "uuid"

  • step_idstringwajib

    format: "uuid"

  • positionintegerwajib
  • kindstringwajib
  • namestringwajib
  • statusstringwajib
  • attempt_countintegerwajib
  • send_intent_idstring | nullwajib

    format: "uuid"

  • error_codestring | nullwajib
  • started_atstring | nullwajib

    format: "date-time"

  • completed_atstring | nullwajib

    format: "date-time"

  • updated_atstringwajib

    format: "date-time"

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/journeys/{journeyId}/executions' \
  --header "Authorization: Bearer $BANGER_API_KEY"
GET/v1/workspaces/{workspaceId}/journeys/{journeyId}/people

listJourneyPeople

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

journeyId
path · wajib
  • valuestring

    format: "uuid"

cursor
query
  • valuestring

    maxLength: 1024

limit
query
  • valueinteger

    minimum: 1 · maximum: 200 · default: 50

state
query
  • valuestring

    enum: "in_progress", "finished", "goal_reached", "exited", "failed"

query
query
  • valuestring

    maxLength: 320

step_id
query
  • valuestring

    format: "uuid"

at
query
  • valuestring

    default: "now" · enum: "now", "received"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Orang dalam Journey, entri terbaru dahulu, beserta hasil tiap langkah email.

application/json

  • valueobject
  • dataobjectwajib
  • stepsobjectwajib

    Dikunci berdasarkan ID langkah, untuk setiap langkah yang pernah dicapai siapa pun.

  • Properti tambahanobject
  • receivedintegerwajib
  • skippedintegerwajib
  • failedintegerwajib
  • nowintegerwajib
  • emailsarraywajib
  • Setiap itemobject
  • step_idstringwajib

    format: "uuid"

  • namestringwajib
  • subjectstringwajib
  • split_step_idstring

    format: "uuid"

  • arm_keystring
  • countsobjectwajib
  • allintegerwajib
  • in_progressintegerwajib
  • finishedintegerwajib
  • goal_reachedintegerwajib
  • exitedintegerwajib
  • failedintegerwajib
  • peoplearraywajib
  • Setiap itemobject
  • enrollment_idstringwajib

    format: "uuid"

  • contact_idstringwajib

    format: "uuid"

  • emailstringwajib
  • display_namestringwajib
  • statestringwajib

    enum: "in_progress", "finished", "goal_reached", "exited", "failed"

  • stop_reasonstring
  • error_codestring
  • current_stepobject
  • idstringwajib

    format: "uuid"

  • namestringwajib
  • kindstringwajib
  • next_action_atstring

    format: "date-time"

  • enrolled_atstringwajib

    format: "date-time"

  • completed_atstring

    format: "date-time"

  • pathsobjectwajib
  • Properti tambahanstring
  • emailsobjectwajib

    Dikunci berdasarkan ID langkah email. Langkah tanpa entri belum dicapai.

  • Properti tambahanobject
  • statestringwajib

    translating berarti email menunggu terjemahan orang tersebut. skipped membawa error_code translation_failed, translation_awaiting_review, atau translation_still_preparing (alasan terjemahan belum siap tepat waktu), dan none jika tonggak tercapai lebih dahulu.

    enum: "pending", "translating", "skipped", "failed", "queued", "sent", "delivered", "opened", "clicked", "replied", "bounced", "complained"

    Penumpukan lebih lanjut dihilangkan

  • atstringwajib

    format: "date-time"

    Penumpukan lebih lanjut dihilangkan

  • send_intent_idstring

    Baca pesan persis yang diterima orang ini dengan GET /transactional-sends/{send_intent_id}.

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • error_codestring

    Penumpukan lebih lanjut dihilangkan

  • languagetidak ditentukan

    Bahasa email yang diterima orang tersebut, atau saat translating, bahasa yang ditunggu.

    Penumpukan lebih lanjut dihilangkan

  • variant_keystring

    Varian eksperimen email yang diterima orang tersebut saat langkah menjalankan eksperimen.

    Penumpukan lebih lanjut dihilangkan

  • pageobjectwajib
  • has_morebooleanwajib
  • next_cursorstring

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/journeys/{journeyId}/people?cursor=example&limit=50&state=in_progress&query=example&step_id=00000000-0000-4000-8000-000000000001&at=now' \
  --header "Authorization: Bearer $BANGER_API_KEY"
POST/v1/workspaces/{workspaceId}/journeys/{journeyKey}/send

sendJourney

Kirim satu email melalui Journey. reply_to default ke kotak surat Journey; daftar kosong juga berarti default. Penolakan (4xx) tidak meninggalkan apa pun yang dibekukan untuk penerima, sehingga panggilan yang diperbaiki dengan kunci idempotensi baru akan mengirim.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

journeyKey
path · wajib
  • valuestring

    minLength: 1 · maxLength: 100

Idempotency-Key
header · wajib
  • valuestring

    minLength: 16 · maxLength: 128

Isi permintaan wajib

application/json

  • valueobject
  • totidak ditentukan

    Penerima untuk to, cc, bcc, dan reply_to: alamat ("a@example.com" atau "Pat <a@example.com>"), objek { email, name }, atau daftar yang mencampur keduanya. Banger menyimpannya sebagai objek { email, name } dengan email berhuruf kecil. Hash idempotensi mencakup isi sebagaimana dikirim, jadi ulangi dengan bentuk yang sama.

  • oneOf 1string

    minLength: 3 · maxLength: 1000

  • oneOf 2object
  • namestring
  • emailstringwajib

    format: "email"

  • oneOf 3array

    maxItems: 500

  • Setiap itemtidak ditentukan
  • oneOf 1string

    minLength: 3 · maxLength: 1000

  • oneOf 2object
  • namestring
  • emailstringwajib

    format: "email"

  • reply_totidak ditentukan

    Penerima untuk to, cc, bcc, dan reply_to: alamat ("a@example.com" atau "Pat <a@example.com>"), objek { email, name }, atau daftar yang mencampur keduanya. Banger menyimpannya sebagai objek { email, name } dengan email berhuruf kecil. Hash idempotensi mencakup isi sebagaimana dikirim, jadi ulangi dengan bentuk yang sama.

  • oneOf 1string

    minLength: 3 · maxLength: 1000

  • oneOf 2object
  • namestring
  • emailstringwajib

    format: "email"

  • oneOf 3array

    maxItems: 500

  • Setiap itemtidak ditentukan
  • oneOf 1string

    minLength: 3 · maxLength: 1000

  • oneOf 2object
  • namestring
  • emailstringwajib

    format: "email"

  • expires_atstring

    format: "date-time"

  • expires_after_secondsinteger

    minimum: 1 · maximum: 604800

  • Properti tambahanNilai apa pun

Respons berhasil 202

Email Journey diterima.

application/json

  • valueobject
  • dataobjectwajib
  • action_kindstringwajib

    enum: "transactional.send"

  • idstring

    format: "uuid"

  • send_intent_idstring

    format: "uuid"

  • provider_attempt_idstring

    format: "uuid"

  • statusstringwajib

    Status sent/queued dari pengiriman, atau untuk permintaan yang dibekukan: deferred (dijadwalkan oleh kebijakan atau menunggu terjemahan), processing (sedang dikirim), discarded.

  • replayedboolean
  • journeytidak ditentukanwajib
  • anyOf 1object
  • journey_idstringwajib

    format: "uuid"

  • enrollment_idstringwajib

    format: "uuid"

  • step_idstringwajib

    format: "uuid"

  • step_positionintegerwajib
  • originstring

    enum: "journey"

  • journey_identitystring
  • anyOf 2null
  • ignored_variablesarraywajib
  • Setiap itemstring
  • scheduled_atstring

    format: "date-time"

  • reasonstring
  • communication_reservation_idstring

    format: "uuid"

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/journeys/{journeyKey}/send' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Idempotency-Key: examplexxxxxxxxx' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "to": "example",
  "reply_to": "example",
  "expires_at": "2026-01-01T00:00:00Z",
  "expires_after_seconds": 1
}'
POST/v1/workspaces/{workspaceId}/journeys/{journeyId}/claim

claimJourney

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

journeyId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan wajib

application/json

  • valueobject
  • namestringwajib

    minLength: 1 · maxLength: 200

  • mailbox_idstringwajib

    format: "uuid"

  • delivery_classstringwajib

    enum: "product", "broadcast"

  • content_modestringwajib

    enum: "code", "managed"

  • template_idstring

    format: "uuid"

  • from_sampleboolean
  • variablesarray

    maxItems: 50

  • Setiap itemobject
  • literalstringwajib

    minLength: 1 · maxLength: 10000

  • namestringwajib

    pattern: "^[a-z][a-z0-9_]{0,63}$"

  • activateboolean

Respons berhasil 200

Journey yang ditemukan diklaim.

application/json

  • valueobject
  • datatidak ditentukanwajib
  • allOf 1object

    Tidak ada properti tambahan

  • namestringwajib

    minLength: 1 · maxLength: 200

  • descriptionstring

    maxLength: 2000

  • mailbox_idstring

    Pengirim yang ada. Hilangkan untuk memprioritaskan pengirim onboarding, lalu kotak surat khusus aktif, lalu yang dihosting. Pengirim tersimpan dan eksplisit tidak berubah.

    format: "uuid"

  • from_local_partstring

    maxLength: 64 · pattern: "^[a-z0-9][a-z0-9._+-]{0,62}$"

  • triggerobjectwajib
  • kindstringwajib

    enum: "manual", "contact_created", "audience_joined", "event", "schedule", "inbound_email", "api"

  • connection_idstring

    format: "uuid"

  • configobject
  • eventstring
  • once_per_personboolean

    Setiap orang masuk sekali. Tetapkan false agar orang dapat masuk kembali setelah selesai.

    default: true

  • reentry_daysinteger

    Jika once_per_person false, jumlah hari setelah masuk terakhir sebelum orang dapat masuk lagi.

    minimum: 1 · maximum: 365

  • Properti tambahanNilai apa pun
  • conditionsarray
  • Setiap itemobject
  • Properti tambahanNilai apa pun
  • audienceobject
  • Properti tambahanNilai apa pun
  • goalobject

    Tidak ada properti tambahan

  • kindstringwajib

    enum: "none", "event", "reply", "conversion"

  • connection_idstring

    format: "uuid"

  • configobjectwajib
  • Properti tambahanNilai apa pun
  • exitobject

    Tidak ada properti tambahan

  • on_replyboolean

    default: true

  • on_unsubscribeboolean

    default: true

  • on_suppressionboolean

    default: true

  • eventstring

    maxLength: 200

  • approval_modestring

    enum: "policy", "required"

  • apiobject
  • keystring

    maxLength: 100

  • content_modestring

    enum: "code", "managed"

  • identitystring

    maxLength: 300

  • managed_contentobject

    Pintasan khusus pembuatan: simpan secara atomik draf email terkelola sumber dan Journey yang langkah emailnya merujuk draf itu. Bahasa target yang belum ada masuk antrean terjemahan gratis; ini tidak menerbitkan atau mengaktifkan Journey.

    Tidak ada properti tambahan

  • source_localestring

    Lokal sumber BCP 47 kanonis; mewarisi pengaturan produk jika dihilangkan.

  • configured_localesarray

    Lokal sumber dan target; sumber yang dihilangkan ditambahkan oleh server.

    maxItems: 100 · uniqueItems: true

  • Setiap itemstring
  • fallback_localestring
  • layout_idstring

    Tata letak pakai ulang yang dipilih; server menyimpan snapshot revisi terbitnya ke revisi konten ini.

    format: "uuid"

  • localization_policyobject

    Email Journey hanya dikirim dalam bahasa orang tersebut: menunggu terjemahan sekitar satu menit untuk tanda terima, kode, dan pemberitahuan keamanan, dan hingga sehari untuk email lain, lalu tidak dikirim jika terjemahan belum siap.

    Tidak ada properti tambahan

  • manual_reviewboolean

    default: false

  • sourceobjectwajib

    Tidak ada properti tambahan

  • subjectstringwajib

    minLength: 1 · maxLength: 100000

  • preheaderstring

    maxLength: 100000

  • body_textstring

    Diterima untuk kompatibilitas sumber; teks biasa yang dirender diturunkan dari HTML final.

    maxLength: 100000

  • body_htmlstringwajib

    minLength: 1 · maxLength: 100000

  • layoutstring

    Harus berisi satu slot {{ content }}.

    maxLength: 100000

  • variantsobject

    Versi sumber opsional. Setiap versi diterjemahkan otomatis dalam revisi yang sama.

  • Properti tambahanobject

    Tidak ada properti tambahan

    Penumpukan lebih lanjut dihilangkan

  • variablesobjectwajib
  • Properti tambahantidak ditentukan

    Variabel bertipe rekursif. Nilai uang memakai {amount_cents: integer, currency: ISO 4217 code}; nilai date berupa tanggal kalender ISO dan datetime berupa timestamp ISO dengan offset.

    Penumpukan lebih lanjut dihilangkan

  • samplesobject

    Kumpulan nilai contoh bernama untuk pratinjau dan validasi sumber.

  • Properti tambahanobject
  • Properti tambahanNilai apa pun
  • translationsobject

    Katalog pesan ICU sumber dan katalog target opsional yang disediakan. Target terkonfigurasi yang belum ada masuk antrean terjemahan asinkron; penyimpanan tidak memerlukannya.

  • Properti tambahanobject
  • Properti tambahanstring

    Penumpukan lebih lanjut dihilangkan

  • stepsarraywajib

    maxItems: 100

  • Setiap itemobject

    Tidak ada properti tambahan

  • idstring

    format: "uuid"

  • positioninteger

    minimum: 1 · maximum: 100

  • kindstringwajib

    enum: "email", "wait", "condition", "action", "split"

  • namestringwajib

    minLength: 1 · maxLength: 200

  • managed_contentobject

    Kontrak sumber bertipe dan identitas revisi draf/terbit untuk langkah email.

  • idstring

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • versioninteger

    Penumpukan lebih lanjut dihilangkan

  • draft_revision_idstring | null

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • published_revision_idstring | null

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • published_publication_idstring | null

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • source_revision_idstring | null

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • layout_revision_idstring | null

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • published_layout_revision_idstring | null

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • source_localestring | null

    Penumpukan lebih lanjut dihilangkan

  • configured_localesarray

    Penumpukan lebih lanjut dihilangkan

  • variablesobject

    Penumpukan lebih lanjut dihilangkan

  • published_variablesobject

    Penumpukan lebih lanjut dihilangkan

  • configobjectwajib

    Langkah tunggu opsional menerima until dengan name, path, operator (equals, not_equals, contains, atau exists), dan value, serta on_met wajib (continue atau end_journey). continue melewati email pengingat berikutnya; end_journey menyelesaikan Journey. Email pengingat harus langsung mengikuti di cabang yang sama. Penantian memeriksa data pelanggan saat ini setiap menit hingga amount/unit. Field yang hilang dianggap tidak diketahui dan menahan pengingat. Penantian biasa dan kondisi mandiri tetap berperilaku seperti sebelumnya. Namai pemeriksaan dengan tonggak pelanggan terverifikasi. Langkah email terkelola merujuk konten terbit melalui managed_content_id; aktivasi menolak referensi belum terbit. Langkah email dapat menetapkan expires_after_seconds (1-604800) untuk membuang pengiriman tertunda setelah interval itu dari awal aslinya; default tujuh hari.

  • Properti tambahanNilai apa pun
  • armsarray

    minItems: 2 · maxItems: 4

  • Setiap itemobject

    Tidak ada properti tambahan

    Penumpukan lebih lanjut dihilangkan

  • allOf 2object
  • idstringwajib

    format: "uuid"

  • statusstringwajib

    enum: "draft", "discovered", "active", "paused", "archived"

  • api_keystring | null
  • content_modestring | null

    enum: "code", "managed", null

  • identitystring | null
  • identity_aliasesarray
  • Setiap itemstring
  • samplesarray
  • Setiap itemobject
  • Properti tambahanNilai apa pun
  • versionintegerwajib

    minimum: 1

  • statsobjectwajib
  • Properti tambahanNilai apa pun
  • stepStatsarray
  • Setiap itemobject
  • Properti tambahanNilai apa pun
  • armStatsarray
  • Setiap itemobject
  • Properti tambahanNilai apa pun
  • healthobjectwajib
  • Properti tambahanNilai apa pun
  • indicatorobjectwajib
  • Properti tambahanNilai apa pun
  • sparklinearraywajib
  • Setiap itemnumber
  • activated_atstring | null

    format: "date-time"

  • updated_atstring

    format: "date-time"

  • last_activity_atstring | null

    format: "date-time"

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/journeys/{journeyId}/claim' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "name": "example",
  "mailbox_id": "00000000-0000-4000-8000-000000000001",
  "delivery_class": "product",
  "content_mode": "code",
  "template_id": "00000000-0000-4000-8000-000000000001",
  "from_sample": true,
  "variables": [
    {
      "literal": "example",
      "name": "example"
    }
  ],
  "activate": true
}'
POST/v1/workspaces/{workspaceId}/journeys/{journeyId}/merge

mergeJourneys

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

journeyId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan wajib

application/json

  • valueobject
  • loser_idstringwajib

    format: "uuid"

Respons berhasil 200

Journey digabung.

application/json

  • valueobject
  • datatidak ditentukanwajib
  • allOf 1object

    Tidak ada properti tambahan

  • namestringwajib

    minLength: 1 · maxLength: 200

  • descriptionstring

    maxLength: 2000

  • mailbox_idstring

    Pengirim yang ada. Hilangkan untuk memprioritaskan pengirim onboarding, lalu kotak surat khusus aktif, lalu yang dihosting. Pengirim tersimpan dan eksplisit tidak berubah.

    format: "uuid"

  • from_local_partstring

    maxLength: 64 · pattern: "^[a-z0-9][a-z0-9._+-]{0,62}$"

  • triggerobjectwajib
  • kindstringwajib

    enum: "manual", "contact_created", "audience_joined", "event", "schedule", "inbound_email", "api"

  • connection_idstring

    format: "uuid"

  • configobject
  • eventstring
  • once_per_personboolean

    Setiap orang masuk sekali. Tetapkan false agar orang dapat masuk kembali setelah selesai.

    default: true

  • reentry_daysinteger

    Jika once_per_person false, jumlah hari setelah masuk terakhir sebelum orang dapat masuk lagi.

    minimum: 1 · maximum: 365

  • Properti tambahanNilai apa pun
  • conditionsarray
  • Setiap itemobject
  • Properti tambahanNilai apa pun
  • audienceobject
  • Properti tambahanNilai apa pun
  • goalobject

    Tidak ada properti tambahan

  • kindstringwajib

    enum: "none", "event", "reply", "conversion"

  • connection_idstring

    format: "uuid"

  • configobjectwajib
  • Properti tambahanNilai apa pun
  • exitobject

    Tidak ada properti tambahan

  • on_replyboolean

    default: true

  • on_unsubscribeboolean

    default: true

  • on_suppressionboolean

    default: true

  • eventstring

    maxLength: 200

  • approval_modestring

    enum: "policy", "required"

  • apiobject
  • keystring

    maxLength: 100

  • content_modestring

    enum: "code", "managed"

  • identitystring

    maxLength: 300

  • managed_contentobject

    Pintasan khusus pembuatan: simpan secara atomik draf email terkelola sumber dan Journey yang langkah emailnya merujuk draf itu. Bahasa target yang belum ada masuk antrean terjemahan gratis; ini tidak menerbitkan atau mengaktifkan Journey.

    Tidak ada properti tambahan

  • source_localestring

    Lokal sumber BCP 47 kanonis; mewarisi pengaturan produk jika dihilangkan.

  • configured_localesarray

    Lokal sumber dan target; sumber yang dihilangkan ditambahkan oleh server.

    maxItems: 100 · uniqueItems: true

  • Setiap itemstring
  • fallback_localestring
  • layout_idstring

    Tata letak pakai ulang yang dipilih; server menyimpan snapshot revisi terbitnya ke revisi konten ini.

    format: "uuid"

  • localization_policyobject

    Email Journey hanya dikirim dalam bahasa orang tersebut: menunggu terjemahan sekitar satu menit untuk tanda terima, kode, dan pemberitahuan keamanan, dan hingga sehari untuk email lain, lalu tidak dikirim jika terjemahan belum siap.

    Tidak ada properti tambahan

  • manual_reviewboolean

    default: false

  • sourceobjectwajib

    Tidak ada properti tambahan

  • subjectstringwajib

    minLength: 1 · maxLength: 100000

  • preheaderstring

    maxLength: 100000

  • body_textstring

    Diterima untuk kompatibilitas sumber; teks biasa yang dirender diturunkan dari HTML final.

    maxLength: 100000

  • body_htmlstringwajib

    minLength: 1 · maxLength: 100000

  • layoutstring

    Harus berisi satu slot {{ content }}.

    maxLength: 100000

  • variantsobject

    Versi sumber opsional. Setiap versi diterjemahkan otomatis dalam revisi yang sama.

  • Properti tambahanobject

    Tidak ada properti tambahan

    Penumpukan lebih lanjut dihilangkan

  • variablesobjectwajib
  • Properti tambahantidak ditentukan

    Variabel bertipe rekursif. Nilai uang memakai {amount_cents: integer, currency: ISO 4217 code}; nilai date berupa tanggal kalender ISO dan datetime berupa timestamp ISO dengan offset.

    Penumpukan lebih lanjut dihilangkan

  • samplesobject

    Kumpulan nilai contoh bernama untuk pratinjau dan validasi sumber.

  • Properti tambahanobject
  • Properti tambahanNilai apa pun
  • translationsobject

    Katalog pesan ICU sumber dan katalog target opsional yang disediakan. Target terkonfigurasi yang belum ada masuk antrean terjemahan asinkron; penyimpanan tidak memerlukannya.

  • Properti tambahanobject
  • Properti tambahanstring

    Penumpukan lebih lanjut dihilangkan

  • stepsarraywajib

    maxItems: 100

  • Setiap itemobject

    Tidak ada properti tambahan

  • idstring

    format: "uuid"

  • positioninteger

    minimum: 1 · maximum: 100

  • kindstringwajib

    enum: "email", "wait", "condition", "action", "split"

  • namestringwajib

    minLength: 1 · maxLength: 200

  • managed_contentobject

    Kontrak sumber bertipe dan identitas revisi draf/terbit untuk langkah email.

  • idstring

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • versioninteger

    Penumpukan lebih lanjut dihilangkan

  • draft_revision_idstring | null

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • published_revision_idstring | null

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • published_publication_idstring | null

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • source_revision_idstring | null

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • layout_revision_idstring | null

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • published_layout_revision_idstring | null

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • source_localestring | null

    Penumpukan lebih lanjut dihilangkan

  • configured_localesarray

    Penumpukan lebih lanjut dihilangkan

  • variablesobject

    Penumpukan lebih lanjut dihilangkan

  • published_variablesobject

    Penumpukan lebih lanjut dihilangkan

  • configobjectwajib

    Langkah tunggu opsional menerima until dengan name, path, operator (equals, not_equals, contains, atau exists), dan value, serta on_met wajib (continue atau end_journey). continue melewati email pengingat berikutnya; end_journey menyelesaikan Journey. Email pengingat harus langsung mengikuti di cabang yang sama. Penantian memeriksa data pelanggan saat ini setiap menit hingga amount/unit. Field yang hilang dianggap tidak diketahui dan menahan pengingat. Penantian biasa dan kondisi mandiri tetap berperilaku seperti sebelumnya. Namai pemeriksaan dengan tonggak pelanggan terverifikasi. Langkah email terkelola merujuk konten terbit melalui managed_content_id; aktivasi menolak referensi belum terbit. Langkah email dapat menetapkan expires_after_seconds (1-604800) untuk membuang pengiriman tertunda setelah interval itu dari awal aslinya; default tujuh hari.

  • Properti tambahanNilai apa pun
  • armsarray

    minItems: 2 · maxItems: 4

  • Setiap itemobject

    Tidak ada properti tambahan

    Penumpukan lebih lanjut dihilangkan

  • allOf 2object
  • idstringwajib

    format: "uuid"

  • statusstringwajib

    enum: "draft", "discovered", "active", "paused", "archived"

  • api_keystring | null
  • content_modestring | null

    enum: "code", "managed", null

  • identitystring | null
  • identity_aliasesarray
  • Setiap itemstring
  • samplesarray
  • Setiap itemobject
  • Properti tambahanNilai apa pun
  • versionintegerwajib

    minimum: 1

  • statsobjectwajib
  • Properti tambahanNilai apa pun
  • stepStatsarray
  • Setiap itemobject
  • Properti tambahanNilai apa pun
  • armStatsarray
  • Setiap itemobject
  • Properti tambahanNilai apa pun
  • healthobjectwajib
  • Properti tambahanNilai apa pun
  • indicatorobjectwajib
  • Properti tambahanNilai apa pun
  • sparklinearraywajib
  • Setiap itemnumber
  • activated_atstring | null

    format: "date-time"

  • updated_atstring

    format: "date-time"

  • last_activity_atstring | null

    format: "date-time"

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/journeys/{journeyId}/merge' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "loser_id": "00000000-0000-4000-8000-000000000001"
}'
POST/v1/workspaces/{workspaceId}/journeys/{journeyId}/splits/{stepId}/decide

decideJourneySplit

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

journeyId
path · wajib
  • valuestring

    format: "uuid"

stepId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan wajib

application/json

  • valueobject
  • arm_keystringwajib

Respons berhasil 200

Cabang pemenang dipromosikan.

application/json

  • valueobject
  • datatidak ditentukanwajib
  • allOf 1object

    Tidak ada properti tambahan

  • namestringwajib

    minLength: 1 · maxLength: 200

  • descriptionstring

    maxLength: 2000

  • mailbox_idstring

    Pengirim yang ada. Hilangkan untuk memprioritaskan pengirim onboarding, lalu kotak surat khusus aktif, lalu yang dihosting. Pengirim tersimpan dan eksplisit tidak berubah.

    format: "uuid"

  • from_local_partstring

    maxLength: 64 · pattern: "^[a-z0-9][a-z0-9._+-]{0,62}$"

  • triggerobjectwajib
  • kindstringwajib

    enum: "manual", "contact_created", "audience_joined", "event", "schedule", "inbound_email", "api"

  • connection_idstring

    format: "uuid"

  • configobject
  • eventstring
  • once_per_personboolean

    Setiap orang masuk sekali. Tetapkan false agar orang dapat masuk kembali setelah selesai.

    default: true

  • reentry_daysinteger

    Jika once_per_person false, jumlah hari setelah masuk terakhir sebelum orang dapat masuk lagi.

    minimum: 1 · maximum: 365

  • Properti tambahanNilai apa pun
  • conditionsarray
  • Setiap itemobject
  • Properti tambahanNilai apa pun
  • audienceobject
  • Properti tambahanNilai apa pun
  • goalobject

    Tidak ada properti tambahan

  • kindstringwajib

    enum: "none", "event", "reply", "conversion"

  • connection_idstring

    format: "uuid"

  • configobjectwajib
  • Properti tambahanNilai apa pun
  • exitobject

    Tidak ada properti tambahan

  • on_replyboolean

    default: true

  • on_unsubscribeboolean

    default: true

  • on_suppressionboolean

    default: true

  • eventstring

    maxLength: 200

  • approval_modestring

    enum: "policy", "required"

  • apiobject
  • keystring

    maxLength: 100

  • content_modestring

    enum: "code", "managed"

  • identitystring

    maxLength: 300

  • managed_contentobject

    Pintasan khusus pembuatan: simpan secara atomik draf email terkelola sumber dan Journey yang langkah emailnya merujuk draf itu. Bahasa target yang belum ada masuk antrean terjemahan gratis; ini tidak menerbitkan atau mengaktifkan Journey.

    Tidak ada properti tambahan

  • source_localestring

    Lokal sumber BCP 47 kanonis; mewarisi pengaturan produk jika dihilangkan.

  • configured_localesarray

    Lokal sumber dan target; sumber yang dihilangkan ditambahkan oleh server.

    maxItems: 100 · uniqueItems: true

  • Setiap itemstring
  • fallback_localestring
  • layout_idstring

    Tata letak pakai ulang yang dipilih; server menyimpan snapshot revisi terbitnya ke revisi konten ini.

    format: "uuid"

  • localization_policyobject

    Email Journey hanya dikirim dalam bahasa orang tersebut: menunggu terjemahan sekitar satu menit untuk tanda terima, kode, dan pemberitahuan keamanan, dan hingga sehari untuk email lain, lalu tidak dikirim jika terjemahan belum siap.

    Tidak ada properti tambahan

  • manual_reviewboolean

    default: false

  • sourceobjectwajib

    Tidak ada properti tambahan

  • subjectstringwajib

    minLength: 1 · maxLength: 100000

  • preheaderstring

    maxLength: 100000

  • body_textstring

    Diterima untuk kompatibilitas sumber; teks biasa yang dirender diturunkan dari HTML final.

    maxLength: 100000

  • body_htmlstringwajib

    minLength: 1 · maxLength: 100000

  • layoutstring

    Harus berisi satu slot {{ content }}.

    maxLength: 100000

  • variantsobject

    Versi sumber opsional. Setiap versi diterjemahkan otomatis dalam revisi yang sama.

  • Properti tambahanobject

    Tidak ada properti tambahan

    Penumpukan lebih lanjut dihilangkan

  • variablesobjectwajib
  • Properti tambahantidak ditentukan

    Variabel bertipe rekursif. Nilai uang memakai {amount_cents: integer, currency: ISO 4217 code}; nilai date berupa tanggal kalender ISO dan datetime berupa timestamp ISO dengan offset.

    Penumpukan lebih lanjut dihilangkan

  • samplesobject

    Kumpulan nilai contoh bernama untuk pratinjau dan validasi sumber.

  • Properti tambahanobject
  • Properti tambahanNilai apa pun
  • translationsobject

    Katalog pesan ICU sumber dan katalog target opsional yang disediakan. Target terkonfigurasi yang belum ada masuk antrean terjemahan asinkron; penyimpanan tidak memerlukannya.

  • Properti tambahanobject
  • Properti tambahanstring

    Penumpukan lebih lanjut dihilangkan

  • stepsarraywajib

    maxItems: 100

  • Setiap itemobject

    Tidak ada properti tambahan

  • idstring

    format: "uuid"

  • positioninteger

    minimum: 1 · maximum: 100

  • kindstringwajib

    enum: "email", "wait", "condition", "action", "split"

  • namestringwajib

    minLength: 1 · maxLength: 200

  • managed_contentobject

    Kontrak sumber bertipe dan identitas revisi draf/terbit untuk langkah email.

  • idstring

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • versioninteger

    Penumpukan lebih lanjut dihilangkan

  • draft_revision_idstring | null

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • published_revision_idstring | null

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • published_publication_idstring | null

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • source_revision_idstring | null

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • layout_revision_idstring | null

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • published_layout_revision_idstring | null

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • source_localestring | null

    Penumpukan lebih lanjut dihilangkan

  • configured_localesarray

    Penumpukan lebih lanjut dihilangkan

  • variablesobject

    Penumpukan lebih lanjut dihilangkan

  • published_variablesobject

    Penumpukan lebih lanjut dihilangkan

  • configobjectwajib

    Langkah tunggu opsional menerima until dengan name, path, operator (equals, not_equals, contains, atau exists), dan value, serta on_met wajib (continue atau end_journey). continue melewati email pengingat berikutnya; end_journey menyelesaikan Journey. Email pengingat harus langsung mengikuti di cabang yang sama. Penantian memeriksa data pelanggan saat ini setiap menit hingga amount/unit. Field yang hilang dianggap tidak diketahui dan menahan pengingat. Penantian biasa dan kondisi mandiri tetap berperilaku seperti sebelumnya. Namai pemeriksaan dengan tonggak pelanggan terverifikasi. Langkah email terkelola merujuk konten terbit melalui managed_content_id; aktivasi menolak referensi belum terbit. Langkah email dapat menetapkan expires_after_seconds (1-604800) untuk membuang pengiriman tertunda setelah interval itu dari awal aslinya; default tujuh hari.

  • Properti tambahanNilai apa pun
  • armsarray

    minItems: 2 · maxItems: 4

  • Setiap itemobject

    Tidak ada properti tambahan

    Penumpukan lebih lanjut dihilangkan

  • allOf 2object
  • idstringwajib

    format: "uuid"

  • statusstringwajib

    enum: "draft", "discovered", "active", "paused", "archived"

  • api_keystring | null
  • content_modestring | null

    enum: "code", "managed", null

  • identitystring | null
  • identity_aliasesarray
  • Setiap itemstring
  • samplesarray
  • Setiap itemobject
  • Properti tambahanNilai apa pun
  • versionintegerwajib

    minimum: 1

  • statsobjectwajib
  • Properti tambahanNilai apa pun
  • stepStatsarray
  • Setiap itemobject
  • Properti tambahanNilai apa pun
  • armStatsarray
  • Setiap itemobject
  • Properti tambahanNilai apa pun
  • healthobjectwajib
  • Properti tambahanNilai apa pun
  • indicatorobjectwajib
  • Properti tambahanNilai apa pun
  • sparklinearraywajib
  • Setiap itemnumber
  • activated_atstring | null

    format: "date-time"

  • updated_atstring

    format: "date-time"

  • last_activity_atstring | null

    format: "date-time"

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/journeys/{journeyId}/splits/{stepId}/decide' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "arm_key": "example"
}'
GET/v1/workspaces/{workspaceId}/journeys/{journeyId}/splits/recommend

recommendJourneyArms

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

journeyId
path · wajib
  • valuestring

    format: "uuid"

position
query
  • valueinteger

    minimum: 1 · maximum: 100

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Jumlah cabang uji dan waktu keputusan yang disarankan.

application/json

  • valueobject
  • dataobjectwajib
  • arms_maxintegerwajib
  • weekly_arrivalsintegerwajib
  • per_arm_eta_daysobjectwajib
  • Properti tambahannumber

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/journeys/{journeyId}/splits/recommend?position=1' \
  --header "Authorization: Bearer $BANGER_API_KEY"

Persetujuan

GET/v1/workspaces/{workspaceId}/approvals/{approvalId}/managed-layout-preview/{contentId}

Baca render lengkap sebelum/sesudah dalam lokal sumber untuk konten yang terikat pada satu persetujuan tata letak.

Bangun ulang dari revisi tetap dan verifikasi kedua hash sumber terhadap snapshot persetujuan. Penggantian lokal tidak diterima.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

X-Banger-Product-Id
header · wajib

Produk operasi eksplisit; harus sesuai dengan kredensial OAuth bercakupan produk.

  • valuestring

    format: "uuid"

approvalId
path · wajib
  • valuestring

    format: "uuid"

contentId
path · wajib
  • valuestring

    format: "uuid"

sample
query
  • valuestring

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Subjek, HTML, dan teks biasa lengkap sebelum dan sesudah, terverifikasi hash.

application/json

  • valueobject
  • dataobjectwajib
  • content_idstringwajib

    format: "uuid"

  • sample_namestring | nullwajib
  • localestringwajib
  • old_source_hashstringwajib
  • new_source_hashstringwajib
  • beforeobjectwajib
  • subjectstringwajib
  • htmlstringwajib
  • textstringwajib
  • afterobjectwajib
  • subjectstringwajib
  • htmlstringwajib
  • textstringwajib

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/approvals/{approvalId}/managed-layout-preview/{contentId}?sample=example' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'X-Banger-Product-Id: 00000000-0000-4000-8000-000000000001'
GET/v1/workspaces/{workspaceId}/approvals/{approvalId}/journey-preview

Render setiap email persetujuan aktivasi atau pendaftaran Journey dari snapshot tinjauan terikatnya.

Email dirender dengan personalisasi contoh dari definisi persis yang ditinjau (desain tersimpan berdasarkan kunci HTML tetapnya, revisi terkelola yang dipatok), tidak pernah dari Journey langsung. Juga menyebut nama daftar audiens, segmen, dan koneksi pemicu/tujuan yang dirujuk snapshot.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

X-Banger-Product-Id
header · wajib

Produk operasi eksplisit; harus sesuai dengan kredensial OAuth bercakupan produk.

  • valuestring

    format: "uuid"

approvalId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Email yang dirender dengan kunci posisi langkah (langkah cabang sebagai parent.arm.position), serta nama audiens dan koneksi.

application/json

  • valueobject
  • dataobjectwajib
  • approval_idstringwajib

    format: "uuid"

  • sequence_idstring | null

    format: "uuid"

  • emailsarraywajib
  • Setiap itemobject
  • keystringwajib
  • positionintegerwajib
  • parent_positioninteger | nullwajib
  • arm_keystring | nullwajib
  • sourcestringwajib

    enum: "managed", "design", "inline", "empty"

  • subjectstringwajib
  • preview_textstringwajib
  • body_htmlstring
  • body_textstringwajib
  • publishedboolean
  • errorstring
  • listsarraywajib
  • Setiap itemobject
  • idstringwajib
  • namestringwajib
  • member_countintegerwajib
  • segmentsarraywajib
  • Setiap itemobject
  • idstringwajib
  • namestringwajib
  • connectionsarraywajib
  • Setiap itemobject
  • idstringwajib
  • namestringwajib
  • image_assetsobjectwajib
  • Properti tambahanstring
  • sample_valuesbooleanwajib

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/approvals/{approvalId}/journey-preview' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'X-Banger-Product-Id: 00000000-0000-4000-8000-000000000001'
GET/v1/workspaces/{workspaceId}/approvals

listApprovalRequests

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

status
query
  • valuestring

    enum: "undecided", "pending", "approved", "rejected", "cancelled", "expired"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Kotak masuk audit peninjauan otomatis dan manusia untuk ruang kerja.

application/json

  • valueobject
  • dataarraywajib
  • Setiap itemobject
  • idstringwajib

    format: "uuid"

  • requested_by_actor_idstringwajib
  • action_kindstringwajib
  • summarystringwajib
  • capability_scopesarraywajib
  • Setiap itemstring
  • resource_scopeobjectwajib
  • Properti tambahanarray
  • Setiap itemstring
  • payloadobjectwajib
  • Properti tambahanNilai apa pun
  • payload_sha256stringwajib

    pattern: "^[0-9a-f]{64}$"

  • statusstringwajib

    enum: "pending", "approved", "rejected", "cancelled", "expired"

  • missedbooleanwajib
  • expires_atstringwajib

    format: "date-time"

  • decided_by_actor_idstring | null
  • decision_reasonstring | null
  • created_atstringwajib

    format: "date-time"

  • updated_atstringwajib

    format: "date-time"

  • decided_atstring | null

    format: "date-time"

  • execution_job_idstring

    format: "uuid"

  • reviewobject

    Tidak ada properti tambahan

  • dispositionstringwajib

    enum: "automatic", "human_required"

  • recipient_countinteger | nullwajib

    minimum: 0

  • reasonsarraywajib
  • Setiap itemstring
  • checksarraywajib
  • Setiap itemstring

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/approvals?status=undecided' \
  --header "Authorization: Bearer $BANGER_API_KEY"
POST/v1/workspaces/{workspaceId}/approvals

createApprovalRequest

Untuk tindakan Banger kanonis, Banger menurunkan cakupan persis, menerapkan kebijakan tinjauan ruang kerja, mencatat permintaan audit tetap, dan otomatis mengantrekan tindakan dalam batas terkonfigurasi. Untuk menerbitkan sumber email terkelola, gunakan action_kind managed_email.publish dan payload {content_id, expected_version}; Banger mengikat revisi/hash sumber dan mewajibkan tinjauan manusia jika diperlukan. Jenis persetujuan umum selalu tertunda dan harus menyediakan summary, capabilities, dan resources. Dalam payload mail.draft dan transactional.send, to, cc, bcc, dan reply_to menerima bentuk RecipientInput apa pun dan disimpan sebagai objek { email, name }.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

Idempotency-Key
header

Wajib untuk tindakan Banger yang dikenali; permintaan persetujuan khusus tidak memakai header ini.

  • valuestring

    minLength: 16 · maxLength: 128

Isi permintaan wajib

application/json

  • valueobject

    Tidak ada properti tambahan

  • action_kindstringwajib

    minLength: 1 · maxLength: 100

  • summarystring

    minLength: 1 · maxLength: 500

  • capabilitiesarray

    minItems: 1 · maxItems: 50

  • Setiap itemstring

    maxLength: 100

  • resourcesobject
  • Properti tambahanarray

    maxItems: 500

  • Setiap itemstring

    maxLength: 200

  • payloadobjectwajib
  • Properti tambahanNilai apa pun
  • expires_in_secondsinteger

    minimum: 60 · maximum: 86400 · default: 3600

  • approve_as_launcherboolean

    Untuk sequence.activate: orang yang menekan Aktifkan menyetujui permintaan persis ini saat kebijakan tinjauan memerlukan manusia. Diabaikan untuk kunci API dan agen, yang menunggu di Persetujuan.

Respons berhasil 201

Permintaan terkendali dibuat; mungkin sudah otomatis disetujui dan masuk antrean.

application/json

  • valueobject
  • dataobjectwajib
  • idstringwajib

    format: "uuid"

  • requested_by_actor_idstringwajib
  • action_kindstringwajib
  • summarystringwajib
  • capability_scopesarraywajib
  • Setiap itemstring
  • resource_scopeobjectwajib
  • Properti tambahanarray
  • Setiap itemstring
  • payloadobjectwajib
  • Properti tambahanNilai apa pun
  • payload_sha256stringwajib

    pattern: "^[0-9a-f]{64}$"

  • statusstringwajib

    enum: "pending", "approved", "rejected", "cancelled", "expired"

  • missedbooleanwajib
  • expires_atstringwajib

    format: "date-time"

  • decided_by_actor_idstring | null
  • decision_reasonstring | null
  • created_atstringwajib

    format: "date-time"

  • updated_atstringwajib

    format: "date-time"

  • decided_atstring | null

    format: "date-time"

  • execution_job_idstring

    format: "uuid"

  • reviewobject

    Tidak ada properti tambahan

  • dispositionstringwajib

    enum: "automatic", "human_required"

  • recipient_countinteger | nullwajib

    minimum: 0

  • reasonsarraywajib
  • Setiap itemstring
  • checksarraywajib
  • Setiap itemstring

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/approvals' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Idempotency-Key: examplexxxxxxxxx' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "action_kind": "example",
  "summary": "example",
  "capabilities": [
    "example"
  ],
  "resources": {},
  "payload": {},
  "expires_in_seconds": 3600,
  "approve_as_launcher": true
}'
GET/v1/workspaces/{workspaceId}/approvals/count

Hitung persetujuan yang menunggu atau terlewat sebelum keputusan.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Jumlah persetujuan belum diputuskan bercakupan produk.

application/json

  • valueobject
  • dataobjectwajib

    Tidak ada properti tambahan

  • pendingintegerwajib

    minimum: 0

  • missedintegerwajib

    minimum: 0

  • totalintegerwajib

    minimum: 0

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/approvals/count' \
  --header "Authorization: Bearer $BANGER_API_KEY"
GET/v1/workspaces/{workspaceId}/approvals/{approvalId}

getApprovalRequest

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

approvalId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Permintaan persetujuan persis dan payload tindakan terikat.

application/json

  • valueobject
  • dataobjectwajib
  • idstringwajib

    format: "uuid"

  • requested_by_actor_idstringwajib
  • action_kindstringwajib
  • summarystringwajib
  • capability_scopesarraywajib
  • Setiap itemstring
  • resource_scopeobjectwajib
  • Properti tambahanarray
  • Setiap itemstring
  • payloadobjectwajib
  • Properti tambahanNilai apa pun
  • payload_sha256stringwajib

    pattern: "^[0-9a-f]{64}$"

  • statusstringwajib

    enum: "pending", "approved", "rejected", "cancelled", "expired"

  • missedbooleanwajib
  • expires_atstringwajib

    format: "date-time"

  • decided_by_actor_idstring | null
  • decision_reasonstring | null
  • created_atstringwajib

    format: "date-time"

  • updated_atstringwajib

    format: "date-time"

  • decided_atstring | null

    format: "date-time"

  • execution_job_idstring

    format: "uuid"

  • reviewobject

    Tidak ada properti tambahan

  • dispositionstringwajib

    enum: "automatic", "human_required"

  • recipient_countinteger | nullwajib

    minimum: 0

  • reasonsarraywajib
  • Setiap itemstring
  • checksarraywajib
  • Setiap itemstring

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/approvals/{approvalId}' \
  --header "Authorization: Bearer $BANGER_API_KEY"
POST/v1/workspaces/{workspaceId}/approvals/{approvalId}/decision

decideApprovalRequest

Hanya sesi browser manusia. Kunci API ruang kerja tidak dapat memutuskan persetujuan.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

approvalId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan wajib

application/json

  • valueobject

    Tidak ada properti tambahan

  • decisionstringwajib

    enum: "approved", "rejected"

  • reasonstring

    maxLength: 500

  • expected_payload_sha256string

    Hash payload persetujuan persis yang ditampilkan kepada peninjau; ketidakcocokan mengembalikan 409.

    pattern: "^[a-f0-9]{64}$"

Respons berhasil 200

Keputusan persetujuan dicatat.

application/json

  • valueobject
  • dataobjectwajib
  • idstringwajib

    format: "uuid"

  • requested_by_actor_idstringwajib
  • action_kindstringwajib
  • summarystringwajib
  • capability_scopesarraywajib
  • Setiap itemstring
  • resource_scopeobjectwajib
  • Properti tambahanarray
  • Setiap itemstring
  • payloadobjectwajib
  • Properti tambahanNilai apa pun
  • payload_sha256stringwajib

    pattern: "^[0-9a-f]{64}$"

  • statusstringwajib

    enum: "pending", "approved", "rejected", "cancelled", "expired"

  • missedbooleanwajib
  • expires_atstringwajib

    format: "date-time"

  • decided_by_actor_idstring | null
  • decision_reasonstring | null
  • created_atstringwajib

    format: "date-time"

  • updated_atstringwajib

    format: "date-time"

  • decided_atstring | null

    format: "date-time"

  • execution_job_idstring

    format: "uuid"

  • reviewobject

    Tidak ada properti tambahan

  • dispositionstringwajib

    enum: "automatic", "human_required"

  • recipient_countinteger | nullwajib

    minimum: 0

  • reasonsarraywajib
  • Setiap itemstring
  • checksarraywajib
  • Setiap itemstring

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/approvals/{approvalId}/decision' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "decision": "approved",
  "reason": "example",
  "expected_payload_sha256": "example"
}'
POST/v1/workspaces/{workspaceId}/approvals/{approvalId}/cancel

cancelApprovalRequest

Batalkan persetujuan yang masih tertunda tanpa menjalankannya. Hanya sesi browser manusia.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

approvalId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan wajib

application/json

  • valueobject

    Tidak ada properti tambahan

  • reasonstring

    maxLength: 500

Respons berhasil 200

Persetujuan dibatalkan dan eksekusi agen yang menunggu dilanjutkan tanpa tindakan.

application/json

  • valueobject
  • dataobjectwajib
  • idstringwajib

    format: "uuid"

  • requested_by_actor_idstringwajib
  • action_kindstringwajib
  • summarystringwajib
  • capability_scopesarraywajib
  • Setiap itemstring
  • resource_scopeobjectwajib
  • Properti tambahanarray
  • Setiap itemstring
  • payloadobjectwajib
  • Properti tambahanNilai apa pun
  • payload_sha256stringwajib

    pattern: "^[0-9a-f]{64}$"

  • statusstringwajib

    enum: "pending", "approved", "rejected", "cancelled", "expired"

  • missedbooleanwajib
  • expires_atstringwajib

    format: "date-time"

  • decided_by_actor_idstring | null
  • decision_reasonstring | null
  • created_atstringwajib

    format: "date-time"

  • updated_atstringwajib

    format: "date-time"

  • decided_atstring | null

    format: "date-time"

  • execution_job_idstring

    format: "uuid"

  • reviewobject

    Tidak ada properti tambahan

  • dispositionstringwajib

    enum: "automatic", "human_required"

  • recipient_countinteger | nullwajib

    minimum: 0

  • reasonsarraywajib
  • Setiap itemstring
  • checksarraywajib
  • Setiap itemstring

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/approvals/{approvalId}/cancel' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "reason": "example"
}'
POST/v1/workspaces/{workspaceId}/approvals/{approvalId}/dismiss

dismissApprovalRequest

Tutup persetujuan yang jendela keputusannya terlewat. Hanya sesi browser manusia.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

approvalId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Persetujuan terlewat ditutup dan dicatat sebagai dibatalkan.

application/json

  • valueobject
  • dataobjectwajib
  • idstringwajib

    format: "uuid"

  • requested_by_actor_idstringwajib
  • action_kindstringwajib
  • summarystringwajib
  • capability_scopesarraywajib
  • Setiap itemstring
  • resource_scopeobjectwajib
  • Properti tambahanarray
  • Setiap itemstring
  • payloadobjectwajib
  • Properti tambahanNilai apa pun
  • payload_sha256stringwajib

    pattern: "^[0-9a-f]{64}$"

  • statusstringwajib

    enum: "pending", "approved", "rejected", "cancelled", "expired"

  • missedbooleanwajib
  • expires_atstringwajib

    format: "date-time"

  • decided_by_actor_idstring | null
  • decision_reasonstring | null
  • created_atstringwajib

    format: "date-time"

  • updated_atstringwajib

    format: "date-time"

  • decided_atstring | null

    format: "date-time"

  • execution_job_idstring

    format: "uuid"

  • reviewobject

    Tidak ada properti tambahan

  • dispositionstringwajib

    enum: "automatic", "human_required"

  • recipient_countinteger | nullwajib

    minimum: 0

  • reasonsarraywajib
  • Setiap itemstring
  • checksarraywajib
  • Setiap itemstring

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/approvals/{approvalId}/dismiss' \
  --header "Authorization: Bearer $BANGER_API_KEY"
POST/v1/workspaces/{workspaceId}/approvals/{approvalId}/rerequest

rerequestApprovalRequest

Klon persetujuan terlewat dengan jendela keputusan baru dan batalkan permintaan lama. Hanya sesi browser manusia.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

approvalId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 201

Permintaan persetujuan baru dibuat.

application/json

  • valueobject
  • dataobjectwajib
  • idstringwajib

    format: "uuid"

  • requested_by_actor_idstringwajib
  • action_kindstringwajib
  • summarystringwajib
  • capability_scopesarraywajib
  • Setiap itemstring
  • resource_scopeobjectwajib
  • Properti tambahanarray
  • Setiap itemstring
  • payloadobjectwajib
  • Properti tambahanNilai apa pun
  • payload_sha256stringwajib

    pattern: "^[0-9a-f]{64}$"

  • statusstringwajib

    enum: "pending", "approved", "rejected", "cancelled", "expired"

  • missedbooleanwajib
  • expires_atstringwajib

    format: "date-time"

  • decided_by_actor_idstring | null
  • decision_reasonstring | null
  • created_atstringwajib

    format: "date-time"

  • updated_atstringwajib

    format: "date-time"

  • decided_atstring | null

    format: "date-time"

  • execution_job_idstring

    format: "uuid"

  • reviewobject

    Tidak ada properti tambahan

  • dispositionstringwajib

    enum: "automatic", "human_required"

  • recipient_countinteger | nullwajib

    minimum: 0

  • reasonsarraywajib
  • Setiap itemstring
  • checksarraywajib
  • Setiap itemstring

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/approvals/{approvalId}/rerequest' \
  --header "Authorization: Bearer $BANGER_API_KEY"
POST/v1/workspaces/{workspaceId}/approvals/{approvalId}/revise

reviseApprovalRequest

Ganti tindakan Banger terkendali yang tertunda dengan persetujuan yang baru dikanonisasi. Permintaan sebelumnya tetap dalam riwayat sebagai dibatalkan.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

approvalId
path · wajib
  • valuestring

    format: "uuid"

Idempotency-Key
header · wajib
  • valuestring

    minLength: 16 · maxLength: 128

Isi permintaan wajib

application/json

  • valueobject

    Tidak ada properti tambahan

  • payloadobjectwajib
  • Properti tambahanNilai apa pun

Respons berhasil 201

Persetujuan pengganti dibuat untuk tinjauan manusia.

application/json

  • valueobject
  • dataobjectwajib
  • idstringwajib

    format: "uuid"

  • requested_by_actor_idstringwajib
  • action_kindstringwajib
  • summarystringwajib
  • capability_scopesarraywajib
  • Setiap itemstring
  • resource_scopeobjectwajib
  • Properti tambahanarray
  • Setiap itemstring
  • payloadobjectwajib
  • Properti tambahanNilai apa pun
  • payload_sha256stringwajib

    pattern: "^[0-9a-f]{64}$"

  • statusstringwajib

    enum: "pending", "approved", "rejected", "cancelled", "expired"

  • missedbooleanwajib
  • expires_atstringwajib

    format: "date-time"

  • decided_by_actor_idstring | null
  • decision_reasonstring | null
  • created_atstringwajib

    format: "date-time"

  • updated_atstringwajib

    format: "date-time"

  • decided_atstring | null

    format: "date-time"

  • execution_job_idstring

    format: "uuid"

  • reviewobject

    Tidak ada properti tambahan

  • dispositionstringwajib

    enum: "automatic", "human_required"

  • recipient_countinteger | nullwajib

    minimum: 0

  • reasonsarraywajib
  • Setiap itemstring
  • checksarraywajib
  • Setiap itemstring

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/approvals/{approvalId}/revise' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Idempotency-Key: examplexxxxxxxxx' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "payload": {}
}'

Eksekusi agen

GET/v1/workspaces/{workspaceId}/agent-runs

Daftar eksekusi agen internal terbaru untuk ruang kerja.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

limit
query
  • valueinteger

    minimum: 1 · maximum: 100 · default: 50

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Eksekusi terbaru dalam urutan waktu terbalik.

application/json

  • valueobject
  • dataarraywajib
  • Setiap itemobject
  • idstringwajib

    format: "uuid"

  • execution_job_idstring

    format: "uuid"

  • requested_by_actor_idstringwajib
  • taskstringwajib
  • modelstringwajib
  • capability_scopesarraywajib
  • Setiap itemstring
  • resource_scopeobjectwajib
  • Properti tambahanarray
  • Setiap itemstring
  • statusstringwajib

    enum: "queued", "running", "waiting_approval", "waiting_external", "succeeded", "failed", "cancelled"

  • max_stepsintegerwajib
  • max_runtime_secondsintegerwajib
  • current_generationintegerwajib
  • latest_checkpointobject | null
  • Properti tambahanNilai apa pun
  • latest_checkpoint_sequenceintegerwajib
  • resultobject | null
  • Properti tambahanNilai apa pun
  • error_codestring | null
  • created_atstringwajib

    format: "date-time"

  • updated_atstringwajib

    format: "date-time"

  • started_atstring | null

    format: "date-time"

  • completed_atstring | null

    format: "date-time"

  • replayedbooleanwajib
  • stepsarray
  • Setiap itemobject
  • sequenceintegerwajib

    minimum: 1

  • attempt_generationintegerwajib

    minimum: 1

  • kindstringwajib

    enum: "model", "tool", "checkpoint", "approval", "output", "system"

  • statusstringwajib

    enum: "started", "succeeded", "failed", "waiting_approval", "waiting_external"

  • namestring | null
  • inputtidak ditentukan
  • outputtidak ditentukan
  • error_codestring | null
  • input_tokensinteger | null

    minimum: 0

  • output_tokensinteger | null

    minimum: 0

  • created_atstringwajib

    format: "date-time"

  • completed_atstring | null

    format: "date-time"

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/agent-runs?limit=50' \
  --header "Authorization: Bearer $BANGER_API_KEY"
POST/v1/workspaces/{workspaceId}/agent-runs

Mulai eksekusi agen internal Banger yang terisolasi.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

Idempotency-Key
header · wajib
  • valuestring

    minLength: 16 · maxLength: 128

Isi permintaan wajib

application/json

  • valueobject

    Tidak ada properti tambahan

  • taskstringwajib

    minLength: 1 · maxLength: 32000

  • modelstring

    minLength: 1 · maxLength: 200

  • max_stepsinteger

    minimum: 1 · maximum: 50 · default: 12

  • max_runtime_secondsinteger

    minimum: 30 · maximum: 3600 · default: 900

  • connection_toolsarray

    maxItems: 20

  • Setiap itemobject

    Tidak ada properti tambahan

  • connection_idstringwajib

    format: "uuid"

  • adapter_keystringwajib

    minLength: 1 · maxLength: 63

  • operationsarraywajib

    minItems: 1 · maxItems: 20 · uniqueItems: true

  • Setiap itemstring

    minLength: 1 · maxLength: 100

  • action_toolsarray

    maxItems: 6 · uniqueItems: true

  • Setiap itemstring

    enum: "mailbox.create", "mail.draft", "transactional.send", "template.update", "campaign.draft", "campaign.schedule"

Respons berhasil 200

Pengulangan idempoten eksekusi yang ada.

application/json

  • valueobject
  • dataobjectwajib
  • idstringwajib

    format: "uuid"

  • execution_job_idstring

    format: "uuid"

  • requested_by_actor_idstringwajib
  • taskstringwajib
  • modelstringwajib
  • capability_scopesarraywajib
  • Setiap itemstring
  • resource_scopeobjectwajib
  • Properti tambahanarray
  • Setiap itemstring
  • statusstringwajib

    enum: "queued", "running", "waiting_approval", "waiting_external", "succeeded", "failed", "cancelled"

  • max_stepsintegerwajib
  • max_runtime_secondsintegerwajib
  • current_generationintegerwajib
  • latest_checkpointobject | null
  • Properti tambahanNilai apa pun
  • latest_checkpoint_sequenceintegerwajib
  • resultobject | null
  • Properti tambahanNilai apa pun
  • error_codestring | null
  • created_atstringwajib

    format: "date-time"

  • updated_atstringwajib

    format: "date-time"

  • started_atstring | null

    format: "date-time"

  • completed_atstring | null

    format: "date-time"

  • replayedbooleanwajib
  • stepsarray
  • Setiap itemobject
  • sequenceintegerwajib

    minimum: 1

  • attempt_generationintegerwajib

    minimum: 1

  • kindstringwajib

    enum: "model", "tool", "checkpoint", "approval", "output", "system"

  • statusstringwajib

    enum: "started", "succeeded", "failed", "waiting_approval", "waiting_external"

  • namestring | null
  • inputtidak ditentukan
  • outputtidak ditentukan
  • error_codestring | null
  • input_tokensinteger | null

    minimum: 0

  • output_tokensinteger | null

    minimum: 0

  • created_atstringwajib

    format: "date-time"

  • completed_atstring | null

    format: "date-time"

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/agent-runs' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Idempotency-Key: examplexxxxxxxxx' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "task": "example",
  "model": "example",
  "max_steps": 12,
  "max_runtime_seconds": 900,
  "connection_tools": [
    {
      "connection_id": "00000000-0000-4000-8000-000000000001",
      "adapter_key": "example",
      "operations": [
        "example"
      ]
    }
  ],
  "action_tools": [
    "mailbox.create"
  ]
}'
GET/v1/workspaces/{workspaceId}/agent-runs/{runId}

getAgentRun

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

runId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Eksekusi kanonis, checkpoint, hasil akhir, dan langkah berurutan.

application/json

  • valueobject
  • dataobjectwajib
  • idstringwajib

    format: "uuid"

  • execution_job_idstring

    format: "uuid"

  • requested_by_actor_idstringwajib
  • taskstringwajib
  • modelstringwajib
  • capability_scopesarraywajib
  • Setiap itemstring
  • resource_scopeobjectwajib
  • Properti tambahanarray
  • Setiap itemstring
  • statusstringwajib

    enum: "queued", "running", "waiting_approval", "waiting_external", "succeeded", "failed", "cancelled"

  • max_stepsintegerwajib
  • max_runtime_secondsintegerwajib
  • current_generationintegerwajib
  • latest_checkpointobject | null
  • Properti tambahanNilai apa pun
  • latest_checkpoint_sequenceintegerwajib
  • resultobject | null
  • Properti tambahanNilai apa pun
  • error_codestring | null
  • created_atstringwajib

    format: "date-time"

  • updated_atstringwajib

    format: "date-time"

  • started_atstring | null

    format: "date-time"

  • completed_atstring | null

    format: "date-time"

  • replayedbooleanwajib
  • stepsarray
  • Setiap itemobject
  • sequenceintegerwajib

    minimum: 1

  • attempt_generationintegerwajib

    minimum: 1

  • kindstringwajib

    enum: "model", "tool", "checkpoint", "approval", "output", "system"

  • statusstringwajib

    enum: "started", "succeeded", "failed", "waiting_approval", "waiting_external"

  • namestring | null
  • inputtidak ditentukan
  • outputtidak ditentukan
  • error_codestring | null
  • input_tokensinteger | null

    minimum: 0

  • output_tokensinteger | null

    minimum: 0

  • created_atstringwajib

    format: "date-time"

  • completed_atstring | null

    format: "date-time"

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/agent-runs/{runId}' \
  --header "Authorization: Bearer $BANGER_API_KEY"
POST/v1/workspaces/{workspaceId}/agent-runs/{runId}/cancel

cancelAgentRun

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

runId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Eksekusi agen dibatalkan.

application/json

  • valueobject
  • dataobjectwajib
  • idstringwajib

    format: "uuid"

  • execution_job_idstring

    format: "uuid"

  • requested_by_actor_idstringwajib
  • taskstringwajib
  • modelstringwajib
  • capability_scopesarraywajib
  • Setiap itemstring
  • resource_scopeobjectwajib
  • Properti tambahanarray
  • Setiap itemstring
  • statusstringwajib

    enum: "queued", "running", "waiting_approval", "waiting_external", "succeeded", "failed", "cancelled"

  • max_stepsintegerwajib
  • max_runtime_secondsintegerwajib
  • current_generationintegerwajib
  • latest_checkpointobject | null
  • Properti tambahanNilai apa pun
  • latest_checkpoint_sequenceintegerwajib
  • resultobject | null
  • Properti tambahanNilai apa pun
  • error_codestring | null
  • created_atstringwajib

    format: "date-time"

  • updated_atstringwajib

    format: "date-time"

  • started_atstring | null

    format: "date-time"

  • completed_atstring | null

    format: "date-time"

  • replayedbooleanwajib
  • stepsarray
  • Setiap itemobject
  • sequenceintegerwajib

    minimum: 1

  • attempt_generationintegerwajib

    minimum: 1

  • kindstringwajib

    enum: "model", "tool", "checkpoint", "approval", "output", "system"

  • statusstringwajib

    enum: "started", "succeeded", "failed", "waiting_approval", "waiting_external"

  • namestring | null
  • inputtidak ditentukan
  • outputtidak ditentukan
  • error_codestring | null
  • input_tokensinteger | null

    minimum: 0

  • output_tokensinteger | null

    minimum: 0

  • created_atstringwajib

    format: "date-time"

  • completed_atstring | null

    format: "date-time"

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/agent-runs/{runId}/cancel' \
  --header "Authorization: Bearer $BANGER_API_KEY"

Agen

GET/v1/workspaces/{workspaceId}/agents

Daftar agen AI (klien MCP) yang dapat bertindak untuk ruang kerja ini.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Koneksi agen aktif, terbaru dahulu.

application/json

  • valueobject
  • dataarraywajib
  • Setiap itemobject
  • idstringwajib

    format: "uuid"

  • client_namestringwajib
  • client_surfacestringwajib

    Platform agen di balik koneksi OAuth, dari nama klien dan URI pengalihannya.

    enum: "codex", "chatgpt", "claude", "grok", "gemini", "other_agent"

  • scopesarraywajib
  • Setiap itemstring
  • connected_atstringwajib

    format: "date-time"

  • last_active_atstringwajib

    format: "date-time"

  • connected_by_youbooleanwajib

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/agents' \
  --header "Authorization: Bearer $BANGER_API_KEY"
POST/v1/workspaces/{workspaceId}/agents/{agentId}/revoke

Cabut akses satu agen. Agen berhenti bekerja dalam sekitar 30 detik.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

agentId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Akses agen dicabut.

application/json

  • valueobject
  • dataobjectwajib
  • idstringwajib

    format: "uuid"

  • revokedbooleanwajib

    const: true

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/agents/{agentId}/revoke' \
  --header "Authorization: Bearer $BANGER_API_KEY"

Perintah AI

POST/v1/workspaces/{workspaceId}/ai/command-runs

Mulai perintah asisten email dengan pembacaan dan usulan yang hanya dijalankan setelah konfirmasi

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

Idempotency-Key
header · wajib
  • valuestring

    minLength: 1 · maxLength: 256

X-Banger-Product-Id
header
  • valuestring

    format: "uuid"

Isi permintaan wajib

application/json

  • valueobject
  • commandTextstringwajib

    minLength: 1 · maxLength: 8000

Respons berhasil 200

Permintaan baca, jawaban, atau tindakan yang memerlukan konfirmasi

application/json

  • valueobject
  • runIdstringwajib

    format: "uuid"

  • statusstringwajib

    enum: "requires_tool_results", "completed", "requires_confirmation"

  • assistantMessagestringwajib
  • toolCallsarraywajib
  • Setiap itemobject
  • idstringwajib

    format: "uuid"

  • toolNamestringwajib
  • argumentsobjectwajib
  • Properti tambahanNilai apa pun
  • reasonstringwajib
  • proposedActionsarraywajib
  • Setiap itemtidak ditentukan
  • allOf 1object
  • idstringwajib

    format: "uuid"

  • toolNamestringwajib
  • argumentsobjectwajib
  • Properti tambahanNilai apa pun
  • reasonstringwajib
  • allOf 2object
  • confirmationRequiredbooleanwajib

    const: true

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/ai/command-runs' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Idempotency-Key: example' \
  --header 'X-Banger-Product-Id: 00000000-0000-4000-8000-000000000001' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "commandText": "example"
}'
POST/v1/workspaces/{workspaceId}/ai/command-runs/{runId}/tool-results

Lanjutkan perintah milik pelaku dalam cakupan produk aslinya

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

runId
path · wajib
  • valuestring

    format: "uuid"

X-Banger-Product-Id
header
  • valuestring

    format: "uuid"

Isi permintaan wajib

application/json

  • valueobject
  • toolResultsarraywajib

    minItems: 1 · maxItems: 8

  • Setiap itemobject
  • toolCallIdstringwajib

    format: "uuid"

  • toolNamestringwajib

    enum: "list_mailboxes", "search_mail", "list_unread", "list_work_items", "get_thread"

  • okbooleanwajib
  • resulttidak ditentukan
  • errorstring

Respons berhasil 200

Respons perintah berikutnya; hasil berulang diputar ulang tanpa panggilan inferensi tambahan

application/json

  • valueobject
  • runIdstringwajib

    format: "uuid"

  • statusstringwajib

    enum: "requires_tool_results", "completed", "requires_confirmation"

  • assistantMessagestringwajib
  • toolCallsarraywajib
  • Setiap itemobject
  • idstringwajib

    format: "uuid"

  • toolNamestringwajib
  • argumentsobjectwajib
  • Properti tambahanNilai apa pun
  • reasonstringwajib
  • proposedActionsarraywajib
  • Setiap itemtidak ditentukan
  • allOf 1object
  • idstringwajib

    format: "uuid"

  • toolNamestringwajib
  • argumentsobjectwajib
  • Properti tambahanNilai apa pun
  • reasonstringwajib
  • allOf 2object
  • confirmationRequiredbooleanwajib

    const: true

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/ai/command-runs/{runId}/tool-results' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'X-Banger-Product-Id: 00000000-0000-4000-8000-000000000001' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "toolResults": [
    {
      "toolCallId": "00000000-0000-4000-8000-000000000001",
      "toolName": "list_mailboxes",
      "ok": true,
      "result": "example",
      "error": "example"
    }
  ]
}'
POST/v1/workspaces/{workspaceId}/ai/email/revise

Buat revisi email yang dapat ditinjau tanpa menyimpan atau mengirimnya.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

Idempotency-Key
header · wajib
  • valuestring

    minLength: 16 · maxLength: 128

Isi permintaan wajib

application/json

  • valueobject

    Tidak ada properti tambahan

  • connection_idstringwajib

    format: "uuid"

  • providerstringwajib

    enum: "openai", "anthropic"

  • modelstring

    maxLength: 200

  • instructionstringwajib

    minLength: 1 · maxLength: 40000

  • currentobjectwajib

    Tidak ada properti tambahan

  • subjectstringwajib

    maxLength: 998

  • body_textstringwajib

    maxLength: 100000

  • body_htmlstringwajib

    maxLength: 200000

Respons berhasil 200

Usulan revisi terstruktur dari koneksi AI milik pelanggan yang dipilih.

application/json

  • valueobject
  • dataobjectwajib

    Tidak ada properti tambahan

  • dataobjectwajib

    Tidak ada properti tambahan

  • subjectstringwajib
  • subject_optionsarraywajib
  • Setiap itemstring
  • body_textstringwajib
  • body_htmlstringwajib
  • change_summarystringwajib
  • provider_response_idstring
  • modelstringwajib
  • usageobject
  • Properti tambahanNilai apa pun

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/ai/email/revise' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Idempotency-Key: examplexxxxxxxxx' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "connection_id": "00000000-0000-4000-8000-000000000001",
  "provider": "openai",
  "model": "example",
  "instruction": "example",
  "current": {
    "subject": "example",
    "body_text": "example",
    "body_html": "example"
  }
}'
GET/v1/workspaces/{workspaceId}/ai/email/capabilities

getAiEmailCapabilities

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Respons berhasil.

application/json

  • valueobject
  • dataobjectwajib
  • categorizationobjectwajib
  • availablebooleanwajib

    const: false

  • enabledbooleanwajib

    const: false

  • reasonstringwajib

    enum: "not_configured"

  • managedtidak ditentukanwajib
  • oneOf 1object
  • availablebooleanwajib

    const: false

  • oneOf 2object
  • availablebooleanwajib

    const: true

  • providerstringwajib

    enum: "openai", "anthropic"

  • modelstringwajib

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/ai/email/capabilities' \
  --header "Authorization: Bearer $BANGER_API_KEY"
POST/v1/workspaces/{workspaceId}/ai/email/generate

generateEmailWithAi

Buat desain email lengkap sesuai merek dari brief. Hanya usulan.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

Idempotency-Key
header · wajib
  • valuestring

    minLength: 16 · maxLength: 128

Isi permintaan wajib

application/json

  • valueobject
  • briefstringwajib

    minLength: 1 · maxLength: 40000

  • audiencestring

    maxLength: 4000

  • starterobject
  • subjectstring

    maxLength: 998

  • body_textstring

    maxLength: 100000

  • body_htmlstring

    maxLength: 200000

  • connection_idstring

    format: "uuid"

  • providerstring

    enum: "openai", "anthropic"

  • modelstring

    maxLength: 200

Respons berhasil 200

Respons berhasil.

application/json

  • valueobject
  • dataobjectwajib
  • dataobjectwajib
  • subjectstringwajib
  • subject_optionsarraywajib
  • Setiap itemstring
  • body_textstringwajib
  • body_htmlstringwajib
  • change_summarystringwajib
  • provider_response_idstring
  • modelstringwajib
  • usageobject
  • Properti tambahanNilai apa pun
  • managedbooleanwajib

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/ai/email/generate' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Idempotency-Key: examplexxxxxxxxx' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "brief": "example",
  "audience": "example",
  "starter": {
    "subject": "example",
    "body_text": "example",
    "body_html": "example"
  },
  "connection_id": "00000000-0000-4000-8000-000000000001",
  "provider": "openai",
  "model": "example"
}'

Analitik

POST/v1/workspaces/{workspaceId}/analytics/visitor

Tautkan kunjungan situs ke orang yang sudah masuk

Memerlukan sesi manusia yang sudah masuk; kunci API ditolak.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan wajib

application/json

  • valueobject
  • visitor_idstringwajib

    pattern: "^[A-Za-z0-9-]{8,64}$"

Respons berhasil 204

Respons berhasil.

Tanpa isi respons.

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/analytics/visitor' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "visitor_id": "example"
}'

Agen penjawab

GET/v1/workspaces/{workspaceId}/answer-agents

listAnswerAgents

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Agen penjawab ruang kerja.

application/json

  • valueobject
  • dataarraywajib
  • Setiap itemobject
  • idstringwajib

    format: "uuid"

  • identityIdstringwajib

    format: "uuid"

  • workspaceIdstringwajib

    format: "uuid"

  • originstringwajib

    const: "internal"

  • namestringwajib
  • systemPromptstring
  • enabledbooleanwajib
  • sendPolicystringwajib

    enum: "draft_only", "reviewed_send", "direct_send"

  • mailboxIdsarraywajib
  • Setiap itemstring

    format: "uuid"

  • createdAtstringwajib

    format: "date-time"

  • updatedAtstringwajib

    format: "date-time"

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/answer-agents' \
  --header "Authorization: Bearer $BANGER_API_KEY"
POST/v1/workspaces/{workspaceId}/answer-agents

createAnswerAgent

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan wajib

application/json

  • valueobject

    Tidak ada properti tambahan

  • namestringwajib

    minLength: 1 · maxLength: 100

  • system_promptstring

    maxLength: 32000

  • enabledboolean

    default: true

  • send_policystring

    default: "draft_only" · enum: "draft_only", "reviewed_send", "direct_send"

  • mailbox_idsarray

    maxItems: 250

  • Setiap itemstring

    format: "uuid"

Respons berhasil 201

Agen penjawab dibuat.

application/json

  • valueobject
  • dataobjectwajib
  • idstringwajib

    format: "uuid"

  • identityIdstringwajib

    format: "uuid"

  • workspaceIdstringwajib

    format: "uuid"

  • originstringwajib

    const: "internal"

  • namestringwajib
  • systemPromptstring
  • enabledbooleanwajib
  • sendPolicystringwajib

    enum: "draft_only", "reviewed_send", "direct_send"

  • mailboxIdsarraywajib
  • Setiap itemstring

    format: "uuid"

  • createdAtstringwajib

    format: "date-time"

  • updatedAtstringwajib

    format: "date-time"

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/answer-agents' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "name": "example",
  "system_prompt": "example",
  "enabled": true,
  "send_policy": "draft_only",
  "mailbox_ids": [
    "00000000-0000-4000-8000-000000000001"
  ]
}'

Aset

GET/v1/workspaces/{workspaceId}/assets

Daftar gambar email produk dan URL publik tetapnya.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

X-Banger-Product-Id
header · wajib

Produk operasi eksplisit; harus sesuai dengan kredensial OAuth bercakupan produk.

  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Hingga 100 gambar email produk terbaru.

application/json

  • valueobject
  • dataarraywajib
  • Setiap itemobject

    Tidak ada properti tambahan

  • idstringwajib

    format: "uuid"

  • product_idstringwajib

    format: "uuid"

  • filenamestringwajib
  • mime_typestringwajib

    enum: "image/png", "image/jpeg", "image/gif", "image/webp"

  • size_bytesintegerwajib

    minimum: 1 · maximum: 2097152

  • sha256stringwajib

    pattern: "^[a-f0-9]{64}$"

  • created_atstringwajib

    format: "date-time"

  • public_urlstringwajib

    format: "uri"

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/assets' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'X-Banger-Product-Id: 00000000-0000-4000-8000-000000000001'
POST/v1/workspaces/{workspaceId}/assets

Simpan gambar tetap untuk konten email terkelola.

Kirim byte PNG, JPEG, GIF, atau WebP mentah dengan Content-Type yang sesuai dan X-File-Name opsional, atau JSON dengan base64, mime_type, dan filename. Keduanya menerima hingga 2 MiB byte gambar setelah dekode. URL respons dapat langsung dipakai dalam HTML; tidak dibuat registri tujuan terlokalisasi.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

X-Banger-Product-Id
header · wajib

Produk operasi eksplisit; harus sesuai dengan kredensial OAuth bercakupan produk.

  • valuestring

    format: "uuid"

Isi permintaan wajib

image/png

  • valuestring

    format: "binary"

image/jpeg

  • valuestring

    format: "binary"

image/gif

  • valuestring

    format: "binary"

image/webp

  • valuestring

    format: "binary"

application/json

  • valueobject

    Tidak ada properti tambahan

  • base64stringwajib

    Byte gambar

  • mime_typestringwajib

    enum: "image/png", "image/jpeg", "image/gif", "image/webp"

  • filenamestring

    maxLength: 200

Respons berhasil 201

Gambar terdaftar dengan URL publik tetap.

application/json

  • valueobject
  • dataobjectwajib

    Tidak ada properti tambahan

  • idstringwajib

    format: "uuid"

  • product_idstringwajib

    format: "uuid"

  • filenamestringwajib
  • mime_typestringwajib

    enum: "image/png", "image/jpeg", "image/gif", "image/webp"

  • size_bytesintegerwajib

    minimum: 1 · maximum: 2097152

  • sha256stringwajib

    pattern: "^[a-f0-9]{64}$"

  • created_atstringwajib

    format: "date-time"

  • public_urlstringwajib

    format: "uri"

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/assets' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'X-Banger-Product-Id: 00000000-0000-4000-8000-000000000001' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "base64": "example",
  "mime_type": "image/png",
  "filename": "example"
}'
GET/v1/workspaces/{workspaceId}/assets/{assetId}

Baca metadata dan URL publik satu gambar email produk.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

X-Banger-Product-Id
header · wajib

Produk operasi eksplisit; harus sesuai dengan kredensial OAuth bercakupan produk.

  • valuestring

    format: "uuid"

assetId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Metadata gambar produk.

application/json

  • valueobject
  • dataobjectwajib

    Tidak ada properti tambahan

  • idstringwajib

    format: "uuid"

  • product_idstringwajib

    format: "uuid"

  • filenamestringwajib
  • mime_typestringwajib

    enum: "image/png", "image/jpeg", "image/gif", "image/webp"

  • size_bytesintegerwajib

    minimum: 1 · maximum: 2097152

  • sha256stringwajib

    pattern: "^[a-f0-9]{64}$"

  • created_atstringwajib

    format: "date-time"

  • public_urlstringwajib

    format: "uri"

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/assets/{assetId}' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'X-Banger-Product-Id: 00000000-0000-4000-8000-000000000001'

Otomatisasi

POST/v1/workspaces/{workspaceId}/automation/jobs

createExecutionJob

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

Idempotency-Key
header · wajib
  • valuestring

    minLength: 16 · maxLength: 128

Isi permintaan wajib

application/json

  • valueobject

    Tidak ada properti tambahan

  • kindstringwajib

    minLength: 1 · maxLength: 100

  • approval_idstring

    format: "uuid"

  • capabilitiesarraywajib

    Kunci API hanya dapat mendelegasikan kemampuan yang sudah ada pada kunci itu.

    minItems: 1 · maxItems: 50

  • Setiap itemstring

    maxLength: 100

  • resourcesobjectwajib
  • Properti tambahanarray

    maxItems: 500

  • Setiap itemstring

    maxLength: 200

  • inputobjectwajib
  • Properti tambahanNilai apa pun

Respons berhasil 200

Pengulangan idempoten pekerjaan eksekusi terisolasi yang ada.

application/json

  • valueobject
  • dataobjectwajib
  • idstringwajib

    format: "uuid"

  • placement_idstringwajib

    format: "uuid"

  • placement_generationintegerwajib

    format: "int64"

  • kindstringwajib
  • requested_by_actor_idstringwajib
  • approval_idstring | null

    format: "uuid"

  • capability_scopesarraywajib
  • Setiap itemstring
  • resource_scopeobjectwajib
  • Properti tambahanarray
  • Setiap itemstring
  • statusstringwajib

    enum: "queued", "leased", "succeeded", "failed", "cancelled"

  • attempt_countintegerwajib
  • resulttidak ditentukan
  • error_codestring | null
  • created_atstringwajib

    format: "date-time"

  • updated_atstringwajib

    format: "date-time"

  • completed_atstring | null

    format: "date-time"

  • replayedbooleanwajib

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/automation/jobs' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Idempotency-Key: examplexxxxxxxxx' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "kind": "example",
  "approval_id": "00000000-0000-4000-8000-000000000001",
  "capabilities": [
    "example"
  ],
  "resources": {},
  "input": {}
}'
GET/v1/workspaces/{workspaceId}/automation/jobs/{jobId}

getExecutionJob

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

jobId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Status eksekusi kanonis saat ini.

application/json

  • valueobject
  • dataobjectwajib
  • idstringwajib

    format: "uuid"

  • placement_idstringwajib

    format: "uuid"

  • placement_generationintegerwajib

    format: "int64"

  • kindstringwajib
  • requested_by_actor_idstringwajib
  • approval_idstring | null

    format: "uuid"

  • capability_scopesarraywajib
  • Setiap itemstring
  • resource_scopeobjectwajib
  • Properti tambahanarray
  • Setiap itemstring
  • statusstringwajib

    enum: "queued", "leased", "succeeded", "failed", "cancelled"

  • attempt_countintegerwajib
  • resulttidak ditentukan
  • error_codestring | null
  • created_atstringwajib

    format: "date-time"

  • updated_atstringwajib

    format: "date-time"

  • completed_atstring | null

    format: "date-time"

  • replayedbooleanwajib

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/automation/jobs/{jobId}' \
  --header "Authorization: Bearer $BANGER_API_KEY"

Merek

POST/v1/workspaces/{workspaceId}/brand/discover

discoverProductBrand

Baca situs produk dan simpan saran merek yang ditemukan tanpa menimpa nilai merek eksplisit. Memerlukan cakupan tulis kampanye.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

product_id
query · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Respons berhasil.

application/json

  • valueobject
  • dataobjectwajib
  • brandobjectwajib
  • company_namestring

    maxLength: 160

  • logo_urlstring

    Ikon: simbol tersendiri, digunakan dalam ukuran kecil (footer email, formulir slide-in) dan sebagai header saat tidak ada logo teks.

    maxLength: 2000

  • wordmark_urlstring

    Logo teks: nama perusahaan dalam bentuk desainnya, ditampilkan sendiri di bagian atas setiap email.

    maxLength: 2000

  • website_urlstring

    maxLength: 2000

  • primary_colorstring

    maxLength: 7

  • accent_colorstring

    maxLength: 7

  • background_colorstring

    maxLength: 7

  • surface_colorstring

    maxLength: 7

  • text_colorstring

    maxLength: 7

  • muted_text_colorstring

    maxLength: 7

  • heading_font_familystring

    maxLength: 200

  • body_font_familystring

    maxLength: 200

  • tonestring

    maxLength: 1000

  • footer_addressstring

    maxLength: 500

  • email_stylestring

    maxLength: 20

  • sourcesobjectwajib
  • Properti tambahanstring

    enum: "product", "discovery", "default"

  • discovery_domainstring | nullwajib
  • missingarraywajib
  • Setiap itemstring
  • product_kindstringwajib

    enum: "product", "store", "brand", "newsletter", "company", "other"

  • discovery_statusstring | null
  • product_idstringwajib

    format: "uuid"

  • product_domainstring | nullwajib
  • reviewed_atstring | null

    format: "date-time"

  • discovery_attempted_atstring | null

    format: "date-time"

  • logo_candidatesarray

    Gambar logo yang ditemukan di situs produk (header, footer, logo yang dinyatakan), untuk penggantian sekali klik.

  • Setiap itemstring
  • mediaobjectwajib
  • art_base_urlstringwajib
  • hero_image_urlstring
  • email_fontsobjectwajib
  • headingobjectwajib
  • stackstringwajib
  • fontstringwajib
  • web_fontbooleanwajib
  • clientsarraywajib
  • Setiap itemobject
  • clientstringwajib

    Penumpukan lebih lanjut dihilangkan

  • labelstringwajib

    Penumpukan lebih lanjut dihilangkan

  • fontstringwajib

    Penumpukan lebih lanjut dihilangkan

  • web_fontbooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • fallbackbooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • bodyobjectwajib
  • stackstringwajib
  • fontstringwajib
  • web_fontbooleanwajib
  • clientsarraywajib
  • Setiap itemobject
  • clientstringwajib

    Penumpukan lebih lanjut dihilangkan

  • labelstringwajib

    Penumpukan lebih lanjut dihilangkan

  • fontstringwajib

    Penumpukan lebih lanjut dihilangkan

  • web_fontbooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • fallbackbooleanwajib

    Penumpukan lebih lanjut dihilangkan

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/brand/discover?product_id=00000000-0000-4000-8000-000000000001' \
  --header "Authorization: Bearer $BANGER_API_KEY"
GET/v1/workspaces/{workspaceId}/brand

getBrand

Kit merek produk yang diselesaikan beserta sumber tiap field.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Respons berhasil.

application/json

  • valueobject
  • dataobjectwajib
  • brandobjectwajib
  • company_namestring

    maxLength: 160

  • logo_urlstring

    Ikon: simbol tersendiri, digunakan dalam ukuran kecil (footer email, formulir slide-in) dan sebagai header saat tidak ada logo teks.

    maxLength: 2000

  • wordmark_urlstring

    Logo teks: nama perusahaan dalam bentuk desainnya, ditampilkan sendiri di bagian atas setiap email.

    maxLength: 2000

  • website_urlstring

    maxLength: 2000

  • primary_colorstring

    maxLength: 7

  • accent_colorstring

    maxLength: 7

  • background_colorstring

    maxLength: 7

  • surface_colorstring

    maxLength: 7

  • text_colorstring

    maxLength: 7

  • muted_text_colorstring

    maxLength: 7

  • heading_font_familystring

    maxLength: 200

  • body_font_familystring

    maxLength: 200

  • tonestring

    maxLength: 1000

  • footer_addressstring

    maxLength: 500

  • email_stylestring

    maxLength: 20

  • sourcesobjectwajib
  • Properti tambahanstring

    enum: "product", "discovery", "default"

  • discovery_domainstring | nullwajib
  • missingarraywajib
  • Setiap itemstring
  • product_kindstringwajib

    enum: "product", "store", "brand", "newsletter", "company", "other"

  • discovery_statusstring | null
  • product_idstringwajib

    format: "uuid"

  • product_domainstring | nullwajib
  • reviewed_atstring | null

    format: "date-time"

  • discovery_attempted_atstring | null

    format: "date-time"

  • logo_candidatesarray

    Gambar logo yang ditemukan di situs produk (header, footer, logo yang dinyatakan), untuk penggantian sekali klik.

  • Setiap itemstring
  • mediaobjectwajib
  • art_base_urlstringwajib
  • hero_image_urlstring
  • email_fontsobjectwajib
  • headingobjectwajib
  • stackstringwajib
  • fontstringwajib
  • web_fontbooleanwajib
  • clientsarraywajib
  • Setiap itemobject
  • clientstringwajib

    Penumpukan lebih lanjut dihilangkan

  • labelstringwajib

    Penumpukan lebih lanjut dihilangkan

  • fontstringwajib

    Penumpukan lebih lanjut dihilangkan

  • web_fontbooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • fallbackbooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • bodyobjectwajib
  • stackstringwajib
  • fontstringwajib
  • web_fontbooleanwajib
  • clientsarraywajib
  • Setiap itemobject
  • clientstringwajib

    Penumpukan lebih lanjut dihilangkan

  • labelstringwajib

    Penumpukan lebih lanjut dihilangkan

  • fontstringwajib

    Penumpukan lebih lanjut dihilangkan

  • web_fontbooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • fallbackbooleanwajib

    Penumpukan lebih lanjut dihilangkan

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/brand' \
  --header "Authorization: Bearer $BANGER_API_KEY"
PUT/v1/workspaces/{workspaceId}/brand

updateBrand

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan wajib

application/json

  • valuetidak ditentukan
  • anyOf 1object
  • company_namestring

    maxLength: 160

  • logo_urlstring

    Ikon: simbol tersendiri, digunakan dalam ukuran kecil (footer email, formulir slide-in) dan sebagai header saat tidak ada logo teks.

    maxLength: 2000

  • wordmark_urlstring

    Logo teks: nama perusahaan dalam bentuk desainnya, ditampilkan sendiri di bagian atas setiap email.

    maxLength: 2000

  • website_urlstring

    maxLength: 2000

  • primary_colorstring

    maxLength: 7

  • accent_colorstring

    maxLength: 7

  • background_colorstring

    maxLength: 7

  • surface_colorstring

    maxLength: 7

  • text_colorstring

    maxLength: 7

  • muted_text_colorstring

    maxLength: 7

  • heading_font_familystring

    maxLength: 200

  • body_font_familystring

    maxLength: 200

  • tonestring

    maxLength: 1000

  • footer_addressstring

    maxLength: 500

  • email_stylestring

    maxLength: 20

  • anyOf 2object
  • brandobjectwajib
  • company_namestring

    maxLength: 160

  • logo_urlstring

    Ikon: simbol tersendiri, digunakan dalam ukuran kecil (footer email, formulir slide-in) dan sebagai header saat tidak ada logo teks.

    maxLength: 2000

  • wordmark_urlstring

    Logo teks: nama perusahaan dalam bentuk desainnya, ditampilkan sendiri di bagian atas setiap email.

    maxLength: 2000

  • website_urlstring

    maxLength: 2000

  • primary_colorstring

    maxLength: 7

  • accent_colorstring

    maxLength: 7

  • background_colorstring

    maxLength: 7

  • surface_colorstring

    maxLength: 7

  • text_colorstring

    maxLength: 7

  • muted_text_colorstring

    maxLength: 7

  • heading_font_familystring

    maxLength: 200

  • body_font_familystring

    maxLength: 200

  • tonestring

    maxLength: 1000

  • footer_addressstring

    maxLength: 500

  • email_stylestring

    maxLength: 20

Respons berhasil 200

Respons berhasil.

application/json

  • valueobject
  • dataobjectwajib
  • brandobjectwajib
  • company_namestring

    maxLength: 160

  • logo_urlstring

    Ikon: simbol tersendiri, digunakan dalam ukuran kecil (footer email, formulir slide-in) dan sebagai header saat tidak ada logo teks.

    maxLength: 2000

  • wordmark_urlstring

    Logo teks: nama perusahaan dalam bentuk desainnya, ditampilkan sendiri di bagian atas setiap email.

    maxLength: 2000

  • website_urlstring

    maxLength: 2000

  • primary_colorstring

    maxLength: 7

  • accent_colorstring

    maxLength: 7

  • background_colorstring

    maxLength: 7

  • surface_colorstring

    maxLength: 7

  • text_colorstring

    maxLength: 7

  • muted_text_colorstring

    maxLength: 7

  • heading_font_familystring

    maxLength: 200

  • body_font_familystring

    maxLength: 200

  • tonestring

    maxLength: 1000

  • footer_addressstring

    maxLength: 500

  • email_stylestring

    maxLength: 20

  • sourcesobjectwajib
  • Properti tambahanstring

    enum: "product", "discovery", "default"

  • discovery_domainstring | nullwajib
  • missingarraywajib
  • Setiap itemstring
  • product_kindstringwajib

    enum: "product", "store", "brand", "newsletter", "company", "other"

  • discovery_statusstring | null
  • product_idstringwajib

    format: "uuid"

  • product_domainstring | nullwajib
  • reviewed_atstring | null

    format: "date-time"

  • discovery_attempted_atstring | null

    format: "date-time"

  • logo_candidatesarray

    Gambar logo yang ditemukan di situs produk (header, footer, logo yang dinyatakan), untuk penggantian sekali klik.

  • Setiap itemstring
  • mediaobjectwajib
  • art_base_urlstringwajib
  • hero_image_urlstring
  • email_fontsobjectwajib
  • headingobjectwajib
  • stackstringwajib
  • fontstringwajib
  • web_fontbooleanwajib
  • clientsarraywajib
  • Setiap itemobject
  • clientstringwajib

    Penumpukan lebih lanjut dihilangkan

  • labelstringwajib

    Penumpukan lebih lanjut dihilangkan

  • fontstringwajib

    Penumpukan lebih lanjut dihilangkan

  • web_fontbooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • fallbackbooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • bodyobjectwajib
  • stackstringwajib
  • fontstringwajib
  • web_fontbooleanwajib
  • clientsarraywajib
  • Setiap itemobject
  • clientstringwajib

    Penumpukan lebih lanjut dihilangkan

  • labelstringwajib

    Penumpukan lebih lanjut dihilangkan

  • fontstringwajib

    Penumpukan lebih lanjut dihilangkan

  • web_fontbooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • fallbackbooleanwajib

    Penumpukan lebih lanjut dihilangkan

Contoh curl

curl --request PUT --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/brand' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "company_name": "example",
  "logo_url": "example",
  "wordmark_url": "example",
  "website_url": "example",
  "primary_color": "example",
  "accent_color": "example",
  "background_color": "example",
  "surface_color": "example",
  "text_color": "example",
  "muted_text_color": "example",
  "heading_font_family": "example",
  "body_font_family": "example",
  "tone": "example",
  "footer_address": "example",
  "email_style": "example"
}'
PATCH/v1/workspaces/{workspaceId}/brand/patch

patchProductBrandFooter

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

X-Banger-Product-Id
header · wajib

Produk operasi eksplisit; harus sesuai dengan kredensial OAuth bercakupan produk.

  • valuestring

    format: "uuid"

Idempotency-Key
header · wajib
  • valuestring

    minLength: 1 · maxLength: 256

Isi permintaan wajib

application/json

  • valueobject

    Tidak ada properti tambahan

  • brandobjectwajib

    Tidak ada properti tambahan

  • company_namestring

    minLength: 0 · maxLength: 2000

  • logo_urlstring

    minLength: 0 · maxLength: 2000

  • wordmark_urlstring

    minLength: 0 · maxLength: 2000

  • website_urlstring

    minLength: 0 · maxLength: 2000

  • primary_colorstring

    minLength: 0 · maxLength: 2000

  • accent_colorstring

    minLength: 0 · maxLength: 2000

  • background_colorstring

    minLength: 0 · maxLength: 2000

  • surface_colorstring

    minLength: 0 · maxLength: 2000

  • text_colorstring

    minLength: 0 · maxLength: 2000

  • muted_text_colorstring

    minLength: 0 · maxLength: 2000

  • heading_font_familystring

    minLength: 0 · maxLength: 2000

  • body_font_familystring

    minLength: 0 · maxLength: 2000

  • tonestring

    minLength: 0 · maxLength: 2000

  • footer_addressstring

    minLength: 0 · maxLength: 2000

Respons berhasil 200

Pembacaan kembali kanonis atau tanda terima idempoten. Penerimaan penyedia adalah sent; delivered memerlukan peristiwa pengiriman dan tidak membuktikan masuk ke kotak masuk.

application/json

  • valueobject
  • dataobjectwajib
  • brandobjectwajib
  • company_namestring

    maxLength: 160

  • logo_urlstring

    Ikon: simbol tersendiri, digunakan dalam ukuran kecil (footer email, formulir slide-in) dan sebagai header saat tidak ada logo teks.

    maxLength: 2000

  • wordmark_urlstring

    Logo teks: nama perusahaan dalam bentuk desainnya, ditampilkan sendiri di bagian atas setiap email.

    maxLength: 2000

  • website_urlstring

    maxLength: 2000

  • primary_colorstring

    maxLength: 7

  • accent_colorstring

    maxLength: 7

  • background_colorstring

    maxLength: 7

  • surface_colorstring

    maxLength: 7

  • text_colorstring

    maxLength: 7

  • muted_text_colorstring

    maxLength: 7

  • heading_font_familystring

    maxLength: 200

  • body_font_familystring

    maxLength: 200

  • tonestring

    maxLength: 1000

  • footer_addressstring

    maxLength: 500

  • email_stylestring

    maxLength: 20

  • sourcesobjectwajib
  • Properti tambahanstring

    enum: "product", "discovery", "default"

  • discovery_domainstring | nullwajib
  • missingarraywajib
  • Setiap itemstring
  • product_kindstring

    enum: "product", "store", "brand", "newsletter", "company", "other"

  • discovery_statusstring | null
  • product_idstringwajib

    format: "uuid"

  • product_domainstring | null
  • reviewed_atstring | null

    format: "date-time"

  • discovery_attempted_atstring | null

    format: "date-time"

  • hero_image_urlstring | null
  • replayedbooleanwajib

Contoh curl

curl --request PATCH --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/brand/patch' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'X-Banger-Product-Id: 00000000-0000-4000-8000-000000000001' \
  --header 'Idempotency-Key: example' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "brand": {
    "company_name": "example",
    "logo_url": "example",
    "wordmark_url": "example",
    "website_url": "example",
    "primary_color": "example",
    "accent_color": "example",
    "background_color": "example",
    "surface_color": "example",
    "text_color": "example",
    "muted_text_color": "example",
    "heading_font_family": "example",
    "body_font_family": "example",
    "tone": "example",
    "footer_address": "example"
  }
}'

Perubahan

GET/v1/workspaces/{workspaceId}/changes

listChanges

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

after_revision
query · wajib
  • valueinteger

    format: "int64" · minimum: 0

limit
query
  • valueinteger

    minimum: 1 · maximum: 500 · default: 200

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Invalidasi berurutan setelah revisi klien.

application/json

  • valueobject
  • dataobjectwajib
  • current_revisionintegerwajib

    format: "int64"

  • changesarraywajib
  • Setiap itemobject
  • revisionintegerwajib

    format: "int64"

  • topicsarraywajib
  • Setiap itemstring

    enum: "mailboxes", "threads", "messages", "work", "drafts", "contacts", "campaigns", "deliverability"

  • mailbox_idsarray
  • Setiap itemstring

    format: "uuid"

  • created_atstringwajib

    format: "date-time"

  • has_morebooleanwajib

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/changes?after_revision=0&limit=200' \
  --header "Authorization: Bearer $BANGER_API_KEY"

Perintah

POST/v1/workspaces/{workspaceId}/commands

createCommand

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

Idempotency-Key
header · wajib
  • valuestring

    minLength: 16 · maxLength: 128

Isi permintaan wajib

application/json

  • valueobject
  • typestringwajib

    enum: "mark_read", "mark_unread", "archive", "unarchive", "trash", "restore", "spam", "not_spam", "star", "unstar", "add_label", "remove_label", "move", "assign", "set_work_status"

  • targetobjectwajib
  • thread_idstringwajib

    format: "uuid"

  • parametersobject
  • Properti tambahanNilai apa pun

Respons berhasil 202

Perintah dikomit dan masuk antrean eksekusi penyedia.

application/json

  • valueobject
  • dataobjectwajib
  • idstringwajib

    format: "uuid"

  • typestringwajib
  • statusstringwajib

    enum: "accepted", "executing", "succeeded", "failed"

  • workspace_revisionintegerwajib

    format: "int64"

  • created_atstringwajib

    format: "date-time"

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/commands' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Idempotency-Key: examplexxxxxxxxx' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "type": "mark_read",
  "target": {
    "thread_id": "00000000-0000-4000-8000-000000000001"
  },
  "parameters": {}
}'
GET/v1/workspaces/{workspaceId}/commands/{commandId}

getCommand

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

commandId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Status perintah penyedia yang persisten.

application/json

  • valueobject
  • dataobjectwajib
  • idstringwajib

    format: "uuid"

  • typestringwajib
  • statusstringwajib

    enum: "accepted", "executing", "succeeded", "failed"

  • workspace_revisionintegerwajib

    format: "int64"

  • created_atstringwajib

    format: "date-time"

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/commands/{commandId}' \
  --header "Authorization: Bearer $BANGER_API_KEY"

Kebijakan komunikasi

GET/v1/workspaces/{workspaceId}/communication-policy

Baca kebijakan konflik penerima, frekuensi, dan jendela pengiriman seluruh produk.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

X-Banger-Product-Id
header · wajib

Produk operasi eksplisit; harus sesuai dengan kredensial OAuth bercakupan produk.

  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Kebijakan komunikasi berversi.

application/json

  • valueobject
  • dataobjectwajib
  • versionintegerwajib
  • policyobjectwajib

    Tidak ada properti tambahan

  • conflictstringwajib

    enum: "defer", "discard"

  • minimumIntervalSecondsinteger

    minimum: 0 · maximum: 604800

  • capsarray

    maxItems: 8

  • Setiap itemobject

    Tidak ada properti tambahan

  • countintegerwajib

    minimum: 1

  • windowSecondsintegerwajib

    minimum: 1 · maximum: 2592000

  • windowobject

    Tidak ada properti tambahan

  • startstringwajib

    pattern: "^([01][0-9]|2[0-3]):[0-5][0-9]$"

  • endstringwajib

    pattern: "^([01][0-9]|2[0-3]):[0-5][0-9]$"

  • timeZonestringwajib
  • weekdaysarray

    maxItems: 7

  • Setiap iteminteger

    minimum: 0 · maximum: 6

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/communication-policy' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'X-Banger-Product-Id: 00000000-0000-4000-8000-000000000001'
PUT/v1/workspaces/{workspaceId}/communication-policy

Simpan kebijakan komunikasi produk dengan pemeriksaan versi optimistis.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

X-Banger-Product-Id
header · wajib

Produk operasi eksplisit; harus sesuai dengan kredensial OAuth bercakupan produk.

  • valuestring

    format: "uuid"

Isi permintaan wajib

application/json

  • valueobject

    Tidak ada properti tambahan

  • expected_versionintegerwajib

    minimum: 1

  • policyobjectwajib

    Tidak ada properti tambahan

  • conflictstringwajib

    enum: "defer", "discard"

  • minimumIntervalSecondsinteger

    minimum: 0 · maximum: 604800

  • capsarray

    maxItems: 8

  • Setiap itemobject

    Tidak ada properti tambahan

  • countintegerwajib

    minimum: 1

  • windowSecondsintegerwajib

    minimum: 1 · maximum: 2592000

  • windowobject

    Tidak ada properti tambahan

  • startstringwajib

    pattern: "^([01][0-9]|2[0-3]):[0-5][0-9]$"

  • endstringwajib

    pattern: "^([01][0-9]|2[0-3]):[0-5][0-9]$"

  • timeZonestringwajib
  • weekdaysarray

    maxItems: 7

  • Setiap iteminteger

    minimum: 0 · maximum: 6

Respons berhasil 200

Kebijakan berversi yang diperbarui.

application/json

  • valueobject
  • dataobjectwajib
  • versionintegerwajib
  • policyobjectwajib

    Tidak ada properti tambahan

  • conflictstringwajib

    enum: "defer", "discard"

  • minimumIntervalSecondsinteger

    minimum: 0 · maximum: 604800

  • capsarray

    maxItems: 8

  • Setiap itemobject

    Tidak ada properti tambahan

  • countintegerwajib

    minimum: 1

  • windowSecondsintegerwajib

    minimum: 1 · maximum: 2592000

  • windowobject

    Tidak ada properti tambahan

  • startstringwajib

    pattern: "^([01][0-9]|2[0-3]):[0-5][0-9]$"

  • endstringwajib

    pattern: "^([01][0-9]|2[0-3]):[0-5][0-9]$"

  • timeZonestringwajib
  • weekdaysarray

    maxItems: 7

  • Setiap iteminteger

    minimum: 0 · maximum: 6

Contoh curl

curl --request PUT --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/communication-policy' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'X-Banger-Product-Id: 00000000-0000-4000-8000-000000000001' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "expected_version": 1,
  "policy": {
    "conflict": "defer",
    "minimumIntervalSeconds": 0,
    "caps": [
      {
        "count": 1,
        "windowSeconds": 1
      }
    ],
    "window": {
      "start": "example",
      "end": "example",
      "timeZone": "example",
      "weekdays": [
        0
      ]
    }
  }
}'
POST/v1/workspaces/{workspaceId}/communication-policy/simulate

Simulasi kebijakan hanya baca untuk permintaan pengiriman tetap ke satu penerima.

Tidak mengubah reservasi atau memindahkan langkah Journey yang bergantung.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

X-Banger-Product-Id
header · wajib

Produk operasi eksplisit; harus sesuai dengan kredensial OAuth bercakupan produk.

  • valuestring

    format: "uuid"

Isi permintaan wajib

application/json

  • valueobject

    Tidak ada properti tambahan

  • policyobject

    Tidak ada properti tambahan

  • conflictstringwajib

    enum: "defer", "discard"

  • minimumIntervalSecondsinteger

    minimum: 0 · maximum: 604800

  • capsarray

    maxItems: 8

  • Setiap itemobject

    Tidak ada properti tambahan

  • countintegerwajib

    minimum: 1

  • windowSecondsintegerwajib

    minimum: 1 · maximum: 2592000

  • windowobject

    Tidak ada properti tambahan

  • startstringwajib

    pattern: "^([01][0-9]|2[0-3]):[0-5][0-9]$"

  • endstringwajib

    pattern: "^([01][0-9]|2[0-3]):[0-5][0-9]$"

  • timeZonestringwajib
  • weekdaysarray

    maxItems: 7

  • Setiap iteminteger

    minimum: 0 · maximum: 6

  • historyarray

    maxItems: 10000

  • Setiap itemstring

    format: "date-time"

  • requestsarraywajib

    maxItems: 1000

  • Setiap itemobject
  • idstringwajib
  • atstringwajib

    format: "date-time"

  • categorystringwajib

    enum: "urgent", "product", "promotional"

  • source_kindstringwajib

    enum: "journey", "broadcast"

  • expiresAtstring

    format: "date-time"

  • deliveryBlockedboolean

Respons berhasil 200

Linimasa keputusan kirim, tunda, atau buang per permintaan beserta alasannya.

application/json

  • valueobject
  • dataobjectwajib
  • policyobjectwajib

    Tidak ada properti tambahan

  • conflictstringwajib

    enum: "defer", "discard"

  • minimumIntervalSecondsinteger

    minimum: 0 · maximum: 604800

  • capsarray

    maxItems: 8

  • Setiap itemobject

    Tidak ada properti tambahan

  • countintegerwajib

    minimum: 1

  • windowSecondsintegerwajib

    minimum: 1 · maximum: 2592000

  • windowobject

    Tidak ada properti tambahan

  • startstringwajib

    pattern: "^([01][0-9]|2[0-3]):[0-5][0-9]$"

  • endstringwajib

    pattern: "^([01][0-9]|2[0-3]):[0-5][0-9]$"

  • timeZonestringwajib
  • weekdaysarray

    maxItems: 7

  • Setiap iteminteger

    minimum: 0 · maximum: 6

  • policy_versioninteger | nullwajib
  • timelinearraywajib
  • Setiap itemobject
  • idstringwajib
  • source_kindstringwajib

    enum: "journey", "broadcast"

  • requested_atstringwajib

    format: "date-time"

  • actionstringwajib

    enum: "send", "defer", "discard"

  • atstringwajib

    format: "date-time"

  • reasonstringwajib
  • scopestringwajib

    enum: "one_recipient_fixed_send_requests"

  • warningsarraywajib
  • Setiap itemstring

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/communication-policy/simulate' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'X-Banger-Product-Id: 00000000-0000-4000-8000-000000000001' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "policy": {
    "conflict": "defer",
    "minimumIntervalSeconds": 0,
    "caps": [
      {
        "count": 1,
        "windowSeconds": 1
      }
    ],
    "window": {
      "start": "example",
      "end": "example",
      "timeZone": "example",
      "weekdays": [
        0
      ]
    }
  },
  "history": [
    "2026-01-01T00:00:00Z"
  ],
  "requests": [
    {
      "id": "example",
      "at": "2026-01-01T00:00:00Z",
      "category": "urgent",
      "source_kind": "journey",
      "expiresAt": "2026-01-01T00:00:00Z",
      "deliveryBlocked": true
    }
  ]
}'

Pengaturan konten

GET/v1/workspaces/{workspaceId}/content-settings

Baca pengaturan lokal, fallback, zona waktu, glosarium, dan tinjauan tingkat produk.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

X-Banger-Product-Id
header · wajib

Produk operasi eksplisit; harus sesuai dengan kredensial OAuth bercakupan produk.

  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Pengaturan konten saat ini.

application/json

  • valueobject
  • dataobjectwajib
  • source_localestringwajib
  • configured_localesarraywajib
  • Setiap itemstring
  • fallback_chainarraywajib
  • Setiap itemstring
  • timezonestringwajib
  • glossaryobjectwajib
  • Properti tambahanstring
  • manual_translation_reviewbooleanwajib
  • versionintegerwajib

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/content-settings' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'X-Banger-Product-Id: 00000000-0000-4000-8000-000000000001'
PUT/v1/workspaces/{workspaceId}/content-settings

Simpan pengaturan konten tingkat produk dengan pemeriksaan versi optimistis.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

X-Banger-Product-Id
header · wajib

Produk operasi eksplisit; harus sesuai dengan kredensial OAuth bercakupan produk.

  • valuestring

    format: "uuid"

Isi permintaan wajib

application/json

  • valueobject

    Tidak ada properti tambahan

  • source_localestringwajib
  • configured_localesarraywajib
  • Setiap itemstring
  • fallback_chainarraywajib
  • Setiap itemstring
  • timezonestringwajib
  • glossaryobjectwajib
  • Properti tambahanstring
  • manual_translation_reviewbooleanwajib
  • expected_versionintegerwajib

    minimum: 0

Respons berhasil 200

Pengaturan konten tersimpan.

application/json

  • valueobject
  • dataobjectwajib
  • source_localestringwajib
  • configured_localesarraywajib
  • Setiap itemstring
  • fallback_chainarraywajib
  • Setiap itemstring
  • timezonestringwajib
  • glossaryobjectwajib
  • Properti tambahanstring
  • manual_translation_reviewbooleanwajib
  • versionintegerwajib

Contoh curl

curl --request PUT --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/content-settings' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'X-Banger-Product-Id: 00000000-0000-4000-8000-000000000001' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "source_locale": "example",
  "configured_locales": [
    "example"
  ],
  "fallback_chain": [
    "example"
  ],
  "timezone": "example",
  "glossary": {},
  "manual_translation_review": true,
  "expected_version": 0
}'

Keterkiriman

GET/v1/workspaces/{workspaceId}/deliverability

getDeliverabilitySummary

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

since
query
  • valuestring

    format: "date-time"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Respons berhasil.

application/json

  • valueobject
  • dataobjectwajib
  • counting_basisstring

    enum: "recipients", "events"

  • simulator_eventsinteger
  • sincestringwajib

    format: "date-time"

  • generated_atstringwajib

    format: "date-time"

  • totalsobjectwajib
  • sent_countinteger

    format: "int64"

  • delivered_countinteger

    format: "int64"

  • deferred_countinteger

    format: "int64"

  • bounced_countinteger

    format: "int64"

  • complained_countinteger

    format: "int64"

  • opened_countinteger

    format: "int64"

  • clicked_countinteger

    format: "int64"

  • unsubscribed_countinteger

    format: "int64"

  • failed_countinteger

    format: "int64"

  • suppressed_countinteger

    format: "int64"

  • last_event_atstring | null

    format: "date-time"

  • Properti tambahanNilai apa pun
  • time_seriesarraywajib
  • Setiap itemtidak ditentukan
  • allOf 1object
  • sent_countinteger

    format: "int64"

  • delivered_countinteger

    format: "int64"

  • deferred_countinteger

    format: "int64"

  • bounced_countinteger

    format: "int64"

  • complained_countinteger

    format: "int64"

  • opened_countinteger

    format: "int64"

  • clicked_countinteger

    format: "int64"

  • unsubscribed_countinteger

    format: "int64"

  • failed_countinteger

    format: "int64"

  • suppressed_countinteger

    format: "int64"

  • last_event_atstring | null

    format: "date-time"

  • Properti tambahanNilai apa pun
  • allOf 2object
  • bucketstringwajib

    format: "date"

  • providersarraywajib
  • Setiap itemtidak ditentukan
  • allOf 1object
  • sent_countinteger

    format: "int64"

  • delivered_countinteger

    format: "int64"

  • deferred_countinteger

    format: "int64"

  • bounced_countinteger

    format: "int64"

  • complained_countinteger

    format: "int64"

  • opened_countinteger

    format: "int64"

  • clicked_countinteger

    format: "int64"

  • unsubscribed_countinteger

    format: "int64"

  • failed_countinteger

    format: "int64"

  • suppressed_countinteger

    format: "int64"

  • last_event_atstring | null

    format: "date-time"

  • Properti tambahanNilai apa pun
  • allOf 2object
  • provider_connection_idstring | null

    format: "uuid"

  • providerstringwajib
  • display_namestringwajib
  • ownershipstringwajib
  • statusstringwajib
  • recipient_domainsarraywajib
  • Setiap itemtidak ditentukan
  • allOf 1object
  • sent_countinteger

    format: "int64"

  • delivered_countinteger

    format: "int64"

  • deferred_countinteger

    format: "int64"

  • bounced_countinteger

    format: "int64"

  • complained_countinteger

    format: "int64"

  • opened_countinteger

    format: "int64"

  • clicked_countinteger

    format: "int64"

  • unsubscribed_countinteger

    format: "int64"

  • failed_countinteger

    format: "int64"

  • suppressed_countinteger

    format: "int64"

  • last_event_atstring | null

    format: "date-time"

  • Properti tambahanNilai apa pun
  • allOf 2object
  • recipient_domainstringwajib
  • sending_streamsarraywajib
  • Setiap itemobject
  • idstringwajib

    format: "uuid"

  • domainstringwajib
  • stream_kindstringwajib
  • display_namestringwajib
  • statusstringwajib
  • status_reasonstring | null
  • provider_statusstring | null
  • required_recordsintegerwajib

    format: "int64"

  • verified_recordsintegerwajib

    format: "int64"

  • pending_recordsintegerwajib

    format: "int64"

  • error_recordsintegerwajib

    format: "int64"

  • last_checked_atstring | null

    format: "date-time"

  • feedback_pipelineobjectwajib

    Tidak ada properti tambahan

  • statusstringwajib

    enum: "healthy", "degraded", "unproven"

  • eligible_attemptsintegerwajib

    format: "int64"

  • unmatched_attemptsintegerwajib

    format: "int64"

  • last_receipt_atstring | null

    format: "date-time"

  • issuesarraywajib
  • Setiap itemobject
  • severitystringwajib

    enum: "warning", "critical"

  • codestringwajib
  • titlestringwajib
  • detailstringwajib
  • resource_kindstringwajib
  • resource_idstringwajib

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/deliverability?since=2026-01-01T00%3A00%3A00Z' \
  --header "Authorization: Bearer $BANGER_API_KEY"
GET/v1/workspaces/{workspaceId}/deliverability/resolutions

listDeliverabilityResolutions

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

since
query
  • valuestring

    format: "date-time"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Respons berhasil.

application/json

  • valueobject
  • dataarraywajib
  • Setiap itemobject
  • idstringwajib
  • reasonstringwajib

    enum: "complaint", "hard_bounce"

  • countintegerwajib
  • domainsarraywajib
  • Setiap itemstring
  • statusstringwajib
  • decidedAtstring | null

    format: "date-time"

  • titlestringwajib
  • explanationstringwajib
  • impactstringwajib

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/deliverability/resolutions?since=2026-01-01T00%3A00%3A00Z' \
  --header "Authorization: Bearer $BANGER_API_KEY"
POST/v1/workspaces/{workspaceId}/deliverability/resolutions

decideDeliverabilityResolution

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

since
query
  • valuestring

    format: "date-time"

Isi permintaan wajib

application/json

  • valueobject
  • idstringwajib

    minLength: 64 · maxLength: 64

  • decisionstringwajib

    enum: "approved", "rejected"

Respons berhasil 200

Respons berhasil.

application/json

  • valueobject
  • dataobjectwajib
  • statusstringwajib

    enum: "approved", "rejected"

  • approvalIdstringwajib

    format: "uuid"

  • replayedboolean
  • countinteger

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/deliverability/resolutions?since=2026-01-01T00%3A00%3A00Z' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "id": "examplexxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
  "decision": "approved"
}'

Dokumen

GET/v1/workspaces/{workspaceId}/documents

listDocuments

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

cursor
query
  • valuestring

    maxLength: 1024

limit
query
  • valueinteger

    minimum: 1 · maximum: 100 · default: 50

mailbox_id
query
  • valuestring

    format: "uuid"

q
query
  • valuestring

    maxLength: 512

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Respons berhasil.

application/json

  • valueobject
  • dataarraywajib
  • Setiap itemobject
  • idstringwajib

    format: "uuid"

  • message_idstringwajib

    format: "uuid"

  • mailbox_idstringwajib

    format: "uuid"

  • thread_idstringwajib

    format: "uuid"

  • filenamestringwajib
  • content_typestringwajib
  • size_bytesintegerwajib
  • sent_atstringwajib

    format: "date-time"

  • subjectstringwajib
  • pageobjectwajib
  • next_cursorstring
  • has_morebooleanwajib

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/documents?cursor=example&limit=50&mailbox_id=00000000-0000-4000-8000-000000000001&q=example' \
  --header "Authorization: Bearer $BANGER_API_KEY"

Pratinjau email

GET/v1/workspaces/{workspaceId}/email-preview

Render email tersimpan untuk iterasi visual tanpa mengirim

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

kind
query · wajib
  • valuestring

    enum: "template", "broadcast", "journey"

id
query · wajib
  • valuestring

    format: "uuid"

locale
query

Lokal BCP 47 opsional untuk pratinjau Kampanye terkelola.

  • valuestring

    maxLength: 64

variant
query

Kunci varian eksperimen Kampanye terkelola opsional.

  • valuestring

    maxLength: 40

x-banger-product-id
header · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Konten email tersimpan dan urutan Journey

application/json

  • valueobject
  • dataobjectwajib
  • resource_kindstringwajib

    enum: "template", "broadcast", "journey"

  • resource_idstringwajib

    format: "uuid"

  • product_idstringwajib

    format: "uuid"

  • namestringwajib
  • statusstringwajib
  • selected_email_keystring
  • itemsarraywajib
  • Setiap itemobject
  • keystringwajib
  • step_idstring

    Langkah Journey yang ditampilkan item ini, sebagai steps[].id di Journey tersimpan.

    format: "uuid"

  • kindstringwajib
  • namestringwajib
  • subjectstring
  • preview_textstring
  • body_htmlstring
  • body_textstring
  • detailstring
  • revision_idstring

    Revisi sumber Kampanye terkelola persis yang dirender.

    format: "uuid"

  • revision_statusstring

    Apakah revisi yang dirender adalah konten tersimpan belum terbit atau konten terbit.

    enum: "draft", "published"

  • sample_valuesbooleanwajib
  • image_assetsobject
  • Properti tambahanstring

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/email-preview?kind=template&id=00000000-0000-4000-8000-000000000001&locale=example&variant=example' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'x-banger-product-id: 00000000-0000-4000-8000-000000000001'

Peristiwa

POST/v1/workspaces/{workspaceId}/events

Kirim peristiwa khusus ke Journey produk.

Memerlukan automation:execute. Peristiwa tiba di webhook masuk implisit produk "Banger API events", dibuat pada peristiwa pertama dan dicantumkan bersama webhook lain agar Journey dapat menyebut connection_id-nya, atau pada connection_id, webhook masuk aktif lain dari produk yang sama. Lalu diproses persis seperti peristiwa yang dikirim ke URL webhook itu: Journey aktif yang pemicunya menyebut tipe peristiwa dan koneksi mendaftarkan orang pada email (atau audiens terkonfigurasinya), dan Journey yang tujuannya menyebutnya menghentikan eksekusi orang itu. Peristiwa dapat memulai Journey yang sudah disetujui, yang mengirim email. id peristiwa membuat panggilan idempoten: mengulang dengan isi sama mengembalikan duplicate true; memakai ulang untuk isi berbeda mengembalikan 409 webhook_event_id_reused.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

x-banger-product-id
header

Wajib dalam ruang kerja dengan beberapa produk aktif kecuali kunci API sudah mengikat produk.

  • valuestring

    format: "uuid"

Idempotency-Key
header

ID peristiwa jika isi tidak memiliki id. Salah satu dari keduanya wajib.

  • valuestring

    minLength: 1 · maxLength: 500

Isi permintaan wajib

application/json

  • valueobject

    Tidak ada properti tambahan

  • typestringwajib

    Nama peristiwa yang dicocokkan pemicu dan tujuan Journey, seperti signup.

    pattern: "^[A-Za-z0-9_.:-]{1,120}$"

  • idtidak ditentukan

    Pengenal peristiwa stabil dalam sistem pemanggil. Tanpanya, header Idempotency-Key menjadi id.

  • oneOf 1string

    minLength: 1 · maxLength: 500

  • oneOf 2number
  • emailstring

    Orang yang terkait dengan peristiwa.

    format: "email" · maxLength: 320

  • namestring

    Nama tampilan orang tersebut.

    maxLength: 200

  • occurred_atstring

    Waktu peristiwa terjadi. Default saat Banger menerimanya.

    format: "date-time"

  • attributesobject

    Nilai yang dapat dibaca kondisi Journey dan konten email. Nilai teks memuat paling banyak 500 karakter.

  • Properti tambahantidak ditentukan
  • oneOf 1string

    maxLength: 500

  • oneOf 2number
  • oneOf 3boolean
  • connection_idstring

    Koneksi webhook masuk aktif dari produk yang sama. Default webhook Banger API events.

    format: "uuid"

Respons berhasil 202

Peristiwa diterima, atau sudah diterima dengan id ini.

application/json

  • valueobject
  • dataobjectwajib
  • acceptedbooleanwajib

    const: true

  • duplicatebooleanwajib

    True jika id ini sudah diterima; tidak ada yang dijalankan lagi.

  • connection_idstringwajib

    Koneksi tempat peristiwa tiba.

    format: "uuid"

  • sequence_enrollments_createdintegerwajib

    minimum: 0

  • sequence_enrollments_stoppedintegerwajib

    Eksekusi yang dihentikan tujuan Journey.

    minimum: 0

  • sequence_matches_ignoredintegerwajib

    Journey cocok yang tidak dapat memakai peristiwa, misalnya Journey yang mendaftarkan orang saat peristiwa tidak menyebut email.

    minimum: 0

  • sequence_goals_predating_enrollmentintegerwajib

    Tujuan yang terjadi sebelum eksekusi yang akan dihentikan dimulai.

    minimum: 0

  • sequence_enrollments_rejectedarray

    Journey yang tidak mendaftarkan orang ini karena data peristiwa tidak dapat mengisi emailnya.

  • Setiap itemobject
  • journey_idstringwajib

    format: "uuid"

  • journey_namestringwajib
  • fieldsarraywajib
  • Setiap itemobject
  • namestringwajib

    Field kontak yang dibutuhkan email.

    Penumpukan lebih lanjut dihilangkan

  • problemstringwajib

    enum: "missing", "not_https"

    Penumpukan lebih lanjut dihilangkan

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/events' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'x-banger-product-id: 00000000-0000-4000-8000-000000000001' \
  --header 'Idempotency-Key: example' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "type": "example",
  "id": "example",
  "email": "person@example.com",
  "name": "example",
  "occurred_at": "2026-01-01T00:00:00Z",
  "attributes": {},
  "connection_id": "00000000-0000-4000-8000-000000000001"
}'

Eksperimen

GET/v1/workspaces/{workspaceId}/experiments

listExperiments

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Respons berhasil.

application/json

  • valueobject
  • dataarraywajib
  • Setiap itemobject
  • namestringwajib

    minLength: 1 · maxLength: 200

  • subject_kindstringwajib

    enum: "campaign", "sequence_step", "automation_rule"

  • subject_idstringwajib

    minLength: 1 · maxLength: 200

  • dimensionstringwajib

    enum: "subject", "design", "content", "from_name"

  • variantsarraywajib

    minItems: 2 · maxItems: 4

  • Setiap itemobject
  • keystring

    pattern: "^[a-z0-9][a-z0-9_-]{0,39}$"

  • labelstring

    maxLength: 120

  • subjectstring

    minLength: 1 · maxLength: 998

  • template_idstring

    format: "uuid"

  • contentobject
  • Properti tambahanstring

    Penumpukan lebih lanjut dihilangkan

  • from_namestring

    minLength: 1 · maxLength: 200

  • allocationarray
  • Setiap iteminteger

    minimum: 1 · maximum: 100

  • sample_percentinteger

    minimum: 5 · maximum: 100 · default: 100

  • primary_metricstring

    default: "human_click" · enum: "human_open", "human_click", "reply", "conversion"

  • min_sample_per_arminteger

    minimum: 10 · maximum: 100000 · default: 100

  • decisionobject
  • modestring

    enum: "manual", "auto"

  • after_hoursinteger

    minimum: 1 · maximum: 336

  • confidencenumber

    minimum: 0.8 · maximum: 0.99

  • guardrailsobject
  • max_complaint_ratenumber

    maximum: 1 · exclusiveMinimum: 0

  • max_unsubscribe_ratenumber

    maximum: 1 · exclusiveMinimum: 0

  • idstringwajib

    format: "uuid"

  • product_idstring

    format: "uuid"

  • statusstringwajib

    enum: "running", "decided", "stopped"

  • winner_keystring | null
  • decided_bystring | null
  • decision_basisstring | null

    enum: "confident", "deadline", "guardrail", "manual", null

  • decision_confidencenumber | null
  • decision_reasonstring | null
  • started_atstring

    format: "date-time"

  • decided_atstring | null

    format: "date-time"

  • created_by_actor_idstring
  • created_atstring

    format: "date-time"

  • updated_atstring

    format: "date-time"

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/experiments' \
  --header "Authorization: Bearer $BANGER_API_KEY"
POST/v1/workspaces/{workspaceId}/experiments

createExperiment

Mulai uji A/B pada Kampanye, langkah Journey, atau aturan otomatisasi.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan wajib

application/json

  • valueobject

    Payload varian harus sesuai dimension: subject, template_id (desain), content, atau from_name. Kunci harus unik dan tidak boleh holdback. Alokasi harus memiliki persentase per varian dan total 100; alokasi yang dihilangkan dibagi merata.

  • namestringwajib

    minLength: 1 · maxLength: 200

  • subject_kindstringwajib

    enum: "campaign", "sequence_step", "automation_rule"

  • subject_idstringwajib

    minLength: 1 · maxLength: 200

  • dimensionstringwajib

    enum: "subject", "design", "content", "from_name"

  • variantsarraywajib

    minItems: 2 · maxItems: 4

  • Setiap itemobject
  • keystring

    pattern: "^[a-z0-9][a-z0-9_-]{0,39}$"

  • labelstring

    maxLength: 120

  • subjectstring

    minLength: 1 · maxLength: 998

  • template_idstring

    format: "uuid"

  • contentobject
  • Properti tambahanstring
  • from_namestring

    minLength: 1 · maxLength: 200

  • allocationarray
  • Setiap iteminteger

    minimum: 1 · maximum: 100

  • sample_percentinteger

    minimum: 5 · maximum: 100 · default: 100

  • primary_metricstring

    default: "human_click" · enum: "human_open", "human_click", "reply", "conversion"

  • min_sample_per_arminteger

    minimum: 10 · maximum: 100000 · default: 100

  • decisionobject
  • modestring

    enum: "manual", "auto"

  • after_hoursinteger

    minimum: 1 · maximum: 336

  • confidencenumber

    minimum: 0.8 · maximum: 0.99

  • guardrailsobject
  • max_complaint_ratenumber

    maximum: 1 · exclusiveMinimum: 0

  • max_unsubscribe_ratenumber

    maximum: 1 · exclusiveMinimum: 0

Respons berhasil 201

Respons berhasil.

application/json

  • valueobject
  • dataobjectwajib
  • namestringwajib

    minLength: 1 · maxLength: 200

  • subject_kindstringwajib

    enum: "campaign", "sequence_step", "automation_rule"

  • subject_idstringwajib

    minLength: 1 · maxLength: 200

  • dimensionstringwajib

    enum: "subject", "design", "content", "from_name"

  • variantsarraywajib

    minItems: 2 · maxItems: 4

  • Setiap itemobject
  • keystring

    pattern: "^[a-z0-9][a-z0-9_-]{0,39}$"

  • labelstring

    maxLength: 120

  • subjectstring

    minLength: 1 · maxLength: 998

  • template_idstring

    format: "uuid"

  • contentobject
  • Properti tambahanstring
  • from_namestring

    minLength: 1 · maxLength: 200

  • allocationarray
  • Setiap iteminteger

    minimum: 1 · maximum: 100

  • sample_percentinteger

    minimum: 5 · maximum: 100 · default: 100

  • primary_metricstring

    default: "human_click" · enum: "human_open", "human_click", "reply", "conversion"

  • min_sample_per_arminteger

    minimum: 10 · maximum: 100000 · default: 100

  • decisionobject
  • modestring

    enum: "manual", "auto"

  • after_hoursinteger

    minimum: 1 · maximum: 336

  • confidencenumber

    minimum: 0.8 · maximum: 0.99

  • guardrailsobject
  • max_complaint_ratenumber

    maximum: 1 · exclusiveMinimum: 0

  • max_unsubscribe_ratenumber

    maximum: 1 · exclusiveMinimum: 0

  • idstringwajib

    format: "uuid"

  • product_idstring

    format: "uuid"

  • statusstringwajib

    enum: "running", "decided", "stopped"

  • winner_keystring | null
  • decided_bystring | null
  • decision_basisstring | null

    enum: "confident", "deadline", "guardrail", "manual", null

  • decision_confidencenumber | null
  • decision_reasonstring | null
  • started_atstring

    format: "date-time"

  • decided_atstring | null

    format: "date-time"

  • created_by_actor_idstring
  • created_atstring

    format: "date-time"

  • updated_atstring

    format: "date-time"

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/experiments' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "name": "example",
  "subject_kind": "campaign",
  "subject_id": "example",
  "dimension": "subject",
  "variants": [
    {
      "key": "example",
      "label": "example",
      "subject": "example",
      "template_id": "00000000-0000-4000-8000-000000000001",
      "content": {},
      "from_name": "example"
    }
  ],
  "allocation": [
    1
  ],
  "sample_percent": 100,
  "primary_metric": "human_click",
  "min_sample_per_arm": 100,
  "decision": {
    "mode": "manual",
    "after_hours": 1,
    "confidence": 0.8
  },
  "guardrails": {
    "max_complaint_rate": 1,
    "max_unsubscribe_rate": 1
  }
}'
GET/v1/workspaces/{workspaceId}/experiments/{experimentId}

getExperiment

Eksperimen dengan hasil tiap varian dan pemenang yang disarankan.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

experimentId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Respons berhasil.

application/json

  • valueobject
  • datatidak ditentukanwajib
  • allOf 1object
  • namestringwajib

    minLength: 1 · maxLength: 200

  • subject_kindstringwajib

    enum: "campaign", "sequence_step", "automation_rule"

  • subject_idstringwajib

    minLength: 1 · maxLength: 200

  • dimensionstringwajib

    enum: "subject", "design", "content", "from_name"

  • variantsarraywajib

    minItems: 2 · maxItems: 4

  • Setiap itemobject
  • keystring

    pattern: "^[a-z0-9][a-z0-9_-]{0,39}$"

  • labelstring

    maxLength: 120

  • subjectstring

    minLength: 1 · maxLength: 998

  • template_idstring

    format: "uuid"

  • contentobject
  • Properti tambahanstring

    Penumpukan lebih lanjut dihilangkan

  • from_namestring

    minLength: 1 · maxLength: 200

  • allocationarray
  • Setiap iteminteger

    minimum: 1 · maximum: 100

  • sample_percentinteger

    minimum: 5 · maximum: 100 · default: 100

  • primary_metricstring

    default: "human_click" · enum: "human_open", "human_click", "reply", "conversion"

  • min_sample_per_arminteger

    minimum: 10 · maximum: 100000 · default: 100

  • decisionobject
  • modestring

    enum: "manual", "auto"

  • after_hoursinteger

    minimum: 1 · maximum: 336

  • confidencenumber

    minimum: 0.8 · maximum: 0.99

  • guardrailsobject
  • max_complaint_ratenumber

    maximum: 1 · exclusiveMinimum: 0

  • max_unsubscribe_ratenumber

    maximum: 1 · exclusiveMinimum: 0

  • idstringwajib

    format: "uuid"

  • product_idstring

    format: "uuid"

  • statusstringwajib

    enum: "running", "decided", "stopped"

  • winner_keystring | null
  • decided_bystring | null
  • decision_basisstring | null

    enum: "confident", "deadline", "guardrail", "manual", null

  • decision_confidencenumber | null
  • decision_reasonstring | null
  • started_atstring

    format: "date-time"

  • decided_atstring | null

    format: "date-time"

  • created_by_actor_idstring
  • created_atstring

    format: "date-time"

  • updated_atstring

    format: "date-time"

  • allOf 2object
  • resultsarraywajib
  • Setiap itemobject
  • keystring
  • labelstring
  • sendsinteger
  • deliveredinteger
  • human_opensinteger
  • human_clicksinteger
  • repliesinteger
  • conversionsinteger
  • unsubscribesinteger
  • complaintsinteger
  • ratenumber
  • lift_vs_firstnumber | null
  • confidence_vs_firstnumber | null
  • sample_okboolean
  • guardrail_trippedboolean
  • suggested_winnerobject
  • keystringwajib
  • reasonstringwajib
  • basisstringwajib

    enum: "confident", "deadline", "guardrail"

  • confidencenumber | nullwajib
  • sample_okbooleanwajib

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/experiments/{experimentId}' \
  --header "Authorization: Bearer $BANGER_API_KEY"
POST/v1/workspaces/{workspaceId}/experiments/{experimentId}/decide

decideExperiment

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

experimentId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan wajib

application/json

  • valueobject
  • winner_keystringwajib

    minLength: 1 · maxLength: 40

  • reasonstring

    maxLength: 500

Respons berhasil 200

Respons berhasil.

application/json

  • valueobject
  • dataobjectwajib
  • namestringwajib

    minLength: 1 · maxLength: 200

  • subject_kindstringwajib

    enum: "campaign", "sequence_step", "automation_rule"

  • subject_idstringwajib

    minLength: 1 · maxLength: 200

  • dimensionstringwajib

    enum: "subject", "design", "content", "from_name"

  • variantsarraywajib

    minItems: 2 · maxItems: 4

  • Setiap itemobject
  • keystring

    pattern: "^[a-z0-9][a-z0-9_-]{0,39}$"

  • labelstring

    maxLength: 120

  • subjectstring

    minLength: 1 · maxLength: 998

  • template_idstring

    format: "uuid"

  • contentobject
  • Properti tambahanstring
  • from_namestring

    minLength: 1 · maxLength: 200

  • allocationarray
  • Setiap iteminteger

    minimum: 1 · maximum: 100

  • sample_percentinteger

    minimum: 5 · maximum: 100 · default: 100

  • primary_metricstring

    default: "human_click" · enum: "human_open", "human_click", "reply", "conversion"

  • min_sample_per_arminteger

    minimum: 10 · maximum: 100000 · default: 100

  • decisionobject
  • modestring

    enum: "manual", "auto"

  • after_hoursinteger

    minimum: 1 · maximum: 336

  • confidencenumber

    minimum: 0.8 · maximum: 0.99

  • guardrailsobject
  • max_complaint_ratenumber

    maximum: 1 · exclusiveMinimum: 0

  • max_unsubscribe_ratenumber

    maximum: 1 · exclusiveMinimum: 0

  • idstringwajib

    format: "uuid"

  • product_idstring

    format: "uuid"

  • statusstringwajib

    enum: "running", "decided", "stopped"

  • winner_keystring | null
  • decided_bystring | null
  • decision_basisstring | null

    enum: "confident", "deadline", "guardrail", "manual", null

  • decision_confidencenumber | null
  • decision_reasonstring | null
  • started_atstring

    format: "date-time"

  • decided_atstring | null

    format: "date-time"

  • created_by_actor_idstring
  • created_atstring

    format: "date-time"

  • updated_atstring

    format: "date-time"

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/experiments/{experimentId}/decide' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "winner_key": "example",
  "reason": "example"
}'
POST/v1/workspaces/{workspaceId}/experiments/{experimentId}/stop

stopExperiment

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

experimentId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Respons berhasil.

application/json

  • valueobject
  • dataobjectwajib
  • namestringwajib

    minLength: 1 · maxLength: 200

  • subject_kindstringwajib

    enum: "campaign", "sequence_step", "automation_rule"

  • subject_idstringwajib

    minLength: 1 · maxLength: 200

  • dimensionstringwajib

    enum: "subject", "design", "content", "from_name"

  • variantsarraywajib

    minItems: 2 · maxItems: 4

  • Setiap itemobject
  • keystring

    pattern: "^[a-z0-9][a-z0-9_-]{0,39}$"

  • labelstring

    maxLength: 120

  • subjectstring

    minLength: 1 · maxLength: 998

  • template_idstring

    format: "uuid"

  • contentobject
  • Properti tambahanstring
  • from_namestring

    minLength: 1 · maxLength: 200

  • allocationarray
  • Setiap iteminteger

    minimum: 1 · maximum: 100

  • sample_percentinteger

    minimum: 5 · maximum: 100 · default: 100

  • primary_metricstring

    default: "human_click" · enum: "human_open", "human_click", "reply", "conversion"

  • min_sample_per_arminteger

    minimum: 10 · maximum: 100000 · default: 100

  • decisionobject
  • modestring

    enum: "manual", "auto"

  • after_hoursinteger

    minimum: 1 · maximum: 336

  • confidencenumber

    minimum: 0.8 · maximum: 0.99

  • guardrailsobject
  • max_complaint_ratenumber

    maximum: 1 · exclusiveMinimum: 0

  • max_unsubscribe_ratenumber

    maximum: 1 · exclusiveMinimum: 0

  • idstringwajib

    format: "uuid"

  • product_idstring

    format: "uuid"

  • statusstringwajib

    enum: "running", "decided", "stopped"

  • winner_keystring | null
  • decided_bystring | null
  • decision_basisstring | null

    enum: "confident", "deadline", "guardrail", "manual", null

  • decision_confidencenumber | null
  • decision_reasonstring | null
  • started_atstring

    format: "date-time"

  • decided_atstring | null

    format: "date-time"

  • created_by_actor_idstring
  • created_atstring

    format: "date-time"

  • updated_atstring

    format: "date-time"

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/experiments/{experimentId}/stop' \
  --header "Authorization: Bearer $BANGER_API_KEY"

Umpan balik

GET/v1/workspaces/{workspaceId}/feedback

Periksa ketersediaan pengiriman umpan balik pelanggan

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Ketersediaan umpan balik untuk ruang kerja terautentikasi.

application/json

  • valueobject
  • dataobject
  • availablebooleanwajib

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/feedback' \
  --header "Authorization: Bearer $BANGER_API_KEY"
POST/v1/workspaces/{workspaceId}/feedback

Laporkan bug, kirim umpan balik, atau usulkan fitur

Buat satu isu Linear internal dan kirim peringatan tim Slack. Ulangi pengajuan yang terputus dengan submission_id yang sama.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

x-banger-product-id
header
  • valuestring

    format: "uuid"

Isi permintaan wajib

application/json

  • valueobject

    Tidak ada properti tambahan

  • kindstringwajib

    enum: "bug", "feedback", "feature"

  • titlestringwajib

    minLength: 1 · maxLength: 160

  • descriptionstringwajib

    minLength: 1 · maxLength: 10000

  • submission_idstringwajib

    format: "uuid"

  • attachment_idsarray

    Unggahan privat selesai milik pelapor dan ruang kerja ini. Unggahan yang belum diajukan kedaluwarsa setelah 24 jam; file hanya dapat dimiliki satu laporan.

    maxItems: 5 · uniqueItems: true

  • Setiap itemstring

    format: "uuid"

Respons berhasil 201

Isu Linear dan peringatan Slack selesai, termasuk pengulangan idempoten.

application/json

  • valueobject
  • dataobject
  • idstringwajib

    format: "uuid"

  • statusstringwajib

    enum: "submitted"

  • linearIssueIdentifierstring | null
  • linearIssueUrlstring | null

    format: "uri"

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/feedback' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'x-banger-product-id: 00000000-0000-4000-8000-000000000001' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "kind": "bug",
  "title": "example",
  "description": "example",
  "submission_id": "00000000-0000-4000-8000-000000000001",
  "attachment_ids": [
    "00000000-0000-4000-8000-000000000001"
  ]
}'
POST/v1/workspaces/{workspaceId}/feedback/attachments

Unggah tangkapan layar atau video ke penyimpanan Linear privat

Unggahan biner mendukung hingga 25 MiB. Unggahan JSON base64 hingga 2 MiB. Gunakan ulang attachment_id saat mengulang file yang sama. Memerlukan automation:execute untuk kunci API.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

attachment_id
query

Wajib untuk unggahan biner; UUID per file.

  • valuestring

    format: "uuid"

x-banger-filename
header

Nama file berkode URI, wajib untuk unggahan biner.

  • valuestring

Isi permintaan wajib

image/png

  • valuestring

    format: "binary"

image/jpeg

  • valuestring

    format: "binary"

image/gif

  • valuestring

    format: "binary"

image/webp

  • valuestring

    format: "binary"

video/mp4

  • valuestring

    format: "binary"

video/webm

  • valuestring

    format: "binary"

video/quicktime

  • valuestring

    format: "binary"

application/json

  • valueobject
  • attachment_idstringwajib

    format: "uuid"

  • filenamestringwajib

    minLength: 1 · maxLength: 200

  • mime_typestringwajib

    enum: "image/png", "image/jpeg", "image/gif", "image/webp", "video/mp4", "video/webm", "video/quicktime"

  • base64stringwajib

    minLength: 4 · maxLength: 2796204

Respons berhasil 200

Lampiran selesai yang ada.

application/json

  • valueobject
  • dataobjectwajib
  • attachment_idstringwajib

    format: "uuid"

  • statusstringwajib

    enum: "ready"

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/feedback/attachments?attachment_id=00000000-0000-4000-8000-000000000001' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'x-banger-filename: example' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "attachment_id": "00000000-0000-4000-8000-000000000001",
  "filename": "example",
  "mime_type": "image/png",
  "base64": "example"
}'
POST/v1/workspaces/{workspaceId}/feedback/attachments/prepare

Siapkan unggahan media langsung dari agen atau server

Kembalikan URL PUT bertanda tangan sementara dan header unggahan wajib. Kirim byte file dengan header itu tanpa kredensial Banger, lalu selesaikan unggahan. Jangan unggah langsung dari browser; gunakan proxy biner terautentikasi. Hingga 30 unggahan dan 250 MiB per pelapor per hari.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan wajib

application/json

  • valueobject
  • attachment_idstringwajib

    format: "uuid"

  • filenamestringwajib

    minLength: 1 · maxLength: 200

  • mime_typestringwajib

    enum: "image/png", "image/jpeg", "image/gif", "image/webp", "video/mp4", "video/webm", "video/quicktime"

  • size_bytesintegerwajib

    minimum: 1 · maximum: 26214400

Respons berhasil 201

Saat mengunggah, data berisi attachment_id, status, dan upload dengan url bertanda tangan, method PUT, serta headers. Jika ready, tidak perlu unggahan.

application/json

  • valueobject
  • dataobjectwajib
  • attachment_idstringwajib

    format: "uuid"

  • filenamestringwajib
  • mime_typestringwajib
  • size_bytesintegerwajib
  • statusstringwajib

    enum: "ready", "uploading"

  • uploadobject
  • urlstringwajib
  • methodstringwajib

    enum: "PUT"

  • headersobjectwajib
  • Properti tambahanstring

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/feedback/attachments/prepare' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "attachment_id": "00000000-0000-4000-8000-000000000001",
  "filename": "example",
  "mime_type": "image/png",
  "size_bytes": 1
}'
POST/v1/workspaces/{workspaceId}/feedback/attachments/{attachmentId}/complete

Verifikasi unggahan media langsung sebelum melampirkannya ke umpan balik

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

attachmentId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

data berisi attachment_id dan status ready. Penyelesaian bersifat idempoten.

application/json

  • valueobject
  • dataobjectwajib
  • attachment_idstringwajib

    format: "uuid"

  • statusstringwajib

    enum: "ready"

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/feedback/attachments/{attachmentId}/complete' \
  --header "Authorization: Bearer $BANGER_API_KEY"

Beranda

GET/v1/workspaces/{workspaceId}/home

Muat Beranda penyiapan atau operasional untuk produk terpilih.

Keanggotaan, validitas produk, proyeksi penyiapan, ringkasan operasi, dan aktivitas terbaru dibaca dalam satu pernyataan database yang terisolasi per tenant.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Antarmuka Beranda produk terpilih.

application/json

  • valueobject
  • dataobjectwajib

    Tidak ada properti tambahan

  • setupobjectwajib

    Tidak ada properti tambahan

  • stagestringwajib

    enum: "domain", "mailboxes", "journeys", "broadcast", "complete"

  • domainobjectwajib

    Tidak ada properti tambahan

  • statusstringwajib

    enum: "todo", "in_progress", "complete", "not_relevant"

  • detailstringwajib
  • mailboxesobjectwajib

    Tidak ada properti tambahan

  • statusstringwajib

    enum: "todo", "in_progress", "complete", "not_relevant"

  • detailstringwajib
  • journeysobjectwajib

    Tidak ada properti tambahan

  • statusstringwajib

    enum: "todo", "in_progress", "complete", "not_relevant"

  • detailstringwajib
  • broadcastobjectwajib

    Tidak ada properti tambahan

  • statusstringwajib

    enum: "todo", "in_progress", "complete", "not_relevant"

  • detailstringwajib
  • needsYouobjectwajib

    Tidak ada properti tambahan

  • undecidedApprovalsintegerwajib

    minimum: 0

  • oldestApprovalsarraywajib
  • Setiap itemobject
  • idstringwajib

    format: "uuid"

  • summarystringwajib
  • actionKindstringwajib
  • createdAtstringwajib

    format: "date-time"

  • failedSteps24harraywajib
  • Setiap itemobject
  • journeyIdstringwajib

    format: "uuid"

  • journeyNamestringwajib
  • countintegerwajib

    minimum: 0

  • deliverabilityAlertsarraywajib
  • Setiap itemobject
  • kindstringwajib

    enum: "bounce_rate", "complaint_rate", "dns_drift", "lane_paused"

  • detailstringwajib
  • destinationstringwajib

    enum: "deliverability", "domains"

  • unreadInboundarraywajib
  • Setiap itemobject
  • mailboxIdstringwajib

    format: "uuid"

  • addressstringwajib
  • countintegerwajib

    minimum: 0

  • splitsReadyToDecidearraywajib
  • Setiap itemobject
  • journeyIdstringwajib

    format: "uuid"

  • journeyNamestringwajib
  • unclaimedJourneysintegerwajib

    minimum: 0

  • journeysobjectwajib

    Tidak ada properti tambahan

  • activeintegerwajib

    minimum: 0

  • entered30dintegerwajib

    minimum: 0

  • sent30dintegerwajib

    minimum: 0

  • toparraywajib
  • Setiap itemtidak ditentukan
  • allOf 1object

    Tidak ada properti tambahan

  • namestringwajib

    minLength: 1 · maxLength: 200

    Penumpukan lebih lanjut dihilangkan

  • descriptionstring

    maxLength: 2000

    Penumpukan lebih lanjut dihilangkan

  • mailbox_idstring

    Pengirim yang ada. Hilangkan untuk memprioritaskan pengirim onboarding, lalu kotak surat khusus aktif, lalu yang dihosting. Pengirim tersimpan dan eksplisit tidak berubah.

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • from_local_partstring

    maxLength: 64 · pattern: "^[a-z0-9][a-z0-9._+-]{0,62}$"

    Penumpukan lebih lanjut dihilangkan

  • triggerobjectwajib

    Penumpukan lebih lanjut dihilangkan

  • audienceobject

    Penumpukan lebih lanjut dihilangkan

  • goalobject

    Tidak ada properti tambahan

    Penumpukan lebih lanjut dihilangkan

  • exitobject

    Tidak ada properti tambahan

    Penumpukan lebih lanjut dihilangkan

  • approval_modestring

    enum: "policy", "required"

    Penumpukan lebih lanjut dihilangkan

  • apiobject

    Penumpukan lebih lanjut dihilangkan

  • managed_contentobject

    Pintasan khusus pembuatan: simpan secara atomik draf email terkelola sumber dan Journey yang langkah emailnya merujuk draf itu. Bahasa target yang belum ada masuk antrean terjemahan gratis; ini tidak menerbitkan atau mengaktifkan Journey.

    Tidak ada properti tambahan

    Penumpukan lebih lanjut dihilangkan

  • stepsarraywajib

    maxItems: 100

    Penumpukan lebih lanjut dihilangkan

  • allOf 2object
  • idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • statusstringwajib

    enum: "draft", "discovered", "active", "paused", "archived"

    Penumpukan lebih lanjut dihilangkan

  • api_keystring | null

    Penumpukan lebih lanjut dihilangkan

  • content_modestring | null

    enum: "code", "managed", null

    Penumpukan lebih lanjut dihilangkan

  • identitystring | null

    Penumpukan lebih lanjut dihilangkan

  • identity_aliasesarray

    Penumpukan lebih lanjut dihilangkan

  • samplesarray

    Penumpukan lebih lanjut dihilangkan

  • versionintegerwajib

    minimum: 1

    Penumpukan lebih lanjut dihilangkan

  • statsobjectwajib

    Penumpukan lebih lanjut dihilangkan

  • stepStatsarray

    Penumpukan lebih lanjut dihilangkan

  • armStatsarray

    Penumpukan lebih lanjut dihilangkan

  • healthobjectwajib

    Penumpukan lebih lanjut dihilangkan

  • indicatorobjectwajib

    Penumpukan lebih lanjut dihilangkan

  • sparklinearraywajib

    Penumpukan lebih lanjut dihilangkan

  • activated_atstring | null

    format: "date-time"

    Penumpukan lebih lanjut dihilangkan

  • updated_atstring

    format: "date-time"

    Penumpukan lebih lanjut dihilangkan

  • last_activity_atstring | null

    format: "date-time"

    Penumpukan lebih lanjut dihilangkan

  • broadcastobjectwajib

    Tidak ada properti tambahan

  • nextobject
  • idstringwajib

    format: "uuid"

  • namestringwajib
  • scheduledAtstringwajib

    format: "date-time"

  • recipientsintegerwajib

    minimum: 0

  • lastobject
  • idstringwajib

    format: "uuid"

  • namestringwajib
  • sentAtstringwajib

    format: "date-time"

  • deliveredintegerwajib

    minimum: 0

  • humanOpenedintegerwajib

    minimum: 0

  • repliedintegerwajib

    minimum: 0

  • recentLogsarraywajib
  • Setiap itemobject
  • idstringwajib

    format: "uuid"

  • directionstringwajib

    enum: "out", "in"

  • atstringwajib

    format: "date-time"

  • mailbox_idstring | nullwajib

    Null untuk pengiriman yang tidak keluar melalui kotak surat, seperti API dan SMTP.

    format: "uuid"

  • thread_idstring

    format: "uuid"

  • send_intent_idstring

    format: "uuid"

  • traffic_classstring

    enum: "mailbox", "product", "broadcast"

  • fromstringwajib
  • toarraywajib
  • Setiap itemstring
  • recipient_countintegerwajib

    minimum: 0

  • subjectstringwajib
  • originobjectwajib

    Tidak ada properti tambahan

  • kindstringwajib

    enum: "journey", "broadcast", "mailbox", "api", "agent", "smtp"

  • idstring
  • namestring
  • statusstringwajib

    enum: "queued", "sent", "delivered", "bounced", "complained", "opened", "clicked", "replied", "received", "failed", "rejected"

  • rejectionobject

    Alasan Banger menolak percobaan SMTP dan balasan yang diterima klien.

  • refstringwajib

    pattern: "^smtp_[0-9a-z]{16}$"

  • kindstringwajib

    enum: "login_failed", "recipient_refused", "message_rejected"

  • replystringwajib

    Balasan SMTP lengkap, misalnya `550 5.7.1 ...`.

  • reply_codeintegerwajib

    minimum: 400 · maximum: 599

  • enhanced_codestringwajib
  • reasonstringwajib
  • messagestringwajib
  • key_prefixstringwajib

    Awalan publik `bgr_` dari kunci API yang dipakai klien.

  • client_ipstring
  • portinteger
  • tlsstring
  • attemptsintegerwajib

    Login gagal pada satu kunci digabung menjadi satu baris per sepuluh menit.

    minimum: 1

  • last_atstringwajib

    format: "date-time"

  • detailobject
  • Properti tambahanNilai apa pun
  • volumeobjectwajib
  • sentPeriodintegerwajib

    minimum: 0

  • limitintegerwajib

    minimum: 0

  • deliveredRatenumber

    minimum: 0 · maximum: 1

  • mailboxesintegerwajib

    minimum: 0

  • verifiedDomainsintegerwajib

    minimum: 0

  • Properti tambahanNilai apa pun
  • agentobjectwajib

    Tidak ada properti tambahan

  • connectedbooleanwajib
  • clientNamestring

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/home' \
  --header "Authorization: Bearer $BANGER_API_KEY"

Saran label

GET/v1/workspaces/{workspaceId}/label-suggestions

listLabelSuggestions

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

mailbox_id
query · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Respons berhasil.

application/json

  • valueobject
  • dataarraywajib
  • Setiap itemobject
  • idstringwajib
  • namestringwajib
  • emojistringwajib
  • colorstringwajib
  • descriptionstringwajib
  • already_addedbooleanwajib

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/label-suggestions?mailbox_id=00000000-0000-4000-8000-000000000001' \
  --header "Authorization: Bearer $BANGER_API_KEY"

Label

GET/v1/workspaces/{workspaceId}/labels

listLabels

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

mailbox_id
query
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Respons berhasil.

application/json

  • valueobject
  • dataarraywajib
  • Setiap itemobject
  • idstringwajib

    format: "uuid"

  • mailbox_idstringwajib

    format: "uuid"

  • namestringwajib
  • colorstring | nullwajib
  • kindstringwajib
  • emojistring | nullwajib
  • descriptionstring | nullwajib
  • suggestion_idstring | nullwajib
  • sourcestringwajib

    enum: "banger", "provider"

  • updated_atstringwajib

    format: "date-time"

  • auto_settidak ditentukanwajib
  • anyOf 1object
  • rule_idstringwajib

    format: "uuid"

  • enabledbooleanwajib
  • descriptionstring | nullwajib
  • exact_conditionsobjectwajib

    Tidak ada properti tambahan

  • fromarray

    maxItems: 50

    Penumpukan lebih lanjut dihilangkan

  • toarray

    maxItems: 50

    Penumpukan lebih lanjut dihilangkan

  • subject_containsarray

    maxItems: 50

    Penumpukan lebih lanjut dihilangkan

  • has_wordsarray

    maxItems: 50

    Penumpukan lebih lanjut dihilangkan

  • excludes_wordsarray

    maxItems: 50

    Penumpukan lebih lanjut dihilangkan

  • has_attachmentboolean

    Penumpukan lebih lanjut dihilangkan

  • anyOf 2null
  • applied_by_rule_countintegerwajib

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/labels?mailbox_id=00000000-0000-4000-8000-000000000001' \
  --header "Authorization: Bearer $BANGER_API_KEY"
POST/v1/workspaces/{workspaceId}/labels

createLabel

Buat label Banger dalam satu kotak surat. Berikan suggestion_id untuk membuat label yang disarankan; nama yang sudah ada mengembalikan label yang ada (200). Label Banger tidak pernah disinkronkan ke Gmail.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

Idempotency-Key
header

Kunci percobaan ulang opsional, diterapkan saat produk dipilih.

  • valuestring

    minLength: 1 · maxLength: 256

Isi permintaan wajib

application/json

  • valueobject
  • mailbox_idstringwajib

    format: "uuid"

  • namestring

    maxLength: 120

  • colorstring

    maxLength: 32

  • emojistring

    Satu emoji yang ditampilkan sebelum nama.

    maxLength: 16

  • descriptionstring

    maxLength: 2000

  • suggestion_idstring

    maxLength: 64

  • auto_setobject
  • enabledbooleanwajib
  • descriptionstring | null

    maxLength: 2000

  • exact_conditionsobject

    Tidak ada properti tambahan

  • fromarray

    maxItems: 50

  • Setiap itemstring

    maxLength: 320

  • toarray

    maxItems: 50

  • Setiap itemstring

    maxLength: 320

  • subject_containsarray

    maxItems: 50

  • Setiap itemstring

    maxLength: 320

  • has_wordsarray

    maxItems: 50

  • Setiap itemstring

    maxLength: 320

  • excludes_wordsarray

    maxItems: 50

  • Setiap itemstring

    maxLength: 320

  • has_attachmentboolean

Respons berhasil 200

Respons berhasil.

application/json

  • valueobject
  • dataobjectwajib
  • idstringwajib

    format: "uuid"

  • mailbox_idstringwajib

    format: "uuid"

  • namestringwajib
  • colorstring | nullwajib
  • kindstringwajib
  • emojistring | nullwajib
  • descriptionstring | nullwajib
  • suggestion_idstring | nullwajib
  • sourcestringwajib

    enum: "banger", "provider"

  • updated_atstringwajib

    format: "date-time"

  • auto_settidak ditentukanwajib
  • anyOf 1object
  • rule_idstringwajib

    format: "uuid"

  • enabledbooleanwajib
  • descriptionstring | nullwajib
  • exact_conditionsobjectwajib

    Tidak ada properti tambahan

  • fromarray

    maxItems: 50

  • Setiap itemstring

    maxLength: 320

    Penumpukan lebih lanjut dihilangkan

  • toarray

    maxItems: 50

  • Setiap itemstring

    maxLength: 320

    Penumpukan lebih lanjut dihilangkan

  • subject_containsarray

    maxItems: 50

  • Setiap itemstring

    maxLength: 320

    Penumpukan lebih lanjut dihilangkan

  • has_wordsarray

    maxItems: 50

  • Setiap itemstring

    maxLength: 320

    Penumpukan lebih lanjut dihilangkan

  • excludes_wordsarray

    maxItems: 50

  • Setiap itemstring

    maxLength: 320

    Penumpukan lebih lanjut dihilangkan

  • has_attachmentboolean
  • anyOf 2null
  • applied_by_rule_countintegerwajib

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/labels' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Idempotency-Key: example' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "mailbox_id": "00000000-0000-4000-8000-000000000001",
  "name": "example",
  "color": "example",
  "emoji": "example",
  "description": "example",
  "suggestion_id": "example",
  "auto_set": {
    "enabled": true,
    "description": "example",
    "exact_conditions": {
      "from": [
        "example"
      ],
      "to": [
        "example"
      ],
      "subject_contains": [
        "example"
      ],
      "has_words": [
        "example"
      ],
      "excludes_words": [
        "example"
      ],
      "has_attachment": true
    }
  }
}'
PATCH/v1/workspaces/{workspaceId}/labels/{labelId}

updateLabel

Ubah nama label Banger, warna, emoji, atau deskripsi, atau aktifkan/nonaktifkan aturan penetapan otomatisnya. Label Gmail dan sistem hanya baca.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

labelId
path · wajib
  • valuestring

    format: "uuid"

Idempotency-Key
header

Kunci percobaan ulang opsional, diterapkan saat produk dipilih.

  • valuestring

    minLength: 1 · maxLength: 256

Isi permintaan wajib

application/json

  • valueobject
  • namestring

    maxLength: 120

  • colorstring | null

    maxLength: 32

  • emojistring | null

    maxLength: 16

  • descriptionstring | null

    maxLength: 2000

  • auto_setobject
  • enabledbooleanwajib
  • descriptionstring | null

    maxLength: 2000

  • exact_conditionsobject

    Tidak ada properti tambahan

  • fromarray

    maxItems: 50

  • Setiap itemstring

    maxLength: 320

  • toarray

    maxItems: 50

  • Setiap itemstring

    maxLength: 320

  • subject_containsarray

    maxItems: 50

  • Setiap itemstring

    maxLength: 320

  • has_wordsarray

    maxItems: 50

  • Setiap itemstring

    maxLength: 320

  • excludes_wordsarray

    maxItems: 50

  • Setiap itemstring

    maxLength: 320

  • has_attachmentboolean

Respons berhasil 200

Respons berhasil.

application/json

  • valueobject
  • dataobjectwajib
  • idstringwajib

    format: "uuid"

  • mailbox_idstringwajib

    format: "uuid"

  • namestringwajib
  • colorstring | nullwajib
  • kindstringwajib
  • emojistring | nullwajib
  • descriptionstring | nullwajib
  • suggestion_idstring | nullwajib
  • sourcestringwajib

    enum: "banger", "provider"

  • updated_atstringwajib

    format: "date-time"

  • auto_settidak ditentukanwajib
  • anyOf 1object
  • rule_idstringwajib

    format: "uuid"

  • enabledbooleanwajib
  • descriptionstring | nullwajib
  • exact_conditionsobjectwajib

    Tidak ada properti tambahan

  • fromarray

    maxItems: 50

  • Setiap itemstring

    maxLength: 320

    Penumpukan lebih lanjut dihilangkan

  • toarray

    maxItems: 50

  • Setiap itemstring

    maxLength: 320

    Penumpukan lebih lanjut dihilangkan

  • subject_containsarray

    maxItems: 50

  • Setiap itemstring

    maxLength: 320

    Penumpukan lebih lanjut dihilangkan

  • has_wordsarray

    maxItems: 50

  • Setiap itemstring

    maxLength: 320

    Penumpukan lebih lanjut dihilangkan

  • excludes_wordsarray

    maxItems: 50

  • Setiap itemstring

    maxLength: 320

    Penumpukan lebih lanjut dihilangkan

  • has_attachmentboolean
  • anyOf 2null
  • applied_by_rule_countintegerwajib

Contoh curl

curl --request PATCH --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/labels/{labelId}' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Idempotency-Key: example' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "name": "example",
  "color": "example",
  "emoji": "example",
  "description": "example",
  "auto_set": {
    "enabled": true,
    "description": "example",
    "exact_conditions": {
      "from": [
        "example"
      ],
      "to": [
        "example"
      ],
      "subject_contains": [
        "example"
      ],
      "has_words": [
        "example"
      ],
      "excludes_words": [
        "example"
      ],
      "has_attachment": true
    }
  }
}'
DELETE/v1/workspaces/{workspaceId}/labels/{labelId}

deleteLabel

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

labelId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 204

Label dihapus.

Tanpa isi respons.

Contoh curl

curl --request DELETE --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/labels/{labelId}' \
  --header "Authorization: Bearer $BANGER_API_KEY"

Log

GET/v1/workspaces/{workspaceId}/logs

listLogs

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

cursor
query
  • valuestring

    maxLength: 1024

limit
query
  • valueinteger

    minimum: 1 · maximum: 100 · default: 50

direction
query
  • valuestring

    enum: "all", "out", "in"

origin
query
  • valuestring

    enum: "journey", "broadcast", "mailbox", "api", "agent", "smtp"

mailbox_id
query
  • valuestring

    format: "uuid"

status
query
  • valuestring

    enum: "queued", "sent", "delivered", "bounced", "complained", "opened", "clicked", "replied", "received", "failed", "rejected"

from
query
  • valuestring

    format: "date"

to
query
  • valuestring

    format: "date"

query
query
  • valuestring

    maxLength: 512

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Halaman kursor dari linimasa gabungan terkirim dan diterima, dengan percobaan SMTP yang ditolak Banger sebagai baris `rejected`. `query` juga menemukan penolakan berdasarkan referensi `smtp_` atau awalan kunci `bgr_` yang dipakai.

application/json

  • valueobject
  • dataarraywajib
  • Setiap itemobject
  • idstringwajib

    format: "uuid"

  • directionstringwajib

    enum: "out", "in"

  • atstringwajib

    format: "date-time"

  • mailbox_idstring | nullwajib

    Null untuk pengiriman yang tidak keluar melalui kotak surat, seperti API dan SMTP.

    format: "uuid"

  • thread_idstring

    format: "uuid"

  • send_intent_idstring

    format: "uuid"

  • traffic_classstring

    enum: "mailbox", "product", "broadcast"

  • fromstringwajib
  • toarraywajib
  • Setiap itemstring
  • recipient_countintegerwajib

    minimum: 0

  • subjectstringwajib
  • originobjectwajib

    Tidak ada properti tambahan

  • kindstringwajib

    enum: "journey", "broadcast", "mailbox", "api", "agent", "smtp"

  • idstring
  • namestring
  • statusstringwajib

    enum: "queued", "sent", "delivered", "bounced", "complained", "opened", "clicked", "replied", "received", "failed", "rejected"

  • rejectionobject

    Alasan Banger menolak percobaan SMTP dan balasan yang diterima klien.

  • refstringwajib

    pattern: "^smtp_[0-9a-z]{16}$"

  • kindstringwajib

    enum: "login_failed", "recipient_refused", "message_rejected"

  • replystringwajib

    Balasan SMTP lengkap, misalnya `550 5.7.1 ...`.

  • reply_codeintegerwajib

    minimum: 400 · maximum: 599

  • enhanced_codestringwajib
  • reasonstringwajib
  • messagestringwajib
  • key_prefixstringwajib

    Awalan publik `bgr_` dari kunci API yang dipakai klien.

  • client_ipstring
  • portinteger
  • tlsstring
  • attemptsintegerwajib

    Login gagal pada satu kunci digabung menjadi satu baris per sepuluh menit.

    minimum: 1

  • last_atstringwajib

    format: "date-time"

  • detailobject
  • Properti tambahanNilai apa pun
  • pageobjectwajib

    Tidak ada properti tambahan

  • has_morebooleanwajib
  • next_cursorstring

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/logs?cursor=example&limit=50&direction=all&origin=journey&mailbox_id=00000000-0000-4000-8000-000000000001&status=queued&from=2026-01-01&to=2026-01-01&query=example' \
  --header "Authorization: Bearer $BANGER_API_KEY"
GET/v1/workspaces/{workspaceId}/logs/{entryId}

getLogEntry

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

entryId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Respons berhasil.

application/json

  • valueobject
  • datatidak ditentukanwajib
  • allOf 1object
  • idstringwajib

    format: "uuid"

  • directionstringwajib

    enum: "out", "in"

  • atstringwajib

    format: "date-time"

  • mailbox_idstring | nullwajib

    Null untuk pengiriman yang tidak keluar melalui kotak surat, seperti API dan SMTP.

    format: "uuid"

  • thread_idstring

    format: "uuid"

  • send_intent_idstring

    format: "uuid"

  • traffic_classstring

    enum: "mailbox", "product", "broadcast"

  • fromstringwajib
  • toarraywajib
  • Setiap itemstring
  • recipient_countintegerwajib

    minimum: 0

  • subjectstringwajib
  • originobjectwajib

    Tidak ada properti tambahan

  • kindstringwajib

    enum: "journey", "broadcast", "mailbox", "api", "agent", "smtp"

  • idstring
  • namestring
  • statusstringwajib

    enum: "queued", "sent", "delivered", "bounced", "complained", "opened", "clicked", "replied", "received", "failed", "rejected"

  • rejectionobject

    Alasan Banger menolak percobaan SMTP dan balasan yang diterima klien.

  • refstringwajib

    pattern: "^smtp_[0-9a-z]{16}$"

  • kindstringwajib

    enum: "login_failed", "recipient_refused", "message_rejected"

  • replystringwajib

    Balasan SMTP lengkap, misalnya `550 5.7.1 ...`.

  • reply_codeintegerwajib

    minimum: 400 · maximum: 599

  • enhanced_codestringwajib
  • reasonstringwajib
  • messagestringwajib
  • key_prefixstringwajib

    Awalan publik `bgr_` dari kunci API yang dipakai klien.

  • client_ipstring
  • portinteger
  • tlsstring
  • attemptsintegerwajib

    Login gagal pada satu kunci digabung menjadi satu baris per sepuluh menit.

    minimum: 1

  • last_atstringwajib

    format: "date-time"

  • detailobject
  • Properti tambahanNilai apa pun
  • allOf 2object
  • detailtidak ditentukanwajib
  • oneOf 1object
  • kindstringwajib

    enum: "inbound"

  • threadtidak ditentukanwajib
  • allOf 1object

    Penumpukan lebih lanjut dihilangkan

  • allOf 2object

    Penumpukan lebih lanjut dihilangkan

  • oneOf 2object
  • kindstringwajib

    enum: "broadcast", "outbound"

  • sendobjectwajib
  • idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • mailbox_idstring | nullwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • command_idstring | nullwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • statusstringwajib

    Penumpukan lebih lanjut dihilangkan

  • command_statusstring | nullwajib

    Penumpukan lebih lanjut dihilangkan

  • subjectstring

    Penumpukan lebih lanjut dihilangkan

  • recipientsarray

    Penumpukan lebih lanjut dihilangkan

  • recipient_countintegerwajib

    Penumpukan lebih lanjut dihilangkan

  • error_codestring | null

    Penumpukan lebih lanjut dihilangkan

  • send_intent_idstring

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • providerstring | null

    Penumpukan lebih lanjut dihilangkan

  • route_kindstring | null

    Penumpukan lebih lanjut dihilangkan

  • sourcestring

    Penumpukan lebih lanjut dihilangkan

  • from_addressstring

    Penumpukan lebih lanjut dihilangkan

  • recipient_statesobject

    Penumpukan lebih lanjut dihilangkan

  • provider_message_idstring | null

    Penumpukan lebih lanjut dihilangkan

  • languagetidak ditentukan

    Bahasa pengiriman email ini; null jika tidak diterjemahkan.

    Penumpukan lebih lanjut dihilangkan

  • journeyobject | null

    Langkah dan pendaftaran Journey yang mengirim email ini; null untuk pengiriman lain.

    Penumpukan lebih lanjut dihilangkan

  • experimentobject | null

    Varian eksperimen email ini; null jika tidak ada yang berlaku.

    Penumpukan lebih lanjut dihilangkan

  • created_atstringwajib

    format: "date-time"

    Penumpukan lebih lanjut dihilangkan

  • updated_atstringwajib

    format: "date-time"

    Penumpukan lebih lanjut dihilangkan

  • completed_atstring | nullwajib

    format: "date-time"

    Penumpukan lebih lanjut dihilangkan

  • template_idstring | null

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • template_versioninteger | null

    Penumpukan lebih lanjut dihilangkan

  • workspace_revisioninteger | null

    Penumpukan lebih lanjut dihilangkan

  • command_resultobject

    Penumpukan lebih lanjut dihilangkan

  • command_started_atstring | null

    format: "date-time"

    Penumpukan lebih lanjut dihilangkan

  • command_completed_atstring | null

    format: "date-time"

    Penumpukan lebih lanjut dihilangkan

  • body_textstring

    Penumpukan lebih lanjut dihilangkan

  • body_htmlstring

    Penumpukan lebih lanjut dihilangkan

  • reply_toarray

    Penumpukan lebih lanjut dihilangkan

  • headersobject

    Penumpukan lebih lanjut dihilangkan

  • tagsarray

    Penumpukan lebih lanjut dihilangkan

  • timelinearraywajib
  • Setiap itemobject

    Penumpukan lebih lanjut dihilangkan

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/logs/{entryId}' \
  --header "Authorization: Bearer $BANGER_API_KEY"

Halaman email

GET/v1/workspaces/{workspaceId}/mail-page

getMailPage

Kembalikan seluruh payload email tampilan awal dalam satu permintaan: kotak surat terlihat, kotak surat terpilih, label, jumlah kotak surat, revisi ruang kerja, dan halaman utas pertama kotak surat terpilih.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

limit
query
  • valueinteger

    minimum: 1 · maximum: 100 · default: 50

mailbox_id
query

Kotak surat pilihan. Fallback ke kotak surat terlihat pertama.

  • valuestring

    format: "uuid"

label_id
query

Kembalikan hanya utas kotak surat terpilih yang memiliki label ini.

  • valuestring

    format: "uuid"

view
query
  • valuestring

    default: "inbox" · enum: "inbox", "sent", "drafts", "archive", "trash", "spam", "all"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Data email tampilan awal untuk ruang kerja.

application/json

  • valueobject
  • dataobjectwajib
  • mailboxesarraywajib
  • Setiap itemobject
  • idstringwajib

    format: "uuid"

  • workspace_idstringwajib

    format: "uuid"

  • product_idstring | null

    Produk (proyek) pemilik kotak surat. Klien menggunakannya untuk mengelompokkan kotak surat dan membuat tautan aplikasi web.

    format: "uuid"

  • domain_idstring | null

    format: "uuid"

  • addressstringwajib

    format: "email"

  • display_namestringwajib
  • providerstringwajib

    enum: "gmail", "smtp"

  • statusstringwajib

    enum: "pending", "active", "suspended", "reconnect_required", "disabled"

  • status_reasonstring | null
  • suspended_atstring | null
  • mailbox_kindstringwajib

    enum: "domain", "starter"

  • domainsarraywajib
  • Setiap itemobject
  • idstringwajib

    format: "uuid"

  • product_idstringwajib

    format: "uuid"

  • namestringwajib
  • statusstringwajib

    enum: "pending", "verified", "failed", "disabled", "deleting", "deleted"

  • selected_mailbox_idstring

    format: "uuid"

  • labelsarraywajib
  • Setiap itemobject
  • idstringwajib

    format: "uuid"

  • mailbox_idstringwajib

    format: "uuid"

  • namestringwajib
  • colorstring | null
  • kindstringwajib
  • updated_atstringwajib

    format: "date-time"

  • threadsarraywajib
  • Setiap itemobject
  • idstringwajib

    format: "uuid"

  • mailbox_idstringwajib

    format: "uuid"

  • subjectstringwajib
  • snippetstringwajib
  • last_message_atstringwajib

    format: "date-time"

  • message_countintegerwajib
  • unread_countintegerwajib
  • is_archivedbooleanwajib
  • is_trashbooleanwajib
  • is_spambooleanwajib
  • is_starredbooleanwajib
  • is_sentbooleanwajib
  • has_attachmentsbooleanwajib
  • labelsarraywajib
  • Setiap itemstring
  • participantsarray
  • Setiap itemobject
  • namestring

    Penumpukan lebih lanjut dihilangkan

  • emailstringwajib

    format: "email"

    Penumpukan lebih lanjut dihilangkan

  • pageobjectwajib
  • next_cursorstring
  • has_morebooleanwajib
  • mailbox_thread_countsobjectwajib
  • Properti tambahaninteger
  • revisionintegerwajib

    format: "int64"

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/mail-page?limit=50&mailbox_id=00000000-0000-4000-8000-000000000001&label_id=00000000-0000-4000-8000-000000000001&view=inbox' \
  --header "Authorization: Bearer $BANGER_API_KEY"

Migrasi Mailchimp

GET/v1/workspaces/{workspaceId}/mailchimp-migration

Baca progres dan laporan perpindahan dari Mailchimp.

Poll it to show live progress. Reads the move of a connection whose key stopped working (phase needs_new_key) or that was disconnected (phase disconnected) too, so what already came over can be shown. Without connection_id: the product's one active-or-error Mailchimp connection, else its most recently moved disconnected one.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

connection_id
query
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Laporan perpindahan saat ini.

application/json

  • valueobject
  • dataobjectwajib

    Perpindahan dari satu koneksi Mailchimp ke produk. Poll GET /mailchimp-migration untuk progres langsung: `phase` menyatakan tahapnya; `counts`, `audiences`, `segments`, `templates`, dan `campaigns` bertambah selama proses.

  • migration_idstringwajib

    format: "uuid"

  • connection_idstringwajib

    format: "uuid"

  • product_idstringwajib

    format: "uuid"

  • statusstringwajib

    enum: "importing", "completed"

  • phasestringwajib

    importing (reading Mailchimp), copying_designs (templates and campaigns), finishing, completed, needs_new_key (Mailchimp rejected the API key; the move is paused until a new key is saved with rotateConnectionCredential), or disconnected (the connection was removed; everything already moved stays in Banger and the counts stay readable).

    enum: "importing", "copying_designs", "finishing", "completed", "needs_new_key", "disconnected"

  • started_atstringwajib

    format: "date-time"

  • completed_atstring | nullwajib

    format: "date-time"

  • connectionobjectwajib
  • display_namestringwajib
  • account_namestring | nullwajib
  • statusstringwajib

    enum: "pending_validation", "active", "error", "disabled"

  • last_error_codestring | nullwajib
  • needs_new_keybooleanwajib
  • messagestring

    Present when needs_new_key or disconnected, ready to show.

  • progressobjectwajib
  • import_streamsintegerwajib
  • import_streams_doneintegerwajib
  • failing_streamsarraywajib
  • Setiap itemobject
  • streamstringwajib
  • refstringwajib
  • error_codestring | nullwajib
  • designs_waitingintegerwajib
  • notestringwajib
  • countsobjectwajib
  • contactsintegerwajib
  • subscribedintegerwajib
  • unsubscribedintegerwajib
  • bouncedintegerwajib
  • contact_listsintegerwajib
  • contact_fieldsintegerwajib
  • segments_convertedintegerwajib
  • segments_kept_as_listsintegerwajib
  • templates_importedintegerwajib
  • templates_to_rebuildintegerwajib
  • campaigns_imported_as_designsintegerwajib
  • automations_importedintegerwajib
  • audiencesarraywajib
  • Setiap itemobject
  • mailchimp_idstringwajib
  • namestringwajib
  • list_idstring | nullwajib

    format: "uuid"

  • list_namestring | nullwajib
  • members_in_bangerintegerwajib
  • subscribedintegerwajib
  • unsubscribedintegerwajib
  • bouncedintegerwajib
  • members_in_mailchimpintegerwajib
  • contact_fieldsarraywajib
  • Setiap itemobject
  • mailchimp_tagstringwajib
  • namestringwajib
  • field_keystringwajib
  • typestringwajib

    enum: "text", "number", "boolean", "date", "choice", "choices"

  • consentstringwajib
  • segmentsarraywajib
  • Setiap itemobject

    Hasil perubahan satu segmen, templat, atau kampanye Mailchimp.

  • mailchimp_idstringwajib

    Segmen: <audience id>:<segment id>. Templat dan kampanye: id Mailchimp-nya.

  • becamestringwajib

    enum: "segment", "contact_list", "template", "needs_rebuild"

  • idstring

    Segmen Banger

    format: "uuid"

  • namestringwajib
  • reasonstring

    Alasan segmen tetap berupa daftar statis

  • dropped_merge_tagsarray

    Tag gabungan Mailchimp tanpa padanan Banger, dihapus dari desain (kondisi pada field gabungan mempertahankan cabang pertamanya dan dicantumkan di sini).

  • Setiap itemstring
  • replaced_footerboolean

    Bagian footer Mailchimp (lihat di browser, preferensi, alamat, lencana) menjadi footer merek produk.

  • removed_linksarray

    Tautan ke halaman khusus Mailchimp di luar footer (seperti lihat di browser) yang dihapus, berdasarkan kata-katanya.

  • Setiap itemstring
  • links_to_fillarray

    Tautan yang kosong di Mailchimp; masing-masing kini menjadi slot URL desain yang harus diisi sebelum dikirim.

  • Setiap itemobject
  • keystringwajib

    Penumpukan lebih lanjut dihilangkan

  • labelstringwajib

    Penumpukan lebih lanjut dihilangkan

  • kept_editsboolean

    Eksekusi ulang menemukan desain telah disunting di Banger dan membiarkannya tetap.

  • templatesarraywajib
  • Setiap itemobject

    Hasil perubahan satu segmen, templat, atau kampanye Mailchimp.

  • mailchimp_idstringwajib

    Segmen: <audience id>:<segment id>. Templat dan kampanye: id Mailchimp-nya.

  • becamestringwajib

    enum: "segment", "contact_list", "template", "needs_rebuild"

  • idstring

    Segmen Banger

    format: "uuid"

  • namestringwajib
  • reasonstring

    Alasan segmen tetap berupa daftar statis

  • dropped_merge_tagsarray

    Tag gabungan Mailchimp tanpa padanan Banger, dihapus dari desain (kondisi pada field gabungan mempertahankan cabang pertamanya dan dicantumkan di sini).

  • Setiap itemstring
  • replaced_footerboolean

    Bagian footer Mailchimp (lihat di browser, preferensi, alamat, lencana) menjadi footer merek produk.

  • removed_linksarray

    Tautan ke halaman khusus Mailchimp di luar footer (seperti lihat di browser) yang dihapus, berdasarkan kata-katanya.

  • Setiap itemstring
  • links_to_fillarray

    Tautan yang kosong di Mailchimp; masing-masing kini menjadi slot URL desain yang harus diisi sebelum dikirim.

  • Setiap itemobject
  • keystringwajib

    Penumpukan lebih lanjut dihilangkan

  • labelstringwajib

    Penumpukan lebih lanjut dihilangkan

  • kept_editsboolean

    Eksekusi ulang menemukan desain telah disunting di Banger dan membiarkannya tetap.

  • campaignsarraywajib
  • Setiap itemobject

    Hasil perubahan satu segmen, templat, atau kampanye Mailchimp.

  • mailchimp_idstringwajib

    Segmen: <audience id>:<segment id>. Templat dan kampanye: id Mailchimp-nya.

  • becamestringwajib

    enum: "segment", "contact_list", "template", "needs_rebuild"

  • idstring

    Segmen Banger

    format: "uuid"

  • namestringwajib
  • reasonstring

    Alasan segmen tetap berupa daftar statis

  • dropped_merge_tagsarray

    Tag gabungan Mailchimp tanpa padanan Banger, dihapus dari desain (kondisi pada field gabungan mempertahankan cabang pertamanya dan dicantumkan di sini).

  • Setiap itemstring
  • replaced_footerboolean

    Bagian footer Mailchimp (lihat di browser, preferensi, alamat, lencana) menjadi footer merek produk.

  • removed_linksarray

    Tautan ke halaman khusus Mailchimp di luar footer (seperti lihat di browser) yang dihapus, berdasarkan kata-katanya.

  • Setiap itemstring
  • links_to_fillarray

    Tautan yang kosong di Mailchimp; masing-masing kini menjadi slot URL desain yang harus diisi sebelum dikirim.

  • Setiap itemobject
  • keystringwajib

    Penumpukan lebih lanjut dihilangkan

  • labelstringwajib

    Penumpukan lebih lanjut dihilangkan

  • kept_editsboolean

    Eksekusi ulang menemukan desain telah disunting di Banger dan membiarkannya tetap.

  • automationsobjectwajib
  • importedbooleanwajib

    const: false

  • whystringwajib
  • next_stepsarraywajib
  • Setiap itemstring
  • help_call_urlstringwajib

    format: "uri"

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/mailchimp-migration?connection_id=00000000-0000-4000-8000-000000000001' \
  --header "Authorization: Bearer $BANGER_API_KEY"
POST/v1/workspaces/{workspaceId}/mailchimp-migration

Mulai, atau jalankan ulang, perpindahan dari Mailchimp ke produk ini.

Menghubungkan Mailchimp sudah memulainya; eksekusi ulang menyinkronkan kembali dan hanya menambah yang baru. Memerlukan contacts:write dan campaigns:write; orang yang masuk harus pemilik atau admin. Tidak memerlukan izin koneksi.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan wajib

application/json

  • valueobject

    Tidak ada properti tambahan

  • connection_idstring

    format: "uuid"

  • recent_campaignsinteger

    minimum: 0 · maximum: 50 · default: 10

Respons berhasil 202

Perpindahan berjalan di latar belakang.

application/json

  • valueobject
  • datatidak ditentukanwajib
  • allOf 1object

    Perpindahan dari satu koneksi Mailchimp ke produk. Poll GET /mailchimp-migration untuk progres langsung: `phase` menyatakan tahapnya; `counts`, `audiences`, `segments`, `templates`, dan `campaigns` bertambah selama proses.

  • migration_idstringwajib

    format: "uuid"

  • connection_idstringwajib

    format: "uuid"

  • product_idstringwajib

    format: "uuid"

  • statusstringwajib

    enum: "importing", "completed"

  • phasestringwajib

    importing (reading Mailchimp), copying_designs (templates and campaigns), finishing, completed, needs_new_key (Mailchimp rejected the API key; the move is paused until a new key is saved with rotateConnectionCredential), or disconnected (the connection was removed; everything already moved stays in Banger and the counts stay readable).

    enum: "importing", "copying_designs", "finishing", "completed", "needs_new_key", "disconnected"

  • started_atstringwajib

    format: "date-time"

  • completed_atstring | nullwajib

    format: "date-time"

  • connectionobjectwajib
  • display_namestringwajib
  • account_namestring | nullwajib
  • statusstringwajib

    enum: "pending_validation", "active", "error", "disabled"

  • last_error_codestring | nullwajib
  • needs_new_keybooleanwajib
  • messagestring

    Present when needs_new_key or disconnected, ready to show.

  • progressobjectwajib
  • import_streamsintegerwajib
  • import_streams_doneintegerwajib
  • failing_streamsarraywajib
  • Setiap itemobject
  • streamstringwajib

    Penumpukan lebih lanjut dihilangkan

  • refstringwajib

    Penumpukan lebih lanjut dihilangkan

  • error_codestring | nullwajib

    Penumpukan lebih lanjut dihilangkan

  • designs_waitingintegerwajib
  • notestringwajib
  • countsobjectwajib
  • contactsintegerwajib
  • subscribedintegerwajib
  • unsubscribedintegerwajib
  • bouncedintegerwajib
  • contact_listsintegerwajib
  • contact_fieldsintegerwajib
  • segments_convertedintegerwajib
  • segments_kept_as_listsintegerwajib
  • templates_importedintegerwajib
  • templates_to_rebuildintegerwajib
  • campaigns_imported_as_designsintegerwajib
  • automations_importedintegerwajib
  • audiencesarraywajib
  • Setiap itemobject
  • mailchimp_idstringwajib
  • namestringwajib
  • list_idstring | nullwajib

    format: "uuid"

  • list_namestring | nullwajib
  • members_in_bangerintegerwajib
  • subscribedintegerwajib
  • unsubscribedintegerwajib
  • bouncedintegerwajib
  • members_in_mailchimpintegerwajib
  • contact_fieldsarraywajib
  • Setiap itemobject
  • mailchimp_tagstringwajib
  • namestringwajib
  • field_keystringwajib
  • typestringwajib

    enum: "text", "number", "boolean", "date", "choice", "choices"

  • consentstringwajib
  • segmentsarraywajib
  • Setiap itemobject

    Hasil perubahan satu segmen, templat, atau kampanye Mailchimp.

  • mailchimp_idstringwajib

    Segmen: <audience id>:<segment id>. Templat dan kampanye: id Mailchimp-nya.

  • becamestringwajib

    enum: "segment", "contact_list", "template", "needs_rebuild"

  • idstring

    Segmen Banger

    format: "uuid"

  • namestringwajib
  • reasonstring

    Alasan segmen tetap berupa daftar statis

  • dropped_merge_tagsarray

    Tag gabungan Mailchimp tanpa padanan Banger, dihapus dari desain (kondisi pada field gabungan mempertahankan cabang pertamanya dan dicantumkan di sini).

  • Setiap itemstring

    Penumpukan lebih lanjut dihilangkan

  • replaced_footerboolean

    Bagian footer Mailchimp (lihat di browser, preferensi, alamat, lencana) menjadi footer merek produk.

  • removed_linksarray

    Tautan ke halaman khusus Mailchimp di luar footer (seperti lihat di browser) yang dihapus, berdasarkan kata-katanya.

  • Setiap itemstring

    Penumpukan lebih lanjut dihilangkan

  • links_to_fillarray

    Tautan yang kosong di Mailchimp; masing-masing kini menjadi slot URL desain yang harus diisi sebelum dikirim.

  • Setiap itemobject

    Penumpukan lebih lanjut dihilangkan

  • kept_editsboolean

    Eksekusi ulang menemukan desain telah disunting di Banger dan membiarkannya tetap.

  • templatesarraywajib
  • Setiap itemobject

    Hasil perubahan satu segmen, templat, atau kampanye Mailchimp.

  • mailchimp_idstringwajib

    Segmen: <audience id>:<segment id>. Templat dan kampanye: id Mailchimp-nya.

  • becamestringwajib

    enum: "segment", "contact_list", "template", "needs_rebuild"

  • idstring

    Segmen Banger

    format: "uuid"

  • namestringwajib
  • reasonstring

    Alasan segmen tetap berupa daftar statis

  • dropped_merge_tagsarray

    Tag gabungan Mailchimp tanpa padanan Banger, dihapus dari desain (kondisi pada field gabungan mempertahankan cabang pertamanya dan dicantumkan di sini).

  • Setiap itemstring

    Penumpukan lebih lanjut dihilangkan

  • replaced_footerboolean

    Bagian footer Mailchimp (lihat di browser, preferensi, alamat, lencana) menjadi footer merek produk.

  • removed_linksarray

    Tautan ke halaman khusus Mailchimp di luar footer (seperti lihat di browser) yang dihapus, berdasarkan kata-katanya.

  • Setiap itemstring

    Penumpukan lebih lanjut dihilangkan

  • links_to_fillarray

    Tautan yang kosong di Mailchimp; masing-masing kini menjadi slot URL desain yang harus diisi sebelum dikirim.

  • Setiap itemobject

    Penumpukan lebih lanjut dihilangkan

  • kept_editsboolean

    Eksekusi ulang menemukan desain telah disunting di Banger dan membiarkannya tetap.

  • campaignsarraywajib
  • Setiap itemobject

    Hasil perubahan satu segmen, templat, atau kampanye Mailchimp.

  • mailchimp_idstringwajib

    Segmen: <audience id>:<segment id>. Templat dan kampanye: id Mailchimp-nya.

  • becamestringwajib

    enum: "segment", "contact_list", "template", "needs_rebuild"

  • idstring

    Segmen Banger

    format: "uuid"

  • namestringwajib
  • reasonstring

    Alasan segmen tetap berupa daftar statis

  • dropped_merge_tagsarray

    Tag gabungan Mailchimp tanpa padanan Banger, dihapus dari desain (kondisi pada field gabungan mempertahankan cabang pertamanya dan dicantumkan di sini).

  • Setiap itemstring

    Penumpukan lebih lanjut dihilangkan

  • replaced_footerboolean

    Bagian footer Mailchimp (lihat di browser, preferensi, alamat, lencana) menjadi footer merek produk.

  • removed_linksarray

    Tautan ke halaman khusus Mailchimp di luar footer (seperti lihat di browser) yang dihapus, berdasarkan kata-katanya.

  • Setiap itemstring

    Penumpukan lebih lanjut dihilangkan

  • links_to_fillarray

    Tautan yang kosong di Mailchimp; masing-masing kini menjadi slot URL desain yang harus diisi sebelum dikirim.

  • Setiap itemobject

    Penumpukan lebih lanjut dihilangkan

  • kept_editsboolean

    Eksekusi ulang menemukan desain telah disunting di Banger dan membiarkannya tetap.

  • automationsobjectwajib
  • importedbooleanwajib

    const: false

  • whystringwajib
  • next_stepsarraywajib
  • Setiap itemstring
  • help_call_urlstringwajib

    format: "uri"

  • allOf 2object
  • messagestring

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/mailchimp-migration' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "connection_id": "00000000-0000-4000-8000-000000000001",
  "recent_campaigns": 10
}'

Konten terkelola

GET/v1/workspaces/{workspaceId}/managed-content

Daftar konten email terkelola produk dalam urutan ID terbaru yang stabil.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

X-Banger-Product-Id
header · wajib

Produk operasi eksplisit; harus sesuai dengan kredensial OAuth bercakupan produk.

  • valuestring

    format: "uuid"

limit
query
  • valueinteger

    minimum: 1 · maximum: 100 · default: 50

cursor
query
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Inventaris konten produk dan kursor berikutnya opsional.

application/json

  • valueobject
  • dataobjectwajib
  • itemsarraywajib
  • Setiap itemobject
  • idstringwajib

    format: "uuid"

  • namestringwajib
  • versionintegerwajib

    minimum: 1

  • review_requiredbooleanwajib
  • draft_revision_idstring | null

    format: "uuid"

  • submitted_revision_idstring | null

    format: "uuid"

  • approved_revision_idstring | null

    format: "uuid"

  • published_revision_idstring | null

    format: "uuid"

  • published_publication_idstring | null

    format: "uuid"

  • source_revisionobject
  • Properti tambahanNilai apa pun
  • translationsarray
  • Setiap itemobject
  • Properti tambahanNilai apa pun
  • translation_jobsarray
  • Setiap itemobject
  • Properti tambahanNilai apa pun
  • next_cursorstring | nullwajib

    format: "uuid"

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/managed-content?limit=50&cursor=00000000-0000-4000-8000-000000000001' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'X-Banger-Product-Id: 00000000-0000-4000-8000-000000000001'
POST/v1/workspaces/{workspaceId}/managed-content

Simpan draf email lokal sumber dan antrekan terjemahan target yang belum ada.

Tidak mengirim atau menerbitkan. Persiapan terjemahan tidak dikenai biaya per bahasa.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

X-Banger-Product-Id
header · wajib

Produk operasi eksplisit; harus sesuai dengan kredensial OAuth bercakupan produk.

  • valuestring

    format: "uuid"

Idempotency-Key
header · wajib
  • valuestring

    minLength: 1 · maxLength: 256

Isi permintaan wajib

application/json

  • valueobject

    Tidak ada properti tambahan

  • namestringwajib

    minLength: 1 · maxLength: 200

  • contractobjectwajib

    Tidak ada properti tambahan

  • source_localestring

    Lokal sumber BCP 47 kanonis; mewarisi pengaturan produk jika dihilangkan.

  • configured_localesarray

    Lokal sumber dan target; sumber yang dihilangkan ditambahkan oleh server.

    maxItems: 100 · uniqueItems: true

  • Setiap itemstring
  • fallback_localestring
  • layout_idstring

    Tata letak pakai ulang yang dipilih; server menyimpan snapshot revisi terbitnya ke revisi konten ini.

    format: "uuid"

  • localization_policyobject

    Email Journey hanya dikirim dalam bahasa orang tersebut: menunggu terjemahan sekitar satu menit untuk tanda terima, kode, dan pemberitahuan keamanan, dan hingga sehari untuk email lain, lalu tidak dikirim jika terjemahan belum siap.

    Tidak ada properti tambahan

  • manual_reviewboolean

    default: false

  • sourceobjectwajib

    Tidak ada properti tambahan

  • subjectstringwajib

    minLength: 1 · maxLength: 100000

  • preheaderstring

    maxLength: 100000

  • body_textstring

    Diterima untuk kompatibilitas sumber; teks biasa yang dirender diturunkan dari HTML final.

    maxLength: 100000

  • body_htmlstringwajib

    minLength: 1 · maxLength: 100000

  • layoutstring

    Harus berisi satu slot {{ content }}.

    maxLength: 100000

  • variantsobject

    Versi sumber opsional. Setiap versi diterjemahkan otomatis dalam revisi yang sama.

  • Properti tambahanobject

    Tidak ada properti tambahan

  • subjectstringwajib

    minLength: 1 · maxLength: 100000

  • preheaderstring

    maxLength: 100000

  • body_htmlstringwajib

    minLength: 1 · maxLength: 100000

  • body_textstring

    maxLength: 100000

  • layoutstring

    maxLength: 100000

  • variablesobjectwajib
  • Properti tambahantidak ditentukan

    Variabel bertipe rekursif. Nilai uang memakai {amount_cents: integer, currency: ISO 4217 code}; nilai date berupa tanggal kalender ISO dan datetime berupa timestamp ISO dengan offset.

  • oneOf 1object

    Tidak ada properti tambahan

  • typestringwajib

    enum: "string", "text", "url", "image_url", "html", "date", "datetime", "number", "boolean", "money"

    Penumpukan lebih lanjut dihilangkan

  • requiredboolean

    Penumpukan lebih lanjut dihilangkan

  • descriptionstring

    maxLength: 2000

    Penumpukan lebih lanjut dihilangkan

  • defaulttidak ditentukan

    Harus sesuai tipe field.

    Penumpukan lebih lanjut dihilangkan

  • oneOf 2object

    Tidak ada properti tambahan

  • typetidak ditentukanwajib

    const: "object"

    Penumpukan lebih lanjut dihilangkan

  • requiredboolean

    Penumpukan lebih lanjut dihilangkan

  • descriptionstring

    maxLength: 2000

    Penumpukan lebih lanjut dihilangkan

  • defaultobject

    Penumpukan lebih lanjut dihilangkan

  • propertiesobjectwajib

    Penumpukan lebih lanjut dihilangkan

  • oneOf 3object

    Tidak ada properti tambahan

  • typetidak ditentukanwajib

    const: "list"

    Penumpukan lebih lanjut dihilangkan

  • requiredboolean

    Penumpukan lebih lanjut dihilangkan

  • descriptionstring

    maxLength: 2000

    Penumpukan lebih lanjut dihilangkan

  • defaultarray

    Penumpukan lebih lanjut dihilangkan

  • itemstidak ditentukanwajib

    Variabel bertipe rekursif. Nilai uang memakai {amount_cents: integer, currency: ISO 4217 code}; nilai date berupa tanggal kalender ISO dan datetime berupa timestamp ISO dengan offset.

    Penumpukan lebih lanjut dihilangkan

  • samplesobject

    Kumpulan nilai contoh bernama untuk pratinjau dan validasi sumber.

  • Properti tambahanobject
  • Properti tambahanNilai apa pun
  • translationsobject

    Katalog pesan ICU sumber dan katalog target opsional yang disediakan. Target terkonfigurasi yang belum ada masuk antrean terjemahan asinkron; penyimpanan tidak memerlukannya.

  • Properti tambahanobject
  • Properti tambahanstring

Respons berhasil 201

Sumber draf dan pekerjaan terjemahan yang diantrekan.

application/json

  • valueobject
  • dataobjectwajib
  • idstringwajib

    format: "uuid"

  • namestringwajib
  • versionintegerwajib

    minimum: 1

  • review_requiredbooleanwajib
  • draft_revision_idstring | null

    format: "uuid"

  • submitted_revision_idstring | null

    format: "uuid"

  • approved_revision_idstring | null

    format: "uuid"

  • published_revision_idstring | null

    format: "uuid"

  • published_publication_idstring | null

    format: "uuid"

  • source_revisionobject
  • Properti tambahanNilai apa pun
  • translationsarray
  • Setiap itemobject
  • Properti tambahanNilai apa pun
  • translation_jobsarray
  • Setiap itemobject
  • Properti tambahanNilai apa pun

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/managed-content' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'X-Banger-Product-Id: 00000000-0000-4000-8000-000000000001' \
  --header 'Idempotency-Key: example' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "name": "example",
  "contract": {
    "source_locale": "example",
    "configured_locales": [
      "example"
    ],
    "fallback_locale": "example",
    "layout_id": "00000000-0000-4000-8000-000000000001",
    "localization_policy": {
      "manual_review": false
    },
    "source": {
      "subject": "example",
      "preheader": "example",
      "body_text": "example",
      "body_html": "example",
      "layout": "example",
      "variants": {},
      "variables": {}
    },
    "samples": {},
    "translations": {}
  }
}'
GET/v1/workspaces/{workspaceId}/managed-content/{contentId}

Baca revisi draf, terjemahan, dan status persiapan.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

X-Banger-Product-Id
header · wajib

Produk operasi eksplisit; harus sesuai dengan kredensial OAuth bercakupan produk.

  • valuestring

    format: "uuid"

contentId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Status konten saat ini.

application/json

  • valueobject
  • datatidak ditentukanwajib
  • allOf 1object
  • idstringwajib

    format: "uuid"

  • namestringwajib
  • versionintegerwajib

    minimum: 1

  • review_requiredbooleanwajib
  • draft_revision_idstring | null

    format: "uuid"

  • submitted_revision_idstring | null

    format: "uuid"

  • approved_revision_idstring | null

    format: "uuid"

  • published_revision_idstring | null

    format: "uuid"

  • published_publication_idstring | null

    format: "uuid"

  • source_revisionobject
  • Properti tambahanNilai apa pun
  • translationsarray
  • Setiap itemobject
  • Properti tambahanNilai apa pun
  • translation_jobsarray
  • Setiap itemobject
  • Properti tambahanNilai apa pun
  • allOf 2object
  • source_revisionobjectwajib
  • idstringwajib

    format: "uuid"

  • content_idstringwajib

    format: "uuid"

  • revisionintegerwajib
  • source_localestringwajib
  • configured_localesarraywajib
  • Setiap itemstring
  • fallback_localestring | nullwajib
  • localization_policyobjectwajib

    Email Journey hanya dikirim dalam bahasa orang tersebut: menunggu terjemahan sekitar satu menit untuk tanda terima, kode, dan pemberitahuan keamanan, dan hingga sehari untuk email lain, lalu tidak dikirim jika terjemahan belum siap.

    Tidak ada properti tambahan

  • manual_reviewboolean

    default: false

  • sourceobjectwajib

    Tidak ada properti tambahan

  • subjectstringwajib

    minLength: 1 · maxLength: 100000

  • preheaderstring

    maxLength: 100000

  • body_textstring

    Diterima untuk kompatibilitas sumber; teks biasa yang dirender diturunkan dari HTML final.

    maxLength: 100000

  • body_htmlstringwajib

    minLength: 1 · maxLength: 100000

  • layoutstring

    Harus berisi satu slot {{ content }}.

    maxLength: 100000

  • variantsobject

    Versi sumber opsional. Setiap versi diterjemahkan otomatis dalam revisi yang sama.

  • Properti tambahanobject

    Tidak ada properti tambahan

    Penumpukan lebih lanjut dihilangkan

  • variablesobjectwajib
  • Properti tambahantidak ditentukan

    Variabel bertipe rekursif. Nilai uang memakai {amount_cents: integer, currency: ISO 4217 code}; nilai date berupa tanggal kalender ISO dan datetime berupa timestamp ISO dengan offset.

    Penumpukan lebih lanjut dihilangkan

  • source_messagesobjectwajib
  • Properti tambahanstring
  • layout_idstring | nullwajib

    format: "uuid"

  • layout_revision_idstring | nullwajib

    format: "uuid"

  • samplesobjectwajib
  • Properti tambahanobject
  • Properti tambahanNilai apa pun
  • restored_from_revision_idstring | nullwajib

    format: "uuid"

  • translationsarraywajib
  • Setiap itemtidak ditentukan
  • allOf 1object
  • source_revision_idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • localestringwajib

    Penumpukan lebih lanjut dihilangkan

  • stringsobjectwajib

    Penumpukan lebih lanjut dihilangkan

  • provenancestringwajib

    enum: "supplied", "generated", "reviewed"

    Penumpukan lebih lanjut dihilangkan

  • statusstringwajib

    enum: "ready", "needs_review"

    Penumpukan lebih lanjut dihilangkan

  • allOf 2object
  • strings_sha256stringwajib

    Penumpukan lebih lanjut dihilangkan

  • translation_jobsarraywajib
  • Setiap itemobject
  • idstringwajib

    format: "uuid"

  • source_revision_idstringwajib

    format: "uuid"

  • localestringwajib
  • statusstringwajib
  • attempt_countintegerwajib
  • error_codestring | nullwajib

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/managed-content/{contentId}' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'X-Banger-Product-Id: 00000000-0000-4000-8000-000000000001'
PATCH/v1/workspaces/{workspaceId}/managed-content/{contentId}

Simpan revisi draf sumber baru tanpa mengubah penerbitan produksi.

Perubahan variabel yang merusak kompatibilitas tidak dapat diterbitkan di atas ID konten ini. Buat dan terbitkan konten terkelola baru, ubah setiap referensi Journey atau draf Kampanye ke ID baru, lalu tinjau/aktifkan Journey atau jadwalkan Kampanye. Pengiriman yang sudah diterima dan penerima Kampanye terjadwal mempertahankan revisi yang dipatok.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

X-Banger-Product-Id
header · wajib

Produk operasi eksplisit; harus sesuai dengan kredensial OAuth bercakupan produk.

  • valuestring

    format: "uuid"

contentId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan wajib

application/json

  • valueobject

    Tidak ada properti tambahan

  • expected_versionintegerwajib

    minimum: 1

  • contractobjectwajib

    Tidak ada properti tambahan

  • source_localestring

    Lokal sumber BCP 47 kanonis; mewarisi pengaturan produk jika dihilangkan.

  • configured_localesarray

    Lokal sumber dan target; sumber yang dihilangkan ditambahkan oleh server.

    maxItems: 100 · uniqueItems: true

  • Setiap itemstring
  • fallback_localestring
  • layout_idstring

    Tata letak pakai ulang yang dipilih; server menyimpan snapshot revisi terbitnya ke revisi konten ini.

    format: "uuid"

  • localization_policyobject

    Email Journey hanya dikirim dalam bahasa orang tersebut: menunggu terjemahan sekitar satu menit untuk tanda terima, kode, dan pemberitahuan keamanan, dan hingga sehari untuk email lain, lalu tidak dikirim jika terjemahan belum siap.

    Tidak ada properti tambahan

  • manual_reviewboolean

    default: false

  • sourceobjectwajib

    Tidak ada properti tambahan

  • subjectstringwajib

    minLength: 1 · maxLength: 100000

  • preheaderstring

    maxLength: 100000

  • body_textstring

    Diterima untuk kompatibilitas sumber; teks biasa yang dirender diturunkan dari HTML final.

    maxLength: 100000

  • body_htmlstringwajib

    minLength: 1 · maxLength: 100000

  • layoutstring

    Harus berisi satu slot {{ content }}.

    maxLength: 100000

  • variantsobject

    Versi sumber opsional. Setiap versi diterjemahkan otomatis dalam revisi yang sama.

  • Properti tambahanobject

    Tidak ada properti tambahan

  • subjectstringwajib

    minLength: 1 · maxLength: 100000

  • preheaderstring

    maxLength: 100000

  • body_htmlstringwajib

    minLength: 1 · maxLength: 100000

  • body_textstring

    maxLength: 100000

  • layoutstring

    maxLength: 100000

  • variablesobjectwajib
  • Properti tambahantidak ditentukan

    Variabel bertipe rekursif. Nilai uang memakai {amount_cents: integer, currency: ISO 4217 code}; nilai date berupa tanggal kalender ISO dan datetime berupa timestamp ISO dengan offset.

  • oneOf 1object

    Tidak ada properti tambahan

  • typestringwajib

    enum: "string", "text", "url", "image_url", "html", "date", "datetime", "number", "boolean", "money"

    Penumpukan lebih lanjut dihilangkan

  • requiredboolean

    Penumpukan lebih lanjut dihilangkan

  • descriptionstring

    maxLength: 2000

    Penumpukan lebih lanjut dihilangkan

  • defaulttidak ditentukan

    Harus sesuai tipe field.

    Penumpukan lebih lanjut dihilangkan

  • oneOf 2object

    Tidak ada properti tambahan

  • typetidak ditentukanwajib

    const: "object"

    Penumpukan lebih lanjut dihilangkan

  • requiredboolean

    Penumpukan lebih lanjut dihilangkan

  • descriptionstring

    maxLength: 2000

    Penumpukan lebih lanjut dihilangkan

  • defaultobject

    Penumpukan lebih lanjut dihilangkan

  • propertiesobjectwajib

    Penumpukan lebih lanjut dihilangkan

  • oneOf 3object

    Tidak ada properti tambahan

  • typetidak ditentukanwajib

    const: "list"

    Penumpukan lebih lanjut dihilangkan

  • requiredboolean

    Penumpukan lebih lanjut dihilangkan

  • descriptionstring

    maxLength: 2000

    Penumpukan lebih lanjut dihilangkan

  • defaultarray

    Penumpukan lebih lanjut dihilangkan

  • itemstidak ditentukanwajib

    Variabel bertipe rekursif. Nilai uang memakai {amount_cents: integer, currency: ISO 4217 code}; nilai date berupa tanggal kalender ISO dan datetime berupa timestamp ISO dengan offset.

    Penumpukan lebih lanjut dihilangkan

  • samplesobject

    Kumpulan nilai contoh bernama untuk pratinjau dan validasi sumber.

  • Properti tambahanobject
  • Properti tambahanNilai apa pun
  • translationsobject

    Katalog pesan ICU sumber dan katalog target opsional yang disediakan. Target terkonfigurasi yang belum ada masuk antrean terjemahan asinkron; penyimpanan tidak memerlukannya.

  • Properti tambahanobject
  • Properti tambahanstring

Respons berhasil 200

Revisi draf baru dan pekerjaan terjemahan yang diantrekan.

application/json

  • valueobject
  • dataobjectwajib
  • idstringwajib

    format: "uuid"

  • namestringwajib
  • versionintegerwajib

    minimum: 1

  • review_requiredbooleanwajib
  • draft_revision_idstring | null

    format: "uuid"

  • submitted_revision_idstring | null

    format: "uuid"

  • approved_revision_idstring | null

    format: "uuid"

  • published_revision_idstring | null

    format: "uuid"

  • published_publication_idstring | null

    format: "uuid"

  • source_revisionobject
  • Properti tambahanNilai apa pun
  • translationsarray
  • Setiap itemobject
  • Properti tambahanNilai apa pun
  • translation_jobsarray
  • Setiap itemobject
  • Properti tambahanNilai apa pun

Contoh curl

curl --request PATCH --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/managed-content/{contentId}' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'X-Banger-Product-Id: 00000000-0000-4000-8000-000000000001' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "expected_version": 1,
  "contract": {
    "source_locale": "example",
    "configured_locales": [
      "example"
    ],
    "fallback_locale": "example",
    "layout_id": "00000000-0000-4000-8000-000000000001",
    "localization_policy": {
      "manual_review": false
    },
    "source": {
      "subject": "example",
      "preheader": "example",
      "body_text": "example",
      "body_html": "example",
      "layout": "example",
      "variants": {},
      "variables": {}
    },
    "samples": {},
    "translations": {}
  }
}'
POST/v1/workspaces/{workspaceId}/managed-content/{contentId}/render

Pratinjau revisi sumber tersimpan dan satu lokal siap tanpa mengirim.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

X-Banger-Product-Id
header · wajib

Produk operasi eksplisit; harus sesuai dengan kredensial OAuth bercakupan produk.

  • valuestring

    format: "uuid"

contentId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan wajib

application/json

  • valueobject

    Gunakan sample_set atau variables, tidak keduanya. Default contoh bernama pertama.

    Tidak ada properti tambahan

  • source_revision_idstring

    format: "uuid"

  • variantstring

    Kunci versi A/B sumber.

  • localestring
  • timezonestring

    Zona waktu IANA; default UTC.

  • sample_setstring
  • variablesobject
  • Properti tambahanNilai apa pun

Respons berhasil 200

Subjek, preheader, HTML, teks biasa turunan, lokal, dan arah yang deterministis.

application/json

  • valueobject
  • datatidak ditentukanwajib
  • allOf 1object
  • subjectstringwajib
  • preheaderstring
  • htmlstringwajib
  • textstringwajib
  • localestringwajib
  • directionstringwajib

    enum: "ltr", "rtl"

  • warningsarray
  • Setiap itemstring
  • Properti tambahanNilai apa pun
  • allOf 2object
  • source_revision_idstringwajib

    format: "uuid"

  • layout_revision_idstring | nullwajib

    format: "uuid"

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/managed-content/{contentId}/render' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'X-Banger-Product-Id: 00000000-0000-4000-8000-000000000001' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "source_revision_id": "00000000-0000-4000-8000-000000000001",
  "variant": "example",
  "locale": "example",
  "timezone": "example",
  "sample_set": "example",
  "variables": {}
}'
POST/v1/workspaces/{workspaceId}/managed-content/{contentId}/translations/{locale}/retry

Ulangi terjemahan otomatis yang gagal untuk draf sumber saat ini.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

X-Banger-Product-Id
header · wajib

Produk operasi eksplisit; harus sesuai dengan kredensial OAuth bercakupan produk.

  • valuestring

    format: "uuid"

contentId
path · wajib
  • valuestring

    format: "uuid"

locale
path · wajib
  • valuestring

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Percobaan ulang terjemahan diantrekan.

application/json

  • valueobject
  • databooleanwajib

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/managed-content/{contentId}/translations/{locale}/retry' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'X-Banger-Product-Id: 00000000-0000-4000-8000-000000000001'
GET/v1/workspaces/{workspaceId}/managed-content/{contentId}/translations

Baca katalog terjemahan dan pekerjaan persiapan revisi draf.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

X-Banger-Product-Id
header · wajib

Produk operasi eksplisit; harus sesuai dengan kredensial OAuth bercakupan produk.

  • valuestring

    format: "uuid"

contentId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Status konten saat ini termasuk terjemahan dan pekerjaan.

application/json

  • valueobject
  • datatidak ditentukanwajib
  • allOf 1object
  • idstringwajib

    format: "uuid"

  • namestringwajib
  • versionintegerwajib

    minimum: 1

  • review_requiredbooleanwajib
  • draft_revision_idstring | null

    format: "uuid"

  • submitted_revision_idstring | null

    format: "uuid"

  • approved_revision_idstring | null

    format: "uuid"

  • published_revision_idstring | null

    format: "uuid"

  • published_publication_idstring | null

    format: "uuid"

  • source_revisionobject
  • Properti tambahanNilai apa pun
  • translationsarray
  • Setiap itemobject
  • Properti tambahanNilai apa pun
  • translation_jobsarray
  • Setiap itemobject
  • Properti tambahanNilai apa pun
  • allOf 2object
  • source_revisionobjectwajib
  • idstringwajib

    format: "uuid"

  • content_idstringwajib

    format: "uuid"

  • revisionintegerwajib
  • source_localestringwajib
  • configured_localesarraywajib
  • Setiap itemstring
  • fallback_localestring | nullwajib
  • localization_policyobjectwajib

    Email Journey hanya dikirim dalam bahasa orang tersebut: menunggu terjemahan sekitar satu menit untuk tanda terima, kode, dan pemberitahuan keamanan, dan hingga sehari untuk email lain, lalu tidak dikirim jika terjemahan belum siap.

    Tidak ada properti tambahan

  • manual_reviewboolean

    default: false

  • sourceobjectwajib

    Tidak ada properti tambahan

  • subjectstringwajib

    minLength: 1 · maxLength: 100000

  • preheaderstring

    maxLength: 100000

  • body_textstring

    Diterima untuk kompatibilitas sumber; teks biasa yang dirender diturunkan dari HTML final.

    maxLength: 100000

  • body_htmlstringwajib

    minLength: 1 · maxLength: 100000

  • layoutstring

    Harus berisi satu slot {{ content }}.

    maxLength: 100000

  • variantsobject

    Versi sumber opsional. Setiap versi diterjemahkan otomatis dalam revisi yang sama.

  • Properti tambahanobject

    Tidak ada properti tambahan

    Penumpukan lebih lanjut dihilangkan

  • variablesobjectwajib
  • Properti tambahantidak ditentukan

    Variabel bertipe rekursif. Nilai uang memakai {amount_cents: integer, currency: ISO 4217 code}; nilai date berupa tanggal kalender ISO dan datetime berupa timestamp ISO dengan offset.

    Penumpukan lebih lanjut dihilangkan

  • source_messagesobjectwajib
  • Properti tambahanstring
  • layout_idstring | nullwajib

    format: "uuid"

  • layout_revision_idstring | nullwajib

    format: "uuid"

  • samplesobjectwajib
  • Properti tambahanobject
  • Properti tambahanNilai apa pun
  • restored_from_revision_idstring | nullwajib

    format: "uuid"

  • translationsarraywajib
  • Setiap itemtidak ditentukan
  • allOf 1object
  • source_revision_idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • localestringwajib

    Penumpukan lebih lanjut dihilangkan

  • stringsobjectwajib

    Penumpukan lebih lanjut dihilangkan

  • provenancestringwajib

    enum: "supplied", "generated", "reviewed"

    Penumpukan lebih lanjut dihilangkan

  • statusstringwajib

    enum: "ready", "needs_review"

    Penumpukan lebih lanjut dihilangkan

  • allOf 2object
  • strings_sha256stringwajib

    Penumpukan lebih lanjut dihilangkan

  • translation_jobsarraywajib
  • Setiap itemobject
  • idstringwajib

    format: "uuid"

  • source_revision_idstringwajib

    format: "uuid"

  • localestringwajib
  • statusstringwajib
  • attempt_countintegerwajib
  • error_codestring | nullwajib

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/managed-content/{contentId}/translations' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'X-Banger-Product-Id: 00000000-0000-4000-8000-000000000001'
POST/v1/workspaces/{workspaceId}/managed-content/{contentId}/translations/{locale}/review

Tinjau katalog terjemahan tertunda persis untuk satu revisi sumber.

Memerlukan SHA-256 katalog dari pembacaan kembali saat ini. String perbaikan opsional; operasi ini tidak menerbitkan sumber.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

X-Banger-Product-Id
header · wajib

Produk operasi eksplisit; harus sesuai dengan kredensial OAuth bercakupan produk.

  • valuestring

    format: "uuid"

contentId
path · wajib
  • valuestring

    format: "uuid"

locale
path · wajib
  • valuestring

Isi permintaan wajib

application/json

  • valueobject

    Tidak ada properti tambahan

  • source_revision_idstringwajib

    format: "uuid"

  • expected_translation_sha256stringwajib

    pattern: "^[a-f0-9]{64}$"

  • stringsobject
  • Properti tambahanstring

Respons berhasil 200

Katalog yang ditinjau dan SHA-256 barunya.

application/json

  • valueobject
  • dataobjectwajib
  • source_revision_idstringwajib

    format: "uuid"

  • localestringwajib
  • stringsobjectwajib
  • Properti tambahanstring
  • provenancestringwajib

    enum: "reviewed"

  • statusstringwajib

    enum: "ready"

  • strings_sha256stringwajib

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/managed-content/{contentId}/translations/{locale}/review' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'X-Banger-Product-Id: 00000000-0000-4000-8000-000000000001' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "source_revision_id": "00000000-0000-4000-8000-000000000001",
  "expected_translation_sha256": "example",
  "strings": {}
}'
GET/v1/workspaces/{workspaceId}/managed-content/{contentId}/versions

Daftar riwayat penerbitan tetap.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

X-Banger-Product-Id
header · wajib

Produk operasi eksplisit; harus sesuai dengan kredensial OAuth bercakupan produk.

  • valuestring

    format: "uuid"

contentId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Catatan penerbitan.

application/json

  • valueobject
  • dataobjectwajib
  • versionsarraywajib
  • Setiap itemobject
  • idstringwajib

    format: "uuid"

  • revisionintegerwajib
  • source_localestringwajib
  • configured_localesarraywajib
  • Setiap itemstring
  • sourceobjectwajib

    Tidak ada properti tambahan

  • subjectstringwajib

    minLength: 1 · maxLength: 100000

  • preheaderstring

    maxLength: 100000

  • body_textstring

    Diterima untuk kompatibilitas sumber; teks biasa yang dirender diturunkan dari HTML final.

    maxLength: 100000

  • body_htmlstringwajib

    minLength: 1 · maxLength: 100000

  • layoutstring

    Harus berisi satu slot {{ content }}.

    maxLength: 100000

  • variantsobject

    Versi sumber opsional. Setiap versi diterjemahkan otomatis dalam revisi yang sama.

  • Properti tambahanobject

    Tidak ada properti tambahan

    Penumpukan lebih lanjut dihilangkan

  • variablesobjectwajib
  • Properti tambahantidak ditentukan

    Variabel bertipe rekursif. Nilai uang memakai {amount_cents: integer, currency: ISO 4217 code}; nilai date berupa tanggal kalender ISO dan datetime berupa timestamp ISO dengan offset.

    Penumpukan lebih lanjut dihilangkan

  • source_messagesobjectwajib
  • Properti tambahanstring
  • samplesobjectwajib
  • Properti tambahanobject
  • Properti tambahanNilai apa pun
  • restored_from_revision_idstring | nullwajib

    format: "uuid"

  • created_by_actor_idstringwajib
  • created_atstringwajib

    format: "date-time"

  • publicationsarraywajib
  • Setiap itemobject
  • idstringwajib

    format: "uuid"

  • source_revision_idstringwajib

    format: "uuid"

  • approval_idstring | nullwajib

    format: "uuid"

  • published_by_actor_idstringwajib
  • published_atstringwajib

    format: "date-time"

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/managed-content/{contentId}/versions' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'X-Banger-Product-Id: 00000000-0000-4000-8000-000000000001'
POST/v1/workspaces/{workspaceId}/managed-content/{contentId}/restore

Salin revisi sumber sebelumnya ke draf baru tanpa menerbitkannya.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

X-Banger-Product-Id
header · wajib

Produk operasi eksplisit; harus sesuai dengan kredensial OAuth bercakupan produk.

  • valuestring

    format: "uuid"

contentId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan wajib

application/json

  • valueobject

    Tidak ada properti tambahan

  • source_revision_idstringwajib

    format: "uuid"

  • expected_versionintegerwajib

    minimum: 1

Respons berhasil 200

Status draf dipulihkan.

application/json

  • valueobject
  • dataobjectwajib
  • idstringwajib

    format: "uuid"

  • namestringwajib
  • versionintegerwajib

    minimum: 1

  • review_requiredbooleanwajib
  • draft_revision_idstring | null

    format: "uuid"

  • submitted_revision_idstring | null

    format: "uuid"

  • approved_revision_idstring | null

    format: "uuid"

  • published_revision_idstring | null

    format: "uuid"

  • published_publication_idstring | null

    format: "uuid"

  • source_revisionobject
  • Properti tambahanNilai apa pun
  • translationsarray
  • Setiap itemobject
  • Properti tambahanNilai apa pun
  • translation_jobsarray
  • Setiap itemobject
  • Properti tambahanNilai apa pun

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/managed-content/{contentId}/restore' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'X-Banger-Product-Id: 00000000-0000-4000-8000-000000000001' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "source_revision_id": "00000000-0000-4000-8000-000000000001",
  "expected_version": 1
}'

Tata letak terkelola

GET/v1/workspaces/{workspaceId}/managed-layouts

Daftar tata letak email produk pakai ulang.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

X-Banger-Product-Id
header · wajib

Produk operasi eksplisit; harus sesuai dengan kredensial OAuth bercakupan produk.

  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Tata letak produk.

application/json

  • valueobject
  • dataarraywajib
  • Setiap itemobject
  • idstringwajib

    format: "uuid"

  • namestringwajib
  • versionintegerwajib
  • draft_revision_idstring | nullwajib

    format: "uuid"

  • published_revision_idstring | nullwajib

    format: "uuid"

  • published_publication_idstring | nullwajib

    format: "uuid"

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/managed-layouts' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'X-Banger-Product-Id: 00000000-0000-4000-8000-000000000001'
POST/v1/workspaces/{workspaceId}/managed-layouts

Buat draf tata letak dari HTML tervalidasi atau default berbasis merek.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

X-Banger-Product-Id
header · wajib

Produk operasi eksplisit; harus sesuai dengan kredensial OAuth bercakupan produk.

  • valuestring

    format: "uuid"

Idempotency-Key
header · wajib
  • valuestring

    minLength: 1 · maxLength: 256

Isi permintaan wajib

application/json

  • valueobject

    Tidak ada properti tambahan

  • namestringwajib

    minLength: 1 · maxLength: 200

  • htmlstring

    Harus berisi tepat satu slot konten.

  • source_localestring
  • source_messagesobject
  • Properti tambahanstring
  • translationsobject
  • Properti tambahanobject
  • Properti tambahanstring

Respons berhasil 200

Respons berhasil.

application/json

  • valueobject
  • dataobjectwajib
  • idstringwajib

    format: "uuid"

  • namestringwajib
  • versionintegerwajib
  • draft_revision_idstring | nullwajib

    format: "uuid"

  • published_revision_idstring | nullwajib

    format: "uuid"

  • published_publication_idstring | nullwajib

    format: "uuid"

  • replayedbooleanwajib

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/managed-layouts' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'X-Banger-Product-Id: 00000000-0000-4000-8000-000000000001' \
  --header 'Idempotency-Key: example' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "name": "example",
  "html": "example",
  "source_locale": "example",
  "source_messages": {},
  "translations": {}
}'
GET/v1/workspaces/{workspaceId}/managed-layouts/{layoutId}

Baca tata letak dan revisi draf saat ini.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

X-Banger-Product-Id
header · wajib

Produk operasi eksplisit; harus sesuai dengan kredensial OAuth bercakupan produk.

  • valuestring

    format: "uuid"

layoutId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Tata letak dan revisi draf.

application/json

  • valueobject
  • dataobjectwajib
  • idstringwajib

    format: "uuid"

  • namestringwajib
  • versionintegerwajib
  • draft_revision_idstring | nullwajib

    format: "uuid"

  • published_revision_idstring | nullwajib

    format: "uuid"

  • published_publication_idstring | nullwajib

    format: "uuid"

  • draft_revisiontidak ditentukanwajib
  • anyOf 1object
  • idstringwajib

    format: "uuid"

  • layout_idstring

    format: "uuid"

  • revisionintegerwajib
  • htmlstringwajib
  • brand_snapshotobjectwajib
  • company_namestring

    maxLength: 160

  • logo_urlstring

    Ikon: simbol tersendiri, digunakan dalam ukuran kecil (footer email, formulir slide-in) dan sebagai header saat tidak ada logo teks.

    maxLength: 2000

  • wordmark_urlstring

    Logo teks: nama perusahaan dalam bentuk desainnya, ditampilkan sendiri di bagian atas setiap email.

    maxLength: 2000

  • website_urlstring

    maxLength: 2000

  • primary_colorstring

    maxLength: 7

  • accent_colorstring

    maxLength: 7

  • background_colorstring

    maxLength: 7

  • surface_colorstring

    maxLength: 7

  • text_colorstring

    maxLength: 7

  • muted_text_colorstring

    maxLength: 7

  • heading_font_familystring

    maxLength: 200

  • body_font_familystring

    maxLength: 200

  • tonestring

    maxLength: 1000

  • footer_addressstring

    maxLength: 500

  • email_stylestring

    maxLength: 20

  • source_localestringwajib
  • source_messagesobjectwajib
  • Properti tambahanstring
  • translationsobjectwajib
  • Properti tambahanobject
  • Properti tambahanstring

    Penumpukan lebih lanjut dihilangkan

  • restored_from_revision_idstring | nullwajib

    format: "uuid"

  • created_by_actor_idstring
  • created_atstring

    format: "date-time"

  • anyOf 2null

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/managed-layouts/{layoutId}' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'X-Banger-Product-Id: 00000000-0000-4000-8000-000000000001'
PATCH/v1/workspaces/{workspaceId}/managed-layouts/{layoutId}

Simpan revisi draf tata letak tervalidasi.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

X-Banger-Product-Id
header · wajib

Produk operasi eksplisit; harus sesuai dengan kredensial OAuth bercakupan produk.

  • valuestring

    format: "uuid"

layoutId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan wajib

application/json

  • valueobject

    Tidak ada properti tambahan

  • expected_versionintegerwajib

    minimum: 1

  • htmlstringwajib

    Harus berisi tepat satu slot konten.

  • source_localestring
  • source_messagesobject
  • Properti tambahanstring
  • translationsobject
  • Properti tambahanobject
  • Properti tambahanstring

Respons berhasil 200

Revisi draf baru.

application/json

  • valueobject
  • dataobjectwajib
  • idstringwajib

    format: "uuid"

  • namestringwajib
  • versionintegerwajib
  • draft_revision_idstring | nullwajib

    format: "uuid"

  • published_revision_idstring | nullwajib

    format: "uuid"

  • published_publication_idstring | nullwajib

    format: "uuid"

Contoh curl

curl --request PATCH --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/managed-layouts/{layoutId}' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'X-Banger-Product-Id: 00000000-0000-4000-8000-000000000001' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "expected_version": 1,
  "html": "example",
  "source_locale": "example",
  "source_messages": {},
  "translations": {}
}'
GET/v1/workspaces/{workspaceId}/managed-layouts/{layoutId}/versions

Daftar revisi tata letak tetap.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

X-Banger-Product-Id
header · wajib

Produk operasi eksplisit; harus sesuai dengan kredensial OAuth bercakupan produk.

  • valuestring

    format: "uuid"

layoutId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Revisi tata letak.

application/json

  • valueobject
  • dataarraywajib
  • Setiap itemobject
  • idstringwajib

    format: "uuid"

  • layout_idstring

    format: "uuid"

  • revisionintegerwajib
  • htmlstringwajib
  • brand_snapshotobjectwajib
  • company_namestring

    maxLength: 160

  • logo_urlstring

    Ikon: simbol tersendiri, digunakan dalam ukuran kecil (footer email, formulir slide-in) dan sebagai header saat tidak ada logo teks.

    maxLength: 2000

  • wordmark_urlstring

    Logo teks: nama perusahaan dalam bentuk desainnya, ditampilkan sendiri di bagian atas setiap email.

    maxLength: 2000

  • website_urlstring

    maxLength: 2000

  • primary_colorstring

    maxLength: 7

  • accent_colorstring

    maxLength: 7

  • background_colorstring

    maxLength: 7

  • surface_colorstring

    maxLength: 7

  • text_colorstring

    maxLength: 7

  • muted_text_colorstring

    maxLength: 7

  • heading_font_familystring

    maxLength: 200

  • body_font_familystring

    maxLength: 200

  • tonestring

    maxLength: 1000

  • footer_addressstring

    maxLength: 500

  • email_stylestring

    maxLength: 20

  • source_localestringwajib
  • source_messagesobjectwajib
  • Properti tambahanstring
  • translationsobjectwajib
  • Properti tambahanobject
  • Properti tambahanstring
  • restored_from_revision_idstring | nullwajib

    format: "uuid"

  • created_by_actor_idstring
  • created_atstring

    format: "date-time"

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/managed-layouts/{layoutId}/versions' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'X-Banger-Product-Id: 00000000-0000-4000-8000-000000000001'
GET/v1/workspaces/{workspaceId}/managed-layouts/{layoutId}/impact

Jelaskan draf dan penerbitan konten yang bergantung pada tata letak ini.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

X-Banger-Product-Id
header · wajib

Produk operasi eksplisit; harus sesuai dengan kredensial OAuth bercakupan produk.

  • valuestring

    format: "uuid"

layoutId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Dampak ketergantungan tata letak.

application/json

  • valueobject
  • dataobjectwajib
  • layout_idstringwajib

    format: "uuid"

  • layout_revision_idstringwajib

    format: "uuid"

  • layout_versionintegerwajib
  • affected_contentsarraywajib
  • Setiap itemobject
  • content_idstringwajib

    format: "uuid"

  • versionintegerwajib
  • published_revision_idstringwajib

    format: "uuid"

  • active_journeysarraywajib
  • Setiap itemobject
  • journey_idstringwajib

    format: "uuid"

  • versionintegerwajib
  • definition_sha256stringwajib
  • manifest_sha256stringwajib

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/managed-layouts/{layoutId}/impact' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'X-Banger-Product-Id: 00000000-0000-4000-8000-000000000001'
POST/v1/workspaces/{workspaceId}/managed-layouts/{layoutId}/restore

Salin revisi tata letak tetap ke draf baru.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

X-Banger-Product-Id
header · wajib

Produk operasi eksplisit; harus sesuai dengan kredensial OAuth bercakupan produk.

  • valuestring

    format: "uuid"

layoutId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan wajib

application/json

  • valueobject

    Tidak ada properti tambahan

  • layout_revision_idstringwajib

    format: "uuid"

  • expected_versionintegerwajib

    minimum: 1

Respons berhasil 200

Revisi draf dipulihkan.

application/json

  • valueobject
  • dataobjectwajib
  • idstringwajib

    format: "uuid"

  • namestringwajib
  • versionintegerwajib
  • draft_revision_idstring | nullwajib

    format: "uuid"

  • published_revision_idstring | nullwajib

    format: "uuid"

  • published_publication_idstring | nullwajib

    format: "uuid"

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/managed-layouts/{layoutId}/restore' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'X-Banger-Product-Id: 00000000-0000-4000-8000-000000000001' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "layout_revision_id": "00000000-0000-4000-8000-000000000001",
  "expected_version": 1
}'

Anggota

PATCH/v1/workspaces/{workspaceId}/members/{memberId}

Ubah peran anggota lain.

Pemilik dan admin menetapkan admin, member, atau viewer pada anggota lain. Orang yang masuk, atau agen melalui izin OAuth-nya, harus membuat perubahan; kunci API mandiri tidak bisa. Tidak ada yang dapat mengubah peran sendiri dan peran pemilik tidak dapat diubah. Menetapkan peran saat ini tidak mengubah apa pun.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

memberId
path · wajib

ID identitas anggota, sebagai `id` dalam direktori ruang kerja.

  • valuestring

    format: "uuid"

Isi permintaan wajib

application/json

  • valueobject

    Tidak ada properti tambahan

  • rolestringwajib

    enum: "admin", "member", "viewer"

Respons berhasil 200

Anggota beserta peran baru dan sebelumnya.

application/json

  • valueobject
  • datatidak ditentukanwajib
  • allOf 1object
  • idstringwajib

    format: "uuid"

  • userIdstringwajib
  • emailstring

    format: "email"

  • displayNamestring
  • kindstringwajib

    const: "user"

  • rolestringwajib

    enum: "owner", "admin", "member", "viewer"

  • statusstringwajib

    enum: "active", "suspended"

  • allOf 2object
  • previousRolestringwajib

    enum: "owner", "admin", "member", "viewer"

Contoh curl

curl --request PATCH --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/members/{memberId}' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "role": "admin"
}'

Oauth

POST/v1/workspaces/{workspaceId}/oauth/setup-ticket

Buat tiket penyiapan koneksi agen

Memerlukan sesi manusia yang sudah masuk. Kunci API dan kredensial agen tidak dapat mengizinkan operasi ini.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan wajib

application/json

  • valueobject
  • entry_surfacestringwajib

    enum: "codex", "chatgpt", "claude", "grok", "other_agent"

  • client_namestringwajib

    minLength: 1 · maxLength: 100

Respons berhasil 201

Respons berhasil.

application/json

  • valueobject
  • dataobjectwajib
  • mcp_urlstringwajib
  • expires_atstringwajib

    format: "date-time"

  • scopesarraywajib
  • Setiap itemstring

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/oauth/setup-ticket' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "entry_surface": "codex",
  "client_name": "example"
}'
POST/v1/workspaces/{workspaceId}/oauth/setup-ticket/connection-code

Kirim kode koneksi agen lewat email

Memerlukan sesi manusia yang sudah masuk. Kunci API dan kredensial agen tidak dapat mengizinkan operasi ini.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan wajib

application/json

  • valueobject
  • mcp_urlstringwajib

    minLength: 8 · maxLength: 8000

  • reuse_pendingboolean

Respons berhasil 201

Respons berhasil.

application/json

  • valueobject
  • dataobjectwajib
  • statusstringwajib

    enum: "code_sent"

  • messagestring
  • expires_atstringwajib

    format: "date-time"

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/oauth/setup-ticket/connection-code' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "mcp_url": "examplex",
  "reuse_pending": true
}'
DELETE/v1/workspaces/{workspaceId}/oauth/setup-ticket/connection-code

Batalkan kode koneksi agen tertunda

Memerlukan sesi manusia yang sudah masuk. Kunci API dan kredensial agen tidak dapat mengizinkan operasi ini.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan wajib

application/json

  • valueobject
  • mcp_urlstringwajib

    minLength: 8 · maxLength: 8000

Respons berhasil 200

Respons berhasil.

application/json

  • valueobject
  • dataobjectwajib
  • statusstringwajib

    enum: "cancelled"

Contoh curl

curl --request DELETE --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/oauth/setup-ticket/connection-code' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "mcp_url": "examplex"
}'

Klien Oauth

GET/v1/workspaces/{workspaceId}/oauth-clients

Daftar klien OAuth ruang kerja untuk platform agen yang terhubung dengan ID klien dan rahasia, seperti Gemini Enterprise.

Hanya pemilik dan admin. Rahasia tidak pernah dikembalikan.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Klien OAuth aktif, terbaru dahulu.

application/json

  • valueobject
  • dataarraywajib
  • Setiap itemobject
  • client_idstringwajib
  • namestringwajib
  • presetstringwajib

    enum: "gemini_enterprise", "custom"

  • client_surfacestringwajib

    Platform agen di balik koneksi OAuth, dari nama klien dan URI pengalihannya.

    enum: "codex", "chatgpt", "claude", "grok", "gemini", "other_agent"

  • redirect_urisarraywajib
  • Setiap itemstring

    format: "uri"

  • connectionsintegerwajib

    Koneksi aktif yang dibuat melalui klien ini.

    minimum: 0

  • created_atstringwajib

    format: "date-time"

  • created_by_youbooleanwajib
  • setupobjectwajib

    Nilai yang dimasukkan pada formulir server MCP khusus platform agen.

  • server_urlstringwajib

    format: "uri"

  • authorization_urlstringwajib

    format: "uri"

  • token_urlstringwajib

    format: "uri"

  • scopesstringwajib

    Dipisahkan spasi. offline_access meminta token penyegaran, yang dimiliki setiap koneksi.

  • token_endpoint_auth_methodsarraywajib
  • Setiap itemstring

    enum: "client_secret_basic", "client_secret_post"

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/oauth-clients' \
  --header "Authorization: Bearer $BANGER_API_KEY"
POST/v1/workspaces/{workspaceId}/oauth-clients

Buat klien OAuth rahasia (ID klien dan rahasia) untuk platform agen.

Hanya pemilik dan admin. Setiap anggota yang terhubung melalui klien masuk ke Banger, menyetujui akses, dan bertindak dengan perannya sendiri di ruang kerja ini.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan wajib

application/json

  • valueobject

    Tidak ada properti tambahan

  • namestring

    Ditampilkan di Aplikasi terhubung. Default "Gemini Enterprise" untuk preset itu.

    minLength: 1 · maxLength: 100

  • presetstring

    gemini_enterprise memakai URI pengalihan Google; custom memerlukan redirect_uris.

    default: "gemini_enterprise" · enum: "gemini_enterprise", "custom"

  • redirect_urisarray

    Hanya preset khusus. URI pengalihan HTTPS, tetap saat pembuatan.

    minItems: 1 · maxItems: 10

  • Setiap itemstring

    format: "uri"

Respons berhasil 201

Klien OAuth dibuat. Rahasia klien hanya dikembalikan sekali.

application/json

  • valueobject
  • datatidak ditentukanwajib
  • allOf 1object
  • client_idstringwajib
  • namestringwajib
  • presetstringwajib

    enum: "gemini_enterprise", "custom"

  • client_surfacestringwajib

    Platform agen di balik koneksi OAuth, dari nama klien dan URI pengalihannya.

    enum: "codex", "chatgpt", "claude", "grok", "gemini", "other_agent"

  • redirect_urisarraywajib
  • Setiap itemstring

    format: "uri"

  • connectionsintegerwajib

    Koneksi aktif yang dibuat melalui klien ini.

    minimum: 0

  • created_atstringwajib

    format: "date-time"

  • created_by_youbooleanwajib
  • setupobjectwajib

    Nilai yang dimasukkan pada formulir server MCP khusus platform agen.

  • server_urlstringwajib

    format: "uri"

  • authorization_urlstringwajib

    format: "uri"

  • token_urlstringwajib

    format: "uri"

  • scopesstringwajib

    Dipisahkan spasi. offline_access meminta token penyegaran, yang dimiliki setiap koneksi.

  • token_endpoint_auth_methodsarraywajib
  • Setiap itemstring

    enum: "client_secret_basic", "client_secret_post"

  • allOf 2object
  • client_secretstringwajib

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/oauth-clients' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "name": "example",
  "preset": "gemini_enterprise",
  "redirect_uris": [
    "https://example.com"
  ]
}'
POST/v1/workspaces/{workspaceId}/oauth-clients/{clientId}/revoke

Cabut klien OAuth. Rahasianya berhenti bekerja dan semua koneksi melaluinya kehilangan akses dalam sekitar 30 detik.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

clientId
path · wajib
  • valuestring

    maxLength: 200

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Klien OAuth dicabut.

application/json

  • valueobject
  • dataobjectwajib
  • client_idstringwajib
  • revokedbooleanwajib

    const: true

  • revoked_connectionsintegerwajib

    minimum: 0

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/oauth-clients/{clientId}/revoke' \
  --header "Authorization: Bearer $BANGER_API_KEY"

Tiket waktu nyata

POST/v1/workspaces/{workspaceId}/realtime-ticket

createRealtimeTicket

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan wajib

application/json

  • valueobject
  • device_idstringwajib

    minLength: 8 · maxLength: 128

Respons berhasil 200

Tiket berumur singkat dengan cakupan pelaku dan ruang kerja.

application/json

  • valueobject
  • dataobjectwajib
  • ticketstringwajib
  • websocket_urlstringwajib

    format: "uri"

  • expires_atstringwajib

    format: "date-time"

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/realtime-ticket' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "device_id": "examplex"
}'

Kebijakan peninjauan

GET/v1/workspaces/{workspaceId}/review-policy

getActionReviewPolicy

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Kebijakan tinjauan otomatis ruang kerja.

application/json

  • valueobject
  • dataobjectwajib
  • policy_versionintegerwajib

    enum: 1, 2

  • automatic_review_enabledbooleanwajib
  • manual_send_review_enabledbooleanwajib

    Default False untuk permintaan langsung; batas tersimpan yang lebih ketat tetap aktif.

  • manual_send_recipient_thresholdintegerwajib

    minimum: 1 · maximum: 1000000

  • updated_by_actor_idstringwajib
  • created_atstring | null

    format: "date-time"

  • updated_atstring | null

    format: "date-time"

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/review-policy' \
  --header "Authorization: Bearer $BANGER_API_KEY"
PUT/v1/workspaces/{workspaceId}/review-policy

updateActionReviewPolicy

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan wajib

application/json

  • valueobject

    Tidak ada properti tambahan

  • automatic_review_enabledbooleanwajib
  • manual_send_recipient_thresholdintegerwajib

    minimum: 1 · maximum: 1000000

  • manual_send_review_enabledboolean

    Aktifkan batas tinjauan manusia opsional; pembaruan ambang lama eksplisit menjaganya tetap aktif.

Respons berhasil 200

Kebijakan tinjauan otomatis diperbarui.

application/json

  • valueobject
  • dataobjectwajib
  • policy_versionintegerwajib

    enum: 1, 2

  • automatic_review_enabledbooleanwajib
  • manual_send_review_enabledbooleanwajib

    Default False untuk permintaan langsung; batas tersimpan yang lebih ketat tetap aktif.

  • manual_send_recipient_thresholdintegerwajib

    minimum: 1 · maximum: 1000000

  • updated_by_actor_idstringwajib
  • created_atstring | null

    format: "date-time"

  • updated_atstring | null

    format: "date-time"

Contoh curl

curl --request PUT --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/review-policy' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "automatic_review_enabled": true,
  "manual_send_recipient_threshold": 1,
  "manual_send_review_enabled": true
}'

Pilih

POST/v1/workspaces/{workspaceId}/select

Jadikan ruang kerja sebagai ruang kerja saat ini bagi orang yang masuk.

Hanya sesi browser; kunci API dan izin OAuth dipatok pada ruang kerja yang diizinkan dan menerima 403 credential_workspace_pinned. Memerlukan keanggotaan aktif. Aplikasi lalu membuka ruang kerja ini dengan produk dan onboarding-nya. Journey onboarding orang tersebut tidak direset. Idempoten.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Ruang kerja dipilih.

application/json

  • valueobject
  • dataobjectwajib

    Tidak ada properti tambahan

  • selected_workspace_idstringwajib

    format: "uuid"

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/select' \
  --header "Authorization: Bearer $BANGER_API_KEY"

Avatar pengirim

GET/v1/workspaces/{workspaceId}/sender-avatar

getSenderAvatar

Selesaikan avatar pengirim persis dahulu, lalu temukan dan cache ikon domain pengirim pada awalan B2 privat ruang kerja. Pengirim tanpa gambar menjawab 204; 404 berarti alamat bukan pengirim di ruang kerja ini.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

email
query · wajib
  • valuestring

    format: "email" · maxLength: 320

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Gambar avatar pengirim atau domain terautentikasi.

image/png

  • valuestring

    format: "binary"

image/jpeg

  • valuestring

    format: "binary"

image/webp

  • valuestring

    format: "binary"

image/svg+xml

  • valuestring

    format: "binary"

image/x-icon

  • valuestring

    format: "binary"

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/sender-avatar?email=person%40example.com' \
  --header "Authorization: Bearer $BANGER_API_KEY"

Kondisi pengiriman

GET/v1/workspaces/{workspaceId}/sending-health

Baca status penerapan reputasi pengirim, tingkat jalur, jeda, dan ambang yang diterapkan.

Setiap jalur (Kotak surat, Produk, Kampanye) dari setiap domain pengiriman beserta tingkat hard bounce dan keluhan 24 jam terakhir serta status (active, warning, paused), jeda domain, kotak surat dijeda, dan apakah ruang kerja dibekukan. Tiap jeda mencantumkan sumber bounce dan keluhan utama serta apakah admin ruang kerja dapat melanjutkannya. Ambang didokumentasikan di docs/product/sending-reputation-enforcement.md.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Kondisi pengiriman.

application/json

  • valueobject
  • dataobjectwajib
  • workspaceobjectwajib
  • statestringwajib

    enum: "active", "frozen"

  • holdtidak ditentukanwajib
  • oneOf 1object
  • idstringwajib

    format: "uuid"

  • scopestringwajib

    enum: "mailbox", "lane", "domain", "workspace"

  • statestringwajib

    enum: "warning", "paused", "frozen"

  • reasonstringwajib

    bounce_rate, complaint_rate, core_lane_paused, multiple_lanes_paused, repeat_lane_pause, multiple_domains_paused, shared_organizational_root, atau complaint_burst.

  • started_atstringwajib

    format: "date-time"

  • review_requiredbooleanwajib
  • evidenceobjectwajib
  • Properti tambahanNilai apa pun
  • resumeobjectwajib
  • self_servebooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • blocked_reasonstring | nullwajib

    Penumpukan lebih lanjut dihilangkan

  • resumable_atstring | nullwajib

    format: "date-time"

    Penumpukan lebih lanjut dihilangkan

  • top_sourcesarray
  • Setiap itemobject

    Penumpukan lebih lanjut dihilangkan

  • top_recipient_domainsarray
  • Setiap itemobject

    Penumpukan lebih lanjut dihilangkan

  • oneOf 2null
  • domainsarraywajib
  • Setiap itemobject
  • domain_idstringwajib

    format: "uuid"

  • domainstringwajib
  • product_idstring | nullwajib

    format: "uuid"

  • statestringwajib

    enum: "active", "paused"

  • holdtidak ditentukanwajib
  • oneOf 1object
  • idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • scopestringwajib

    enum: "mailbox", "lane", "domain", "workspace"

    Penumpukan lebih lanjut dihilangkan

  • statestringwajib

    enum: "warning", "paused", "frozen"

    Penumpukan lebih lanjut dihilangkan

  • reasonstringwajib

    bounce_rate, complaint_rate, core_lane_paused, multiple_lanes_paused, repeat_lane_pause, multiple_domains_paused, shared_organizational_root, atau complaint_burst.

    Penumpukan lebih lanjut dihilangkan

  • started_atstringwajib

    format: "date-time"

    Penumpukan lebih lanjut dihilangkan

  • review_requiredbooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • evidenceobjectwajib

    Penumpukan lebih lanjut dihilangkan

  • resumeobjectwajib

    Penumpukan lebih lanjut dihilangkan

  • top_sourcesarray

    Penumpukan lebih lanjut dihilangkan

  • top_recipient_domainsarray

    Penumpukan lebih lanjut dihilangkan

  • oneOf 2null
  • lanesarraywajib
  • Setiap itemobject
  • lane_kindstringwajib

    enum: "mailbox", "product", "broadcast"

    Penumpukan lebih lanjut dihilangkan

  • sending_stream_idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • from_domainstringwajib

    Penumpukan lebih lanjut dihilangkan

  • statestringwajib

    enum: "active", "warning", "paused"

    Penumpukan lebih lanjut dihilangkan

  • probation_untilstring | nullwajib

    format: "date-time"

    Penumpukan lebih lanjut dihilangkan

  • ratesobjectwajib

    Penumpukan lebih lanjut dihilangkan

  • holdtidak ditentukanwajib

    Penumpukan lebih lanjut dihilangkan

  • mailboxesarraywajib
  • Setiap itemobject
  • mailbox_idstringwajib

    format: "uuid"

  • addressstringwajib
  • product_idstring | nullwajib

    format: "uuid"

  • statestringwajib

    enum: "paused"

  • holdobjectwajib
  • idstringwajib

    format: "uuid"

  • scopestringwajib

    enum: "mailbox", "lane", "domain", "workspace"

  • statestringwajib

    enum: "warning", "paused", "frozen"

  • reasonstringwajib

    bounce_rate, complaint_rate, core_lane_paused, multiple_lanes_paused, repeat_lane_pause, multiple_domains_paused, shared_organizational_root, atau complaint_burst.

  • started_atstringwajib

    format: "date-time"

  • review_requiredbooleanwajib
  • evidenceobjectwajib
  • Properti tambahanNilai apa pun
  • resumeobjectwajib
  • self_servebooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • blocked_reasonstring | nullwajib

    Penumpukan lebih lanjut dihilangkan

  • resumable_atstring | nullwajib

    format: "date-time"

    Penumpukan lebih lanjut dihilangkan

  • top_sourcesarray
  • Setiap itemobject

    Penumpukan lebih lanjut dihilangkan

  • top_recipient_domainsarray
  • Setiap itemobject

    Penumpukan lebih lanjut dihilangkan

  • thresholdsobjectwajib

    Ambang yang diterapkan (src/sending/reputation-policy.ts).

  • Properti tambahanNilai apa pun

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/sending-health' \
  --header "Authorization: Bearer $BANGER_API_KEY"
POST/v1/workspaces/{workspaceId}/sending-health/resume

Lanjutkan satu jeda jalur, domain, atau kotak surat setelah meninjau tingkat dan sumbernya.

Hanya admin ruang kerja. Diizinkan 24 jam setelah jeda jalur atau domain dan sekali per 30 hari per domain. Jeda berulang dalam 30 hari atau ruang kerja beku memerlukan tinjauan Banger dan ditolak dengan 423. Setelah dilanjutkan, jalur mengirim dalam batch lebih kecil selama 24 jam; Kampanye dan Journey yang ditahan berlanjut otomatis.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan wajib

application/json

  • valueobject

    Tidak ada properti tambahan

  • hold_idstringwajib

    Jeda (hold.id) dari getSendingHealth.

    format: "uuid"

  • acknowledge_reputation_riskbooleanwajib

    const: true

  • reasonstring

    Hal yang diperbaiki; dicatat di log audit.

    maxLength: 500

Respons berhasil 200

Jeda dilepas.

application/json

  • valueobject
  • dataobjectwajib
  • resumedobjectwajib
  • idstringwajib

    format: "uuid"

  • scopestringwajib

    enum: "mailbox", "lane", "domain", "workspace"

  • statestringwajib

    enum: "warning", "paused", "frozen"

  • reasonstringwajib

    bounce_rate, complaint_rate, core_lane_paused, multiple_lanes_paused, repeat_lane_pause, multiple_domains_paused, shared_organizational_root, atau complaint_burst.

  • started_atstringwajib

    format: "date-time"

  • review_requiredbooleanwajib
  • evidenceobjectwajib
  • Properti tambahanNilai apa pun
  • resumeobjectwajib
  • self_servebooleanwajib
  • blocked_reasonstring | nullwajib
  • resumable_atstring | nullwajib

    format: "date-time"

  • top_sourcesarray
  • Setiap itemobject
  • signalstringwajib

    enum: "hard_bounce", "complaint"

  • sourcestringwajib
  • source_idstring | nullwajib
  • countintegerwajib
  • top_recipient_domainsarray
  • Setiap itemobject
  • signalstringwajib

    enum: "hard_bounce", "complaint"

  • recipient_domainstringwajib
  • countintegerwajib
  • probation_untilstring | nullwajib

    format: "date-time"

  • healthobjectwajib
  • workspaceobjectwajib
  • statestringwajib

    enum: "active", "frozen"

  • holdtidak ditentukanwajib
  • oneOf 1object
  • idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • scopestringwajib

    enum: "mailbox", "lane", "domain", "workspace"

    Penumpukan lebih lanjut dihilangkan

  • statestringwajib

    enum: "warning", "paused", "frozen"

    Penumpukan lebih lanjut dihilangkan

  • reasonstringwajib

    bounce_rate, complaint_rate, core_lane_paused, multiple_lanes_paused, repeat_lane_pause, multiple_domains_paused, shared_organizational_root, atau complaint_burst.

    Penumpukan lebih lanjut dihilangkan

  • started_atstringwajib

    format: "date-time"

    Penumpukan lebih lanjut dihilangkan

  • review_requiredbooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • evidenceobjectwajib

    Penumpukan lebih lanjut dihilangkan

  • resumeobjectwajib

    Penumpukan lebih lanjut dihilangkan

  • top_sourcesarray

    Penumpukan lebih lanjut dihilangkan

  • top_recipient_domainsarray

    Penumpukan lebih lanjut dihilangkan

  • oneOf 2null
  • domainsarraywajib
  • Setiap itemobject
  • domain_idstringwajib

    format: "uuid"

  • domainstringwajib
  • product_idstring | nullwajib

    format: "uuid"

  • statestringwajib

    enum: "active", "paused"

  • holdtidak ditentukanwajib
  • oneOf 1object

    Penumpukan lebih lanjut dihilangkan

  • oneOf 2null

    Penumpukan lebih lanjut dihilangkan

  • lanesarraywajib
  • Setiap itemobject

    Penumpukan lebih lanjut dihilangkan

  • mailboxesarraywajib
  • Setiap itemobject
  • mailbox_idstringwajib

    format: "uuid"

  • addressstringwajib
  • product_idstring | nullwajib

    format: "uuid"

  • statestringwajib

    enum: "paused"

  • holdobjectwajib
  • idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • scopestringwajib

    enum: "mailbox", "lane", "domain", "workspace"

    Penumpukan lebih lanjut dihilangkan

  • statestringwajib

    enum: "warning", "paused", "frozen"

    Penumpukan lebih lanjut dihilangkan

  • reasonstringwajib

    bounce_rate, complaint_rate, core_lane_paused, multiple_lanes_paused, repeat_lane_pause, multiple_domains_paused, shared_organizational_root, atau complaint_burst.

    Penumpukan lebih lanjut dihilangkan

  • started_atstringwajib

    format: "date-time"

    Penumpukan lebih lanjut dihilangkan

  • review_requiredbooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • evidenceobjectwajib

    Penumpukan lebih lanjut dihilangkan

  • resumeobjectwajib

    Penumpukan lebih lanjut dihilangkan

  • top_sourcesarray

    Penumpukan lebih lanjut dihilangkan

  • top_recipient_domainsarray

    Penumpukan lebih lanjut dihilangkan

  • thresholdsobjectwajib

    Ambang yang diterapkan (src/sending/reputation-policy.ts).

  • Properti tambahanNilai apa pun

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/sending-health/resume' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "hold_id": "00000000-0000-4000-8000-000000000001",
  "acknowledge_reputation_risk": true,
  "reason": "example"
}'

Jalur pengiriman

GET/v1/workspaces/{workspaceId}/sending-lanes

listEmailLanes

Jalur terkonfigurasi dan perutean efektif untuk pengirim default. Produk dan Kampanye mewarisi koneksi Email default hingga jalur khusus aktif. Jalur tertunda tidak mengganti rute yang berfungsi.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

X-Banger-Product-Id
header · wajib

Produk operasi eksplisit; harus sesuai dengan kredensial OAuth bercakupan produk.

  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Jalur kanonis, rute warisan, dan pengirim default yang ada.

application/json

  • valueobject
  • dataobjectwajib
  • domainsarraywajib
  • Setiap itemobject

    Tidak ada properti tambahan

  • domain_idstringwajib

    format: "uuid"

  • product_idstringwajib

    format: "uuid"

  • root_domainstringwajib
  • parent_domainstring

    Domain perusahaan yang dipertahankan saat jalur memakai subdomain.

  • setup_modestring

    enum: "simple", "advanced"

  • domain_statusstringwajib

    enum: "pending", "verified", "failed", "disabled", "deleting", "deleted"

  • lanesarraywajib

    minItems: 1 · maxItems: 3

  • Setiap itemobject

    Tidak ada properti tambahan

  • idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • created_atstring

    format: "date-time"

    Penumpukan lebih lanjut dihilangkan

  • kindstringwajib

    enum: "mailbox", "product", "broadcast"

    Penumpukan lebih lanjut dihilangkan

  • display_namestringwajib

    Penumpukan lebih lanjut dihilangkan

  • from_domainstringwajib

    Penumpukan lebih lanjut dihilangkan

  • mail_from_domainstring | nullwajib

    Penumpukan lebih lanjut dihilangkan

  • inbound_domainstring | nullwajib

    Penumpukan lebih lanjut dihilangkan

  • route_providerstringwajib

    enum: "banger", "resend"

    Penumpukan lebih lanjut dihilangkan

  • selected_provider_connection_idstring | nullwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • inbound_providerstring | nullwajib

    enum: "banger", null

    Penumpukan lebih lanjut dihilangkan

  • statusstringwajib

    enum: "pending", "active", "paused", "deleting", "deleted"

    Penumpukan lebih lanjut dihilangkan

  • status_reasonstring | nullwajib

    Penumpukan lebih lanjut dihilangkan

  • desired_revisionintegerwajib

    minimum: 1

    Penumpukan lebih lanjut dihilangkan

  • observed_revisionintegerwajib

    minimum: 0

    Penumpukan lebih lanjut dihilangkan

  • dns_readybooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • provider_readybooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • inbound_readybooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • outbound_readybooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • banger_transport_readybooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • banger_mail_from_domainstring | nullwajib

    Penumpukan lebih lanjut dihilangkan

  • provisioning_job_idstring | nullwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • provisioning_statusstringwajib

    enum: "pending", "provisioning", "waiting_dns", "active", "failed", "deleting", "deleted", "not_required"

    Penumpukan lebih lanjut dihilangkan

  • provisioning_error_codestring | null

    Penumpukan lebih lanjut dihilangkan

  • provisioning_next_attempt_atstring | null

    Penumpukan lebih lanjut dihilangkan

  • provisioning_last_checked_atstring | null

    Penumpukan lebih lanjut dihilangkan

  • provider_identity_statusstring | null

    Penumpukan lebih lanjut dihilangkan

  • provider_dkim_statusstring | null

    Penumpukan lebih lanjut dihilangkan

  • dns_recordsarraywajib

    Penumpukan lebih lanjut dihilangkan

  • dns_recordsarraywajib
  • Setiap itemobject

    Tidak ada properti tambahan

  • idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • lane_idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • providerstringwajib

    enum: "banger", "resend"

    Penumpukan lebih lanjut dihilangkan

  • purposestringwajib

    Penumpukan lebih lanjut dihilangkan

  • typestringwajib

    enum: "TXT", "MX", "CNAME"

    Penumpukan lebih lanjut dihilangkan

  • namestringwajib

    Penumpukan lebih lanjut dihilangkan

  • valuestringwajib

    Penumpukan lebih lanjut dihilangkan

  • priorityinteger | nullwajib

    Penumpukan lebih lanjut dihilangkan

  • requiredbooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • statusstringwajib

    enum: "pending", "verified", "error"

    Penumpukan lebih lanjut dihilangkan

  • provider_statusstringwajib

    enum: "pending", "verified", "error", "not_applicable"

    Penumpukan lebih lanjut dihilangkan

  • first_observed_atstring | nullwajib

    format: "date-time"

    Penumpukan lebih lanjut dihilangkan

  • last_checked_atstring | nullwajib

    format: "date-time"

    Penumpukan lebih lanjut dihilangkan

  • errorobjectwajib

    Penumpukan lebih lanjut dihilangkan

  • provider_referencestring | nullwajib

    Penumpukan lebih lanjut dihilangkan

  • deletionobject | nullwajib

    Tidak ada properti tambahan

  • job_idstringwajib

    format: "uuid"

  • statusstringwajib

    enum: "pending", "processing", "waiting_provider", "completed", "failed"

  • last_error_codestring | nullwajib
  • cleanup_recordsarraywajib

    Catatan DNS persis yang dapat dihapus pengguna setelah pembongkaran selesai.

  • Setiap itemobject

    Tidak ada properti tambahan

    Penumpukan lebih lanjut dihilangkan

  • routingobjectwajib
  • mailboxobjectwajib
  • kindstringwajib

    enum: "mailbox", "product", "broadcast"

  • lane_idstring | nullwajib
  • domain_idstring | nullwajib
  • from_domainstring | nullwajib
  • sourcestringwajib

    enum: "dedicated", "default_mail", "unavailable"

  • readybooleanwajib
  • pending_lanesarraywajib
  • Setiap itemobject
  • idstringwajib

    Penumpukan lebih lanjut dihilangkan

  • from_domainstringwajib

    Penumpukan lebih lanjut dihilangkan

  • statusstringwajib

    Penumpukan lebih lanjut dihilangkan

  • productobjectwajib
  • kindstringwajib

    enum: "mailbox", "product", "broadcast"

  • lane_idstring | nullwajib
  • domain_idstring | nullwajib
  • from_domainstring | nullwajib
  • sourcestringwajib

    enum: "dedicated", "default_mail", "unavailable"

  • readybooleanwajib
  • pending_lanesarraywajib
  • Setiap itemobject
  • idstringwajib

    Penumpukan lebih lanjut dihilangkan

  • from_domainstringwajib

    Penumpukan lebih lanjut dihilangkan

  • statusstringwajib

    Penumpukan lebih lanjut dihilangkan

  • broadcastobjectwajib
  • kindstringwajib

    enum: "mailbox", "product", "broadcast"

  • lane_idstring | nullwajib
  • domain_idstring | nullwajib
  • from_domainstring | nullwajib
  • sourcestringwajib

    enum: "dedicated", "default_mail", "unavailable"

  • readybooleanwajib
  • pending_lanesarraywajib
  • Setiap itemobject
  • idstringwajib

    Penumpukan lebih lanjut dihilangkan

  • from_domainstringwajib

    Penumpukan lebih lanjut dihilangkan

  • statusstringwajib

    Penumpukan lebih lanjut dihilangkan

  • default_sendertidak ditentukanwajib
  • oneOf 1object
  • idstringwajib

    format: "uuid"

  • workspace_idstringwajib

    format: "uuid"

  • product_idstring | null

    Produk (proyek) pemilik kotak surat. Klien menggunakannya untuk mengelompokkan kotak surat dan membuat tautan aplikasi web.

    format: "uuid"

  • domain_idstring | null

    format: "uuid"

  • addressstringwajib

    format: "email"

  • display_namestringwajib
  • providerstringwajib

    enum: "gmail", "smtp"

  • statusstringwajib

    enum: "pending", "active", "suspended", "reconnect_required", "disabled"

  • status_reasonstring | null
  • suspended_atstring | null
  • mailbox_kindstringwajib

    enum: "domain", "starter"

  • oneOf 2null

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/sending-lanes' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'X-Banger-Product-Id: 00000000-0000-4000-8000-000000000001'
POST/v1/workspaces/{workspaceId}/sending-lanes

createEmailLane

Siapkan hanya jalur yang diminta pada hostname persisnya. Periksa ulang konflik DNS dengan kunci infrastruktur. Jalur identik yang ada dipakai ulang; hostname terpakai tidak pernah ditimpa. Tidak ada perubahan DNS atau jalur tambahan dibuat.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

X-Banger-Product-Id
header · wajib

Produk operasi eksplisit; harus sesuai dengan kredensial OAuth bercakupan produk.

  • valuestring

    format: "uuid"

Idempotency-Key
header · wajib
  • valuestring

    minLength: 16 · maxLength: 128

Isi permintaan wajib

application/json

  • valueobject

    Tidak ada properti tambahan

  • domainstringwajib

    Domain induk perusahaan, seperti example.com.

    minLength: 3 · maxLength: 253

  • from_domainstringwajib

    Root atau subdomain persis yang dikonfigurasi, seperti example.com atau news.example.com.

    minLength: 3 · maxLength: 253

  • lanestringwajib

    Email adalah kotak surat. Mengirim dan menerima; Produk dan Kampanye adalah jalur pengiriman khusus opsional.

    enum: "mailbox", "product", "broadcast"

  • root_dmarc_confirmedboolean

    Field kompatibilitas lama; penyiapan mempertahankan kebijakan email yang ada dan tidak memerlukan konfirmasi.

  • route_providersobject
  • productstring

    enum: "banger", "resend"

  • broadcaststring

    enum: "banger", "resend"

  • route_domainsobject
  • productstring
  • broadcaststring

Respons berhasil 200

Jalur terkonfigurasi yang sama dikembalikan secara idempoten.

application/json

  • valueobject
  • dataobjectwajib

    Tidak ada properti tambahan

  • domain_idstringwajib

    format: "uuid"

  • product_idstringwajib

    format: "uuid"

  • root_domainstringwajib
  • parent_domainstring

    Domain perusahaan yang dipertahankan saat jalur memakai subdomain.

  • setup_modestring

    enum: "simple", "advanced"

  • domain_statusstringwajib

    enum: "pending", "verified", "failed", "disabled", "deleting", "deleted"

  • lanesarraywajib

    minItems: 1 · maxItems: 3

  • Setiap itemobject

    Tidak ada properti tambahan

  • idstringwajib

    format: "uuid"

  • created_atstring

    format: "date-time"

  • kindstringwajib

    enum: "mailbox", "product", "broadcast"

  • display_namestringwajib
  • from_domainstringwajib
  • mail_from_domainstring | nullwajib
  • inbound_domainstring | nullwajib
  • route_providerstringwajib

    enum: "banger", "resend"

  • selected_provider_connection_idstring | nullwajib

    format: "uuid"

  • inbound_providerstring | nullwajib

    enum: "banger", null

  • statusstringwajib

    enum: "pending", "active", "paused", "deleting", "deleted"

  • status_reasonstring | nullwajib
  • desired_revisionintegerwajib

    minimum: 1

  • observed_revisionintegerwajib

    minimum: 0

  • dns_readybooleanwajib
  • provider_readybooleanwajib
  • inbound_readybooleanwajib
  • outbound_readybooleanwajib
  • banger_transport_readybooleanwajib
  • banger_mail_from_domainstring | nullwajib
  • provisioning_job_idstring | nullwajib

    format: "uuid"

  • provisioning_statusstringwajib

    enum: "pending", "provisioning", "waiting_dns", "active", "failed", "deleting", "deleted", "not_required"

  • provisioning_error_codestring | null
  • provisioning_next_attempt_atstring | null
  • provisioning_last_checked_atstring | null
  • provider_identity_statusstring | null
  • provider_dkim_statusstring | null
  • dns_recordsarraywajib
  • Setiap itemobject

    Tidak ada properti tambahan

  • idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • lane_idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • providerstringwajib

    enum: "banger", "resend"

    Penumpukan lebih lanjut dihilangkan

  • purposestringwajib

    Penumpukan lebih lanjut dihilangkan

  • typestringwajib

    enum: "TXT", "MX", "CNAME"

    Penumpukan lebih lanjut dihilangkan

  • namestringwajib

    Penumpukan lebih lanjut dihilangkan

  • valuestringwajib

    Penumpukan lebih lanjut dihilangkan

  • priorityinteger | nullwajib

    Penumpukan lebih lanjut dihilangkan

  • requiredbooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • statusstringwajib

    enum: "pending", "verified", "error"

    Penumpukan lebih lanjut dihilangkan

  • provider_statusstringwajib

    enum: "pending", "verified", "error", "not_applicable"

    Penumpukan lebih lanjut dihilangkan

  • first_observed_atstring | nullwajib

    format: "date-time"

    Penumpukan lebih lanjut dihilangkan

  • last_checked_atstring | nullwajib

    format: "date-time"

    Penumpukan lebih lanjut dihilangkan

  • errorobjectwajib

    Penumpukan lebih lanjut dihilangkan

  • provider_referencestring | nullwajib

    Penumpukan lebih lanjut dihilangkan

  • dns_recordsarraywajib
  • Setiap itemobject

    Tidak ada properti tambahan

  • idstringwajib

    format: "uuid"

  • lane_idstringwajib

    format: "uuid"

  • providerstringwajib

    enum: "banger", "resend"

  • purposestringwajib
  • typestringwajib

    enum: "TXT", "MX", "CNAME"

  • namestringwajib
  • valuestringwajib
  • priorityinteger | nullwajib
  • requiredbooleanwajib
  • statusstringwajib

    enum: "pending", "verified", "error"

  • provider_statusstringwajib

    enum: "pending", "verified", "error", "not_applicable"

  • first_observed_atstring | nullwajib

    format: "date-time"

  • last_checked_atstring | nullwajib

    format: "date-time"

  • errorobjectwajib
  • Properti tambahanNilai apa pun
  • provider_referencestring | nullwajib
  • deletionobject | nullwajib

    Tidak ada properti tambahan

  • job_idstringwajib

    format: "uuid"

  • statusstringwajib

    enum: "pending", "processing", "waiting_provider", "completed", "failed"

  • last_error_codestring | nullwajib
  • cleanup_recordsarraywajib

    Catatan DNS persis yang dapat dihapus pengguna setelah pembongkaran selesai.

  • Setiap itemobject

    Tidak ada properti tambahan

  • idstringwajib

    format: "uuid"

  • lane_idstringwajib

    format: "uuid"

  • providerstringwajib

    enum: "banger", "resend"

  • purposestringwajib
  • typestringwajib

    enum: "TXT", "MX", "CNAME"

  • namestringwajib
  • valuestringwajib
  • priorityinteger | nullwajib
  • requiredbooleanwajib
  • statusstringwajib

    enum: "pending", "verified", "error"

  • provider_statusstringwajib

    enum: "pending", "verified", "error", "not_applicable"

  • first_observed_atstring | nullwajib

    format: "date-time"

  • last_checked_atstring | nullwajib

    format: "date-time"

  • errorobjectwajib
  • Properti tambahanNilai apa pun
  • provider_referencestring | nullwajib

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/sending-lanes' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'X-Banger-Product-Id: 00000000-0000-4000-8000-000000000001' \
  --header 'Idempotency-Key: examplexxxxxxxxx' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "domain": "example",
  "from_domain": "example",
  "lane": "mailbox",
  "root_dmarc_confirmed": true,
  "route_providers": {
    "product": "banger",
    "broadcast": "banger"
  },
  "route_domains": {
    "product": "example",
    "broadcast": "example"
  }
}'
POST/v1/workspaces/{workspaceId}/sending-lanes/plan

planEmailLane

Pemeriksaan ketersediaan dan DNS awal hanya baca. Tidak membuat sumber daya. Catatan situs saja tidak menempati hostname email. Mengembalikan penyiapan yang ada dan konflik pada nama yang harus diubah Banger. Autentikasi pengiriman dan kebijakan DMARC yang ada dipertahankan.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

X-Banger-Product-Id
header · wajib

Produk operasi eksplisit; harus sesuai dengan kredensial OAuth bercakupan produk.

  • valuestring

    format: "uuid"

Isi permintaan wajib

application/json

  • valueobject

    Tidak ada properti tambahan

  • domainstringwajib

    Domain induk perusahaan, seperti example.com.

    minLength: 3 · maxLength: 253

  • from_domainstringwajib

    Root atau subdomain persis yang dikonfigurasi, seperti example.com atau news.example.com.

    minLength: 3 · maxLength: 253

  • lanestringwajib

    Email adalah kotak surat. Mengirim dan menerima; Produk dan Kampanye adalah jalur pengiriman khusus opsional.

    enum: "mailbox", "product", "broadcast"

  • root_dmarc_confirmedboolean

    Field kompatibilitas lama; penyiapan mempertahankan kebijakan email yang ada dan tidak memerlukan konfirmasi.

  • route_providersobject
  • productstring

    enum: "banger", "resend"

  • broadcaststring

    enum: "banger", "resend"

  • route_domainsobject
  • productstring
  • broadcaststring

Respons berhasil 200

Rencana penyiapan jalur.

application/json

  • valueobject
  • dataobjectwajib
  • statusstringwajib

    enum: "available", "existing", "occupied", "migration_required"

  • from_domainstringwajib
  • lanestringwajib

    enum: "mailbox", "product", "broadcast"

  • domain_idstring | nullwajib
  • lane_idstring | nullwajib
  • messagestringwajib
  • requires_root_confirmationbooleanwajib

    Selalu false; kebijakan email yang ada dipertahankan.

  • existing_dnsarraywajib
  • Setiap itemobject
  • namestringwajib
  • typestringwajib
  • valuestringwajib

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/sending-lanes/plan' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'X-Banger-Product-Id: 00000000-0000-4000-8000-000000000001' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "domain": "example",
  "from_domain": "example",
  "lane": "mailbox",
  "root_dmarc_confirmed": true,
  "route_providers": {
    "product": "banger",
    "broadcast": "banger"
  },
  "route_domains": {
    "product": "example",
    "broadcast": "example"
  }
}'
POST/v1/workspaces/{workspaceId}/sending-lanes/migrations

requestEmailLaneMigration

Minta tinjauan migrasi manusia yang ada untuk jalur ini saja. Hanya administrator yang masuk dapat mengizinkannya di Persetujuan.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

X-Banger-Product-Id
header · wajib

Produk operasi eksplisit; harus sesuai dengan kredensial OAuth bercakupan produk.

  • valuestring

    format: "uuid"

Idempotency-Key
header · wajib
  • valuestring

    minLength: 16 · maxLength: 128

Isi permintaan wajib

application/json

  • valueobject

    Tidak ada properti tambahan

  • domainstringwajib

    Domain induk perusahaan, seperti example.com.

    minLength: 3 · maxLength: 253

  • from_domainstringwajib

    Root atau subdomain persis yang dikonfigurasi, seperti example.com atau news.example.com.

    minLength: 3 · maxLength: 253

  • lanestringwajib

    Email adalah kotak surat. Mengirim dan menerima; Produk dan Kampanye adalah jalur pengiriman khusus opsional.

    enum: "mailbox", "product", "broadcast"

  • root_dmarc_confirmedboolean

    Field kompatibilitas lama; penyiapan mempertahankan kebijakan email yang ada dan tidak memerlukan konfirmasi.

  • route_providersobject
  • productstring

    enum: "banger", "resend"

  • broadcaststring

    enum: "banger", "resend"

  • route_domainsobject
  • productstring
  • broadcaststring

Respons berhasil 200

Tinjauan migrasi yang ada dikembalikan.

application/json

  • valueobject
  • dataobjectwajib
  • idstringwajib

    format: "uuid"

  • requested_by_actor_idstringwajib
  • action_kindstringwajib
  • summarystringwajib
  • capability_scopesarraywajib
  • Setiap itemstring
  • resource_scopeobjectwajib
  • Properti tambahanarray
  • Setiap itemstring
  • payloadobjectwajib
  • Properti tambahanNilai apa pun
  • payload_sha256stringwajib

    pattern: "^[0-9a-f]{64}$"

  • statusstringwajib

    enum: "pending", "approved", "rejected", "cancelled", "expired"

  • missedbooleanwajib
  • expires_atstringwajib

    format: "date-time"

  • decided_by_actor_idstring | null
  • decision_reasonstring | null
  • created_atstringwajib

    format: "date-time"

  • updated_atstringwajib

    format: "date-time"

  • decided_atstring | null

    format: "date-time"

  • execution_job_idstring

    format: "uuid"

  • reviewobject

    Tidak ada properti tambahan

  • dispositionstringwajib

    enum: "automatic", "human_required"

  • recipient_countinteger | nullwajib

    minimum: 0

  • reasonsarraywajib
  • Setiap itemstring
  • checksarraywajib
  • Setiap itemstring

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/sending-lanes/migrations' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'X-Banger-Product-Id: 00000000-0000-4000-8000-000000000001' \
  --header 'Idempotency-Key: examplexxxxxxxxx' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "domain": "example",
  "from_domain": "example",
  "lane": "mailbox",
  "root_dmarc_confirmed": true,
  "route_providers": {
    "product": "banger",
    "broadcast": "banger"
  },
  "route_domains": {
    "product": "example",
    "broadcast": "example"
  }
}'

Sumber daya awal

GET/v1/workspaces/{workspaceId}/starters

listStarters

Tata letak awal dirender dalam merek produk, masing-masing dengan brief (tugas, waktu kirim, metrik, mekanisme, subjek untuk diuji), slot, dan konten default. Daftar ringkas dan default ke jenis bisnis produk; minta satu item awal berdasarkan id untuk body_html-nya.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

id
query

Satu item awal; termasuk body_html.

  • valuestring
business
query
  • valuestring

    enum: "all", "saas", "shop", "creator", "services", "local", "community"

stage
query
  • valuestring

    enum: "onboarding", "activation", "revenue", "retention", "publish", "account"

category
query
  • valuestring

    enum: "product", "lifecycle", "broadcast"

include_html
query
  • valueboolean
style
query

Gaya visual; default email_style merek.

  • valuestring

    enum: "brand", "clarity", "editorial", "luxe", "material", "playful", "bold", "plain"

locale
query

Bahasa teks bawaan dan label galeri; default en-US.

  • valuestring

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Respons berhasil.

application/json

  • valueobject
  • dataarraywajib
  • Setiap itemobject
  • idstringwajib
  • versionintegerwajib
  • categorystringwajib
  • message_kindstringwajib
  • familystringwajib
  • stagestringwajib
  • businessesarraywajib
  • Setiap itemstring
  • namestringwajib
  • descriptionstringwajib
  • subjectstringwajib
  • body_textstringwajib
  • briefobjectwajib
  • jobstringwajib
  • send_whenstringwajib
  • metricstringwajib
  • mechanicstringwajib
  • subject_variantsarraywajib
  • Setiap itemstring
  • keeparray
  • Setiap itemstring
  • avoidarray
  • Setiap itemstring
  • imageryobject
  • defaultstringwajib
  • slotstring
  • photo_ideastring
  • slotsarraywajib
  • Setiap itemobject
  • keystringwajib

    pattern: "^[A-Za-z0-9_$.-]{1,200}$"

  • labelstring

    maxLength: 120

  • typestring

    enum: "text", "paragraph", "url", "image"

  • helpstring

    maxLength: 300

  • contentobjectwajib
  • Properti tambahanstring
  • body_htmlstring
  • businessstringwajib
  • stylestringwajib
  • businessesarraywajib
  • Setiap itemobject
  • keystring
  • labelstring
  • hintstring
  • stagesarraywajib
  • Setiap itemobject
  • keystring
  • labelstring
  • stylesarraywajib
  • Setiap itemobject
  • keystringwajib
  • labelstringwajib
  • descriptionstringwajib

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/starters?id=example&business=all&stage=onboarding&category=product&include_html=true&style=brand&locale=example' \
  --header "Authorization: Bearer $BANGER_API_KEY"

Dukungan

POST/v1/workspaces/{workspaceId}/support/messages

Kirim pesan ke dukungan Banger

Kirim pesan ke support@team.bangermail.com dengan Reply-To alamat terverifikasi orang yang masuk (orang dari izin OAuth, atau pemilik ruang kerja untuk kunci API statis). Ruang kerja, peran, dan paket dilampirkan. Sepuluh pesan sehari per orang.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan wajib

application/json

  • valueobject
  • messagestringwajib

    minLength: 1 · maxLength: 5000

  • contextobject

    Informasi klien tentang tempat orang tersebut berada. Semua field opsional dan spasinya dipangkas.

  • surfacestring

    maxLength: 120

  • app_releasestring

    maxLength: 64

  • browserstring

    maxLength: 300

  • localestring

    maxLength: 35

  • recent_errorsarray

    maxItems: 5

  • Setiap itemstring

    maxLength: 300

Respons berhasil 201

Pesan dikirim ke dukungan.

application/json

  • valueobject
  • dataobject
  • statusstringwajib

    enum: "sent"

  • reply_tostringwajib

    format: "email"

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/support/messages' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "message": "example",
  "context": {
    "surface": "example",
    "app_release": "example",
    "browser": "example",
    "locale": "example",
    "recent_errors": [
      "example"
    ]
  }
}'

Penekanan pengiriman

GET/v1/workspaces/{workspaceId}/suppressions

listSuppressions

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Respons berhasil.

application/json

  • valueobject
  • dataarraywajib
  • Setiap itemobject
  • email_hashstringwajib
  • reasonstringwajib

    enum: "unsubscribe", "hard_bounce", "complaint", "manual"

  • source_idstring | nullwajib
  • created_atstringwajib

    format: "date-time"

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/suppressions' \
  --header "Authorization: Bearer $BANGER_API_KEY"
POST/v1/workspaces/{workspaceId}/suppressions

createSuppression

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan wajib

application/json

  • valueobject
  • emailstringwajib

    minLength: 3 · maxLength: 320

  • reasonstring

    default: "manual" · enum: "unsubscribe", "hard_bounce", "complaint", "manual"

  • source_idstring

    maxLength: 500

Respons berhasil 201

Respons berhasil.

application/json

  • valueobject
  • dataobjectwajib
  • email_hashstringwajib
  • reasonstringwajib

    enum: "unsubscribe", "hard_bounce", "complaint", "manual"

  • source_idstring | nullwajib
  • created_atstringwajib

    format: "date-time"

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/suppressions' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "email": "example",
  "reason": "manual",
  "source_id": "example"
}'
DELETE/v1/workspaces/{workspaceId}/suppressions/{emailHash}

deleteSuppression

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

emailHash
path · wajib
  • valuestring

    pattern: "^[0-9a-f]{64}$"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 204

Penekanan dihapus.

Tanpa isi respons.

Contoh curl

curl --request DELETE --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/suppressions/{emailHash}' \
  --header "Authorization: Bearer $BANGER_API_KEY"

Data antarmuka

GET/v1/workspaces/{workspaceId}/surface-data/{surface}

Muat layar produk melalui satu transaksi database yang diizinkan.

Kembalikan data tampilan awal terbatas untuk satu layar bercakupan produk. Permintaan memvalidasi keanggotaan ruang kerja dan produk terpilih dalam transaksi terisolasi tenant yang sama dengan kueri endpoint. Layar webhook mencakup event_definitions (nama pemicu dan tujuan Journey, termasuk draf), event_stats (jumlah seluruh tanda terima masuk tersimpan), dan receipts (terbaru dahulu, hingga 51 baris). Klien menampilkan 50 tanda terima dan memakai baris tambahan untuk mendeteksi halaman berikutnya. Webhook masuk mencakup public_url; kredensial diambil terpisah. Metadata tanda terima tidak berisi payload mentah atau label historis uji/langsung. outgoing_event_types berisi katalog tetap peristiwa Banger otomatis dan peristiwa manual webhook.test, terpisah dari endpoint terkonfigurasi.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

surface
path · wajib
  • valuestring

    enum: "home", "product", "broadcasts", "audience", "domains", "mailboxes", "journeys", "deliverability", "api_keys", "webhooks", "approvals", "connections", "logs"

limit
query
  • valueinteger

    minimum: 1 · maximum: 100 · default: 50

webhook_id
query

Pada layar webhook, batasi riwayat tanda terima dan pengiriman keluar ke endpoint ini.

  • valuestring

    format: "uuid"

event_type
query

Pada layar webhook, filter tanda terima masuk berdasarkan nama peristiwa persis. Definisi katalog dan total tetap seluruh produk.

  • valuestring

    maxLength: 120

receipt_before
query

Kursor tanda terima masuk, objek JSON dengan receivedAt, endpointId, dan eventId dari baris terakhir yang ditampilkan. Pertahankan receivedAt persis untuk menjaga presisi submilidetik. Kodekan nilai JSON sebagai URL.

  • valuestring

    maxLength: 4096

mailbox_id
query
  • valuestring

    format: "uuid"

approval_id
query
  • valuestring

    format: "uuid"

label_id
query
  • valuestring

    format: "uuid"

view
query
  • valuestring

    enum: "inbox", "sent", "drafts", "archive", "trash", "spam", "all"

since
query
  • valuestring

    format: "date-time"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Data layar tampilan awal bercakupan produk.

application/json

  • valueobject
  • dataobjectwajib

    Agregat khusus layar yang dipilih oleh surface dan parameter kueri. Kunci dan proyeksi sumber daya bertingkat berbeda menurut surface (home, product, broadcasts, audience, domains, mailboxes, journeys, deliverability, api_keys, webhooks, approvals, connections, logs).

  • Properti tambahanNilai apa pun

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/surface-data/{surface}?limit=50&webhook_id=00000000-0000-4000-8000-000000000001&event_type=example&receipt_before=example&mailbox_id=00000000-0000-4000-8000-000000000001&approval_id=00000000-0000-4000-8000-000000000001&label_id=00000000-0000-4000-8000-000000000001&view=inbox&since=2026-01-01T00%3A00%3A00Z' \
  --header "Authorization: Bearer $BANGER_API_KEY"

Tindakan triase

GET/v1/workspaces/{workspaceId}/triage-actions

listTriageActions

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

mailbox_id
query
  • valuestring

    format: "uuid"

thread_id
query
  • valuestring

    format: "uuid"

rule_id
query
  • valuestring

    format: "uuid"

limit
query
  • valueinteger

    minimum: 1 · maximum: 100 · default: 50

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Respons berhasil.

application/json

  • valueobject
  • dataarraywajib
  • Setiap itemobject
  • idstringwajib

    format: "uuid"

  • mailbox_idstringwajib

    format: "uuid"

  • thread_idstringwajib

    format: "uuid"

  • rule_idstringwajib

    format: "uuid"

  • rule_namestringwajib
  • auto_set_for_label_idstring | nullwajib

    format: "uuid"

  • actionstringwajib
  • label_idstring | nullwajib

    format: "uuid"

  • label_namestring | nullwajib
  • label_emojistring | nullwajib
  • thread_subjectstringwajib
  • created_atstringwajib

    format: "date-time"

  • undone_atstring | nullwajib

    format: "date-time"

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/triage-actions?mailbox_id=00000000-0000-4000-8000-000000000001&thread_id=00000000-0000-4000-8000-000000000001&rule_id=00000000-0000-4000-8000-000000000001&limit=50' \
  --header "Authorization: Bearer $BANGER_API_KEY"
POST/v1/workspaces/{workspaceId}/triage-actions/{actionId}/undo

undoTriageAction

Balikkan satu tindakan Triase. Secara default juga ajarkan aturannya bahwa email tidak cocok; tetapkan teach_rule false untuk pembatalan biasa.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

actionId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan wajib

application/json

  • valueobject
  • teach_ruleboolean

    Juga ajarkan aturan bahwa email ini tidak cocok. False membalikkan tindakan tanpa umpan balik.

    default: true

Respons berhasil 200

Respons berhasil.

application/json

  • valueobject
  • dataobjectwajib
  • undonebooleanwajib

    const: true

  • command_idstring | nullwajib

    format: "uuid"

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/triage-actions/{actionId}/undo' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "teach_rule": true
}'

Aturan triase

GET/v1/workspaces/{workspaceId}/triage-rules

listTriageRules

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

mailbox_id
query
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Respons berhasil.

application/json

  • valueobject
  • dataarraywajib
  • Setiap itemobject
  • idstringwajib

    format: "uuid"

  • mailbox_idstringwajib

    format: "uuid"

  • namestringwajib
  • auto_set_for_label_idstring | nullwajib

    format: "uuid"

  • descriptionstring | nullwajib
  • exact_conditionsobjectwajib

    Tidak ada properti tambahan

  • fromarray

    maxItems: 50

  • Setiap itemstring

    maxLength: 320

  • toarray

    maxItems: 50

  • Setiap itemstring

    maxLength: 320

  • subject_containsarray

    maxItems: 50

  • Setiap itemstring

    maxLength: 320

  • has_wordsarray

    maxItems: 50

  • Setiap itemstring

    maxLength: 320

  • excludes_wordsarray

    maxItems: 50

  • Setiap itemstring

    maxLength: 320

  • has_attachmentboolean
  • has_label_idsarraywajib
  • Setiap itemstring

    format: "uuid"

  • actionsarraywajib
  • Setiap itemobject
  • typestringwajib

    enum: "apply_label", "archive", "mark_read", "star"

  • label_idstring

    format: "uuid"

  • enabledbooleanwajib
  • versionintegerwajib
  • error_codestring | nullwajib
  • example_countintegerwajib
  • created_atstringwajib

    format: "date-time"

  • updated_atstringwajib

    format: "date-time"

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/triage-rules?mailbox_id=00000000-0000-4000-8000-000000000001' \
  --header "Authorization: Bearer $BANGER_API_KEY"
POST/v1/workspaces/{workspaceId}/triage-rules

createTriageRule

Buat aturan Triase untuk email masuk (setiap paket; aturan aktif dihitung dalam jumlah paket). When = description (dinilai Jev) dan/atau exact_conditions dan/atau has_label_ids; Then = actions.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

Idempotency-Key
header

Kunci percobaan ulang opsional, diterapkan saat produk dipilih.

  • valuestring

    minLength: 1 · maxLength: 256

Isi permintaan wajib

application/json

  • valuetidak ditentukan
  • allOf 1object
  • namestring

    maxLength: 120

  • descriptionstring | null

    maxLength: 2000

  • exact_conditionsobject

    Tidak ada properti tambahan

  • fromarray

    maxItems: 50

  • Setiap itemstring

    maxLength: 320

  • toarray

    maxItems: 50

  • Setiap itemstring

    maxLength: 320

  • subject_containsarray

    maxItems: 50

  • Setiap itemstring

    maxLength: 320

  • has_wordsarray

    maxItems: 50

  • Setiap itemstring

    maxLength: 320

  • excludes_wordsarray

    maxItems: 50

  • Setiap itemstring

    maxLength: 320

  • has_attachmentboolean
  • has_label_idsarray

    maxItems: 50

  • Setiap itemstring

    format: "uuid"

  • actionsarray

    minItems: 1 · maxItems: 8

  • Setiap itemobject
  • typestringwajib

    enum: "apply_label", "archive", "mark_read", "star"

  • label_idstring

    format: "uuid"

  • enabledboolean
  • allOf 2object
  • mailbox_idstringwajib

    format: "uuid"

Respons berhasil 201

Respons berhasil.

application/json

  • valueobject
  • dataobjectwajib
  • idstringwajib

    format: "uuid"

  • mailbox_idstringwajib

    format: "uuid"

  • namestringwajib
  • auto_set_for_label_idstring | nullwajib

    format: "uuid"

  • descriptionstring | nullwajib
  • exact_conditionsobjectwajib

    Tidak ada properti tambahan

  • fromarray

    maxItems: 50

  • Setiap itemstring

    maxLength: 320

  • toarray

    maxItems: 50

  • Setiap itemstring

    maxLength: 320

  • subject_containsarray

    maxItems: 50

  • Setiap itemstring

    maxLength: 320

  • has_wordsarray

    maxItems: 50

  • Setiap itemstring

    maxLength: 320

  • excludes_wordsarray

    maxItems: 50

  • Setiap itemstring

    maxLength: 320

  • has_attachmentboolean
  • has_label_idsarraywajib
  • Setiap itemstring

    format: "uuid"

  • actionsarraywajib
  • Setiap itemobject
  • typestringwajib

    enum: "apply_label", "archive", "mark_read", "star"

  • label_idstring

    format: "uuid"

  • enabledbooleanwajib
  • versionintegerwajib
  • error_codestring | nullwajib
  • example_countintegerwajib
  • created_atstringwajib

    format: "date-time"

  • updated_atstringwajib

    format: "date-time"

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/triage-rules' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Idempotency-Key: example' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "name": "example",
  "description": "example",
  "exact_conditions": {
    "from": [
      "example"
    ],
    "to": [
      "example"
    ],
    "subject_contains": [
      "example"
    ],
    "has_words": [
      "example"
    ],
    "excludes_words": [
      "example"
    ],
    "has_attachment": true
  },
  "has_label_ids": [
    "00000000-0000-4000-8000-000000000001"
  ],
  "actions": [
    {
      "type": "apply_label",
      "label_id": "00000000-0000-4000-8000-000000000001"
    }
  ],
  "enabled": true,
  "mailbox_id": "00000000-0000-4000-8000-000000000001"
}'
POST/v1/workspaces/{workspaceId}/triage-rules/preview

previewTriageRule

Utas terbaru yang cocok dengan When. Hanya baca; tidak mengembalikan skor.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan wajib

application/json

  • valueobject
  • mailbox_idstringwajib

    format: "uuid"

  • rule_idstring

    format: "uuid"

  • descriptionstring

    maxLength: 2000

  • exact_conditionsobject

    Tidak ada properti tambahan

  • fromarray

    maxItems: 50

  • Setiap itemstring

    maxLength: 320

  • toarray

    maxItems: 50

  • Setiap itemstring

    maxLength: 320

  • subject_containsarray

    maxItems: 50

  • Setiap itemstring

    maxLength: 320

  • has_wordsarray

    maxItems: 50

  • Setiap itemstring

    maxLength: 320

  • excludes_wordsarray

    maxItems: 50

  • Setiap itemstring

    maxLength: 320

  • has_attachmentboolean
  • has_label_idsarray

    maxItems: 50

  • Setiap itemstring

    format: "uuid"

  • limitinteger

    minimum: 1 · maximum: 200

Respons berhasil 200

Respons berhasil.

application/json

  • valueobject
  • dataobjectwajib
  • scannedintegerwajib
  • matchesarraywajib
  • Setiap itemobject
  • thread_idstringwajib

    format: "uuid"

  • subjectstringwajib
  • fromstring
  • received_atstring

    format: "date-time"

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/triage-rules/preview' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "mailbox_id": "00000000-0000-4000-8000-000000000001",
  "rule_id": "00000000-0000-4000-8000-000000000001",
  "description": "example",
  "exact_conditions": {
    "from": [
      "example"
    ],
    "to": [
      "example"
    ],
    "subject_contains": [
      "example"
    ],
    "has_words": [
      "example"
    ],
    "excludes_words": [
      "example"
    ],
    "has_attachment": true
  },
  "has_label_ids": [
    "00000000-0000-4000-8000-000000000001"
  ],
  "limit": 1
}'
POST/v1/workspaces/{workspaceId}/triage-rules/run-past-mail

runTriageOnPastMail

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan wajib

application/json

  • valueobject
  • mailbox_idstringwajib

    format: "uuid"

  • rule_idsarray

    maxItems: 50

  • Setiap itemstring

    format: "uuid"

  • daysinteger

    minimum: 1 · maximum: 90

  • include_other_actionsboolean

    Juga arsipkan

Respons berhasil 202

Respons berhasil.

application/json

  • valueobject
  • dataobjectwajib
  • queued_threadsintegerwajib
  • daysintegerwajib
  • labels_onlybooleanwajib

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/triage-rules/run-past-mail' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "mailbox_id": "00000000-0000-4000-8000-000000000001",
  "rule_ids": [
    "00000000-0000-4000-8000-000000000001"
  ],
  "days": 1,
  "include_other_actions": true
}'
GET/v1/workspaces/{workspaceId}/triage-rules/{ruleId}

getTriageRule

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

ruleId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Respons berhasil.

application/json

  • valueobject
  • dataobjectwajib
  • idstringwajib

    format: "uuid"

  • mailbox_idstringwajib

    format: "uuid"

  • namestringwajib
  • auto_set_for_label_idstring | nullwajib

    format: "uuid"

  • descriptionstring | nullwajib
  • exact_conditionsobjectwajib

    Tidak ada properti tambahan

  • fromarray

    maxItems: 50

  • Setiap itemstring

    maxLength: 320

  • toarray

    maxItems: 50

  • Setiap itemstring

    maxLength: 320

  • subject_containsarray

    maxItems: 50

  • Setiap itemstring

    maxLength: 320

  • has_wordsarray

    maxItems: 50

  • Setiap itemstring

    maxLength: 320

  • excludes_wordsarray

    maxItems: 50

  • Setiap itemstring

    maxLength: 320

  • has_attachmentboolean
  • has_label_idsarraywajib
  • Setiap itemstring

    format: "uuid"

  • actionsarraywajib
  • Setiap itemobject
  • typestringwajib

    enum: "apply_label", "archive", "mark_read", "star"

  • label_idstring

    format: "uuid"

  • enabledbooleanwajib
  • versionintegerwajib
  • error_codestring | nullwajib
  • example_countintegerwajib
  • created_atstringwajib

    format: "date-time"

  • updated_atstringwajib

    format: "date-time"

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/triage-rules/{ruleId}' \
  --header "Authorization: Bearer $BANGER_API_KEY"
PATCH/v1/workspaces/{workspaceId}/triage-rules/{ruleId}

updateTriageRule

Aturan penetapan otomatis label hanya dapat disunting melalui updateLabel.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

ruleId
path · wajib
  • valuestring

    format: "uuid"

Idempotency-Key
header

Kunci percobaan ulang opsional, diterapkan saat produk dipilih.

  • valuestring

    minLength: 1 · maxLength: 256

Isi permintaan wajib

application/json

  • valueobject
  • namestring

    maxLength: 120

  • descriptionstring | null

    maxLength: 2000

  • exact_conditionsobject

    Tidak ada properti tambahan

  • fromarray

    maxItems: 50

  • Setiap itemstring

    maxLength: 320

  • toarray

    maxItems: 50

  • Setiap itemstring

    maxLength: 320

  • subject_containsarray

    maxItems: 50

  • Setiap itemstring

    maxLength: 320

  • has_wordsarray

    maxItems: 50

  • Setiap itemstring

    maxLength: 320

  • excludes_wordsarray

    maxItems: 50

  • Setiap itemstring

    maxLength: 320

  • has_attachmentboolean
  • has_label_idsarray

    maxItems: 50

  • Setiap itemstring

    format: "uuid"

  • actionsarray

    minItems: 1 · maxItems: 8

  • Setiap itemobject
  • typestringwajib

    enum: "apply_label", "archive", "mark_read", "star"

  • label_idstring

    format: "uuid"

  • enabledboolean

Respons berhasil 200

Respons berhasil.

application/json

  • valueobject
  • dataobjectwajib
  • idstringwajib

    format: "uuid"

  • mailbox_idstringwajib

    format: "uuid"

  • namestringwajib
  • auto_set_for_label_idstring | nullwajib

    format: "uuid"

  • descriptionstring | nullwajib
  • exact_conditionsobjectwajib

    Tidak ada properti tambahan

  • fromarray

    maxItems: 50

  • Setiap itemstring

    maxLength: 320

  • toarray

    maxItems: 50

  • Setiap itemstring

    maxLength: 320

  • subject_containsarray

    maxItems: 50

  • Setiap itemstring

    maxLength: 320

  • has_wordsarray

    maxItems: 50

  • Setiap itemstring

    maxLength: 320

  • excludes_wordsarray

    maxItems: 50

  • Setiap itemstring

    maxLength: 320

  • has_attachmentboolean
  • has_label_idsarraywajib
  • Setiap itemstring

    format: "uuid"

  • actionsarraywajib
  • Setiap itemobject
  • typestringwajib

    enum: "apply_label", "archive", "mark_read", "star"

  • label_idstring

    format: "uuid"

  • enabledbooleanwajib
  • versionintegerwajib
  • error_codestring | nullwajib
  • example_countintegerwajib
  • created_atstringwajib

    format: "date-time"

  • updated_atstringwajib

    format: "date-time"

Contoh curl

curl --request PATCH --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/triage-rules/{ruleId}' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Idempotency-Key: example' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "name": "example",
  "description": "example",
  "exact_conditions": {
    "from": [
      "example"
    ],
    "to": [
      "example"
    ],
    "subject_contains": [
      "example"
    ],
    "has_words": [
      "example"
    ],
    "excludes_words": [
      "example"
    ],
    "has_attachment": true
  },
  "has_label_ids": [
    "00000000-0000-4000-8000-000000000001"
  ],
  "actions": [
    {
      "type": "apply_label",
      "label_id": "00000000-0000-4000-8000-000000000001"
    }
  ],
  "enabled": true
}'
DELETE/v1/workspaces/{workspaceId}/triage-rules/{ruleId}

deleteTriageRule

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

ruleId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 204

Aturan Triase dihapus.

Tanpa isi respons.

Contoh curl

curl --request DELETE --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/triage-rules/{ruleId}' \
  --header "Authorization: Bearer $BANGER_API_KEY"

Penggunaan triase

GET/v1/workspaces/{workspaceId}/triage-usage

getTriageUsage

Penggunaan Triase ruang kerja bulan kalender UTC ini dibanding jumlah paketnya, waktu hitungan direset, dan paket termurah yang memeriksa lebih banyak email. Setelah jumlah bulanan terlampaui, email baru tetap tidak tersortir hingga reset.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Respons berhasil.

application/json

  • valueobject
  • dataobjectwajib
  • unlimitedbooleanwajib

    Kedua batas jumlah dihapus untuk ruang kerja ini.

  • rule_limitintegerwajib

    Aturan Triase dan penetapan otomatis aktif yang diizinkan sekaligus.

  • rules_enabledintegerwajib
  • run_limitintegerwajib

    Email yang diperiksa Triase per bulan kalender UTC.

  • runs_this_monthintegerwajib
  • resets_atstringwajib

    Saat pertama bulan kalender UTC berikutnya.

    format: "date-time"

  • plan_keystringwajib

    Paket ruang kerja saat ini; free jika tidak ada.

  • next_plantidak ditentukanwajib

    Paket termurah di atas paket saat ini yang memeriksa lebih banyak email per bulan; null jika tidak ada atau tidak terbatas.

  • oneOf 1null
  • oneOf 2object
  • plan_keystringwajib
  • labelstringwajib
  • monthly_price_usdnumberwajib

    Harga bulanan utama (tagihan tahunan / 12).

  • triage_run_limitintegerwajib

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/triage-usage' \
  --header "Authorization: Bearer $BANGER_API_KEY"

Pekerjaan

GET/v1/workspaces/{workspaceId}/work

listWork

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

cursor
query
  • valuestring

    maxLength: 1024

limit
query
  • valueinteger

    minimum: 1 · maximum: 100 · default: 50

status
query
  • valuestring

    default: "open" · enum: "open", "waiting", "done"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Item Pekerjaan seluruh ruang kerja.

application/json

  • valueobject
  • dataarraywajib
  • Setiap itemobject
  • idstringwajib

    format: "uuid"

  • threadobjectwajib
  • idstringwajib

    format: "uuid"

  • mailbox_idstringwajib

    format: "uuid"

  • subjectstringwajib
  • snippetstringwajib
  • last_message_atstringwajib

    format: "date-time"

  • message_countintegerwajib
  • unread_countintegerwajib
  • is_archivedbooleanwajib
  • is_trashbooleanwajib
  • is_spambooleanwajib
  • is_starredbooleanwajib
  • is_sentbooleanwajib
  • has_attachmentsbooleanwajib
  • labelsarraywajib
  • Setiap itemstring
  • participantsarray
  • Setiap itemobject
  • namestring

    Penumpukan lebih lanjut dihilangkan

  • emailstringwajib

    format: "email"

    Penumpukan lebih lanjut dihilangkan

  • statusstringwajib

    enum: "open", "waiting", "done"

  • priorityintegerwajib
  • assignee_identity_idstring
  • updated_atstringwajib

    format: "date-time"

  • pageobjectwajib
  • next_cursorstring
  • has_morebooleanwajib

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/work?cursor=example&limit=50&status=open' \
  --header "Authorization: Bearer $BANGER_API_KEY"

Koneksi

GET/v1/workspaces/{workspaceId}/connections

Daftar koneksi data produk dan bisnis yang dikelola Banger.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Metadata dan kemampuan koneksi. Materi kredensial tidak pernah dikembalikan.

application/json

  • valueobject
  • dataarraywajib
  • Setiap itemobject

    Tidak ada properti tambahan

  • idstringwajib

    format: "uuid"

  • adapter_keystringwajib
  • categorystringwajib

    enum: "email", "customer", "product", "work", "data"

  • display_namestringwajib
  • statusstringwajib

    enum: "pending_validation", "active", "error", "disabled"

  • auth_kindstringwajib

    enum: "api_key", "oauth2", "service_account", "none"

  • freshness_modestringwajib

    enum: "webhook", "poll", "on_demand", "hybrid"

  • capabilitiesarraywajib
  • Setiap itemstring
  • resource_scopeobjectwajib
  • Properti tambahanNilai apa pun
  • configobjectwajib

    Konfigurasi adaptor nonrahasia seperti host cloud dan ID proyek.

  • Properti tambahanNilai apa pun
  • active_credential_versioninteger | null
  • external_account_idstring | null
  • external_account_namestring | null
  • last_validated_atstring | null

    format: "date-time"

  • last_success_atstring | null

    format: "date-time"

  • last_error_codestring | null
  • disabled_atstring | null

    format: "date-time"

  • created_atstringwajib

    format: "date-time"

  • updated_atstringwajib

    format: "date-time"

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/connections' \
  --header "Authorization: Bearer $BANGER_API_KEY"
POST/v1/workspaces/{workspaceId}/connections/adapters/{adapterKey}

Validasi dan enkripsi koneksi sumber yang dikelola Banger.

Menghubungkan Mailchimp langsung memulai perpindahan (seperti startMailchimpMigration), dan respons membawa laporan pertama dalam `mailchimp_migration`. Tanpa display_name, koneksi Mailchimp dinamai berdasarkan akun, misalnya "Mailchimp (Acme Inc)". Menghubungkan akun Mailchimp yang sudah terhubung menjawab 409 `mailchimp_account_already_connected` dengan `error.details.connection_id`.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

adapterKey
path · wajib
  • valuestring

    enum: "anthropic", "figma", "github", "google-analytics", "google-calendar", "hubspot", "linear", "mailchimp", "notion", "openai", "slack", "snowflake", "zendesk"

Idempotency-Key
header · wajib
  • valuestring

    minLength: 16 · maxLength: 128

Isi permintaan wajib

application/json

  • valueobject

    Tidak ada properti tambahan

  • api_keystringwajib

    Kunci API atau JSON akun layanan penyedia.

    minLength: 12 · maxLength: 10000

  • display_namestring

    maxLength: 100

  • configobject
  • Properti tambahanNilai apa pun

Respons berhasil 200

Pengulangan idempoten permintaan koneksi yang ada.

application/json

  • valueobject
  • dataobjectwajib

    Tidak ada properti tambahan

  • idstringwajib

    format: "uuid"

  • adapter_keystringwajib
  • categorystringwajib

    enum: "email", "customer", "product", "work", "data"

  • display_namestringwajib
  • statusstringwajib

    enum: "pending_validation", "active", "error", "disabled"

  • auth_kindstringwajib

    enum: "api_key", "oauth2", "service_account", "none"

  • freshness_modestringwajib

    enum: "webhook", "poll", "on_demand", "hybrid"

  • capabilitiesarraywajib
  • Setiap itemstring
  • resource_scopeobjectwajib
  • Properti tambahanNilai apa pun
  • configobjectwajib

    Konfigurasi adaptor nonrahasia seperti host cloud dan ID proyek.

  • Properti tambahanNilai apa pun
  • active_credential_versioninteger | null
  • external_account_idstring | null
  • external_account_namestring | null
  • last_validated_atstring | null

    format: "date-time"

  • last_success_atstring | null

    format: "date-time"

  • last_error_codestring | null
  • disabled_atstring | null

    format: "date-time"

  • created_atstringwajib

    format: "date-time"

  • updated_atstringwajib

    format: "date-time"

  • mailchimp_migrationobject

    Perpindahan dari satu koneksi Mailchimp ke produk. Poll GET /mailchimp-migration untuk progres langsung: `phase` menyatakan tahapnya; `counts`, `audiences`, `segments`, `templates`, dan `campaigns` bertambah selama proses.

  • migration_idstringwajib

    format: "uuid"

  • connection_idstringwajib

    format: "uuid"

  • product_idstringwajib

    format: "uuid"

  • statusstringwajib

    enum: "importing", "completed"

  • phasestringwajib

    importing (reading Mailchimp), copying_designs (templates and campaigns), finishing, completed, needs_new_key (Mailchimp rejected the API key; the move is paused until a new key is saved with rotateConnectionCredential), or disconnected (the connection was removed; everything already moved stays in Banger and the counts stay readable).

    enum: "importing", "copying_designs", "finishing", "completed", "needs_new_key", "disconnected"

  • started_atstringwajib

    format: "date-time"

  • completed_atstring | nullwajib

    format: "date-time"

  • connectionobjectwajib
  • display_namestringwajib
  • account_namestring | nullwajib
  • statusstringwajib

    enum: "pending_validation", "active", "error", "disabled"

  • last_error_codestring | nullwajib
  • needs_new_keybooleanwajib
  • messagestring

    Present when needs_new_key or disconnected, ready to show.

  • progressobjectwajib
  • import_streamsintegerwajib
  • import_streams_doneintegerwajib
  • failing_streamsarraywajib
  • Setiap itemobject
  • streamstringwajib
  • refstringwajib
  • error_codestring | nullwajib
  • designs_waitingintegerwajib
  • notestringwajib
  • countsobjectwajib
  • contactsintegerwajib
  • subscribedintegerwajib
  • unsubscribedintegerwajib
  • bouncedintegerwajib
  • contact_listsintegerwajib
  • contact_fieldsintegerwajib
  • segments_convertedintegerwajib
  • segments_kept_as_listsintegerwajib
  • templates_importedintegerwajib
  • templates_to_rebuildintegerwajib
  • campaigns_imported_as_designsintegerwajib
  • automations_importedintegerwajib
  • audiencesarraywajib
  • Setiap itemobject
  • mailchimp_idstringwajib
  • namestringwajib
  • list_idstring | nullwajib

    format: "uuid"

  • list_namestring | nullwajib
  • members_in_bangerintegerwajib
  • subscribedintegerwajib
  • unsubscribedintegerwajib
  • bouncedintegerwajib
  • members_in_mailchimpintegerwajib
  • contact_fieldsarraywajib
  • Setiap itemobject
  • mailchimp_tagstringwajib
  • namestringwajib
  • field_keystringwajib
  • typestringwajib

    enum: "text", "number", "boolean", "date", "choice", "choices"

  • consentstringwajib
  • segmentsarraywajib
  • Setiap itemobject

    Hasil perubahan satu segmen, templat, atau kampanye Mailchimp.

  • mailchimp_idstringwajib

    Segmen: <audience id>:<segment id>. Templat dan kampanye: id Mailchimp-nya.

  • becamestringwajib

    enum: "segment", "contact_list", "template", "needs_rebuild"

  • idstring

    Segmen Banger

    format: "uuid"

  • namestringwajib
  • reasonstring

    Alasan segmen tetap berupa daftar statis

  • dropped_merge_tagsarray

    Tag gabungan Mailchimp tanpa padanan Banger, dihapus dari desain (kondisi pada field gabungan mempertahankan cabang pertamanya dan dicantumkan di sini).

  • Setiap itemstring
  • replaced_footerboolean

    Bagian footer Mailchimp (lihat di browser, preferensi, alamat, lencana) menjadi footer merek produk.

  • removed_linksarray

    Tautan ke halaman khusus Mailchimp di luar footer (seperti lihat di browser) yang dihapus, berdasarkan kata-katanya.

  • Setiap itemstring
  • links_to_fillarray

    Tautan yang kosong di Mailchimp; masing-masing kini menjadi slot URL desain yang harus diisi sebelum dikirim.

  • Setiap itemobject
  • keystringwajib

    Penumpukan lebih lanjut dihilangkan

  • labelstringwajib

    Penumpukan lebih lanjut dihilangkan

  • kept_editsboolean

    Eksekusi ulang menemukan desain telah disunting di Banger dan membiarkannya tetap.

  • templatesarraywajib
  • Setiap itemobject

    Hasil perubahan satu segmen, templat, atau kampanye Mailchimp.

  • mailchimp_idstringwajib

    Segmen: <audience id>:<segment id>. Templat dan kampanye: id Mailchimp-nya.

  • becamestringwajib

    enum: "segment", "contact_list", "template", "needs_rebuild"

  • idstring

    Segmen Banger

    format: "uuid"

  • namestringwajib
  • reasonstring

    Alasan segmen tetap berupa daftar statis

  • dropped_merge_tagsarray

    Tag gabungan Mailchimp tanpa padanan Banger, dihapus dari desain (kondisi pada field gabungan mempertahankan cabang pertamanya dan dicantumkan di sini).

  • Setiap itemstring
  • replaced_footerboolean

    Bagian footer Mailchimp (lihat di browser, preferensi, alamat, lencana) menjadi footer merek produk.

  • removed_linksarray

    Tautan ke halaman khusus Mailchimp di luar footer (seperti lihat di browser) yang dihapus, berdasarkan kata-katanya.

  • Setiap itemstring
  • links_to_fillarray

    Tautan yang kosong di Mailchimp; masing-masing kini menjadi slot URL desain yang harus diisi sebelum dikirim.

  • Setiap itemobject
  • keystringwajib

    Penumpukan lebih lanjut dihilangkan

  • labelstringwajib

    Penumpukan lebih lanjut dihilangkan

  • kept_editsboolean

    Eksekusi ulang menemukan desain telah disunting di Banger dan membiarkannya tetap.

  • campaignsarraywajib
  • Setiap itemobject

    Hasil perubahan satu segmen, templat, atau kampanye Mailchimp.

  • mailchimp_idstringwajib

    Segmen: <audience id>:<segment id>. Templat dan kampanye: id Mailchimp-nya.

  • becamestringwajib

    enum: "segment", "contact_list", "template", "needs_rebuild"

  • idstring

    Segmen Banger

    format: "uuid"

  • namestringwajib
  • reasonstring

    Alasan segmen tetap berupa daftar statis

  • dropped_merge_tagsarray

    Tag gabungan Mailchimp tanpa padanan Banger, dihapus dari desain (kondisi pada field gabungan mempertahankan cabang pertamanya dan dicantumkan di sini).

  • Setiap itemstring
  • replaced_footerboolean

    Bagian footer Mailchimp (lihat di browser, preferensi, alamat, lencana) menjadi footer merek produk.

  • removed_linksarray

    Tautan ke halaman khusus Mailchimp di luar footer (seperti lihat di browser) yang dihapus, berdasarkan kata-katanya.

  • Setiap itemstring
  • links_to_fillarray

    Tautan yang kosong di Mailchimp; masing-masing kini menjadi slot URL desain yang harus diisi sebelum dikirim.

  • Setiap itemobject
  • keystringwajib

    Penumpukan lebih lanjut dihilangkan

  • labelstringwajib

    Penumpukan lebih lanjut dihilangkan

  • kept_editsboolean

    Eksekusi ulang menemukan desain telah disunting di Banger dan membiarkannya tetap.

  • automationsobjectwajib
  • importedbooleanwajib

    const: false

  • whystringwajib
  • next_stepsarraywajib
  • Setiap itemstring
  • help_call_urlstringwajib

    format: "uri"

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/connections/adapters/{adapterKey}' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Idempotency-Key: examplexxxxxxxxx' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "api_key": "examplexxxxx",
  "display_name": "example",
  "config": {}
}'
DELETE/v1/workspaces/{workspaceId}/connections/{connectionId}

disableConnection

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

connectionId
path · wajib
  • valuestring

    format: "uuid"

Idempotency-Key
header · wajib
  • valuestring

    minLength: 16 · maxLength: 128

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 204

Koneksi, kredensial, status sinkronisasi, dan izin dicabut.

Tanpa isi respons.

Contoh curl

curl --request DELETE --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/connections/{connectionId}' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Idempotency-Key: examplexxxxxxxxx'
POST/v1/workspaces/{workspaceId}/connections/{connectionId}/validate

Validasi ulang kredensial aktif dan perbarui metadata akun.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

connectionId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Kredensial koneksi valid.

application/json

  • valueobject
  • dataobjectwajib

    Tidak ada properti tambahan

  • idstringwajib

    format: "uuid"

  • adapter_keystringwajib
  • categorystringwajib

    enum: "email", "customer", "product", "work", "data"

  • display_namestringwajib
  • statusstringwajib

    enum: "pending_validation", "active", "error", "disabled"

  • auth_kindstringwajib

    enum: "api_key", "oauth2", "service_account", "none"

  • freshness_modestringwajib

    enum: "webhook", "poll", "on_demand", "hybrid"

  • capabilitiesarraywajib
  • Setiap itemstring
  • resource_scopeobjectwajib
  • Properti tambahanNilai apa pun
  • configobjectwajib

    Konfigurasi adaptor nonrahasia seperti host cloud dan ID proyek.

  • Properti tambahanNilai apa pun
  • active_credential_versioninteger | null
  • external_account_idstring | null
  • external_account_namestring | null
  • last_validated_atstring | null

    format: "date-time"

  • last_success_atstring | null

    format: "date-time"

  • last_error_codestring | null
  • disabled_atstring | null

    format: "date-time"

  • created_atstringwajib

    format: "date-time"

  • updated_atstringwajib

    format: "date-time"

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/connections/{connectionId}/validate' \
  --header "Authorization: Bearer $BANGER_API_KEY"
POST/v1/workspaces/{workspaceId}/connections/{connectionId}/credential

Validasi dan rotasi kredensial koneksi terkelola secara atomik.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

connectionId
path · wajib
  • valuestring

    format: "uuid"

Idempotency-Key
header · wajib
  • valuestring

    minLength: 16 · maxLength: 128

Isi permintaan wajib

application/json

  • valueobject

    Tidak ada properti tambahan

  • api_keystringwajib

    Kunci API atau JSON akun layanan penyedia.

    minLength: 12 · maxLength: 10000

  • display_namestring

    maxLength: 100

  • configobject
  • Properti tambahanNilai apa pun

Respons berhasil 200

Pengulangan idempoten rotasi sebelumnya.

application/json

  • valueobject
  • dataobjectwajib

    Tidak ada properti tambahan

  • idstringwajib

    format: "uuid"

  • adapter_keystringwajib
  • categorystringwajib

    enum: "email", "customer", "product", "work", "data"

  • display_namestringwajib
  • statusstringwajib

    enum: "pending_validation", "active", "error", "disabled"

  • auth_kindstringwajib

    enum: "api_key", "oauth2", "service_account", "none"

  • freshness_modestringwajib

    enum: "webhook", "poll", "on_demand", "hybrid"

  • capabilitiesarraywajib
  • Setiap itemstring
  • resource_scopeobjectwajib
  • Properti tambahanNilai apa pun
  • configobjectwajib

    Konfigurasi adaptor nonrahasia seperti host cloud dan ID proyek.

  • Properti tambahanNilai apa pun
  • active_credential_versioninteger | null
  • external_account_idstring | null
  • external_account_namestring | null
  • last_validated_atstring | null

    format: "date-time"

  • last_success_atstring | null

    format: "date-time"

  • last_error_codestring | null
  • disabled_atstring | null

    format: "date-time"

  • created_atstringwajib

    format: "date-time"

  • updated_atstringwajib

    format: "date-time"

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/connections/{connectionId}/credential' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Idempotency-Key: examplexxxxxxxxx' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "api_key": "examplexxxxx",
  "display_name": "example",
  "config": {}
}'
POST/v1/workspaces/{workspaceId}/connections/{connectionId}/query

Jalankan pembacaan bertipe dan terbatas pada koneksi yang dikelola Banger.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

connectionId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan wajib

application/json

  • valueobject

    Tidak ada properti tambahan

  • adapter_keystringwajib

    enum: "figma", "github", "google-analytics", "google-calendar", "hubspot", "linear", "mailchimp", "notion", "slack", "snowflake", "zendesk"

  • operationstringwajib

    enum: "audiences.list", "blocks.children.list", "campaigns.list", "changelog.brief", "channels.list", "comments.list", "commits.list", "companies.list", "contacts.list", "cohorts.list", "customer.brief", "customers.list", "deals.list", "events.list", "file.summary", "funnels.list", "images.render", "invoices.list", "issues.list", "launch.brief", "messages.history", "messages.search", "nodes.get", "notifications.list", "pages.retrieve", "payment_intents.list", "persons.list", "profiles.list", "queries.execute", "queries.list", "releases.list", "reports.list", "reports.run", "repositories.list", "search.list", "subscriptions.list"

  • parametersobject
  • Properti tambahanNilai apa pun

Respons berhasil 200

Respons bertipe dan terautentikasi dari sumber terhubung.

application/json

  • valueobject
  • dataobjectwajib

    Tidak ada properti tambahan

  • adapter_keystringwajib

    enum: "figma", "github", "google-analytics", "google-calendar", "hubspot", "linear", "mailchimp", "notion", "slack", "snowflake", "zendesk"

  • operationstringwajib
  • capabilitystringwajib
  • sourceobjectwajib

    Tidak ada properti tambahan

  • external_account_idstringwajib
  • external_account_namestringwajib
  • fetched_atstringwajib

    format: "date-time"

  • freshnessstringwajib

    const: "live"

  • dataobjectwajib
  • Properti tambahanNilai apa pun

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/connections/{connectionId}/query' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "adapter_key": "figma",
  "operation": "audiences.list",
  "parameters": {}
}'
GET/v1/workspaces/{workspaceId}/connections/{connectionId}/grants

listConnectionGrants

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

connectionId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Izin aktif untuk koneksi.

application/json

  • valueobject
  • dataarraywajib
  • Setiap itemobject

    Tidak ada properti tambahan

  • connection_idstringwajib

    format: "uuid"

  • principal_kindstringwajib

    enum: "agent", "automation", "api_key"

  • principal_idstringwajib
  • capabilitiesarraywajib
  • Setiap itemstring
  • resource_scopeobjectwajib
  • Properti tambahanNilai apa pun
  • created_by_actor_idstringwajib
  • created_atstringwajib

    format: "date-time"

  • updated_atstringwajib

    format: "date-time"

  • expires_atstring | null

    format: "date-time"

  • revoked_atstring | null

    format: "date-time"

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/connections/{connectionId}/grants' \
  --header "Authorization: Bearer $BANGER_API_KEY"
PUT/v1/workspaces/{workspaceId}/connections/{connectionId}/grants/{principalKind}/{principalId}

grantConnectionAccess

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

connectionId
path · wajib
  • valuestring

    format: "uuid"

principalKind
path · wajib
  • valuestring

    enum: "agent", "automation", "api_key"

principalId
path · wajib
  • valuestring

    minLength: 1 · maxLength: 200

Isi permintaan wajib

application/json

  • valueobject

    Tidak ada properti tambahan

  • capabilitiesarraywajib

    minItems: 1 · uniqueItems: true

  • Setiap itemstring
  • resource_scopeobject
  • Properti tambahanNilai apa pun
  • expires_atstring

    format: "date-time"

Respons berhasil 200

Akses koneksi diberikan atau diganti.

application/json

  • valueobject
  • dataobjectwajib

    Tidak ada properti tambahan

  • connection_idstringwajib

    format: "uuid"

  • principal_kindstringwajib

    enum: "agent", "automation", "api_key"

  • principal_idstringwajib
  • capabilitiesarraywajib
  • Setiap itemstring
  • resource_scopeobjectwajib
  • Properti tambahanNilai apa pun
  • created_by_actor_idstringwajib
  • created_atstringwajib

    format: "date-time"

  • updated_atstringwajib

    format: "date-time"

  • expires_atstring | null

    format: "date-time"

  • revoked_atstring | null

    format: "date-time"

Contoh curl

curl --request PUT --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/connections/{connectionId}/grants/{principalKind}/{principalId}' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "capabilities": [
    "example"
  ],
  "resource_scope": {},
  "expires_at": "2026-01-01T00:00:00Z"
}'
DELETE/v1/workspaces/{workspaceId}/connections/{connectionId}/grants/{principalKind}/{principalId}

revokeConnectionAccess

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

connectionId
path · wajib
  • valuestring

    format: "uuid"

principalKind
path · wajib
  • valuestring

    enum: "agent", "automation", "api_key"

principalId
path · wajib
  • valuestring

    minLength: 1 · maxLength: 200

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 204

Izin koneksi dicabut.

Tanpa isi respons.

Contoh curl

curl --request DELETE --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/connections/{connectionId}/grants/{principalKind}/{principalId}' \
  --header "Authorization: Bearer $BANGER_API_KEY"

Penyedia

POST/v1/workspaces/{workspaceId}/providers/google/oauth/session

Mulai koneksi kotak surat Gmail yang dilindungi PKCE untuk ruang kerja ini.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

URL otorisasi Gmail dan kontrak polling.

application/json

  • valueobject
  • sessionobjectwajib

    Tidak ada properti tambahan

  • sessionIdstringwajib

    format: "uuid"

  • authUrlstringwajib

    format: "uri"

  • expiresAtintegerwajib

    format: "int64"

  • pollIntervalMsintegerwajib

    minimum: 250

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/providers/google/oauth/session' \
  --header "Authorization: Bearer $BANGER_API_KEY"
GET/v1/workspaces/{workspaceId}/providers/google/oauth/sessions/{sessionId}

Poll sesi otorisasi Gmail dalam batas ruang kerjanya.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

sessionId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Status otorisasi Gmail saat ini.

application/json

  • valueobject
  • sessionobjectwajib

    Tidak ada properti tambahan

  • statusstringwajib

    enum: "pending", "complete", "error", "expired"

  • mailboxIdstring | nullwajib

    format: "uuid"

  • emailstring | nullwajib

    format: "email"

  • errorstring | nullwajib
  • expiresAtintegerwajib

    format: "int64"

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/providers/google/oauth/sessions/{sessionId}' \
  --header "Authorization: Bearer $BANGER_API_KEY"

Koneksi penyedia

GET/v1/workspaces/{workspaceId}/provider-connections

listProviderConnections

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Metadata koneksi penyedia. Materi kredensial tidak pernah dikembalikan.

application/json

  • valueobject
  • dataarraywajib
  • Setiap itemobject
  • idstringwajib

    format: "uuid"

  • kindstringwajib
  • ownershipstringwajib

    enum: "customer", "banger"

  • statusstringwajib

    enum: "pending", "active", "suspended", "reconnect_required", "disabled"

  • display_namestringwajib
  • capabilitiesarraywajib
  • Setiap itemstring
  • active_credential_versioninteger | null
  • credential_rotation_requiredbooleanwajib
  • last_validated_atstring | null

    format: "date-time"

  • last_error_codestring | null
  • disabled_atstring | null

    format: "date-time"

  • created_atstringwajib

    format: "date-time"

  • updated_atstringwajib

    format: "date-time"

  • verified_domainsarray
  • Setiap itemstring

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/provider-connections' \
  --header "Authorization: Bearer $BANGER_API_KEY"
POST/v1/workspaces/{workspaceId}/provider-connections/resend

createResendProviderConnection

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

Idempotency-Key
header · wajib
  • valuestring

    minLength: 16 · maxLength: 128

Isi permintaan wajib

application/json

  • valueobject

    Tidak ada properti tambahan

  • api_keystringwajib

    minLength: 16 · maxLength: 500

  • display_namestring

    maxLength: 100

Respons berhasil 200

Pengulangan idempoten koneksi Resend yang dibuat.

application/json

  • valueobject
  • dataobjectwajib
  • idstringwajib

    format: "uuid"

  • kindstringwajib
  • ownershipstringwajib

    enum: "customer", "banger"

  • statusstringwajib

    enum: "pending", "active", "suspended", "reconnect_required", "disabled"

  • display_namestringwajib
  • capabilitiesarraywajib
  • Setiap itemstring
  • active_credential_versioninteger | null
  • credential_rotation_requiredbooleanwajib
  • last_validated_atstring | null

    format: "date-time"

  • last_error_codestring | null
  • disabled_atstring | null

    format: "date-time"

  • created_atstringwajib

    format: "date-time"

  • updated_atstringwajib

    format: "date-time"

  • verified_domainsarray
  • Setiap itemstring

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/provider-connections/resend' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Idempotency-Key: examplexxxxxxxxx' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "api_key": "examplexxxxxxxxx",
  "display_name": "example"
}'
PUT/v1/workspaces/{workspaceId}/provider-connections/{providerConnectionId}/credential

rotateResendProviderCredential

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

providerConnectionId
path · wajib
  • valuestring

    format: "uuid"

Idempotency-Key
header · wajib
  • valuestring

    minLength: 16 · maxLength: 128

Isi permintaan wajib

application/json

  • valueobject

    Tidak ada properti tambahan

  • api_keystringwajib

    minLength: 16 · maxLength: 500

  • display_namestring

    maxLength: 100

Respons berhasil 200

Kredensial Resend dirotasi.

application/json

  • valueobject
  • dataobjectwajib
  • idstringwajib

    format: "uuid"

  • kindstringwajib
  • ownershipstringwajib

    enum: "customer", "banger"

  • statusstringwajib

    enum: "pending", "active", "suspended", "reconnect_required", "disabled"

  • display_namestringwajib
  • capabilitiesarraywajib
  • Setiap itemstring
  • active_credential_versioninteger | null
  • credential_rotation_requiredbooleanwajib
  • last_validated_atstring | null

    format: "date-time"

  • last_error_codestring | null
  • disabled_atstring | null

    format: "date-time"

  • created_atstringwajib

    format: "date-time"

  • updated_atstringwajib

    format: "date-time"

  • verified_domainsarray
  • Setiap itemstring

Contoh curl

curl --request PUT --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/provider-connections/{providerConnectionId}/credential' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Idempotency-Key: examplexxxxxxxxx' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "api_key": "examplexxxxxxxxx",
  "display_name": "example"
}'
DELETE/v1/workspaces/{workspaceId}/provider-connections/{providerConnectionId}

disableProviderConnection

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

providerConnectionId
path · wajib
  • valuestring

    format: "uuid"

Idempotency-Key
header · wajib
  • valuestring

    minLength: 16 · maxLength: 128

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 204

Koneksi penyedia dan kredensial aktif dicabut.

Tanpa isi respons.

Contoh curl

curl --request DELETE --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/provider-connections/{providerConnectionId}' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Idempotency-Key: examplexxxxxxxxx'

Domain pengiriman

GET/v1/workspaces/{workspaceId}/sending-domains

listNativeSendingDomains

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Domain pengiriman bawaan Banger untuk ruang kerja.

application/json

  • valueobject
  • dataarraywajib
  • Setiap itemobject

    Tidak ada properti tambahan

  • domain_idstringwajib

    format: "uuid"

  • product_idstringwajib

    format: "uuid"

  • root_domainstringwajib
  • parent_domainstring

    Domain perusahaan yang dipertahankan saat jalur memakai subdomain.

  • setup_modestring

    enum: "simple", "advanced"

  • domain_statusstringwajib

    enum: "pending", "verified", "failed", "disabled", "deleting", "deleted"

  • lanesarraywajib

    minItems: 1 · maxItems: 3

  • Setiap itemobject

    Tidak ada properti tambahan

  • idstringwajib

    format: "uuid"

  • created_atstring

    format: "date-time"

  • kindstringwajib

    enum: "mailbox", "product", "broadcast"

  • display_namestringwajib
  • from_domainstringwajib
  • mail_from_domainstring | nullwajib
  • inbound_domainstring | nullwajib
  • route_providerstringwajib

    enum: "banger", "resend"

  • selected_provider_connection_idstring | nullwajib

    format: "uuid"

  • inbound_providerstring | nullwajib

    enum: "banger", null

  • statusstringwajib

    enum: "pending", "active", "paused", "deleting", "deleted"

  • status_reasonstring | nullwajib
  • desired_revisionintegerwajib

    minimum: 1

  • observed_revisionintegerwajib

    minimum: 0

  • dns_readybooleanwajib
  • provider_readybooleanwajib
  • inbound_readybooleanwajib
  • outbound_readybooleanwajib
  • banger_transport_readybooleanwajib
  • banger_mail_from_domainstring | nullwajib
  • provisioning_job_idstring | nullwajib

    format: "uuid"

  • provisioning_statusstringwajib

    enum: "pending", "provisioning", "waiting_dns", "active", "failed", "deleting", "deleted", "not_required"

  • provisioning_error_codestring | null
  • provisioning_next_attempt_atstring | null
  • provisioning_last_checked_atstring | null
  • provider_identity_statusstring | null
  • provider_dkim_statusstring | null
  • dns_recordsarraywajib
  • Setiap itemobject

    Tidak ada properti tambahan

    Penumpukan lebih lanjut dihilangkan

  • dns_recordsarraywajib
  • Setiap itemobject

    Tidak ada properti tambahan

  • idstringwajib

    format: "uuid"

  • lane_idstringwajib

    format: "uuid"

  • providerstringwajib

    enum: "banger", "resend"

  • purposestringwajib
  • typestringwajib

    enum: "TXT", "MX", "CNAME"

  • namestringwajib
  • valuestringwajib
  • priorityinteger | nullwajib
  • requiredbooleanwajib
  • statusstringwajib

    enum: "pending", "verified", "error"

  • provider_statusstringwajib

    enum: "pending", "verified", "error", "not_applicable"

  • first_observed_atstring | nullwajib

    format: "date-time"

  • last_checked_atstring | nullwajib

    format: "date-time"

  • errorobjectwajib
  • Properti tambahanNilai apa pun
  • provider_referencestring | nullwajib
  • deletionobject | nullwajib

    Tidak ada properti tambahan

  • job_idstringwajib

    format: "uuid"

  • statusstringwajib

    enum: "pending", "processing", "waiting_provider", "completed", "failed"

  • last_error_codestring | nullwajib
  • cleanup_recordsarraywajib

    Catatan DNS persis yang dapat dihapus pengguna setelah pembongkaran selesai.

  • Setiap itemobject

    Tidak ada properti tambahan

  • idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • lane_idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • providerstringwajib

    enum: "banger", "resend"

    Penumpukan lebih lanjut dihilangkan

  • purposestringwajib

    Penumpukan lebih lanjut dihilangkan

  • typestringwajib

    enum: "TXT", "MX", "CNAME"

    Penumpukan lebih lanjut dihilangkan

  • namestringwajib

    Penumpukan lebih lanjut dihilangkan

  • valuestringwajib

    Penumpukan lebih lanjut dihilangkan

  • priorityinteger | nullwajib

    Penumpukan lebih lanjut dihilangkan

  • requiredbooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • statusstringwajib

    enum: "pending", "verified", "error"

    Penumpukan lebih lanjut dihilangkan

  • provider_statusstringwajib

    enum: "pending", "verified", "error", "not_applicable"

    Penumpukan lebih lanjut dihilangkan

  • first_observed_atstring | nullwajib

    format: "date-time"

    Penumpukan lebih lanjut dihilangkan

  • last_checked_atstring | nullwajib

    format: "date-time"

    Penumpukan lebih lanjut dihilangkan

  • errorobjectwajib

    Penumpukan lebih lanjut dihilangkan

  • provider_referencestring | nullwajib

    Penumpukan lebih lanjut dihilangkan

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/sending-domains' \
  --header "Authorization: Bearer $BANGER_API_KEY"
POST/v1/workspaces/{workspaceId}/sending-domains

createNativeSendingDomain

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

Idempotency-Key
header · wajib
  • valuestring

    minLength: 16 · maxLength: 128

Isi permintaan wajib

application/json

  • valueobject

    Tidak ada properti tambahan

  • domainstringwajib

    Domain atau subdomain persis produk. Secara default Banger menurunkan tiga subdomain jalur terpisah.

    minLength: 3 · maxLength: 253

  • setup_modestring

    Penyiapan sederhana menyediakan satu transport kotak surat untuk menerima dan mengirim dari alamat kotak surat terpilih, termasuk Kampanye dan Journey. Penyiapan lanjutan menyediakan jalur pengiriman terpisah.

    default: "advanced" · enum: "simple", "advanced"

  • mailbox_modestring

    Penyiapan sederhana default ke root jika tidak ada awalan kotak surat; lanjutan default ke subdomain. Subdomain mempertahankan email domain yang ada. Migrate meminta Kotak surat pada domain persis. Domain persis atau jalur yang terpakai memerlukan permintaan melalui sending-domain-migrations lalu otorisasi di panel Persetujuan Banger saat masuk. Kredensial agen tidak dapat mengizinkan migrasi. Pesan lama tidak diimpor dan DNS tidak pernah diubah otomatis.

    enum: "subdomain", "migrate"

  • root_dmarc_confirmedboolean

    Field kompatibilitas lama; kebijakan yang ada dipertahankan dan penyiapan tidak memerlukan konfirmasi.

  • lane_prefixesobject

    Tidak ada properti tambahan

  • mailboxstring

    minLength: 1 · maxLength: 63 · default: "mail"

  • productstring

    minLength: 1 · maxLength: 63 · default: "tx"

  • broadcaststring

    minLength: 1 · maxLength: 63 · default: "broadcast"

  • route_providersobject

    Resend hanya diterima jika Banger sudah mendeteksinya di DNS domain ini dan produk terpilih memiliki koneksi aktif. Klien tidak boleh mengiklankannya selain itu.

    Tidak ada properti tambahan

  • productstring

    default: "banger" · enum: "banger", "resend"

  • broadcaststring

    default: "banger" · enum: "banger", "resend"

  • route_domainsobject

    Domain terverifikasi persis yang disinkronkan dari Resend. Wajib untuk setiap jalur yang mempertahankan Resend.

    Tidak ada properti tambahan

  • productstring

    minLength: 3 · maxLength: 253

  • broadcaststring

    minLength: 3 · maxLength: 253

Respons berhasil 200

Pengulangan idempoten permintaan domain pengiriman bawaan Banger.

application/json

  • valueobject
  • dataobjectwajib

    Tidak ada properti tambahan

  • domain_idstringwajib

    format: "uuid"

  • product_idstringwajib

    format: "uuid"

  • root_domainstringwajib
  • parent_domainstring

    Domain perusahaan yang dipertahankan saat jalur memakai subdomain.

  • setup_modestring

    enum: "simple", "advanced"

  • domain_statusstringwajib

    enum: "pending", "verified", "failed", "disabled", "deleting", "deleted"

  • lanesarraywajib

    minItems: 1 · maxItems: 3

  • Setiap itemobject

    Tidak ada properti tambahan

  • idstringwajib

    format: "uuid"

  • created_atstring

    format: "date-time"

  • kindstringwajib

    enum: "mailbox", "product", "broadcast"

  • display_namestringwajib
  • from_domainstringwajib
  • mail_from_domainstring | nullwajib
  • inbound_domainstring | nullwajib
  • route_providerstringwajib

    enum: "banger", "resend"

  • selected_provider_connection_idstring | nullwajib

    format: "uuid"

  • inbound_providerstring | nullwajib

    enum: "banger", null

  • statusstringwajib

    enum: "pending", "active", "paused", "deleting", "deleted"

  • status_reasonstring | nullwajib
  • desired_revisionintegerwajib

    minimum: 1

  • observed_revisionintegerwajib

    minimum: 0

  • dns_readybooleanwajib
  • provider_readybooleanwajib
  • inbound_readybooleanwajib
  • outbound_readybooleanwajib
  • banger_transport_readybooleanwajib
  • banger_mail_from_domainstring | nullwajib
  • provisioning_job_idstring | nullwajib

    format: "uuid"

  • provisioning_statusstringwajib

    enum: "pending", "provisioning", "waiting_dns", "active", "failed", "deleting", "deleted", "not_required"

  • provisioning_error_codestring | null
  • provisioning_next_attempt_atstring | null
  • provisioning_last_checked_atstring | null
  • provider_identity_statusstring | null
  • provider_dkim_statusstring | null
  • dns_recordsarraywajib
  • Setiap itemobject

    Tidak ada properti tambahan

  • idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • lane_idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • providerstringwajib

    enum: "banger", "resend"

    Penumpukan lebih lanjut dihilangkan

  • purposestringwajib

    Penumpukan lebih lanjut dihilangkan

  • typestringwajib

    enum: "TXT", "MX", "CNAME"

    Penumpukan lebih lanjut dihilangkan

  • namestringwajib

    Penumpukan lebih lanjut dihilangkan

  • valuestringwajib

    Penumpukan lebih lanjut dihilangkan

  • priorityinteger | nullwajib

    Penumpukan lebih lanjut dihilangkan

  • requiredbooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • statusstringwajib

    enum: "pending", "verified", "error"

    Penumpukan lebih lanjut dihilangkan

  • provider_statusstringwajib

    enum: "pending", "verified", "error", "not_applicable"

    Penumpukan lebih lanjut dihilangkan

  • first_observed_atstring | nullwajib

    format: "date-time"

    Penumpukan lebih lanjut dihilangkan

  • last_checked_atstring | nullwajib

    format: "date-time"

    Penumpukan lebih lanjut dihilangkan

  • errorobjectwajib

    Penumpukan lebih lanjut dihilangkan

  • provider_referencestring | nullwajib

    Penumpukan lebih lanjut dihilangkan

  • dns_recordsarraywajib
  • Setiap itemobject

    Tidak ada properti tambahan

  • idstringwajib

    format: "uuid"

  • lane_idstringwajib

    format: "uuid"

  • providerstringwajib

    enum: "banger", "resend"

  • purposestringwajib
  • typestringwajib

    enum: "TXT", "MX", "CNAME"

  • namestringwajib
  • valuestringwajib
  • priorityinteger | nullwajib
  • requiredbooleanwajib
  • statusstringwajib

    enum: "pending", "verified", "error"

  • provider_statusstringwajib

    enum: "pending", "verified", "error", "not_applicable"

  • first_observed_atstring | nullwajib

    format: "date-time"

  • last_checked_atstring | nullwajib

    format: "date-time"

  • errorobjectwajib
  • Properti tambahanNilai apa pun
  • provider_referencestring | nullwajib
  • deletionobject | nullwajib

    Tidak ada properti tambahan

  • job_idstringwajib

    format: "uuid"

  • statusstringwajib

    enum: "pending", "processing", "waiting_provider", "completed", "failed"

  • last_error_codestring | nullwajib
  • cleanup_recordsarraywajib

    Catatan DNS persis yang dapat dihapus pengguna setelah pembongkaran selesai.

  • Setiap itemobject

    Tidak ada properti tambahan

  • idstringwajib

    format: "uuid"

  • lane_idstringwajib

    format: "uuid"

  • providerstringwajib

    enum: "banger", "resend"

  • purposestringwajib
  • typestringwajib

    enum: "TXT", "MX", "CNAME"

  • namestringwajib
  • valuestringwajib
  • priorityinteger | nullwajib
  • requiredbooleanwajib
  • statusstringwajib

    enum: "pending", "verified", "error"

  • provider_statusstringwajib

    enum: "pending", "verified", "error", "not_applicable"

  • first_observed_atstring | nullwajib

    format: "date-time"

  • last_checked_atstring | nullwajib

    format: "date-time"

  • errorobjectwajib
  • Properti tambahanNilai apa pun
  • provider_referencestring | nullwajib

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/sending-domains' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Idempotency-Key: examplexxxxxxxxx' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "domain": "example",
  "setup_mode": "advanced",
  "mailbox_mode": "subdomain",
  "root_dmarc_confirmed": true,
  "lane_prefixes": {
    "mailbox": "mail",
    "product": "tx",
    "broadcast": "broadcast"
  },
  "route_providers": {
    "product": "banger",
    "broadcast": "banger"
  },
  "route_domains": {
    "product": "example",
    "broadcast": "example"
  }
}'
GET/v1/workspaces/{workspaceId}/sending-domains/{sendingDomainId}

getNativeSendingDomain

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

sendingDomainId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Status domain, aliran, penyediaan, dan DNS wajib saat ini.

application/json

  • valueobject
  • dataobjectwajib

    Tidak ada properti tambahan

  • domain_idstringwajib

    format: "uuid"

  • product_idstringwajib

    format: "uuid"

  • root_domainstringwajib
  • parent_domainstring

    Domain perusahaan yang dipertahankan saat jalur memakai subdomain.

  • setup_modestring

    enum: "simple", "advanced"

  • domain_statusstringwajib

    enum: "pending", "verified", "failed", "disabled", "deleting", "deleted"

  • lanesarraywajib

    minItems: 1 · maxItems: 3

  • Setiap itemobject

    Tidak ada properti tambahan

  • idstringwajib

    format: "uuid"

  • created_atstring

    format: "date-time"

  • kindstringwajib

    enum: "mailbox", "product", "broadcast"

  • display_namestringwajib
  • from_domainstringwajib
  • mail_from_domainstring | nullwajib
  • inbound_domainstring | nullwajib
  • route_providerstringwajib

    enum: "banger", "resend"

  • selected_provider_connection_idstring | nullwajib

    format: "uuid"

  • inbound_providerstring | nullwajib

    enum: "banger", null

  • statusstringwajib

    enum: "pending", "active", "paused", "deleting", "deleted"

  • status_reasonstring | nullwajib
  • desired_revisionintegerwajib

    minimum: 1

  • observed_revisionintegerwajib

    minimum: 0

  • dns_readybooleanwajib
  • provider_readybooleanwajib
  • inbound_readybooleanwajib
  • outbound_readybooleanwajib
  • banger_transport_readybooleanwajib
  • banger_mail_from_domainstring | nullwajib
  • provisioning_job_idstring | nullwajib

    format: "uuid"

  • provisioning_statusstringwajib

    enum: "pending", "provisioning", "waiting_dns", "active", "failed", "deleting", "deleted", "not_required"

  • provisioning_error_codestring | null
  • provisioning_next_attempt_atstring | null
  • provisioning_last_checked_atstring | null
  • provider_identity_statusstring | null
  • provider_dkim_statusstring | null
  • dns_recordsarraywajib
  • Setiap itemobject

    Tidak ada properti tambahan

  • idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • lane_idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • providerstringwajib

    enum: "banger", "resend"

    Penumpukan lebih lanjut dihilangkan

  • purposestringwajib

    Penumpukan lebih lanjut dihilangkan

  • typestringwajib

    enum: "TXT", "MX", "CNAME"

    Penumpukan lebih lanjut dihilangkan

  • namestringwajib

    Penumpukan lebih lanjut dihilangkan

  • valuestringwajib

    Penumpukan lebih lanjut dihilangkan

  • priorityinteger | nullwajib

    Penumpukan lebih lanjut dihilangkan

  • requiredbooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • statusstringwajib

    enum: "pending", "verified", "error"

    Penumpukan lebih lanjut dihilangkan

  • provider_statusstringwajib

    enum: "pending", "verified", "error", "not_applicable"

    Penumpukan lebih lanjut dihilangkan

  • first_observed_atstring | nullwajib

    format: "date-time"

    Penumpukan lebih lanjut dihilangkan

  • last_checked_atstring | nullwajib

    format: "date-time"

    Penumpukan lebih lanjut dihilangkan

  • errorobjectwajib

    Penumpukan lebih lanjut dihilangkan

  • provider_referencestring | nullwajib

    Penumpukan lebih lanjut dihilangkan

  • dns_recordsarraywajib
  • Setiap itemobject

    Tidak ada properti tambahan

  • idstringwajib

    format: "uuid"

  • lane_idstringwajib

    format: "uuid"

  • providerstringwajib

    enum: "banger", "resend"

  • purposestringwajib
  • typestringwajib

    enum: "TXT", "MX", "CNAME"

  • namestringwajib
  • valuestringwajib
  • priorityinteger | nullwajib
  • requiredbooleanwajib
  • statusstringwajib

    enum: "pending", "verified", "error"

  • provider_statusstringwajib

    enum: "pending", "verified", "error", "not_applicable"

  • first_observed_atstring | nullwajib

    format: "date-time"

  • last_checked_atstring | nullwajib

    format: "date-time"

  • errorobjectwajib
  • Properti tambahanNilai apa pun
  • provider_referencestring | nullwajib
  • deletionobject | nullwajib

    Tidak ada properti tambahan

  • job_idstringwajib

    format: "uuid"

  • statusstringwajib

    enum: "pending", "processing", "waiting_provider", "completed", "failed"

  • last_error_codestring | nullwajib
  • cleanup_recordsarraywajib

    Catatan DNS persis yang dapat dihapus pengguna setelah pembongkaran selesai.

  • Setiap itemobject

    Tidak ada properti tambahan

  • idstringwajib

    format: "uuid"

  • lane_idstringwajib

    format: "uuid"

  • providerstringwajib

    enum: "banger", "resend"

  • purposestringwajib
  • typestringwajib

    enum: "TXT", "MX", "CNAME"

  • namestringwajib
  • valuestringwajib
  • priorityinteger | nullwajib
  • requiredbooleanwajib
  • statusstringwajib

    enum: "pending", "verified", "error"

  • provider_statusstringwajib

    enum: "pending", "verified", "error", "not_applicable"

  • first_observed_atstring | nullwajib

    format: "date-time"

  • last_checked_atstring | nullwajib

    format: "date-time"

  • errorobjectwajib
  • Properti tambahanNilai apa pun
  • provider_referencestring | nullwajib

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/sending-domains/{sendingDomainId}' \
  --header "Authorization: Bearer $BANGER_API_KEY"
DELETE/v1/workspaces/{workspaceId}/sending-domains/{sendingDomainId}

deleteNativeSendingDomain

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

sendingDomainId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan wajib

application/json

  • valueobject

    Tidak ada properti tambahan

  • confirm_domainstringwajib

    Harus sama persis dengan domain root yang dihapus.

    minLength: 3 · maxLength: 253

Respons berhasil 202

Pengiriman dan penerimaan dihentikan dan pembongkaran penyedia idempoten diantrekan. Riwayat email dan catatan audit dipertahankan.

application/json

  • valueobject
  • dataobjectwajib

    Tidak ada properti tambahan

  • domain_idstringwajib

    format: "uuid"

  • product_idstringwajib

    format: "uuid"

  • root_domainstringwajib
  • parent_domainstring

    Domain perusahaan yang dipertahankan saat jalur memakai subdomain.

  • setup_modestring

    enum: "simple", "advanced"

  • domain_statusstringwajib

    enum: "pending", "verified", "failed", "disabled", "deleting", "deleted"

  • lanesarraywajib

    minItems: 1 · maxItems: 3

  • Setiap itemobject

    Tidak ada properti tambahan

  • idstringwajib

    format: "uuid"

  • created_atstring

    format: "date-time"

  • kindstringwajib

    enum: "mailbox", "product", "broadcast"

  • display_namestringwajib
  • from_domainstringwajib
  • mail_from_domainstring | nullwajib
  • inbound_domainstring | nullwajib
  • route_providerstringwajib

    enum: "banger", "resend"

  • selected_provider_connection_idstring | nullwajib

    format: "uuid"

  • inbound_providerstring | nullwajib

    enum: "banger", null

  • statusstringwajib

    enum: "pending", "active", "paused", "deleting", "deleted"

  • status_reasonstring | nullwajib
  • desired_revisionintegerwajib

    minimum: 1

  • observed_revisionintegerwajib

    minimum: 0

  • dns_readybooleanwajib
  • provider_readybooleanwajib
  • inbound_readybooleanwajib
  • outbound_readybooleanwajib
  • banger_transport_readybooleanwajib
  • banger_mail_from_domainstring | nullwajib
  • provisioning_job_idstring | nullwajib

    format: "uuid"

  • provisioning_statusstringwajib

    enum: "pending", "provisioning", "waiting_dns", "active", "failed", "deleting", "deleted", "not_required"

  • provisioning_error_codestring | null
  • provisioning_next_attempt_atstring | null
  • provisioning_last_checked_atstring | null
  • provider_identity_statusstring | null
  • provider_dkim_statusstring | null
  • dns_recordsarraywajib
  • Setiap itemobject

    Tidak ada properti tambahan

  • idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • lane_idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • providerstringwajib

    enum: "banger", "resend"

    Penumpukan lebih lanjut dihilangkan

  • purposestringwajib

    Penumpukan lebih lanjut dihilangkan

  • typestringwajib

    enum: "TXT", "MX", "CNAME"

    Penumpukan lebih lanjut dihilangkan

  • namestringwajib

    Penumpukan lebih lanjut dihilangkan

  • valuestringwajib

    Penumpukan lebih lanjut dihilangkan

  • priorityinteger | nullwajib

    Penumpukan lebih lanjut dihilangkan

  • requiredbooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • statusstringwajib

    enum: "pending", "verified", "error"

    Penumpukan lebih lanjut dihilangkan

  • provider_statusstringwajib

    enum: "pending", "verified", "error", "not_applicable"

    Penumpukan lebih lanjut dihilangkan

  • first_observed_atstring | nullwajib

    format: "date-time"

    Penumpukan lebih lanjut dihilangkan

  • last_checked_atstring | nullwajib

    format: "date-time"

    Penumpukan lebih lanjut dihilangkan

  • errorobjectwajib

    Penumpukan lebih lanjut dihilangkan

  • provider_referencestring | nullwajib

    Penumpukan lebih lanjut dihilangkan

  • dns_recordsarraywajib
  • Setiap itemobject

    Tidak ada properti tambahan

  • idstringwajib

    format: "uuid"

  • lane_idstringwajib

    format: "uuid"

  • providerstringwajib

    enum: "banger", "resend"

  • purposestringwajib
  • typestringwajib

    enum: "TXT", "MX", "CNAME"

  • namestringwajib
  • valuestringwajib
  • priorityinteger | nullwajib
  • requiredbooleanwajib
  • statusstringwajib

    enum: "pending", "verified", "error"

  • provider_statusstringwajib

    enum: "pending", "verified", "error", "not_applicable"

  • first_observed_atstring | nullwajib

    format: "date-time"

  • last_checked_atstring | nullwajib

    format: "date-time"

  • errorobjectwajib
  • Properti tambahanNilai apa pun
  • provider_referencestring | nullwajib
  • deletionobject | nullwajib

    Tidak ada properti tambahan

  • job_idstringwajib

    format: "uuid"

  • statusstringwajib

    enum: "pending", "processing", "waiting_provider", "completed", "failed"

  • last_error_codestring | nullwajib
  • cleanup_recordsarraywajib

    Catatan DNS persis yang dapat dihapus pengguna setelah pembongkaran selesai.

  • Setiap itemobject

    Tidak ada properti tambahan

  • idstringwajib

    format: "uuid"

  • lane_idstringwajib

    format: "uuid"

  • providerstringwajib

    enum: "banger", "resend"

  • purposestringwajib
  • typestringwajib

    enum: "TXT", "MX", "CNAME"

  • namestringwajib
  • valuestringwajib
  • priorityinteger | nullwajib
  • requiredbooleanwajib
  • statusstringwajib

    enum: "pending", "verified", "error"

  • provider_statusstringwajib

    enum: "pending", "verified", "error", "not_applicable"

  • first_observed_atstring | nullwajib

    format: "date-time"

  • last_checked_atstring | nullwajib

    format: "date-time"

  • errorobjectwajib
  • Properti tambahanNilai apa pun
  • provider_referencestring | nullwajib

Contoh curl

curl --request DELETE --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/sending-domains/{sendingDomainId}' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "confirm_domain": "example"
}'
DELETE/v1/workspaces/{workspaceId}/sending-domains/{sendingDomainId}/lanes/{laneKind}

removeNativeSendingLane

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

sendingDomainId
path · wajib
  • valuestring

    format: "uuid"

laneKind
path · wajib
  • valuestring

    enum: "mailbox", "product", "broadcast"

Isi permintaan wajib

application/json

  • valueobject

    Tidak ada properti tambahan

  • confirm_domainstringwajib

    Subdomain persis jalur terpilih.

Respons berhasil 202

Hanya jalur terpilih dihentikan dan diantrekan untuk penghapusan. Jalur lain dan riwayat pesan dipertahankan.

application/json

  • valueobject
  • dataobjectwajib

    Tidak ada properti tambahan

  • domain_idstringwajib

    format: "uuid"

  • product_idstringwajib

    format: "uuid"

  • root_domainstringwajib
  • parent_domainstring

    Domain perusahaan yang dipertahankan saat jalur memakai subdomain.

  • setup_modestring

    enum: "simple", "advanced"

  • domain_statusstringwajib

    enum: "pending", "verified", "failed", "disabled", "deleting", "deleted"

  • lanesarraywajib

    minItems: 1 · maxItems: 3

  • Setiap itemobject

    Tidak ada properti tambahan

  • idstringwajib

    format: "uuid"

  • created_atstring

    format: "date-time"

  • kindstringwajib

    enum: "mailbox", "product", "broadcast"

  • display_namestringwajib
  • from_domainstringwajib
  • mail_from_domainstring | nullwajib
  • inbound_domainstring | nullwajib
  • route_providerstringwajib

    enum: "banger", "resend"

  • selected_provider_connection_idstring | nullwajib

    format: "uuid"

  • inbound_providerstring | nullwajib

    enum: "banger", null

  • statusstringwajib

    enum: "pending", "active", "paused", "deleting", "deleted"

  • status_reasonstring | nullwajib
  • desired_revisionintegerwajib

    minimum: 1

  • observed_revisionintegerwajib

    minimum: 0

  • dns_readybooleanwajib
  • provider_readybooleanwajib
  • inbound_readybooleanwajib
  • outbound_readybooleanwajib
  • banger_transport_readybooleanwajib
  • banger_mail_from_domainstring | nullwajib
  • provisioning_job_idstring | nullwajib

    format: "uuid"

  • provisioning_statusstringwajib

    enum: "pending", "provisioning", "waiting_dns", "active", "failed", "deleting", "deleted", "not_required"

  • provisioning_error_codestring | null
  • provisioning_next_attempt_atstring | null
  • provisioning_last_checked_atstring | null
  • provider_identity_statusstring | null
  • provider_dkim_statusstring | null
  • dns_recordsarraywajib
  • Setiap itemobject

    Tidak ada properti tambahan

  • idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • lane_idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • providerstringwajib

    enum: "banger", "resend"

    Penumpukan lebih lanjut dihilangkan

  • purposestringwajib

    Penumpukan lebih lanjut dihilangkan

  • typestringwajib

    enum: "TXT", "MX", "CNAME"

    Penumpukan lebih lanjut dihilangkan

  • namestringwajib

    Penumpukan lebih lanjut dihilangkan

  • valuestringwajib

    Penumpukan lebih lanjut dihilangkan

  • priorityinteger | nullwajib

    Penumpukan lebih lanjut dihilangkan

  • requiredbooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • statusstringwajib

    enum: "pending", "verified", "error"

    Penumpukan lebih lanjut dihilangkan

  • provider_statusstringwajib

    enum: "pending", "verified", "error", "not_applicable"

    Penumpukan lebih lanjut dihilangkan

  • first_observed_atstring | nullwajib

    format: "date-time"

    Penumpukan lebih lanjut dihilangkan

  • last_checked_atstring | nullwajib

    format: "date-time"

    Penumpukan lebih lanjut dihilangkan

  • errorobjectwajib

    Penumpukan lebih lanjut dihilangkan

  • provider_referencestring | nullwajib

    Penumpukan lebih lanjut dihilangkan

  • dns_recordsarraywajib
  • Setiap itemobject

    Tidak ada properti tambahan

  • idstringwajib

    format: "uuid"

  • lane_idstringwajib

    format: "uuid"

  • providerstringwajib

    enum: "banger", "resend"

  • purposestringwajib
  • typestringwajib

    enum: "TXT", "MX", "CNAME"

  • namestringwajib
  • valuestringwajib
  • priorityinteger | nullwajib
  • requiredbooleanwajib
  • statusstringwajib

    enum: "pending", "verified", "error"

  • provider_statusstringwajib

    enum: "pending", "verified", "error", "not_applicable"

  • first_observed_atstring | nullwajib

    format: "date-time"

  • last_checked_atstring | nullwajib

    format: "date-time"

  • errorobjectwajib
  • Properti tambahanNilai apa pun
  • provider_referencestring | nullwajib
  • deletionobject | nullwajib

    Tidak ada properti tambahan

  • job_idstringwajib

    format: "uuid"

  • statusstringwajib

    enum: "pending", "processing", "waiting_provider", "completed", "failed"

  • last_error_codestring | nullwajib
  • cleanup_recordsarraywajib

    Catatan DNS persis yang dapat dihapus pengguna setelah pembongkaran selesai.

  • Setiap itemobject

    Tidak ada properti tambahan

  • idstringwajib

    format: "uuid"

  • lane_idstringwajib

    format: "uuid"

  • providerstringwajib

    enum: "banger", "resend"

  • purposestringwajib
  • typestringwajib

    enum: "TXT", "MX", "CNAME"

  • namestringwajib
  • valuestringwajib
  • priorityinteger | nullwajib
  • requiredbooleanwajib
  • statusstringwajib

    enum: "pending", "verified", "error"

  • provider_statusstringwajib

    enum: "pending", "verified", "error", "not_applicable"

  • first_observed_atstring | nullwajib

    format: "date-time"

  • last_checked_atstring | nullwajib

    format: "date-time"

  • errorobjectwajib
  • Properti tambahanNilai apa pun
  • provider_referencestring | nullwajib

Contoh curl

curl --request DELETE --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/sending-domains/{sendingDomainId}/lanes/{laneKind}' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "confirm_domain": "example"
}'
POST/v1/workspaces/{workspaceId}/sending-domains/{sendingDomainId}/lanes/{laneKind}/pause

pauseNativeSendingLane

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

sendingDomainId
path · wajib
  • valuestring

    format: "uuid"

laneKind
path · wajib
  • valuestring

    enum: "mailbox", "product", "broadcast"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Jalur terpilih dijeda tanpa mengubah DNS-nya atau jalur lain.

application/json

  • valueobject
  • dataobjectwajib

    Tidak ada properti tambahan

  • domain_idstringwajib

    format: "uuid"

  • product_idstringwajib

    format: "uuid"

  • root_domainstringwajib
  • parent_domainstring

    Domain perusahaan yang dipertahankan saat jalur memakai subdomain.

  • setup_modestring

    enum: "simple", "advanced"

  • domain_statusstringwajib

    enum: "pending", "verified", "failed", "disabled", "deleting", "deleted"

  • lanesarraywajib

    minItems: 1 · maxItems: 3

  • Setiap itemobject

    Tidak ada properti tambahan

  • idstringwajib

    format: "uuid"

  • created_atstring

    format: "date-time"

  • kindstringwajib

    enum: "mailbox", "product", "broadcast"

  • display_namestringwajib
  • from_domainstringwajib
  • mail_from_domainstring | nullwajib
  • inbound_domainstring | nullwajib
  • route_providerstringwajib

    enum: "banger", "resend"

  • selected_provider_connection_idstring | nullwajib

    format: "uuid"

  • inbound_providerstring | nullwajib

    enum: "banger", null

  • statusstringwajib

    enum: "pending", "active", "paused", "deleting", "deleted"

  • status_reasonstring | nullwajib
  • desired_revisionintegerwajib

    minimum: 1

  • observed_revisionintegerwajib

    minimum: 0

  • dns_readybooleanwajib
  • provider_readybooleanwajib
  • inbound_readybooleanwajib
  • outbound_readybooleanwajib
  • banger_transport_readybooleanwajib
  • banger_mail_from_domainstring | nullwajib
  • provisioning_job_idstring | nullwajib

    format: "uuid"

  • provisioning_statusstringwajib

    enum: "pending", "provisioning", "waiting_dns", "active", "failed", "deleting", "deleted", "not_required"

  • provisioning_error_codestring | null
  • provisioning_next_attempt_atstring | null
  • provisioning_last_checked_atstring | null
  • provider_identity_statusstring | null
  • provider_dkim_statusstring | null
  • dns_recordsarraywajib
  • Setiap itemobject

    Tidak ada properti tambahan

  • idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • lane_idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • providerstringwajib

    enum: "banger", "resend"

    Penumpukan lebih lanjut dihilangkan

  • purposestringwajib

    Penumpukan lebih lanjut dihilangkan

  • typestringwajib

    enum: "TXT", "MX", "CNAME"

    Penumpukan lebih lanjut dihilangkan

  • namestringwajib

    Penumpukan lebih lanjut dihilangkan

  • valuestringwajib

    Penumpukan lebih lanjut dihilangkan

  • priorityinteger | nullwajib

    Penumpukan lebih lanjut dihilangkan

  • requiredbooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • statusstringwajib

    enum: "pending", "verified", "error"

    Penumpukan lebih lanjut dihilangkan

  • provider_statusstringwajib

    enum: "pending", "verified", "error", "not_applicable"

    Penumpukan lebih lanjut dihilangkan

  • first_observed_atstring | nullwajib

    format: "date-time"

    Penumpukan lebih lanjut dihilangkan

  • last_checked_atstring | nullwajib

    format: "date-time"

    Penumpukan lebih lanjut dihilangkan

  • errorobjectwajib

    Penumpukan lebih lanjut dihilangkan

  • provider_referencestring | nullwajib

    Penumpukan lebih lanjut dihilangkan

  • dns_recordsarraywajib
  • Setiap itemobject

    Tidak ada properti tambahan

  • idstringwajib

    format: "uuid"

  • lane_idstringwajib

    format: "uuid"

  • providerstringwajib

    enum: "banger", "resend"

  • purposestringwajib
  • typestringwajib

    enum: "TXT", "MX", "CNAME"

  • namestringwajib
  • valuestringwajib
  • priorityinteger | nullwajib
  • requiredbooleanwajib
  • statusstringwajib

    enum: "pending", "verified", "error"

  • provider_statusstringwajib

    enum: "pending", "verified", "error", "not_applicable"

  • first_observed_atstring | nullwajib

    format: "date-time"

  • last_checked_atstring | nullwajib

    format: "date-time"

  • errorobjectwajib
  • Properti tambahanNilai apa pun
  • provider_referencestring | nullwajib
  • deletionobject | nullwajib

    Tidak ada properti tambahan

  • job_idstringwajib

    format: "uuid"

  • statusstringwajib

    enum: "pending", "processing", "waiting_provider", "completed", "failed"

  • last_error_codestring | nullwajib
  • cleanup_recordsarraywajib

    Catatan DNS persis yang dapat dihapus pengguna setelah pembongkaran selesai.

  • Setiap itemobject

    Tidak ada properti tambahan

  • idstringwajib

    format: "uuid"

  • lane_idstringwajib

    format: "uuid"

  • providerstringwajib

    enum: "banger", "resend"

  • purposestringwajib
  • typestringwajib

    enum: "TXT", "MX", "CNAME"

  • namestringwajib
  • valuestringwajib
  • priorityinteger | nullwajib
  • requiredbooleanwajib
  • statusstringwajib

    enum: "pending", "verified", "error"

  • provider_statusstringwajib

    enum: "pending", "verified", "error", "not_applicable"

  • first_observed_atstring | nullwajib

    format: "date-time"

  • last_checked_atstring | nullwajib

    format: "date-time"

  • errorobjectwajib
  • Properti tambahanNilai apa pun
  • provider_referencestring | nullwajib

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/sending-domains/{sendingDomainId}/lanes/{laneKind}/pause' \
  --header "Authorization: Bearer $BANGER_API_KEY"
POST/v1/workspaces/{workspaceId}/sending-domains/{sendingDomainId}/lanes/{laneKind}/resume

resumeNativeSendingLane

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

sendingDomainId
path · wajib
  • valuestring

    format: "uuid"

laneKind
path · wajib
  • valuestring

    enum: "mailbox", "product", "broadcast"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Jalur terpilih dilanjutkan saat DNS tersimpan dan status penyedianya siap.

application/json

  • valueobject
  • dataobjectwajib

    Tidak ada properti tambahan

  • domain_idstringwajib

    format: "uuid"

  • product_idstringwajib

    format: "uuid"

  • root_domainstringwajib
  • parent_domainstring

    Domain perusahaan yang dipertahankan saat jalur memakai subdomain.

  • setup_modestring

    enum: "simple", "advanced"

  • domain_statusstringwajib

    enum: "pending", "verified", "failed", "disabled", "deleting", "deleted"

  • lanesarraywajib

    minItems: 1 · maxItems: 3

  • Setiap itemobject

    Tidak ada properti tambahan

  • idstringwajib

    format: "uuid"

  • created_atstring

    format: "date-time"

  • kindstringwajib

    enum: "mailbox", "product", "broadcast"

  • display_namestringwajib
  • from_domainstringwajib
  • mail_from_domainstring | nullwajib
  • inbound_domainstring | nullwajib
  • route_providerstringwajib

    enum: "banger", "resend"

  • selected_provider_connection_idstring | nullwajib

    format: "uuid"

  • inbound_providerstring | nullwajib

    enum: "banger", null

  • statusstringwajib

    enum: "pending", "active", "paused", "deleting", "deleted"

  • status_reasonstring | nullwajib
  • desired_revisionintegerwajib

    minimum: 1

  • observed_revisionintegerwajib

    minimum: 0

  • dns_readybooleanwajib
  • provider_readybooleanwajib
  • inbound_readybooleanwajib
  • outbound_readybooleanwajib
  • banger_transport_readybooleanwajib
  • banger_mail_from_domainstring | nullwajib
  • provisioning_job_idstring | nullwajib

    format: "uuid"

  • provisioning_statusstringwajib

    enum: "pending", "provisioning", "waiting_dns", "active", "failed", "deleting", "deleted", "not_required"

  • provisioning_error_codestring | null
  • provisioning_next_attempt_atstring | null
  • provisioning_last_checked_atstring | null
  • provider_identity_statusstring | null
  • provider_dkim_statusstring | null
  • dns_recordsarraywajib
  • Setiap itemobject

    Tidak ada properti tambahan

  • idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • lane_idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • providerstringwajib

    enum: "banger", "resend"

    Penumpukan lebih lanjut dihilangkan

  • purposestringwajib

    Penumpukan lebih lanjut dihilangkan

  • typestringwajib

    enum: "TXT", "MX", "CNAME"

    Penumpukan lebih lanjut dihilangkan

  • namestringwajib

    Penumpukan lebih lanjut dihilangkan

  • valuestringwajib

    Penumpukan lebih lanjut dihilangkan

  • priorityinteger | nullwajib

    Penumpukan lebih lanjut dihilangkan

  • requiredbooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • statusstringwajib

    enum: "pending", "verified", "error"

    Penumpukan lebih lanjut dihilangkan

  • provider_statusstringwajib

    enum: "pending", "verified", "error", "not_applicable"

    Penumpukan lebih lanjut dihilangkan

  • first_observed_atstring | nullwajib

    format: "date-time"

    Penumpukan lebih lanjut dihilangkan

  • last_checked_atstring | nullwajib

    format: "date-time"

    Penumpukan lebih lanjut dihilangkan

  • errorobjectwajib

    Penumpukan lebih lanjut dihilangkan

  • provider_referencestring | nullwajib

    Penumpukan lebih lanjut dihilangkan

  • dns_recordsarraywajib
  • Setiap itemobject

    Tidak ada properti tambahan

  • idstringwajib

    format: "uuid"

  • lane_idstringwajib

    format: "uuid"

  • providerstringwajib

    enum: "banger", "resend"

  • purposestringwajib
  • typestringwajib

    enum: "TXT", "MX", "CNAME"

  • namestringwajib
  • valuestringwajib
  • priorityinteger | nullwajib
  • requiredbooleanwajib
  • statusstringwajib

    enum: "pending", "verified", "error"

  • provider_statusstringwajib

    enum: "pending", "verified", "error", "not_applicable"

  • first_observed_atstring | nullwajib

    format: "date-time"

  • last_checked_atstring | nullwajib

    format: "date-time"

  • errorobjectwajib
  • Properti tambahanNilai apa pun
  • provider_referencestring | nullwajib
  • deletionobject | nullwajib

    Tidak ada properti tambahan

  • job_idstringwajib

    format: "uuid"

  • statusstringwajib

    enum: "pending", "processing", "waiting_provider", "completed", "failed"

  • last_error_codestring | nullwajib
  • cleanup_recordsarraywajib

    Catatan DNS persis yang dapat dihapus pengguna setelah pembongkaran selesai.

  • Setiap itemobject

    Tidak ada properti tambahan

  • idstringwajib

    format: "uuid"

  • lane_idstringwajib

    format: "uuid"

  • providerstringwajib

    enum: "banger", "resend"

  • purposestringwajib
  • typestringwajib

    enum: "TXT", "MX", "CNAME"

  • namestringwajib
  • valuestringwajib
  • priorityinteger | nullwajib
  • requiredbooleanwajib
  • statusstringwajib

    enum: "pending", "verified", "error"

  • provider_statusstringwajib

    enum: "pending", "verified", "error", "not_applicable"

  • first_observed_atstring | nullwajib

    format: "date-time"

  • last_checked_atstring | nullwajib

    format: "date-time"

  • errorobjectwajib
  • Properti tambahanNilai apa pun
  • provider_referencestring | nullwajib

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/sending-domains/{sendingDomainId}/lanes/{laneKind}/resume' \
  --header "Authorization: Bearer $BANGER_API_KEY"
POST/v1/workspaces/{workspaceId}/sending-domains/{sendingDomainId}/verify

verifyNativeSendingDomain

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

sendingDomainId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Identitas Banger dan verifikasi DNS diperiksa ulang dengan aman.

application/json

  • valueobject
  • dataobjectwajib

    Tidak ada properti tambahan

  • domain_idstringwajib

    format: "uuid"

  • product_idstringwajib

    format: "uuid"

  • root_domainstringwajib
  • parent_domainstring

    Domain perusahaan yang dipertahankan saat jalur memakai subdomain.

  • setup_modestring

    enum: "simple", "advanced"

  • domain_statusstringwajib

    enum: "pending", "verified", "failed", "disabled", "deleting", "deleted"

  • lanesarraywajib

    minItems: 1 · maxItems: 3

  • Setiap itemobject

    Tidak ada properti tambahan

  • idstringwajib

    format: "uuid"

  • created_atstring

    format: "date-time"

  • kindstringwajib

    enum: "mailbox", "product", "broadcast"

  • display_namestringwajib
  • from_domainstringwajib
  • mail_from_domainstring | nullwajib
  • inbound_domainstring | nullwajib
  • route_providerstringwajib

    enum: "banger", "resend"

  • selected_provider_connection_idstring | nullwajib

    format: "uuid"

  • inbound_providerstring | nullwajib

    enum: "banger", null

  • statusstringwajib

    enum: "pending", "active", "paused", "deleting", "deleted"

  • status_reasonstring | nullwajib
  • desired_revisionintegerwajib

    minimum: 1

  • observed_revisionintegerwajib

    minimum: 0

  • dns_readybooleanwajib
  • provider_readybooleanwajib
  • inbound_readybooleanwajib
  • outbound_readybooleanwajib
  • banger_transport_readybooleanwajib
  • banger_mail_from_domainstring | nullwajib
  • provisioning_job_idstring | nullwajib

    format: "uuid"

  • provisioning_statusstringwajib

    enum: "pending", "provisioning", "waiting_dns", "active", "failed", "deleting", "deleted", "not_required"

  • provisioning_error_codestring | null
  • provisioning_next_attempt_atstring | null
  • provisioning_last_checked_atstring | null
  • provider_identity_statusstring | null
  • provider_dkim_statusstring | null
  • dns_recordsarraywajib
  • Setiap itemobject

    Tidak ada properti tambahan

  • idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • lane_idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • providerstringwajib

    enum: "banger", "resend"

    Penumpukan lebih lanjut dihilangkan

  • purposestringwajib

    Penumpukan lebih lanjut dihilangkan

  • typestringwajib

    enum: "TXT", "MX", "CNAME"

    Penumpukan lebih lanjut dihilangkan

  • namestringwajib

    Penumpukan lebih lanjut dihilangkan

  • valuestringwajib

    Penumpukan lebih lanjut dihilangkan

  • priorityinteger | nullwajib

    Penumpukan lebih lanjut dihilangkan

  • requiredbooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • statusstringwajib

    enum: "pending", "verified", "error"

    Penumpukan lebih lanjut dihilangkan

  • provider_statusstringwajib

    enum: "pending", "verified", "error", "not_applicable"

    Penumpukan lebih lanjut dihilangkan

  • first_observed_atstring | nullwajib

    format: "date-time"

    Penumpukan lebih lanjut dihilangkan

  • last_checked_atstring | nullwajib

    format: "date-time"

    Penumpukan lebih lanjut dihilangkan

  • errorobjectwajib

    Penumpukan lebih lanjut dihilangkan

  • provider_referencestring | nullwajib

    Penumpukan lebih lanjut dihilangkan

  • dns_recordsarraywajib
  • Setiap itemobject

    Tidak ada properti tambahan

  • idstringwajib

    format: "uuid"

  • lane_idstringwajib

    format: "uuid"

  • providerstringwajib

    enum: "banger", "resend"

  • purposestringwajib
  • typestringwajib

    enum: "TXT", "MX", "CNAME"

  • namestringwajib
  • valuestringwajib
  • priorityinteger | nullwajib
  • requiredbooleanwajib
  • statusstringwajib

    enum: "pending", "verified", "error"

  • provider_statusstringwajib

    enum: "pending", "verified", "error", "not_applicable"

  • first_observed_atstring | nullwajib

    format: "date-time"

  • last_checked_atstring | nullwajib

    format: "date-time"

  • errorobjectwajib
  • Properti tambahanNilai apa pun
  • provider_referencestring | nullwajib
  • deletionobject | nullwajib

    Tidak ada properti tambahan

  • job_idstringwajib

    format: "uuid"

  • statusstringwajib

    enum: "pending", "processing", "waiting_provider", "completed", "failed"

  • last_error_codestring | nullwajib
  • cleanup_recordsarraywajib

    Catatan DNS persis yang dapat dihapus pengguna setelah pembongkaran selesai.

  • Setiap itemobject

    Tidak ada properti tambahan

  • idstringwajib

    format: "uuid"

  • lane_idstringwajib

    format: "uuid"

  • providerstringwajib

    enum: "banger", "resend"

  • purposestringwajib
  • typestringwajib

    enum: "TXT", "MX", "CNAME"

  • namestringwajib
  • valuestringwajib
  • priorityinteger | nullwajib
  • requiredbooleanwajib
  • statusstringwajib

    enum: "pending", "verified", "error"

  • provider_statusstringwajib

    enum: "pending", "verified", "error", "not_applicable"

  • first_observed_atstring | nullwajib

    format: "date-time"

  • last_checked_atstring | nullwajib

    format: "date-time"

  • errorobjectwajib
  • Properti tambahanNilai apa pun
  • provider_referencestring | nullwajib

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/sending-domains/{sendingDomainId}/verify' \
  --header "Authorization: Bearer $BANGER_API_KEY"

Migrasi domain pengiriman

POST/v1/workspaces/{workspaceId}/sending-domain-migrations

requestNativeDomainMigration

Bekukan penyiapan persis dan DNS yang diamati ke persetujuan domain.migrate tertunda. Tidak menyediakan sumber daya. Hanya administrator yang masuk dapat mengizinkan lewat panel Persetujuan; kredensial agen dan tinjauan otomatis ditolak. Otorisasi memeriksa ulang snapshot DNS secara atomik dan menyiapkan domain yang disetujui.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

Idempotency-Key
header · wajib
  • valuestring

    minLength: 16 · maxLength: 128

Isi permintaan wajib

application/json

  • valueobject

    Tidak ada properti tambahan

  • domainstringwajib

    Domain atau subdomain persis produk. Secara default Banger menurunkan tiga subdomain jalur terpisah.

    minLength: 3 · maxLength: 253

  • setup_modestring

    Penyiapan sederhana menyediakan satu transport kotak surat untuk menerima dan mengirim dari alamat kotak surat terpilih, termasuk Kampanye dan Journey. Penyiapan lanjutan menyediakan jalur pengiriman terpisah.

    default: "advanced" · enum: "simple", "advanced"

  • mailbox_modestring

    Penyiapan sederhana default ke root jika tidak ada awalan kotak surat; lanjutan default ke subdomain. Subdomain mempertahankan email domain yang ada. Migrate meminta Kotak surat pada domain persis. Domain persis atau jalur yang terpakai memerlukan permintaan melalui sending-domain-migrations lalu otorisasi di panel Persetujuan Banger saat masuk. Kredensial agen tidak dapat mengizinkan migrasi. Pesan lama tidak diimpor dan DNS tidak pernah diubah otomatis.

    enum: "subdomain", "migrate"

  • root_dmarc_confirmedboolean

    Field kompatibilitas lama; kebijakan yang ada dipertahankan dan penyiapan tidak memerlukan konfirmasi.

  • lane_prefixesobject

    Tidak ada properti tambahan

  • mailboxstring

    minLength: 1 · maxLength: 63 · default: "mail"

  • productstring

    minLength: 1 · maxLength: 63 · default: "tx"

  • broadcaststring

    minLength: 1 · maxLength: 63 · default: "broadcast"

  • route_providersobject

    Resend hanya diterima jika Banger sudah mendeteksinya di DNS domain ini dan produk terpilih memiliki koneksi aktif. Klien tidak boleh mengiklankannya selain itu.

    Tidak ada properti tambahan

  • productstring

    default: "banger" · enum: "banger", "resend"

  • broadcaststring

    default: "banger" · enum: "banger", "resend"

  • route_domainsobject

    Domain terverifikasi persis yang disinkronkan dari Resend. Wajib untuk setiap jalur yang mempertahankan Resend.

    Tidak ada properti tambahan

  • productstring

    minLength: 3 · maxLength: 253

  • broadcaststring

    minLength: 3 · maxLength: 253

Respons berhasil 200

Permintaan migrasi yang ada dikembalikan secara idempoten.

application/json

  • valueobject
  • dataobjectwajib
  • idstringwajib

    format: "uuid"

  • requested_by_actor_idstringwajib
  • action_kindstringwajib
  • summarystringwajib
  • capability_scopesarraywajib
  • Setiap itemstring
  • resource_scopeobjectwajib
  • Properti tambahanarray
  • Setiap itemstring
  • payloadobjectwajib
  • Properti tambahanNilai apa pun
  • payload_sha256stringwajib

    pattern: "^[0-9a-f]{64}$"

  • statusstringwajib

    enum: "pending", "approved", "rejected", "cancelled", "expired"

  • missedbooleanwajib
  • expires_atstringwajib

    format: "date-time"

  • decided_by_actor_idstring | null
  • decision_reasonstring | null
  • created_atstringwajib

    format: "date-time"

  • updated_atstringwajib

    format: "date-time"

  • decided_atstring | null

    format: "date-time"

  • execution_job_idstring

    format: "uuid"

  • reviewobject

    Tidak ada properti tambahan

  • dispositionstringwajib

    enum: "automatic", "human_required"

  • recipient_countinteger | nullwajib

    minimum: 0

  • reasonsarraywajib
  • Setiap itemstring
  • checksarraywajib
  • Setiap itemstring

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/sending-domain-migrations' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Idempotency-Key: examplexxxxxxxxx' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "domain": "example",
  "setup_mode": "advanced",
  "mailbox_mode": "subdomain",
  "root_dmarc_confirmed": true,
  "lane_prefixes": {
    "mailbox": "mail",
    "product": "tx",
    "broadcast": "broadcast"
  },
  "route_providers": {
    "product": "banger",
    "broadcast": "banger"
  },
  "route_domains": {
    "product": "example",
    "broadcast": "example"
  }
}'

Webhook

GET/v1/workspaces/{workspaceId}/webhooks

Daftar sumber peristiwa masuk dan tujuan peristiwa keluar.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Endpoint webhook ruang kerja.

application/json

  • valueobject
  • dataarraywajib
  • Setiap itemobject
  • idstringwajib

    format: "uuid"

  • kindstringwajib

    enum: "outbound", "inbound"

  • source_keystringwajib

    pattern: "^[a-z0-9][a-z0-9_-]{0,62}$"

  • namestringwajib
  • endpoint_urlstring | null

    format: "uri"

  • statusstringwajib

    enum: "active", "disabled", "error"

  • event_typesarraywajib
  • Setiap itemstring
  • connection_idstring | null

    format: "uuid"

  • delivered_countintegerwajib

    minimum: 0

  • failed_countintegerwajib

    minimum: 0

  • last_delivered_atstring | null

    format: "date-time"

  • last_received_atstring | null

    format: "date-time"

  • last_error_codestring | null
  • created_atstringwajib

    format: "date-time"

  • updated_atstringwajib

    format: "date-time"

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/webhooks' \
  --header "Authorization: Bearer $BANGER_API_KEY"
POST/v1/workspaces/{workspaceId}/webhooks

Buat tujuan bertanda tangan dengan percobaan ulang atau sumber peristiwa masuk idempoten.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan wajib

application/json

  • valueobject

    Tidak ada properti tambahan

  • kindstringwajib

    enum: "outbound", "inbound"

  • namestringwajib

    minLength: 1 · maxLength: 120

  • source_keystring

    banger_api dicadangkan untuk webhook yang dibuat POST /events.

    pattern: "^[a-z0-9][a-z0-9_-]{0,62}$" · default: "custom"

  • source_configobject

    Evaluasi peristiwa deterministis dan pemetaan pengiriman khusus sumber. Didukung untuk Zendesk dan Supabase Auth.

    Tidak ada properti tambahan

  • vip_tagsarray

    minItems: 1 · maxItems: 20 · uniqueItems: true

  • Setiap itemstring

    pattern: "^[a-z0-9][a-z0-9_-]{0,63}$"

  • sla_warning_minutesinteger

    minimum: 1 · maximum: 10080

  • project_urlstring

    URL proyek Supabase.

    format: "uri"

  • mailbox_idstring

    Alamat pengiriman Banger aktif untuk email Supabase Auth.

    format: "uuid"

  • template_idsobject

    Templat Banger yang dipilih untuk tiap tindakan email Supabase Auth.

    Tidak ada properti tambahan

  • signupstringwajib

    format: "uuid"

  • invitestringwajib

    format: "uuid"

  • magiclinkstringwajib

    format: "uuid"

  • recoverystringwajib

    format: "uuid"

  • email_changestringwajib

    format: "uuid"

  • reauthenticationstringwajib

    format: "uuid"

  • password_changed_notificationstringwajib

    format: "uuid"

  • email_changed_notificationstringwajib

    format: "uuid"

  • phone_changed_notificationstringwajib

    format: "uuid"

  • identity_linked_notificationstringwajib

    format: "uuid"

  • identity_unlinked_notificationstringwajib

    format: "uuid"

  • mfa_factor_enrolled_notificationstringwajib

    format: "uuid"

  • mfa_factor_unenrolled_notificationstringwajib

    format: "uuid"

  • signing_secretstring

    Rahasia Supabase Send Email Hook. Hanya diterima untuk sumber Supabase masuk dan dienkripsi saat tersimpan.

    minLength: 20 · maxLength: 500

  • endpoint_urlstring

    Wajib hanya untuk tujuan keluar.

    format: "uri"

  • event_typesarray

    Peristiwa untuk dikirim. Jika dihilangkan, endpoint keluar mendapat peristiwa aktivitas default; peristiwa tertentu (mail.received, mail.sent, send.*, journey.*) hanya dikirim jika dicantumkan. * mengirim semuanya, termasuk send.delivered bervolume tinggi.

    minItems: 1 · maxItems: 100 · uniqueItems: true

  • Setiap itemstring

    enum: "*", "mail.changed", "send.changed", "campaign.changed", "audience.changed", "approval.changed", "automation.changed", "domain.changed", "sending.warning", "sending.lane_paused", "sending.domain_paused", "sending.mailbox_paused", "sending.workspace_frozen", "sending.resumed", "mail.received", "mail.sent", "send.delivered", "send.bounced", "send.complained", "journey.enrolled", "journey.completed", "journey.exited", "custom"

Respons berhasil 201

Webhook dibuat. Rahasia penandatanganan keluar ditampilkan sekali; opsi kredensial masuk dapat dibuka kembali oleh pemanggil berwenang.

application/json

  • valueobject
  • datatidak ditentukanwajib
  • allOf 1object
  • idstringwajib

    format: "uuid"

  • kindstringwajib

    enum: "outbound", "inbound"

  • source_keystringwajib

    pattern: "^[a-z0-9][a-z0-9_-]{0,62}$"

  • namestringwajib
  • endpoint_urlstring | null

    format: "uri"

  • statusstringwajib

    enum: "active", "disabled", "error"

  • event_typesarraywajib
  • Setiap itemstring
  • connection_idstring | null

    format: "uuid"

  • delivered_countintegerwajib

    minimum: 0

  • failed_countintegerwajib

    minimum: 0

  • last_delivered_atstring | null

    format: "date-time"

  • last_received_atstring | null

    format: "date-time"

  • last_error_codestring | null
  • created_atstringwajib

    format: "date-time"

  • updated_atstringwajib

    format: "date-time"

  • allOf 2object
  • signing_secretstring

    Rahasia penandatanganan permintaan keluar

  • source_urlstring

    URL peristiwa masuk yang berisi rahasia tidak tertebak.

    format: "uri"

  • webhook_urlstring

    URL masuk publik untuk dipakai dengan header Authorization.

    format: "uri"

  • bearer_tokenstring

    Token endpoint rahasia untuk dikirim sebagai Authorization Bearer.

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/webhooks' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "kind": "outbound",
  "name": "example",
  "source_key": "custom",
  "source_config": {
    "vip_tags": [
      "example"
    ],
    "sla_warning_minutes": 1,
    "project_url": "https://example.com",
    "mailbox_id": "00000000-0000-4000-8000-000000000001",
    "template_ids": {
      "signup": "00000000-0000-4000-8000-000000000001",
      "invite": "00000000-0000-4000-8000-000000000001",
      "magiclink": "00000000-0000-4000-8000-000000000001",
      "recovery": "00000000-0000-4000-8000-000000000001",
      "email_change": "00000000-0000-4000-8000-000000000001",
      "reauthentication": "00000000-0000-4000-8000-000000000001",
      "password_changed_notification": "00000000-0000-4000-8000-000000000001",
      "email_changed_notification": "00000000-0000-4000-8000-000000000001",
      "phone_changed_notification": "00000000-0000-4000-8000-000000000001",
      "identity_linked_notification": "00000000-0000-4000-8000-000000000001",
      "identity_unlinked_notification": "00000000-0000-4000-8000-000000000001",
      "mfa_factor_enrolled_notification": "00000000-0000-4000-8000-000000000001",
      "mfa_factor_unenrolled_notification": "00000000-0000-4000-8000-000000000001"
    }
  },
  "signing_secret": "examplexxxxxxxxxxxxx",
  "endpoint_url": "https://example.com",
  "event_types": [
    "*"
  ]
}'
PATCH/v1/workspaces/{workspaceId}/webhooks/{endpointId}

Nonaktifkan webhook atau aktifkan kembali yang nonaktif atau gagal tanpa merotasi endpoint atau rahasianya.

Penonaktifan menghentikan pengiriman atau peristiwa otomatisasi masuk dan mempertahankan webhook, nama, serta riwayatnya. Menonaktifkan webhook masuk juga menonaktifkan koneksinya, sehingga Journey yang dipicunya berhenti menerima peristiwa hingga diaktifkan kembali. Untuk menghapus webhook permanen, hapuslah.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

endpointId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan wajib

application/json

  • valueobject

    Tidak ada properti tambahan

  • statusstringwajib

    enum: "active", "disabled"

Respons berhasil 200

Webhook diaktifkan kembali atau dinonaktifkan.

application/json

  • valueobject
  • dataobjectwajib
  • idstringwajib

    format: "uuid"

  • kindstringwajib

    enum: "outbound", "inbound"

  • source_keystringwajib

    pattern: "^[a-z0-9][a-z0-9_-]{0,62}$"

  • namestringwajib
  • endpoint_urlstring | null

    format: "uri"

  • statusstringwajib

    enum: "active", "disabled", "error"

  • event_typesarraywajib
  • Setiap itemstring
  • connection_idstring | null

    format: "uuid"

  • delivered_countintegerwajib

    minimum: 0

  • failed_countintegerwajib

    minimum: 0

  • last_delivered_atstring | null

    format: "date-time"

  • last_received_atstring | null

    format: "date-time"

  • last_error_codestring | null
  • created_atstringwajib

    format: "date-time"

  • updated_atstringwajib

    format: "date-time"

Contoh curl

curl --request PATCH --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/webhooks/{endpointId}' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "status": "active"
}'
DELETE/v1/workspaces/{workspaceId}/webhooks/{endpointId}

Hapus webhook permanen agar namanya dapat dipakai kembali.

Endpoint keluar dihapus bersama riwayat pengirimannya. Webhook masuk dihapus bersama koneksinya, dan hanya jika tidak ada Journey, termasuk yang diarsipkan, memakai koneksi itu sebagai pemicu atau tujuan. Untuk menghentikan dan mempertahankan webhook, PATCH status-nya ke disabled.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

endpointId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 204

Webhook dihapus.

Tanpa isi respons.

Contoh curl

curl --request DELETE --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/webhooks/{endpointId}' \
  --header "Authorization: Bearer $BANGER_API_KEY"
GET/v1/workspaces/{workspaceId}/webhooks/{endpointId}/credentials

Buka kembali opsi kredensial yang ada untuk webhook masuk aktif.

Memerlukan automation:execute. Mengembalikan rahasia yang sama tanpa membuat atau merotasi sumber daya. Jangan pernah cache atau catat respons ini dalam log.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

endpointId
path · wajib
  • valuestring

    format: "uuid"

x-banger-product-id
header

Wajib kecuali kunci API terautentikasi sudah mengikat produk.

  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

URL sumber privat, URL webhook publik, dan token bearer terpisah.

application/json

  • valueobject
  • datatidak ditentukan
  • allOf 1object
  • idstringwajib

    format: "uuid"

  • kindstringwajib

    enum: "outbound", "inbound"

  • source_keystringwajib

    pattern: "^[a-z0-9][a-z0-9_-]{0,62}$"

  • namestringwajib
  • endpoint_urlstring | null

    format: "uri"

  • statusstringwajib

    enum: "active", "disabled", "error"

  • event_typesarraywajib
  • Setiap itemstring
  • connection_idstring | null

    format: "uuid"

  • delivered_countintegerwajib

    minimum: 0

  • failed_countintegerwajib

    minimum: 0

  • last_delivered_atstring | null

    format: "date-time"

  • last_received_atstring | null

    format: "date-time"

  • last_error_codestring | null
  • created_atstringwajib

    format: "date-time"

  • updated_atstringwajib

    format: "date-time"

  • allOf 2object
  • signing_secretstring

    Rahasia penandatanganan permintaan keluar

  • source_urlstring

    URL peristiwa masuk yang berisi rahasia tidak tertebak.

    format: "uri"

  • webhook_urlstring

    URL masuk publik untuk dipakai dengan header Authorization.

    format: "uri"

  • bearer_tokenstring

    Token endpoint rahasia untuk dikirim sebagai Authorization Bearer.

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/webhooks/{endpointId}/credentials' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'x-banger-product-id: 00000000-0000-4000-8000-000000000001'
GET/v1/workspaces/{workspaceId}/webhooks/{endpointId}/deliveries

Daftar percobaan pengiriman terbaru dan hasil HTTP untuk webhook keluar.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

endpointId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Percobaan pengiriman terbaru.

application/json

  • valueobject
  • dataarraywajib
  • Setiap itemobject
  • idstringwajib

    format: "uuid"

  • event_typestringwajib
  • statusstringwajib

    enum: "pending", "delivering", "delivered", "failed"

  • attempt_countintegerwajib

    minimum: 0

  • http_statusinteger | null

    minimum: 100 · maximum: 599

  • last_error_codestring | null
  • delivered_atstring | null

    format: "date-time"

  • created_atstringwajib

    format: "date-time"

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/webhooks/{endpointId}/deliveries' \
  --header "Authorization: Bearer $BANGER_API_KEY"
POST/v1/workspaces/{workspaceId}/webhooks/{endpointId}/test

Antrekan satu peristiwa sintetis bertanda tangan melalui jalur pengiriman percobaan ulang biasa.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

endpointId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 202

Peristiwa uji bertanda tangan diantrekan.

application/json

  • valueobject
  • dataobjectwajib
  • idstringwajib

    format: "uuid"

  • statusstringwajib

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/webhooks/{endpointId}/test' \
  --header "Authorization: Bearer $BANGER_API_KEY"

Onboarding

PUT/v1/workspaces/{workspaceId}/onboarding/path

selectOnboardingPath

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan wajib

application/json

  • valueobject

    Tidak ada properti tambahan

  • pathstringwajib

    enum: "starter_identity", "company_domain", "resend_gateway", "banger_native_sending", "work_mailbox", "gmail", "native_mailbox", "existing_provider"

Respons berhasil 200

Jalur onboarding otoritatif server dipilih.

application/json

  • valueobject
  • dataobjectwajib
  • pathstringwajib

    enum: "starter_identity", "company_domain", "resend_gateway", "banger_native_sending", "work_mailbox", "gmail", "native_mailbox", "existing_provider"

Contoh curl

curl --request PUT --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/onboarding/path' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "path": "starter_identity"
}'
GET/v1/workspaces/{workspaceId}/onboarding/guided

Baca penyiapan kanonis (koneksi, merek, domain) tanpa membuat sumber daya atau mengirim email.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

x-banger-product-id
header

Produk terpilih. Wajib jika ada beberapa produk aktif.

  • valuestring

    format: "uuid"

details
query

Sertakan draf yang dapat disunting, merek, dan catatan DNS otoritatif.

  • valueinteger

    enum: 1

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Progres tersimpan dan kemampuan yang diverifikasi mandiri.

application/json

  • valueobject
  • dataobjectwajib
  • product_idstringwajib

    format: "uuid"

  • lessonobject
  • stepstringwajib
  • purposestringwajib
  • setupstringwajib
  • boundarystringwajib
  • example_requeststringwajib
  • resultstringwajib
  • choicestringwajib
  • skipstring | nullwajib
  • guidancestring
  • current_stepstringwajib

    enum: "connect", "business", "identity", "sending"

  • completed_countintegerwajib
  • total_stepsintegerwajib

    enum: 4

  • setupobject

    Gerbang penyiapan web dan banner penyelesaian penyiapan. Setiap bagian complete, verifying (catatan domain ditambahkan, DNS masih diperiksa), skipped, atau missing.

  • connectstringwajib

    enum: "complete", "skipped", "missing"

  • brandstringwajib

    enum: "complete", "skipped", "missing"

  • domainstringwajib

    enum: "complete", "verifying", "skipped", "missing"

  • gate_openbooleanwajib

    True selama merek atau domain belum selesai maupun dilewati.

  • missingarraywajib

    Bagian yang dilewati atau belum pernah dikerjakan

  • Setiap itemstring

    enum: "connect", "brand", "domain"

  • unlock_video_dueboolean

    True setelah domain terverifikasi hingga ruang kerja melihat video "yang dapat Anda lakukan sekarang".

  • agent_client_namestring | null

    Aplikasi AI yang terhubung

  • completebooleanwajib
  • shared_education_completeboolean
  • outcomestringwajib

    enum: "in_progress", "production_deferred", "production_ready"

  • recommended_actionstringwajib
  • readinessobjectwajib
  • Properti tambahanboolean
  • progressobjectwajib
  • Properti tambahanNilai apa pun
  • stepsarraywajib
  • Setiap itemobject
  • idstringwajib
  • titlestringwajib
  • explanationstring
  • statusstringwajib

    enum: "not_started", "in_progress", "waiting", "needs_attention", "complete", "skipped"

  • blocking_dependencystring | null
  • recommended_actionstring
  • actionsarraywajib
  • Setiap itemstring
  • resource_idsarraywajib
  • Setiap itemstring
  • evidenceobjectwajib
  • Properti tambahanNilai apa pun
  • Properti tambahanNilai apa pun

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/onboarding/guided?details=1' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'x-banger-product-id: 00000000-0000-4000-8000-000000000001'
POST/v1/workspaces/{workspaceId}/onboarding/guided

Jalankan satu tindakan onboarding eksplisit yang aman diulang untuk produk terpilih.

Pengiriman hanya menargetkan alamat pendaftaran terverifikasi pengguna yang mengizinkan. Journey tetap tidak aktif dan Kampanye tetap belum terkirim. Batas persetujuan migrasi yang ada berlaku.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

x-banger-product-id
header

Produk terpilih. Wajib jika ada beberapa produk aktif.

  • valuestring

    format: "uuid"

Isi permintaan wajib

application/json

  • valueobject
  • actionstringwajib

    enum: "begin_guidance", "save_business", "discover_brand", "skip_business", "choose_identity", "defer_identity", "skip_domain", "choose_delivery", "setup_receiving", "defer_receiving", "setup_sending", "dns_applied", "verify_dns", "continue_domain", "add_inboxes", "skip_inboxes", "finish_for_now", "finish"

  • dataobject

    Field bisnis company_name, primary_goal, website_url, dan brand; field draf name, subject, preview_text, body_text, dan edit; field identitas domain dan local_part. Masukan penerima tidak pernah diterima.

  • Properti tambahanNilai apa pun

Respons berhasil 200

Status kanonis diperbarui setelah operasi yang diminta.

application/json

  • valueobject
  • dataobjectwajib
  • product_idstringwajib

    format: "uuid"

  • lessonobject
  • stepstringwajib
  • purposestringwajib
  • setupstringwajib
  • boundarystringwajib
  • example_requeststringwajib
  • resultstringwajib
  • choicestringwajib
  • skipstring | nullwajib
  • guidancestring
  • current_stepstringwajib

    enum: "connect", "business", "identity", "sending"

  • completed_countintegerwajib
  • total_stepsintegerwajib

    enum: 4

  • setupobject

    Gerbang penyiapan web dan banner penyelesaian penyiapan. Setiap bagian complete, verifying (catatan domain ditambahkan, DNS masih diperiksa), skipped, atau missing.

  • connectstringwajib

    enum: "complete", "skipped", "missing"

  • brandstringwajib

    enum: "complete", "skipped", "missing"

  • domainstringwajib

    enum: "complete", "verifying", "skipped", "missing"

  • gate_openbooleanwajib

    True selama merek atau domain belum selesai maupun dilewati.

  • missingarraywajib

    Bagian yang dilewati atau belum pernah dikerjakan

  • Setiap itemstring

    enum: "connect", "brand", "domain"

  • unlock_video_dueboolean

    True setelah domain terverifikasi hingga ruang kerja melihat video "yang dapat Anda lakukan sekarang".

  • agent_client_namestring | null

    Aplikasi AI yang terhubung

  • completebooleanwajib
  • shared_education_completeboolean
  • outcomestringwajib

    enum: "in_progress", "production_deferred", "production_ready"

  • recommended_actionstringwajib
  • readinessobjectwajib
  • Properti tambahanboolean
  • progressobjectwajib
  • Properti tambahanNilai apa pun
  • stepsarraywajib
  • Setiap itemobject
  • idstringwajib
  • titlestringwajib
  • explanationstring
  • statusstringwajib

    enum: "not_started", "in_progress", "waiting", "needs_attention", "complete", "skipped"

  • blocking_dependencystring | null
  • recommended_actionstring
  • actionsarraywajib
  • Setiap itemstring
  • resource_idsarraywajib
  • Setiap itemstring
  • evidenceobjectwajib
  • Properti tambahanNilai apa pun
  • Properti tambahanNilai apa pun

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/onboarding/guided' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'x-banger-product-id: 00000000-0000-4000-8000-000000000001' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "action": "begin_guidance",
  "data": {}
}'
GET/v1/workspaces/{workspaceId}/onboarding/agent-state

Lanjutkan Journey onboarding bersama browser dan MCP.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Status onboarding milik server saat ini.

application/json

  • valueobject
  • datatidak ditentukanwajib
  • allOf 1object
  • workspace_idstringwajib

    format: "uuid"

  • statusstringwajib

    enum: "choose_agent", "discovering", "planning", "implementing", "validating", "ready", "complete"

  • entry_surfacestring | nullwajib

    enum: "codex", "chatgpt", "claude", "grok", "other_agent", "browser", null

  • agent_statusstringwajib

    enum: "not_connected", "connecting", "connected", "browser_only"

  • agent_client_namestring | nullwajib
  • domain_choicestringwajib

    enum: "undecided", "company_domain", "no_domain"

  • company_domainstring | nullwajib
  • domain_chosen_atstring | nullwajib

    format: "date-time"

  • business_contextobjectwajib
  • Properti tambahanNilai apa pun
  • opportunity_planarraywajib
  • Setiap itemobject
  • Properti tambahanNilai apa pun
  • implementation_summaryobjectwajib
  • Properti tambahanNilai apa pun
  • validation_summaryobjectwajib
  • Properti tambahanNilai apa pun
  • journey_metadataobjectwajib
  • Properti tambahanNilai apa pun
  • context_reviewed_atstring | nullwajib

    format: "date-time"

  • plan_proposed_atstring | nullwajib

    format: "date-time"

  • plan_approved_atstring | nullwajib

    format: "date-time"

  • completed_atstring | nullwajib

    format: "date-time"

  • versionintegerwajib

    format: "int64" · minimum: 1

  • updated_atstringwajib

    format: "date-time"

  • allOf 2object
  • domain_discoverytidak ditentukanwajib
  • oneOf 1object
  • domainstringwajib
  • scan_statusstringwajib

    enum: "complete", "partial", "failed"

  • companyobjectwajib
  • domainstringwajib

    Penumpukan lebih lanjut dihilangkan

  • website_urlstring | nullwajib

    format: "uri"

    Penumpukan lebih lanjut dihilangkan

  • website_statusstringwajib

    enum: "available", "missing", "blocked", "error"

    Penumpukan lebih lanjut dihilangkan

  • company_namestringwajib

    Penumpukan lebih lanjut dihilangkan

  • summarystringwajib

    Penumpukan lebih lanjut dihilangkan

  • audiencestringwajib

    Penumpukan lebih lanjut dihilangkan

  • offeringsarraywajib

    Penumpukan lebih lanjut dihilangkan

  • logo_urlstring | nullwajib

    format: "uri"

    Penumpukan lebih lanjut dihilangkan

  • favicon_urlstring | nullwajib

    format: "uri"

    Penumpukan lebih lanjut dihilangkan

  • visual_identityobjectwajib

    Penumpukan lebih lanjut dihilangkan

  • source_snapshotobjectwajib

    Penumpukan lebih lanjut dihilangkan

  • dns_signalsarraywajib
  • Setiap itemobject

    Penumpukan lebih lanjut dihilangkan

  • dns_providertidak ditentukanwajib
  • oneOf 1object

    Tidak ada properti tambahan

    Penumpukan lebih lanjut dihilangkan

  • oneOf 2null

    Penumpukan lebih lanjut dihilangkan

  • provider_detectionsarraywajib
  • Setiap itemobject

    Penumpukan lebih lanjut dihilangkan

  • capability_summaryarraywajib
  • Setiap itemobject

    Penumpukan lebih lanjut dihilangkan

  • recommended_connectionsarraywajib
  • Setiap itemobject

    Tidak ada properti tambahan

    Penumpukan lebih lanjut dihilangkan

  • connection_planarraywajib
  • Setiap itemobject

    Tidak ada properti tambahan

    Penumpukan lebih lanjut dihilangkan

  • limitationsarraywajib
  • Setiap itemstring

    Penumpukan lebih lanjut dihilangkan

  • scanned_atstringwajib

    format: "date-time"

  • confirmed_atstring | nullwajib

    format: "date-time"

  • oneOf 2null
  • recommended_connectionsarraywajib
  • Setiap itemobject

    Tidak ada properti tambahan

  • keystringwajib
  • namestringwajib
  • categorystringwajib

    enum: "email", "customer", "product", "work", "data"

  • prioritystringwajib

    enum: "required", "recommended"

  • reasonstringwajib
  • sourcestringwajib

    enum: "dns", "business_context", "opportunity_plan", "banger_recommendation"

  • setup_modestringwajib

    enum: "oauth", "secure_credentials"

  • availablebooleanwajib
  • provider_keystring
  • evidencearraywajib
  • Setiap itemobject

    Penumpukan lebih lanjut dihilangkan

  • domain_bundleobject | nullwajib
  • Properti tambahanNilai apa pun
  • growthobjectwajib
  • Properti tambahanNilai apa pun
  • activationobjectwajib
  • modestringwajib

    enum: "hosted", "company_domain", "starter"

  • statusstringwajib

    enum: "hosted_mailbox_required", "hosted_mailbox_proving", "hosted_mailbox_ready", "needs_context", "needs_provisioning", "provisioning", "dns_required", "ready_for_proof", "proving", "activated", "starter_required", "starter_proving", "starter_ready"

  • domainstring | nullwajib
  • sending_domain_idstring | nullwajib

    format: "uuid"

  • mailbox_idstring | nullwajib

    format: "uuid"

  • mailbox_addressstring | nullwajib

    format: "email"

  • exact_dns_recordsarraywajib
  • Setiap itemobject

    Tidak ada properti tambahan

  • idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • lane_idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • providerstringwajib

    enum: "banger", "resend"

    Penumpukan lebih lanjut dihilangkan

  • purposestringwajib

    Penumpukan lebih lanjut dihilangkan

  • typestringwajib

    enum: "TXT", "MX", "CNAME"

    Penumpukan lebih lanjut dihilangkan

  • namestringwajib

    Penumpukan lebih lanjut dihilangkan

  • valuestringwajib

    Penumpukan lebih lanjut dihilangkan

  • priorityinteger | nullwajib

    Penumpukan lebih lanjut dihilangkan

  • requiredbooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • statusstringwajib

    enum: "pending", "verified", "error"

    Penumpukan lebih lanjut dihilangkan

  • provider_statusstringwajib

    enum: "pending", "verified", "error", "not_applicable"

    Penumpukan lebih lanjut dihilangkan

  • first_observed_atstring | nullwajib

    format: "date-time"

    Penumpukan lebih lanjut dihilangkan

  • last_checked_atstring | nullwajib

    format: "date-time"

    Penumpukan lebih lanjut dihilangkan

  • errorobjectwajib

    Penumpukan lebih lanjut dihilangkan

  • provider_referencestring | nullwajib

    Penumpukan lebih lanjut dihilangkan

  • checkpointsarraywajib
  • Setiap itemobject
  • keystringwajib

    enum: "domain", "provider", "infrastructure", "dns", "mailbox", "product", "broadcast"

    Penumpukan lebih lanjut dihilangkan

  • labelstringwajib

    Penumpukan lebih lanjut dihilangkan

  • statusstringwajib

    enum: "pending", "working", "action_required", "verified"

    Penumpukan lebih lanjut dihilangkan

  • detailstringwajib

    Penumpukan lebih lanjut dihilangkan

  • lanesobjectwajib
  • mailboxobjectwajib
  • statusstringwajib

    enum: "pending", "working", "action_required", "verified"

    Penumpukan lebih lanjut dihilangkan

  • detailstringwajib

    Penumpukan lebih lanjut dihilangkan

  • transactionalobjectwajib
  • statusstringwajib

    enum: "pending", "working", "action_required", "verified"

    Penumpukan lebih lanjut dihilangkan

  • detailstringwajib

    Penumpukan lebih lanjut dihilangkan

  • marketingobjectwajib
  • statusstringwajib

    enum: "pending", "working", "action_required", "verified"

    Penumpukan lebih lanjut dihilangkan

  • detailstringwajib

    Penumpukan lebih lanjut dihilangkan

  • prooftidak ditentukanwajib
  • oneOf 1object
  • proof_idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • mailbox_idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • mailbox_addressstringwajib

    format: "email"

    Penumpukan lebih lanjut dihilangkan

  • command_idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • phasestringwajib

    enum: "sending", "sent", "received", "checked", "failed"

    Penumpukan lebih lanjut dihilangkan

  • send_completebooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • receive_completebooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • round_trip_check_completebooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • agent_check_completebooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • completebooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • expected_subjectstringwajib

    Penumpukan lebih lanjut dihilangkan

  • expected_body_textstringwajib

    Penumpukan lebih lanjut dihilangkan

  • received_message_idstring

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • received_thread_idstring

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • received_subjectstring

    Penumpukan lebih lanjut dihilangkan

  • received_body_textstring

    Penumpukan lebih lanjut dihilangkan

  • received_atstring

    format: "date-time"

    Penumpukan lebih lanjut dihilangkan

  • agent_labelstring

    Penumpukan lebih lanjut dihilangkan

  • agent_suggested_actionstring

    Penumpukan lebih lanjut dihilangkan

  • error_codestring

    Penumpukan lebih lanjut dihilangkan

  • replayedbooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • oneOf 2object
  • proof_idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • domain_idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • native_domain_idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • mailbox_idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • mailbox_addressstringwajib

    format: "email"

    Penumpukan lebih lanjut dihilangkan

  • transactional_send_intent_idstring

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • marketing_send_intent_idstring

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • transactional_subjectstringwajib

    Penumpukan lebih lanjut dihilangkan

  • marketing_subjectstringwajib

    Penumpukan lebih lanjut dihilangkan

  • phasestringwajib

    enum: "sending", "receiving", "received", "checked", "failed"

    Penumpukan lebih lanjut dihilangkan

  • send_completebooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • transactional_receivedbooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • marketing_receivedbooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • receive_completebooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • agent_check_completebooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • completebooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • error_codestring

    Penumpukan lebih lanjut dihilangkan

  • replayedbooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • oneOf 3null
  • overall_readybooleanwajib
  • production_readybooleanwajib
  • completedbooleanwajib
  • pendingbooleanwajib
  • next_actionstringwajib

    enum: "choose_agent", "provision_hosted_mailbox", "send_aha_1", "wait_for_aha_1", "offer_custom_domain", "review_domain_bundle", "provision_domain_bundle", "wait_for_dns_records", "ask_computer_use_permission", "configure_dns_with_computer_use", "present_manual_dns_instructions", "wait_for_dns_propagation", "send_aha_2", "wait_for_aha_2", "create_starter_mailbox", "run_starter_proof", "wait_for_starter_proof", "collect_business_context", "build_lifecycle_map", "review_growth_system", "connect_required_services", "explain_persistent_mcp", "offer_autopilot", "activate_autopilot", "validate", "complete", "open_dashboard"

  • action_requiredobjectwajib
  • typestringwajib
  • requiredbooleanwajib
  • actionstringwajib

    enum: "choose_agent", "provision_hosted_mailbox", "send_aha_1", "wait_for_aha_1", "offer_custom_domain", "review_domain_bundle", "provision_domain_bundle", "wait_for_dns_records", "ask_computer_use_permission", "configure_dns_with_computer_use", "present_manual_dns_instructions", "wait_for_dns_propagation", "send_aha_2", "wait_for_aha_2", "create_starter_mailbox", "run_starter_proof", "wait_for_starter_proof", "collect_business_context", "build_lifecycle_map", "review_growth_system", "connect_required_services", "explain_persistent_mcp", "offer_autopilot", "activate_autopilot", "validate", "complete", "open_dashboard"

  • urlstring | nullwajib

    format: "uri"

  • instructionsstring | nullwajib
  • secure_urlstring | nullwajib

    format: "uri"

  • mcp_urlstringwajib

    format: "uri"

  • dashboard_urlstringwajib

    format: "uri"

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/onboarding/agent-state' \
  --header "Authorization: Bearer $BANGER_API_KEY"
POST/v1/workspaces/{workspaceId}/onboarding/agent-state/start

Pilih antarmuka masuk yang dipandu agen atau fallback browser.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan wajib

application/json

  • valueobject

    Tidak ada properti tambahan

  • entry_surfacestringwajib

    enum: "codex", "chatgpt", "claude", "grok", "other_agent", "browser"

  • client_namestring

    minLength: 1 · maxLength: 100

Respons berhasil 200

Journey dimulai atau dilanjutkan.

application/json

  • valueobject
  • datatidak ditentukanwajib
  • allOf 1object
  • workspace_idstringwajib

    format: "uuid"

  • statusstringwajib

    enum: "choose_agent", "discovering", "planning", "implementing", "validating", "ready", "complete"

  • entry_surfacestring | nullwajib

    enum: "codex", "chatgpt", "claude", "grok", "other_agent", "browser", null

  • agent_statusstringwajib

    enum: "not_connected", "connecting", "connected", "browser_only"

  • agent_client_namestring | nullwajib
  • domain_choicestringwajib

    enum: "undecided", "company_domain", "no_domain"

  • company_domainstring | nullwajib
  • domain_chosen_atstring | nullwajib

    format: "date-time"

  • business_contextobjectwajib
  • Properti tambahanNilai apa pun
  • opportunity_planarraywajib
  • Setiap itemobject
  • Properti tambahanNilai apa pun
  • implementation_summaryobjectwajib
  • Properti tambahanNilai apa pun
  • validation_summaryobjectwajib
  • Properti tambahanNilai apa pun
  • journey_metadataobjectwajib
  • Properti tambahanNilai apa pun
  • context_reviewed_atstring | nullwajib

    format: "date-time"

  • plan_proposed_atstring | nullwajib

    format: "date-time"

  • plan_approved_atstring | nullwajib

    format: "date-time"

  • completed_atstring | nullwajib

    format: "date-time"

  • versionintegerwajib

    format: "int64" · minimum: 1

  • updated_atstringwajib

    format: "date-time"

  • allOf 2object
  • domain_discoverytidak ditentukanwajib
  • oneOf 1object
  • domainstringwajib
  • scan_statusstringwajib

    enum: "complete", "partial", "failed"

  • companyobjectwajib
  • domainstringwajib

    Penumpukan lebih lanjut dihilangkan

  • website_urlstring | nullwajib

    format: "uri"

    Penumpukan lebih lanjut dihilangkan

  • website_statusstringwajib

    enum: "available", "missing", "blocked", "error"

    Penumpukan lebih lanjut dihilangkan

  • company_namestringwajib

    Penumpukan lebih lanjut dihilangkan

  • summarystringwajib

    Penumpukan lebih lanjut dihilangkan

  • audiencestringwajib

    Penumpukan lebih lanjut dihilangkan

  • offeringsarraywajib

    Penumpukan lebih lanjut dihilangkan

  • logo_urlstring | nullwajib

    format: "uri"

    Penumpukan lebih lanjut dihilangkan

  • favicon_urlstring | nullwajib

    format: "uri"

    Penumpukan lebih lanjut dihilangkan

  • visual_identityobjectwajib

    Penumpukan lebih lanjut dihilangkan

  • source_snapshotobjectwajib

    Penumpukan lebih lanjut dihilangkan

  • dns_signalsarraywajib
  • Setiap itemobject

    Penumpukan lebih lanjut dihilangkan

  • dns_providertidak ditentukanwajib
  • oneOf 1object

    Tidak ada properti tambahan

    Penumpukan lebih lanjut dihilangkan

  • oneOf 2null

    Penumpukan lebih lanjut dihilangkan

  • provider_detectionsarraywajib
  • Setiap itemobject

    Penumpukan lebih lanjut dihilangkan

  • capability_summaryarraywajib
  • Setiap itemobject

    Penumpukan lebih lanjut dihilangkan

  • recommended_connectionsarraywajib
  • Setiap itemobject

    Tidak ada properti tambahan

    Penumpukan lebih lanjut dihilangkan

  • connection_planarraywajib
  • Setiap itemobject

    Tidak ada properti tambahan

    Penumpukan lebih lanjut dihilangkan

  • limitationsarraywajib
  • Setiap itemstring

    Penumpukan lebih lanjut dihilangkan

  • scanned_atstringwajib

    format: "date-time"

  • confirmed_atstring | nullwajib

    format: "date-time"

  • oneOf 2null
  • recommended_connectionsarraywajib
  • Setiap itemobject

    Tidak ada properti tambahan

  • keystringwajib
  • namestringwajib
  • categorystringwajib

    enum: "email", "customer", "product", "work", "data"

  • prioritystringwajib

    enum: "required", "recommended"

  • reasonstringwajib
  • sourcestringwajib

    enum: "dns", "business_context", "opportunity_plan", "banger_recommendation"

  • setup_modestringwajib

    enum: "oauth", "secure_credentials"

  • availablebooleanwajib
  • provider_keystring
  • evidencearraywajib
  • Setiap itemobject

    Penumpukan lebih lanjut dihilangkan

  • domain_bundleobject | nullwajib
  • Properti tambahanNilai apa pun
  • growthobjectwajib
  • Properti tambahanNilai apa pun
  • activationobjectwajib
  • modestringwajib

    enum: "hosted", "company_domain", "starter"

  • statusstringwajib

    enum: "hosted_mailbox_required", "hosted_mailbox_proving", "hosted_mailbox_ready", "needs_context", "needs_provisioning", "provisioning", "dns_required", "ready_for_proof", "proving", "activated", "starter_required", "starter_proving", "starter_ready"

  • domainstring | nullwajib
  • sending_domain_idstring | nullwajib

    format: "uuid"

  • mailbox_idstring | nullwajib

    format: "uuid"

  • mailbox_addressstring | nullwajib

    format: "email"

  • exact_dns_recordsarraywajib
  • Setiap itemobject

    Tidak ada properti tambahan

  • idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • lane_idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • providerstringwajib

    enum: "banger", "resend"

    Penumpukan lebih lanjut dihilangkan

  • purposestringwajib

    Penumpukan lebih lanjut dihilangkan

  • typestringwajib

    enum: "TXT", "MX", "CNAME"

    Penumpukan lebih lanjut dihilangkan

  • namestringwajib

    Penumpukan lebih lanjut dihilangkan

  • valuestringwajib

    Penumpukan lebih lanjut dihilangkan

  • priorityinteger | nullwajib

    Penumpukan lebih lanjut dihilangkan

  • requiredbooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • statusstringwajib

    enum: "pending", "verified", "error"

    Penumpukan lebih lanjut dihilangkan

  • provider_statusstringwajib

    enum: "pending", "verified", "error", "not_applicable"

    Penumpukan lebih lanjut dihilangkan

  • first_observed_atstring | nullwajib

    format: "date-time"

    Penumpukan lebih lanjut dihilangkan

  • last_checked_atstring | nullwajib

    format: "date-time"

    Penumpukan lebih lanjut dihilangkan

  • errorobjectwajib

    Penumpukan lebih lanjut dihilangkan

  • provider_referencestring | nullwajib

    Penumpukan lebih lanjut dihilangkan

  • checkpointsarraywajib
  • Setiap itemobject
  • keystringwajib

    enum: "domain", "provider", "infrastructure", "dns", "mailbox", "product", "broadcast"

    Penumpukan lebih lanjut dihilangkan

  • labelstringwajib

    Penumpukan lebih lanjut dihilangkan

  • statusstringwajib

    enum: "pending", "working", "action_required", "verified"

    Penumpukan lebih lanjut dihilangkan

  • detailstringwajib

    Penumpukan lebih lanjut dihilangkan

  • lanesobjectwajib
  • mailboxobjectwajib
  • statusstringwajib

    enum: "pending", "working", "action_required", "verified"

    Penumpukan lebih lanjut dihilangkan

  • detailstringwajib

    Penumpukan lebih lanjut dihilangkan

  • transactionalobjectwajib
  • statusstringwajib

    enum: "pending", "working", "action_required", "verified"

    Penumpukan lebih lanjut dihilangkan

  • detailstringwajib

    Penumpukan lebih lanjut dihilangkan

  • marketingobjectwajib
  • statusstringwajib

    enum: "pending", "working", "action_required", "verified"

    Penumpukan lebih lanjut dihilangkan

  • detailstringwajib

    Penumpukan lebih lanjut dihilangkan

  • prooftidak ditentukanwajib
  • oneOf 1object
  • proof_idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • mailbox_idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • mailbox_addressstringwajib

    format: "email"

    Penumpukan lebih lanjut dihilangkan

  • command_idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • phasestringwajib

    enum: "sending", "sent", "received", "checked", "failed"

    Penumpukan lebih lanjut dihilangkan

  • send_completebooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • receive_completebooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • round_trip_check_completebooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • agent_check_completebooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • completebooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • expected_subjectstringwajib

    Penumpukan lebih lanjut dihilangkan

  • expected_body_textstringwajib

    Penumpukan lebih lanjut dihilangkan

  • received_message_idstring

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • received_thread_idstring

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • received_subjectstring

    Penumpukan lebih lanjut dihilangkan

  • received_body_textstring

    Penumpukan lebih lanjut dihilangkan

  • received_atstring

    format: "date-time"

    Penumpukan lebih lanjut dihilangkan

  • agent_labelstring

    Penumpukan lebih lanjut dihilangkan

  • agent_suggested_actionstring

    Penumpukan lebih lanjut dihilangkan

  • error_codestring

    Penumpukan lebih lanjut dihilangkan

  • replayedbooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • oneOf 2object
  • proof_idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • domain_idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • native_domain_idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • mailbox_idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • mailbox_addressstringwajib

    format: "email"

    Penumpukan lebih lanjut dihilangkan

  • transactional_send_intent_idstring

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • marketing_send_intent_idstring

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • transactional_subjectstringwajib

    Penumpukan lebih lanjut dihilangkan

  • marketing_subjectstringwajib

    Penumpukan lebih lanjut dihilangkan

  • phasestringwajib

    enum: "sending", "receiving", "received", "checked", "failed"

    Penumpukan lebih lanjut dihilangkan

  • send_completebooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • transactional_receivedbooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • marketing_receivedbooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • receive_completebooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • agent_check_completebooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • completebooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • error_codestring

    Penumpukan lebih lanjut dihilangkan

  • replayedbooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • oneOf 3null
  • overall_readybooleanwajib
  • production_readybooleanwajib
  • completedbooleanwajib
  • pendingbooleanwajib
  • next_actionstringwajib

    enum: "choose_agent", "provision_hosted_mailbox", "send_aha_1", "wait_for_aha_1", "offer_custom_domain", "review_domain_bundle", "provision_domain_bundle", "wait_for_dns_records", "ask_computer_use_permission", "configure_dns_with_computer_use", "present_manual_dns_instructions", "wait_for_dns_propagation", "send_aha_2", "wait_for_aha_2", "create_starter_mailbox", "run_starter_proof", "wait_for_starter_proof", "collect_business_context", "build_lifecycle_map", "review_growth_system", "connect_required_services", "explain_persistent_mcp", "offer_autopilot", "activate_autopilot", "validate", "complete", "open_dashboard"

  • action_requiredobjectwajib
  • typestringwajib
  • requiredbooleanwajib
  • actionstringwajib

    enum: "choose_agent", "provision_hosted_mailbox", "send_aha_1", "wait_for_aha_1", "offer_custom_domain", "review_domain_bundle", "provision_domain_bundle", "wait_for_dns_records", "ask_computer_use_permission", "configure_dns_with_computer_use", "present_manual_dns_instructions", "wait_for_dns_propagation", "send_aha_2", "wait_for_aha_2", "create_starter_mailbox", "run_starter_proof", "wait_for_starter_proof", "collect_business_context", "build_lifecycle_map", "review_growth_system", "connect_required_services", "explain_persistent_mcp", "offer_autopilot", "activate_autopilot", "validate", "complete", "open_dashboard"

  • urlstring | nullwajib

    format: "uri"

  • instructionsstring | nullwajib
  • secure_urlstring | nullwajib

    format: "uri"

  • mcp_urlstringwajib

    format: "uri"

  • dashboard_urlstringwajib

    format: "uri"

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/onboarding/agent-state/start' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "entry_surface": "codex",
  "client_name": "example"
}'
POST/v1/workspaces/{workspaceId}/onboarding/agent-state/aha-one

Buat kotak surat permanen yang dihosting secara idempoten dan mulai proses kirim-terima pesan sambutan nyata.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Kotak surat yang dihosting dan bukti yang ada dilanjutkan.

application/json

  • valueobject
  • dataobjectwajib
  • proof_idstringwajib

    format: "uuid"

  • mailbox_idstringwajib

    format: "uuid"

  • mailbox_addressstringwajib

    format: "email"

  • command_idstringwajib

    format: "uuid"

  • phasestringwajib

    enum: "sending", "sent", "received", "checked", "failed"

  • send_completebooleanwajib
  • receive_completebooleanwajib
  • round_trip_check_completebooleanwajib
  • agent_check_completebooleanwajib
  • completebooleanwajib
  • expected_subjectstringwajib
  • expected_body_textstringwajib
  • received_message_idstring

    format: "uuid"

  • received_thread_idstring

    format: "uuid"

  • received_subjectstring
  • received_body_textstring
  • received_atstring

    format: "date-time"

  • agent_labelstring
  • agent_suggested_actionstring
  • error_codestring
  • replayedbooleanwajib

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/onboarding/agent-state/aha-one' \
  --header "Authorization: Bearer $BANGER_API_KEY"
POST/v1/workspaces/{workspaceId}/onboarding/agent-state/agent-proof

Kirim bukti koneksi agen terikat OAuth ke kotak surat yang dihosting kanonis.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Izin OAuth yang sama mengulang atau sudah menyelesaikan bukti.

application/json

  • valueobject
  • dataobjectwajib
  • statusstringwajib

    enum: "pending", "verified"

  • attempt_idstringwajib

    format: "uuid"

  • oauth_grant_idstringwajib
  • oauth_client_idstring | nullwajib
  • client_namestring | nullwajib
  • mailbox_idstringwajib

    format: "uuid"

  • mailbox_addressstringwajib

    format: "email"

  • expected_subjectstringwajib
  • initiated_atstringwajib

    format: "date-time"

  • command_idstring

    format: "uuid"

  • send_statusstring
  • dispatch_statusstring

    enum: "completed", "already-running", "already-settled"

  • replayedboolean
  • message_idstring

    format: "uuid"

  • thread_idstring

    format: "uuid"

  • received_atstring

    format: "date-time"

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/onboarding/agent-state/agent-proof' \
  --header "Authorization: Bearer $BANGER_API_KEY"
PUT/v1/workspaces/{workspaceId}/onboarding/agent-state/decision

Catat satu pilihan onboarding bertahap eksplisit.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan wajib

application/json

  • valueobject

    Tidak ada properti tambahan

  • decisionstringwajib

    enum: "agent_connection_skipped", "goals_chosen", "domain_bundle_approved", "dns_computer_use_authorized", "dns_manual_selected", "dns_records_applied", "services_reviewed", "persistent_mcp_acknowledged", "autopilot_proposed", "autopilot_skipped", "autopilot_activated", "intro_video_seen", "unlock_video_seen"

  • detailsobject
  • Properti tambahanNilai apa pun

Respons berhasil 200

Pilihan disimpan dalam Journey kanonis.

application/json

  • valueobject
  • datatidak ditentukanwajib
  • allOf 1object
  • workspace_idstringwajib

    format: "uuid"

  • statusstringwajib

    enum: "choose_agent", "discovering", "planning", "implementing", "validating", "ready", "complete"

  • entry_surfacestring | nullwajib

    enum: "codex", "chatgpt", "claude", "grok", "other_agent", "browser", null

  • agent_statusstringwajib

    enum: "not_connected", "connecting", "connected", "browser_only"

  • agent_client_namestring | nullwajib
  • domain_choicestringwajib

    enum: "undecided", "company_domain", "no_domain"

  • company_domainstring | nullwajib
  • domain_chosen_atstring | nullwajib

    format: "date-time"

  • business_contextobjectwajib
  • Properti tambahanNilai apa pun
  • opportunity_planarraywajib
  • Setiap itemobject
  • Properti tambahanNilai apa pun
  • implementation_summaryobjectwajib
  • Properti tambahanNilai apa pun
  • validation_summaryobjectwajib
  • Properti tambahanNilai apa pun
  • journey_metadataobjectwajib
  • Properti tambahanNilai apa pun
  • context_reviewed_atstring | nullwajib

    format: "date-time"

  • plan_proposed_atstring | nullwajib

    format: "date-time"

  • plan_approved_atstring | nullwajib

    format: "date-time"

  • completed_atstring | nullwajib

    format: "date-time"

  • versionintegerwajib

    format: "int64" · minimum: 1

  • updated_atstringwajib

    format: "date-time"

  • allOf 2object
  • domain_discoverytidak ditentukanwajib
  • oneOf 1object
  • domainstringwajib
  • scan_statusstringwajib

    enum: "complete", "partial", "failed"

  • companyobjectwajib
  • domainstringwajib

    Penumpukan lebih lanjut dihilangkan

  • website_urlstring | nullwajib

    format: "uri"

    Penumpukan lebih lanjut dihilangkan

  • website_statusstringwajib

    enum: "available", "missing", "blocked", "error"

    Penumpukan lebih lanjut dihilangkan

  • company_namestringwajib

    Penumpukan lebih lanjut dihilangkan

  • summarystringwajib

    Penumpukan lebih lanjut dihilangkan

  • audiencestringwajib

    Penumpukan lebih lanjut dihilangkan

  • offeringsarraywajib

    Penumpukan lebih lanjut dihilangkan

  • logo_urlstring | nullwajib

    format: "uri"

    Penumpukan lebih lanjut dihilangkan

  • favicon_urlstring | nullwajib

    format: "uri"

    Penumpukan lebih lanjut dihilangkan

  • visual_identityobjectwajib

    Penumpukan lebih lanjut dihilangkan

  • source_snapshotobjectwajib

    Penumpukan lebih lanjut dihilangkan

  • dns_signalsarraywajib
  • Setiap itemobject

    Penumpukan lebih lanjut dihilangkan

  • dns_providertidak ditentukanwajib
  • oneOf 1object

    Tidak ada properti tambahan

    Penumpukan lebih lanjut dihilangkan

  • oneOf 2null

    Penumpukan lebih lanjut dihilangkan

  • provider_detectionsarraywajib
  • Setiap itemobject

    Penumpukan lebih lanjut dihilangkan

  • capability_summaryarraywajib
  • Setiap itemobject

    Penumpukan lebih lanjut dihilangkan

  • recommended_connectionsarraywajib
  • Setiap itemobject

    Tidak ada properti tambahan

    Penumpukan lebih lanjut dihilangkan

  • connection_planarraywajib
  • Setiap itemobject

    Tidak ada properti tambahan

    Penumpukan lebih lanjut dihilangkan

  • limitationsarraywajib
  • Setiap itemstring

    Penumpukan lebih lanjut dihilangkan

  • scanned_atstringwajib

    format: "date-time"

  • confirmed_atstring | nullwajib

    format: "date-time"

  • oneOf 2null
  • recommended_connectionsarraywajib
  • Setiap itemobject

    Tidak ada properti tambahan

  • keystringwajib
  • namestringwajib
  • categorystringwajib

    enum: "email", "customer", "product", "work", "data"

  • prioritystringwajib

    enum: "required", "recommended"

  • reasonstringwajib
  • sourcestringwajib

    enum: "dns", "business_context", "opportunity_plan", "banger_recommendation"

  • setup_modestringwajib

    enum: "oauth", "secure_credentials"

  • availablebooleanwajib
  • provider_keystring
  • evidencearraywajib
  • Setiap itemobject

    Penumpukan lebih lanjut dihilangkan

  • domain_bundleobject | nullwajib
  • Properti tambahanNilai apa pun
  • growthobjectwajib
  • Properti tambahanNilai apa pun
  • activationobjectwajib
  • modestringwajib

    enum: "hosted", "company_domain", "starter"

  • statusstringwajib

    enum: "hosted_mailbox_required", "hosted_mailbox_proving", "hosted_mailbox_ready", "needs_context", "needs_provisioning", "provisioning", "dns_required", "ready_for_proof", "proving", "activated", "starter_required", "starter_proving", "starter_ready"

  • domainstring | nullwajib
  • sending_domain_idstring | nullwajib

    format: "uuid"

  • mailbox_idstring | nullwajib

    format: "uuid"

  • mailbox_addressstring | nullwajib

    format: "email"

  • exact_dns_recordsarraywajib
  • Setiap itemobject

    Tidak ada properti tambahan

  • idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • lane_idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • providerstringwajib

    enum: "banger", "resend"

    Penumpukan lebih lanjut dihilangkan

  • purposestringwajib

    Penumpukan lebih lanjut dihilangkan

  • typestringwajib

    enum: "TXT", "MX", "CNAME"

    Penumpukan lebih lanjut dihilangkan

  • namestringwajib

    Penumpukan lebih lanjut dihilangkan

  • valuestringwajib

    Penumpukan lebih lanjut dihilangkan

  • priorityinteger | nullwajib

    Penumpukan lebih lanjut dihilangkan

  • requiredbooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • statusstringwajib

    enum: "pending", "verified", "error"

    Penumpukan lebih lanjut dihilangkan

  • provider_statusstringwajib

    enum: "pending", "verified", "error", "not_applicable"

    Penumpukan lebih lanjut dihilangkan

  • first_observed_atstring | nullwajib

    format: "date-time"

    Penumpukan lebih lanjut dihilangkan

  • last_checked_atstring | nullwajib

    format: "date-time"

    Penumpukan lebih lanjut dihilangkan

  • errorobjectwajib

    Penumpukan lebih lanjut dihilangkan

  • provider_referencestring | nullwajib

    Penumpukan lebih lanjut dihilangkan

  • checkpointsarraywajib
  • Setiap itemobject
  • keystringwajib

    enum: "domain", "provider", "infrastructure", "dns", "mailbox", "product", "broadcast"

    Penumpukan lebih lanjut dihilangkan

  • labelstringwajib

    Penumpukan lebih lanjut dihilangkan

  • statusstringwajib

    enum: "pending", "working", "action_required", "verified"

    Penumpukan lebih lanjut dihilangkan

  • detailstringwajib

    Penumpukan lebih lanjut dihilangkan

  • lanesobjectwajib
  • mailboxobjectwajib
  • statusstringwajib

    enum: "pending", "working", "action_required", "verified"

    Penumpukan lebih lanjut dihilangkan

  • detailstringwajib

    Penumpukan lebih lanjut dihilangkan

  • transactionalobjectwajib
  • statusstringwajib

    enum: "pending", "working", "action_required", "verified"

    Penumpukan lebih lanjut dihilangkan

  • detailstringwajib

    Penumpukan lebih lanjut dihilangkan

  • marketingobjectwajib
  • statusstringwajib

    enum: "pending", "working", "action_required", "verified"

    Penumpukan lebih lanjut dihilangkan

  • detailstringwajib

    Penumpukan lebih lanjut dihilangkan

  • prooftidak ditentukanwajib
  • oneOf 1object
  • proof_idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • mailbox_idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • mailbox_addressstringwajib

    format: "email"

    Penumpukan lebih lanjut dihilangkan

  • command_idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • phasestringwajib

    enum: "sending", "sent", "received", "checked", "failed"

    Penumpukan lebih lanjut dihilangkan

  • send_completebooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • receive_completebooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • round_trip_check_completebooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • agent_check_completebooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • completebooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • expected_subjectstringwajib

    Penumpukan lebih lanjut dihilangkan

  • expected_body_textstringwajib

    Penumpukan lebih lanjut dihilangkan

  • received_message_idstring

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • received_thread_idstring

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • received_subjectstring

    Penumpukan lebih lanjut dihilangkan

  • received_body_textstring

    Penumpukan lebih lanjut dihilangkan

  • received_atstring

    format: "date-time"

    Penumpukan lebih lanjut dihilangkan

  • agent_labelstring

    Penumpukan lebih lanjut dihilangkan

  • agent_suggested_actionstring

    Penumpukan lebih lanjut dihilangkan

  • error_codestring

    Penumpukan lebih lanjut dihilangkan

  • replayedbooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • oneOf 2object
  • proof_idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • domain_idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • native_domain_idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • mailbox_idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • mailbox_addressstringwajib

    format: "email"

    Penumpukan lebih lanjut dihilangkan

  • transactional_send_intent_idstring

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • marketing_send_intent_idstring

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • transactional_subjectstringwajib

    Penumpukan lebih lanjut dihilangkan

  • marketing_subjectstringwajib

    Penumpukan lebih lanjut dihilangkan

  • phasestringwajib

    enum: "sending", "receiving", "received", "checked", "failed"

    Penumpukan lebih lanjut dihilangkan

  • send_completebooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • transactional_receivedbooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • marketing_receivedbooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • receive_completebooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • agent_check_completebooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • completebooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • error_codestring

    Penumpukan lebih lanjut dihilangkan

  • replayedbooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • oneOf 3null
  • overall_readybooleanwajib
  • production_readybooleanwajib
  • completedbooleanwajib
  • pendingbooleanwajib
  • next_actionstringwajib

    enum: "choose_agent", "provision_hosted_mailbox", "send_aha_1", "wait_for_aha_1", "offer_custom_domain", "review_domain_bundle", "provision_domain_bundle", "wait_for_dns_records", "ask_computer_use_permission", "configure_dns_with_computer_use", "present_manual_dns_instructions", "wait_for_dns_propagation", "send_aha_2", "wait_for_aha_2", "create_starter_mailbox", "run_starter_proof", "wait_for_starter_proof", "collect_business_context", "build_lifecycle_map", "review_growth_system", "connect_required_services", "explain_persistent_mcp", "offer_autopilot", "activate_autopilot", "validate", "complete", "open_dashboard"

  • action_requiredobjectwajib
  • typestringwajib
  • requiredbooleanwajib
  • actionstringwajib

    enum: "choose_agent", "provision_hosted_mailbox", "send_aha_1", "wait_for_aha_1", "offer_custom_domain", "review_domain_bundle", "provision_domain_bundle", "wait_for_dns_records", "ask_computer_use_permission", "configure_dns_with_computer_use", "present_manual_dns_instructions", "wait_for_dns_propagation", "send_aha_2", "wait_for_aha_2", "create_starter_mailbox", "run_starter_proof", "wait_for_starter_proof", "collect_business_context", "build_lifecycle_map", "review_growth_system", "connect_required_services", "explain_persistent_mcp", "offer_autopilot", "activate_autopilot", "validate", "complete", "open_dashboard"

  • urlstring | nullwajib

    format: "uri"

  • instructionsstring | nullwajib
  • secure_urlstring | nullwajib

    format: "uri"

  • mcp_urlstringwajib

    format: "uri"

  • dashboard_urlstringwajib

    format: "uri"

Contoh curl

curl --request PUT --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/onboarding/agent-state/decision' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "decision": "agent_connection_skipped",
  "details": {}
}'
PUT/v1/workspaces/{workspaceId}/onboarding/agent-state/domain-choice

Simpan keputusan onboarding pengguna dengan domain perusahaan atau tanpa domain dan jalankan penemuan kanonis.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan wajib

application/json

  • valueobject

    Tidak ada properti tambahan

  • choicestringwajib

    enum: "company_domain", "no_domain"

  • domainstring

    minLength: 3 · maxLength: 253

Respons berhasil 200

Keputusan domain disimpan dan Journey dilanjutkan.

application/json

  • valueobject
  • datatidak ditentukanwajib
  • allOf 1object
  • workspace_idstringwajib

    format: "uuid"

  • statusstringwajib

    enum: "choose_agent", "discovering", "planning", "implementing", "validating", "ready", "complete"

  • entry_surfacestring | nullwajib

    enum: "codex", "chatgpt", "claude", "grok", "other_agent", "browser", null

  • agent_statusstringwajib

    enum: "not_connected", "connecting", "connected", "browser_only"

  • agent_client_namestring | nullwajib
  • domain_choicestringwajib

    enum: "undecided", "company_domain", "no_domain"

  • company_domainstring | nullwajib
  • domain_chosen_atstring | nullwajib

    format: "date-time"

  • business_contextobjectwajib
  • Properti tambahanNilai apa pun
  • opportunity_planarraywajib
  • Setiap itemobject
  • Properti tambahanNilai apa pun
  • implementation_summaryobjectwajib
  • Properti tambahanNilai apa pun
  • validation_summaryobjectwajib
  • Properti tambahanNilai apa pun
  • journey_metadataobjectwajib
  • Properti tambahanNilai apa pun
  • context_reviewed_atstring | nullwajib

    format: "date-time"

  • plan_proposed_atstring | nullwajib

    format: "date-time"

  • plan_approved_atstring | nullwajib

    format: "date-time"

  • completed_atstring | nullwajib

    format: "date-time"

  • versionintegerwajib

    format: "int64" · minimum: 1

  • updated_atstringwajib

    format: "date-time"

  • allOf 2object
  • domain_discoverytidak ditentukanwajib
  • oneOf 1object
  • domainstringwajib
  • scan_statusstringwajib

    enum: "complete", "partial", "failed"

  • companyobjectwajib
  • domainstringwajib

    Penumpukan lebih lanjut dihilangkan

  • website_urlstring | nullwajib

    format: "uri"

    Penumpukan lebih lanjut dihilangkan

  • website_statusstringwajib

    enum: "available", "missing", "blocked", "error"

    Penumpukan lebih lanjut dihilangkan

  • company_namestringwajib

    Penumpukan lebih lanjut dihilangkan

  • summarystringwajib

    Penumpukan lebih lanjut dihilangkan

  • audiencestringwajib

    Penumpukan lebih lanjut dihilangkan

  • offeringsarraywajib

    Penumpukan lebih lanjut dihilangkan

  • logo_urlstring | nullwajib

    format: "uri"

    Penumpukan lebih lanjut dihilangkan

  • favicon_urlstring | nullwajib

    format: "uri"

    Penumpukan lebih lanjut dihilangkan

  • visual_identityobjectwajib

    Penumpukan lebih lanjut dihilangkan

  • source_snapshotobjectwajib

    Penumpukan lebih lanjut dihilangkan

  • dns_signalsarraywajib
  • Setiap itemobject

    Penumpukan lebih lanjut dihilangkan

  • dns_providertidak ditentukanwajib
  • oneOf 1object

    Tidak ada properti tambahan

    Penumpukan lebih lanjut dihilangkan

  • oneOf 2null

    Penumpukan lebih lanjut dihilangkan

  • provider_detectionsarraywajib
  • Setiap itemobject

    Penumpukan lebih lanjut dihilangkan

  • capability_summaryarraywajib
  • Setiap itemobject

    Penumpukan lebih lanjut dihilangkan

  • recommended_connectionsarraywajib
  • Setiap itemobject

    Tidak ada properti tambahan

    Penumpukan lebih lanjut dihilangkan

  • connection_planarraywajib
  • Setiap itemobject

    Tidak ada properti tambahan

    Penumpukan lebih lanjut dihilangkan

  • limitationsarraywajib
  • Setiap itemstring

    Penumpukan lebih lanjut dihilangkan

  • scanned_atstringwajib

    format: "date-time"

  • confirmed_atstring | nullwajib

    format: "date-time"

  • oneOf 2null
  • recommended_connectionsarraywajib
  • Setiap itemobject

    Tidak ada properti tambahan

  • keystringwajib
  • namestringwajib
  • categorystringwajib

    enum: "email", "customer", "product", "work", "data"

  • prioritystringwajib

    enum: "required", "recommended"

  • reasonstringwajib
  • sourcestringwajib

    enum: "dns", "business_context", "opportunity_plan", "banger_recommendation"

  • setup_modestringwajib

    enum: "oauth", "secure_credentials"

  • availablebooleanwajib
  • provider_keystring
  • evidencearraywajib
  • Setiap itemobject

    Penumpukan lebih lanjut dihilangkan

  • domain_bundleobject | nullwajib
  • Properti tambahanNilai apa pun
  • growthobjectwajib
  • Properti tambahanNilai apa pun
  • activationobjectwajib
  • modestringwajib

    enum: "hosted", "company_domain", "starter"

  • statusstringwajib

    enum: "hosted_mailbox_required", "hosted_mailbox_proving", "hosted_mailbox_ready", "needs_context", "needs_provisioning", "provisioning", "dns_required", "ready_for_proof", "proving", "activated", "starter_required", "starter_proving", "starter_ready"

  • domainstring | nullwajib
  • sending_domain_idstring | nullwajib

    format: "uuid"

  • mailbox_idstring | nullwajib

    format: "uuid"

  • mailbox_addressstring | nullwajib

    format: "email"

  • exact_dns_recordsarraywajib
  • Setiap itemobject

    Tidak ada properti tambahan

  • idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • lane_idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • providerstringwajib

    enum: "banger", "resend"

    Penumpukan lebih lanjut dihilangkan

  • purposestringwajib

    Penumpukan lebih lanjut dihilangkan

  • typestringwajib

    enum: "TXT", "MX", "CNAME"

    Penumpukan lebih lanjut dihilangkan

  • namestringwajib

    Penumpukan lebih lanjut dihilangkan

  • valuestringwajib

    Penumpukan lebih lanjut dihilangkan

  • priorityinteger | nullwajib

    Penumpukan lebih lanjut dihilangkan

  • requiredbooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • statusstringwajib

    enum: "pending", "verified", "error"

    Penumpukan lebih lanjut dihilangkan

  • provider_statusstringwajib

    enum: "pending", "verified", "error", "not_applicable"

    Penumpukan lebih lanjut dihilangkan

  • first_observed_atstring | nullwajib

    format: "date-time"

    Penumpukan lebih lanjut dihilangkan

  • last_checked_atstring | nullwajib

    format: "date-time"

    Penumpukan lebih lanjut dihilangkan

  • errorobjectwajib

    Penumpukan lebih lanjut dihilangkan

  • provider_referencestring | nullwajib

    Penumpukan lebih lanjut dihilangkan

  • checkpointsarraywajib
  • Setiap itemobject
  • keystringwajib

    enum: "domain", "provider", "infrastructure", "dns", "mailbox", "product", "broadcast"

    Penumpukan lebih lanjut dihilangkan

  • labelstringwajib

    Penumpukan lebih lanjut dihilangkan

  • statusstringwajib

    enum: "pending", "working", "action_required", "verified"

    Penumpukan lebih lanjut dihilangkan

  • detailstringwajib

    Penumpukan lebih lanjut dihilangkan

  • lanesobjectwajib
  • mailboxobjectwajib
  • statusstringwajib

    enum: "pending", "working", "action_required", "verified"

    Penumpukan lebih lanjut dihilangkan

  • detailstringwajib

    Penumpukan lebih lanjut dihilangkan

  • transactionalobjectwajib
  • statusstringwajib

    enum: "pending", "working", "action_required", "verified"

    Penumpukan lebih lanjut dihilangkan

  • detailstringwajib

    Penumpukan lebih lanjut dihilangkan

  • marketingobjectwajib
  • statusstringwajib

    enum: "pending", "working", "action_required", "verified"

    Penumpukan lebih lanjut dihilangkan

  • detailstringwajib

    Penumpukan lebih lanjut dihilangkan

  • prooftidak ditentukanwajib
  • oneOf 1object
  • proof_idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • mailbox_idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • mailbox_addressstringwajib

    format: "email"

    Penumpukan lebih lanjut dihilangkan

  • command_idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • phasestringwajib

    enum: "sending", "sent", "received", "checked", "failed"

    Penumpukan lebih lanjut dihilangkan

  • send_completebooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • receive_completebooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • round_trip_check_completebooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • agent_check_completebooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • completebooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • expected_subjectstringwajib

    Penumpukan lebih lanjut dihilangkan

  • expected_body_textstringwajib

    Penumpukan lebih lanjut dihilangkan

  • received_message_idstring

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • received_thread_idstring

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • received_subjectstring

    Penumpukan lebih lanjut dihilangkan

  • received_body_textstring

    Penumpukan lebih lanjut dihilangkan

  • received_atstring

    format: "date-time"

    Penumpukan lebih lanjut dihilangkan

  • agent_labelstring

    Penumpukan lebih lanjut dihilangkan

  • agent_suggested_actionstring

    Penumpukan lebih lanjut dihilangkan

  • error_codestring

    Penumpukan lebih lanjut dihilangkan

  • replayedbooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • oneOf 2object
  • proof_idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • domain_idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • native_domain_idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • mailbox_idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • mailbox_addressstringwajib

    format: "email"

    Penumpukan lebih lanjut dihilangkan

  • transactional_send_intent_idstring

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • marketing_send_intent_idstring

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • transactional_subjectstringwajib

    Penumpukan lebih lanjut dihilangkan

  • marketing_subjectstringwajib

    Penumpukan lebih lanjut dihilangkan

  • phasestringwajib

    enum: "sending", "receiving", "received", "checked", "failed"

    Penumpukan lebih lanjut dihilangkan

  • send_completebooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • transactional_receivedbooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • marketing_receivedbooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • receive_completebooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • agent_check_completebooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • completebooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • error_codestring

    Penumpukan lebih lanjut dihilangkan

  • replayedbooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • oneOf 3null
  • overall_readybooleanwajib
  • production_readybooleanwajib
  • completedbooleanwajib
  • pendingbooleanwajib
  • next_actionstringwajib

    enum: "choose_agent", "provision_hosted_mailbox", "send_aha_1", "wait_for_aha_1", "offer_custom_domain", "review_domain_bundle", "provision_domain_bundle", "wait_for_dns_records", "ask_computer_use_permission", "configure_dns_with_computer_use", "present_manual_dns_instructions", "wait_for_dns_propagation", "send_aha_2", "wait_for_aha_2", "create_starter_mailbox", "run_starter_proof", "wait_for_starter_proof", "collect_business_context", "build_lifecycle_map", "review_growth_system", "connect_required_services", "explain_persistent_mcp", "offer_autopilot", "activate_autopilot", "validate", "complete", "open_dashboard"

  • action_requiredobjectwajib
  • typestringwajib
  • requiredbooleanwajib
  • actionstringwajib

    enum: "choose_agent", "provision_hosted_mailbox", "send_aha_1", "wait_for_aha_1", "offer_custom_domain", "review_domain_bundle", "provision_domain_bundle", "wait_for_dns_records", "ask_computer_use_permission", "configure_dns_with_computer_use", "present_manual_dns_instructions", "wait_for_dns_propagation", "send_aha_2", "wait_for_aha_2", "create_starter_mailbox", "run_starter_proof", "wait_for_starter_proof", "collect_business_context", "build_lifecycle_map", "review_growth_system", "connect_required_services", "explain_persistent_mcp", "offer_autopilot", "activate_autopilot", "validate", "complete", "open_dashboard"

  • urlstring | nullwajib

    format: "uri"

  • instructionsstring | nullwajib
  • secure_urlstring | nullwajib

    format: "uri"

  • mcp_urlstringwajib

    format: "uri"

  • dashboard_urlstringwajib

    format: "uri"

Contoh curl

curl --request PUT --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/onboarding/agent-state/domain-choice' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "choice": "company_domain",
  "domain": "example"
}'
PUT/v1/workspaces/{workspaceId}/onboarding/agent-state/context

Simpan konteks bisnis yang ditinjau dari browser atau agen terhubung.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan wajib

application/json

  • valueobject

    Tidak ada properti tambahan

  • contextobjectwajib
  • Properti tambahanNilai apa pun
  • company_domainstring

    Jembatan kompatibilitas untuk konektor cache sebelum chooseAgentOnboardingDomain. Agen tetap harus bertanya kepada pengguna dahulu.

    minLength: 3 · maxLength: 253

  • client_namestring

    minLength: 1 · maxLength: 100

Respons berhasil 200

Konteks diterima.

application/json

  • valueobject
  • datatidak ditentukanwajib
  • allOf 1object
  • workspace_idstringwajib

    format: "uuid"

  • statusstringwajib

    enum: "choose_agent", "discovering", "planning", "implementing", "validating", "ready", "complete"

  • entry_surfacestring | nullwajib

    enum: "codex", "chatgpt", "claude", "grok", "other_agent", "browser", null

  • agent_statusstringwajib

    enum: "not_connected", "connecting", "connected", "browser_only"

  • agent_client_namestring | nullwajib
  • domain_choicestringwajib

    enum: "undecided", "company_domain", "no_domain"

  • company_domainstring | nullwajib
  • domain_chosen_atstring | nullwajib

    format: "date-time"

  • business_contextobjectwajib
  • Properti tambahanNilai apa pun
  • opportunity_planarraywajib
  • Setiap itemobject
  • Properti tambahanNilai apa pun
  • implementation_summaryobjectwajib
  • Properti tambahanNilai apa pun
  • validation_summaryobjectwajib
  • Properti tambahanNilai apa pun
  • journey_metadataobjectwajib
  • Properti tambahanNilai apa pun
  • context_reviewed_atstring | nullwajib

    format: "date-time"

  • plan_proposed_atstring | nullwajib

    format: "date-time"

  • plan_approved_atstring | nullwajib

    format: "date-time"

  • completed_atstring | nullwajib

    format: "date-time"

  • versionintegerwajib

    format: "int64" · minimum: 1

  • updated_atstringwajib

    format: "date-time"

  • allOf 2object
  • domain_discoverytidak ditentukanwajib
  • oneOf 1object
  • domainstringwajib
  • scan_statusstringwajib

    enum: "complete", "partial", "failed"

  • companyobjectwajib
  • domainstringwajib

    Penumpukan lebih lanjut dihilangkan

  • website_urlstring | nullwajib

    format: "uri"

    Penumpukan lebih lanjut dihilangkan

  • website_statusstringwajib

    enum: "available", "missing", "blocked", "error"

    Penumpukan lebih lanjut dihilangkan

  • company_namestringwajib

    Penumpukan lebih lanjut dihilangkan

  • summarystringwajib

    Penumpukan lebih lanjut dihilangkan

  • audiencestringwajib

    Penumpukan lebih lanjut dihilangkan

  • offeringsarraywajib

    Penumpukan lebih lanjut dihilangkan

  • logo_urlstring | nullwajib

    format: "uri"

    Penumpukan lebih lanjut dihilangkan

  • favicon_urlstring | nullwajib

    format: "uri"

    Penumpukan lebih lanjut dihilangkan

  • visual_identityobjectwajib

    Penumpukan lebih lanjut dihilangkan

  • source_snapshotobjectwajib

    Penumpukan lebih lanjut dihilangkan

  • dns_signalsarraywajib
  • Setiap itemobject

    Penumpukan lebih lanjut dihilangkan

  • dns_providertidak ditentukanwajib
  • oneOf 1object

    Tidak ada properti tambahan

    Penumpukan lebih lanjut dihilangkan

  • oneOf 2null

    Penumpukan lebih lanjut dihilangkan

  • provider_detectionsarraywajib
  • Setiap itemobject

    Penumpukan lebih lanjut dihilangkan

  • capability_summaryarraywajib
  • Setiap itemobject

    Penumpukan lebih lanjut dihilangkan

  • recommended_connectionsarraywajib
  • Setiap itemobject

    Tidak ada properti tambahan

    Penumpukan lebih lanjut dihilangkan

  • connection_planarraywajib
  • Setiap itemobject

    Tidak ada properti tambahan

    Penumpukan lebih lanjut dihilangkan

  • limitationsarraywajib
  • Setiap itemstring

    Penumpukan lebih lanjut dihilangkan

  • scanned_atstringwajib

    format: "date-time"

  • confirmed_atstring | nullwajib

    format: "date-time"

  • oneOf 2null
  • recommended_connectionsarraywajib
  • Setiap itemobject

    Tidak ada properti tambahan

  • keystringwajib
  • namestringwajib
  • categorystringwajib

    enum: "email", "customer", "product", "work", "data"

  • prioritystringwajib

    enum: "required", "recommended"

  • reasonstringwajib
  • sourcestringwajib

    enum: "dns", "business_context", "opportunity_plan", "banger_recommendation"

  • setup_modestringwajib

    enum: "oauth", "secure_credentials"

  • availablebooleanwajib
  • provider_keystring
  • evidencearraywajib
  • Setiap itemobject

    Penumpukan lebih lanjut dihilangkan

  • domain_bundleobject | nullwajib
  • Properti tambahanNilai apa pun
  • growthobjectwajib
  • Properti tambahanNilai apa pun
  • activationobjectwajib
  • modestringwajib

    enum: "hosted", "company_domain", "starter"

  • statusstringwajib

    enum: "hosted_mailbox_required", "hosted_mailbox_proving", "hosted_mailbox_ready", "needs_context", "needs_provisioning", "provisioning", "dns_required", "ready_for_proof", "proving", "activated", "starter_required", "starter_proving", "starter_ready"

  • domainstring | nullwajib
  • sending_domain_idstring | nullwajib

    format: "uuid"

  • mailbox_idstring | nullwajib

    format: "uuid"

  • mailbox_addressstring | nullwajib

    format: "email"

  • exact_dns_recordsarraywajib
  • Setiap itemobject

    Tidak ada properti tambahan

  • idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • lane_idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • providerstringwajib

    enum: "banger", "resend"

    Penumpukan lebih lanjut dihilangkan

  • purposestringwajib

    Penumpukan lebih lanjut dihilangkan

  • typestringwajib

    enum: "TXT", "MX", "CNAME"

    Penumpukan lebih lanjut dihilangkan

  • namestringwajib

    Penumpukan lebih lanjut dihilangkan

  • valuestringwajib

    Penumpukan lebih lanjut dihilangkan

  • priorityinteger | nullwajib

    Penumpukan lebih lanjut dihilangkan

  • requiredbooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • statusstringwajib

    enum: "pending", "verified", "error"

    Penumpukan lebih lanjut dihilangkan

  • provider_statusstringwajib

    enum: "pending", "verified", "error", "not_applicable"

    Penumpukan lebih lanjut dihilangkan

  • first_observed_atstring | nullwajib

    format: "date-time"

    Penumpukan lebih lanjut dihilangkan

  • last_checked_atstring | nullwajib

    format: "date-time"

    Penumpukan lebih lanjut dihilangkan

  • errorobjectwajib

    Penumpukan lebih lanjut dihilangkan

  • provider_referencestring | nullwajib

    Penumpukan lebih lanjut dihilangkan

  • checkpointsarraywajib
  • Setiap itemobject
  • keystringwajib

    enum: "domain", "provider", "infrastructure", "dns", "mailbox", "product", "broadcast"

    Penumpukan lebih lanjut dihilangkan

  • labelstringwajib

    Penumpukan lebih lanjut dihilangkan

  • statusstringwajib

    enum: "pending", "working", "action_required", "verified"

    Penumpukan lebih lanjut dihilangkan

  • detailstringwajib

    Penumpukan lebih lanjut dihilangkan

  • lanesobjectwajib
  • mailboxobjectwajib
  • statusstringwajib

    enum: "pending", "working", "action_required", "verified"

    Penumpukan lebih lanjut dihilangkan

  • detailstringwajib

    Penumpukan lebih lanjut dihilangkan

  • transactionalobjectwajib
  • statusstringwajib

    enum: "pending", "working", "action_required", "verified"

    Penumpukan lebih lanjut dihilangkan

  • detailstringwajib

    Penumpukan lebih lanjut dihilangkan

  • marketingobjectwajib
  • statusstringwajib

    enum: "pending", "working", "action_required", "verified"

    Penumpukan lebih lanjut dihilangkan

  • detailstringwajib

    Penumpukan lebih lanjut dihilangkan

  • prooftidak ditentukanwajib
  • oneOf 1object
  • proof_idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • mailbox_idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • mailbox_addressstringwajib

    format: "email"

    Penumpukan lebih lanjut dihilangkan

  • command_idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • phasestringwajib

    enum: "sending", "sent", "received", "checked", "failed"

    Penumpukan lebih lanjut dihilangkan

  • send_completebooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • receive_completebooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • round_trip_check_completebooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • agent_check_completebooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • completebooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • expected_subjectstringwajib

    Penumpukan lebih lanjut dihilangkan

  • expected_body_textstringwajib

    Penumpukan lebih lanjut dihilangkan

  • received_message_idstring

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • received_thread_idstring

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • received_subjectstring

    Penumpukan lebih lanjut dihilangkan

  • received_body_textstring

    Penumpukan lebih lanjut dihilangkan

  • received_atstring

    format: "date-time"

    Penumpukan lebih lanjut dihilangkan

  • agent_labelstring

    Penumpukan lebih lanjut dihilangkan

  • agent_suggested_actionstring

    Penumpukan lebih lanjut dihilangkan

  • error_codestring

    Penumpukan lebih lanjut dihilangkan

  • replayedbooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • oneOf 2object
  • proof_idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • domain_idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • native_domain_idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • mailbox_idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • mailbox_addressstringwajib

    format: "email"

    Penumpukan lebih lanjut dihilangkan

  • transactional_send_intent_idstring

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • marketing_send_intent_idstring

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • transactional_subjectstringwajib

    Penumpukan lebih lanjut dihilangkan

  • marketing_subjectstringwajib

    Penumpukan lebih lanjut dihilangkan

  • phasestringwajib

    enum: "sending", "receiving", "received", "checked", "failed"

    Penumpukan lebih lanjut dihilangkan

  • send_completebooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • transactional_receivedbooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • marketing_receivedbooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • receive_completebooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • agent_check_completebooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • completebooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • error_codestring

    Penumpukan lebih lanjut dihilangkan

  • replayedbooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • oneOf 3null
  • overall_readybooleanwajib
  • production_readybooleanwajib
  • completedbooleanwajib
  • pendingbooleanwajib
  • next_actionstringwajib

    enum: "choose_agent", "provision_hosted_mailbox", "send_aha_1", "wait_for_aha_1", "offer_custom_domain", "review_domain_bundle", "provision_domain_bundle", "wait_for_dns_records", "ask_computer_use_permission", "configure_dns_with_computer_use", "present_manual_dns_instructions", "wait_for_dns_propagation", "send_aha_2", "wait_for_aha_2", "create_starter_mailbox", "run_starter_proof", "wait_for_starter_proof", "collect_business_context", "build_lifecycle_map", "review_growth_system", "connect_required_services", "explain_persistent_mcp", "offer_autopilot", "activate_autopilot", "validate", "complete", "open_dashboard"

  • action_requiredobjectwajib
  • typestringwajib
  • requiredbooleanwajib
  • actionstringwajib

    enum: "choose_agent", "provision_hosted_mailbox", "send_aha_1", "wait_for_aha_1", "offer_custom_domain", "review_domain_bundle", "provision_domain_bundle", "wait_for_dns_records", "ask_computer_use_permission", "configure_dns_with_computer_use", "present_manual_dns_instructions", "wait_for_dns_propagation", "send_aha_2", "wait_for_aha_2", "create_starter_mailbox", "run_starter_proof", "wait_for_starter_proof", "collect_business_context", "build_lifecycle_map", "review_growth_system", "connect_required_services", "explain_persistent_mcp", "offer_autopilot", "activate_autopilot", "validate", "complete", "open_dashboard"

  • urlstring | nullwajib

    format: "uri"

  • instructionsstring | nullwajib
  • secure_urlstring | nullwajib

    format: "uri"

  • mcp_urlstringwajib

    format: "uri"

  • dashboard_urlstringwajib

    format: "uri"

Contoh curl

curl --request PUT --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/onboarding/agent-state/context' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "context": {},
  "company_domain": "example",
  "client_name": "example"
}'
PUT/v1/workspaces/{workspaceId}/onboarding/agent-state/plan

Simpan pilihan langkah berikutnya yang dipersonalisasi setelah aktivasi email langsung lolos.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan wajib

application/json

  • valueobject

    Tidak ada properti tambahan

  • opportunitiesarraywajib

    minItems: 1 · maxItems: 100

  • Setiap itemobject
  • Properti tambahanNilai apa pun

Respons berhasil 200

Rencana peluang diterima.

application/json

  • valueobject
  • datatidak ditentukanwajib
  • allOf 1object
  • workspace_idstringwajib

    format: "uuid"

  • statusstringwajib

    enum: "choose_agent", "discovering", "planning", "implementing", "validating", "ready", "complete"

  • entry_surfacestring | nullwajib

    enum: "codex", "chatgpt", "claude", "grok", "other_agent", "browser", null

  • agent_statusstringwajib

    enum: "not_connected", "connecting", "connected", "browser_only"

  • agent_client_namestring | nullwajib
  • domain_choicestringwajib

    enum: "undecided", "company_domain", "no_domain"

  • company_domainstring | nullwajib
  • domain_chosen_atstring | nullwajib

    format: "date-time"

  • business_contextobjectwajib
  • Properti tambahanNilai apa pun
  • opportunity_planarraywajib
  • Setiap itemobject
  • Properti tambahanNilai apa pun
  • implementation_summaryobjectwajib
  • Properti tambahanNilai apa pun
  • validation_summaryobjectwajib
  • Properti tambahanNilai apa pun
  • journey_metadataobjectwajib
  • Properti tambahanNilai apa pun
  • context_reviewed_atstring | nullwajib

    format: "date-time"

  • plan_proposed_atstring | nullwajib

    format: "date-time"

  • plan_approved_atstring | nullwajib

    format: "date-time"

  • completed_atstring | nullwajib

    format: "date-time"

  • versionintegerwajib

    format: "int64" · minimum: 1

  • updated_atstringwajib

    format: "date-time"

  • allOf 2object
  • domain_discoverytidak ditentukanwajib
  • oneOf 1object
  • domainstringwajib
  • scan_statusstringwajib

    enum: "complete", "partial", "failed"

  • companyobjectwajib
  • domainstringwajib

    Penumpukan lebih lanjut dihilangkan

  • website_urlstring | nullwajib

    format: "uri"

    Penumpukan lebih lanjut dihilangkan

  • website_statusstringwajib

    enum: "available", "missing", "blocked", "error"

    Penumpukan lebih lanjut dihilangkan

  • company_namestringwajib

    Penumpukan lebih lanjut dihilangkan

  • summarystringwajib

    Penumpukan lebih lanjut dihilangkan

  • audiencestringwajib

    Penumpukan lebih lanjut dihilangkan

  • offeringsarraywajib

    Penumpukan lebih lanjut dihilangkan

  • logo_urlstring | nullwajib

    format: "uri"

    Penumpukan lebih lanjut dihilangkan

  • favicon_urlstring | nullwajib

    format: "uri"

    Penumpukan lebih lanjut dihilangkan

  • visual_identityobjectwajib

    Penumpukan lebih lanjut dihilangkan

  • source_snapshotobjectwajib

    Penumpukan lebih lanjut dihilangkan

  • dns_signalsarraywajib
  • Setiap itemobject

    Penumpukan lebih lanjut dihilangkan

  • dns_providertidak ditentukanwajib
  • oneOf 1object

    Tidak ada properti tambahan

    Penumpukan lebih lanjut dihilangkan

  • oneOf 2null

    Penumpukan lebih lanjut dihilangkan

  • provider_detectionsarraywajib
  • Setiap itemobject

    Penumpukan lebih lanjut dihilangkan

  • capability_summaryarraywajib
  • Setiap itemobject

    Penumpukan lebih lanjut dihilangkan

  • recommended_connectionsarraywajib
  • Setiap itemobject

    Tidak ada properti tambahan

    Penumpukan lebih lanjut dihilangkan

  • connection_planarraywajib
  • Setiap itemobject

    Tidak ada properti tambahan

    Penumpukan lebih lanjut dihilangkan

  • limitationsarraywajib
  • Setiap itemstring

    Penumpukan lebih lanjut dihilangkan

  • scanned_atstringwajib

    format: "date-time"

  • confirmed_atstring | nullwajib

    format: "date-time"

  • oneOf 2null
  • recommended_connectionsarraywajib
  • Setiap itemobject

    Tidak ada properti tambahan

  • keystringwajib
  • namestringwajib
  • categorystringwajib

    enum: "email", "customer", "product", "work", "data"

  • prioritystringwajib

    enum: "required", "recommended"

  • reasonstringwajib
  • sourcestringwajib

    enum: "dns", "business_context", "opportunity_plan", "banger_recommendation"

  • setup_modestringwajib

    enum: "oauth", "secure_credentials"

  • availablebooleanwajib
  • provider_keystring
  • evidencearraywajib
  • Setiap itemobject

    Penumpukan lebih lanjut dihilangkan

  • domain_bundleobject | nullwajib
  • Properti tambahanNilai apa pun
  • growthobjectwajib
  • Properti tambahanNilai apa pun
  • activationobjectwajib
  • modestringwajib

    enum: "hosted", "company_domain", "starter"

  • statusstringwajib

    enum: "hosted_mailbox_required", "hosted_mailbox_proving", "hosted_mailbox_ready", "needs_context", "needs_provisioning", "provisioning", "dns_required", "ready_for_proof", "proving", "activated", "starter_required", "starter_proving", "starter_ready"

  • domainstring | nullwajib
  • sending_domain_idstring | nullwajib

    format: "uuid"

  • mailbox_idstring | nullwajib

    format: "uuid"

  • mailbox_addressstring | nullwajib

    format: "email"

  • exact_dns_recordsarraywajib
  • Setiap itemobject

    Tidak ada properti tambahan

  • idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • lane_idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • providerstringwajib

    enum: "banger", "resend"

    Penumpukan lebih lanjut dihilangkan

  • purposestringwajib

    Penumpukan lebih lanjut dihilangkan

  • typestringwajib

    enum: "TXT", "MX", "CNAME"

    Penumpukan lebih lanjut dihilangkan

  • namestringwajib

    Penumpukan lebih lanjut dihilangkan

  • valuestringwajib

    Penumpukan lebih lanjut dihilangkan

  • priorityinteger | nullwajib

    Penumpukan lebih lanjut dihilangkan

  • requiredbooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • statusstringwajib

    enum: "pending", "verified", "error"

    Penumpukan lebih lanjut dihilangkan

  • provider_statusstringwajib

    enum: "pending", "verified", "error", "not_applicable"

    Penumpukan lebih lanjut dihilangkan

  • first_observed_atstring | nullwajib

    format: "date-time"

    Penumpukan lebih lanjut dihilangkan

  • last_checked_atstring | nullwajib

    format: "date-time"

    Penumpukan lebih lanjut dihilangkan

  • errorobjectwajib

    Penumpukan lebih lanjut dihilangkan

  • provider_referencestring | nullwajib

    Penumpukan lebih lanjut dihilangkan

  • checkpointsarraywajib
  • Setiap itemobject
  • keystringwajib

    enum: "domain", "provider", "infrastructure", "dns", "mailbox", "product", "broadcast"

    Penumpukan lebih lanjut dihilangkan

  • labelstringwajib

    Penumpukan lebih lanjut dihilangkan

  • statusstringwajib

    enum: "pending", "working", "action_required", "verified"

    Penumpukan lebih lanjut dihilangkan

  • detailstringwajib

    Penumpukan lebih lanjut dihilangkan

  • lanesobjectwajib
  • mailboxobjectwajib
  • statusstringwajib

    enum: "pending", "working", "action_required", "verified"

    Penumpukan lebih lanjut dihilangkan

  • detailstringwajib

    Penumpukan lebih lanjut dihilangkan

  • transactionalobjectwajib
  • statusstringwajib

    enum: "pending", "working", "action_required", "verified"

    Penumpukan lebih lanjut dihilangkan

  • detailstringwajib

    Penumpukan lebih lanjut dihilangkan

  • marketingobjectwajib
  • statusstringwajib

    enum: "pending", "working", "action_required", "verified"

    Penumpukan lebih lanjut dihilangkan

  • detailstringwajib

    Penumpukan lebih lanjut dihilangkan

  • prooftidak ditentukanwajib
  • oneOf 1object
  • proof_idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • mailbox_idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • mailbox_addressstringwajib

    format: "email"

    Penumpukan lebih lanjut dihilangkan

  • command_idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • phasestringwajib

    enum: "sending", "sent", "received", "checked", "failed"

    Penumpukan lebih lanjut dihilangkan

  • send_completebooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • receive_completebooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • round_trip_check_completebooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • agent_check_completebooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • completebooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • expected_subjectstringwajib

    Penumpukan lebih lanjut dihilangkan

  • expected_body_textstringwajib

    Penumpukan lebih lanjut dihilangkan

  • received_message_idstring

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • received_thread_idstring

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • received_subjectstring

    Penumpukan lebih lanjut dihilangkan

  • received_body_textstring

    Penumpukan lebih lanjut dihilangkan

  • received_atstring

    format: "date-time"

    Penumpukan lebih lanjut dihilangkan

  • agent_labelstring

    Penumpukan lebih lanjut dihilangkan

  • agent_suggested_actionstring

    Penumpukan lebih lanjut dihilangkan

  • error_codestring

    Penumpukan lebih lanjut dihilangkan

  • replayedbooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • oneOf 2object
  • proof_idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • domain_idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • native_domain_idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • mailbox_idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • mailbox_addressstringwajib

    format: "email"

    Penumpukan lebih lanjut dihilangkan

  • transactional_send_intent_idstring

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • marketing_send_intent_idstring

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • transactional_subjectstringwajib

    Penumpukan lebih lanjut dihilangkan

  • marketing_subjectstringwajib

    Penumpukan lebih lanjut dihilangkan

  • phasestringwajib

    enum: "sending", "receiving", "received", "checked", "failed"

    Penumpukan lebih lanjut dihilangkan

  • send_completebooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • transactional_receivedbooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • marketing_receivedbooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • receive_completebooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • agent_check_completebooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • completebooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • error_codestring

    Penumpukan lebih lanjut dihilangkan

  • replayedbooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • oneOf 3null
  • overall_readybooleanwajib
  • production_readybooleanwajib
  • completedbooleanwajib
  • pendingbooleanwajib
  • next_actionstringwajib

    enum: "choose_agent", "provision_hosted_mailbox", "send_aha_1", "wait_for_aha_1", "offer_custom_domain", "review_domain_bundle", "provision_domain_bundle", "wait_for_dns_records", "ask_computer_use_permission", "configure_dns_with_computer_use", "present_manual_dns_instructions", "wait_for_dns_propagation", "send_aha_2", "wait_for_aha_2", "create_starter_mailbox", "run_starter_proof", "wait_for_starter_proof", "collect_business_context", "build_lifecycle_map", "review_growth_system", "connect_required_services", "explain_persistent_mcp", "offer_autopilot", "activate_autopilot", "validate", "complete", "open_dashboard"

  • action_requiredobjectwajib
  • typestringwajib
  • requiredbooleanwajib
  • actionstringwajib

    enum: "choose_agent", "provision_hosted_mailbox", "send_aha_1", "wait_for_aha_1", "offer_custom_domain", "review_domain_bundle", "provision_domain_bundle", "wait_for_dns_records", "ask_computer_use_permission", "configure_dns_with_computer_use", "present_manual_dns_instructions", "wait_for_dns_propagation", "send_aha_2", "wait_for_aha_2", "create_starter_mailbox", "run_starter_proof", "wait_for_starter_proof", "collect_business_context", "build_lifecycle_map", "review_growth_system", "connect_required_services", "explain_persistent_mcp", "offer_autopilot", "activate_autopilot", "validate", "complete", "open_dashboard"

  • urlstring | nullwajib

    format: "uri"

  • instructionsstring | nullwajib
  • secure_urlstring | nullwajib

    format: "uri"

  • mcp_urlstringwajib

    format: "uri"

  • dashboard_urlstringwajib

    format: "uri"

Contoh curl

curl --request PUT --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/onboarding/agent-state/plan' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "opportunities": [
    {}
  ]
}'
POST/v1/workspaces/{workspaceId}/onboarding/agent-state/apply

Catat artefak yang ditinjau dan disiapkan dari rencana peluang.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan wajib

application/json

  • valueobject

    Tidak ada properti tambahan

  • summaryobjectwajib
  • Properti tambahanNilai apa pun

Respons berhasil 200

Ringkasan implementasi dicatat.

application/json

  • valueobject
  • datatidak ditentukanwajib
  • allOf 1object
  • workspace_idstringwajib

    format: "uuid"

  • statusstringwajib

    enum: "choose_agent", "discovering", "planning", "implementing", "validating", "ready", "complete"

  • entry_surfacestring | nullwajib

    enum: "codex", "chatgpt", "claude", "grok", "other_agent", "browser", null

  • agent_statusstringwajib

    enum: "not_connected", "connecting", "connected", "browser_only"

  • agent_client_namestring | nullwajib
  • domain_choicestringwajib

    enum: "undecided", "company_domain", "no_domain"

  • company_domainstring | nullwajib
  • domain_chosen_atstring | nullwajib

    format: "date-time"

  • business_contextobjectwajib
  • Properti tambahanNilai apa pun
  • opportunity_planarraywajib
  • Setiap itemobject
  • Properti tambahanNilai apa pun
  • implementation_summaryobjectwajib
  • Properti tambahanNilai apa pun
  • validation_summaryobjectwajib
  • Properti tambahanNilai apa pun
  • journey_metadataobjectwajib
  • Properti tambahanNilai apa pun
  • context_reviewed_atstring | nullwajib

    format: "date-time"

  • plan_proposed_atstring | nullwajib

    format: "date-time"

  • plan_approved_atstring | nullwajib

    format: "date-time"

  • completed_atstring | nullwajib

    format: "date-time"

  • versionintegerwajib

    format: "int64" · minimum: 1

  • updated_atstringwajib

    format: "date-time"

  • allOf 2object
  • domain_discoverytidak ditentukanwajib
  • oneOf 1object
  • domainstringwajib
  • scan_statusstringwajib

    enum: "complete", "partial", "failed"

  • companyobjectwajib
  • domainstringwajib

    Penumpukan lebih lanjut dihilangkan

  • website_urlstring | nullwajib

    format: "uri"

    Penumpukan lebih lanjut dihilangkan

  • website_statusstringwajib

    enum: "available", "missing", "blocked", "error"

    Penumpukan lebih lanjut dihilangkan

  • company_namestringwajib

    Penumpukan lebih lanjut dihilangkan

  • summarystringwajib

    Penumpukan lebih lanjut dihilangkan

  • audiencestringwajib

    Penumpukan lebih lanjut dihilangkan

  • offeringsarraywajib

    Penumpukan lebih lanjut dihilangkan

  • logo_urlstring | nullwajib

    format: "uri"

    Penumpukan lebih lanjut dihilangkan

  • favicon_urlstring | nullwajib

    format: "uri"

    Penumpukan lebih lanjut dihilangkan

  • visual_identityobjectwajib

    Penumpukan lebih lanjut dihilangkan

  • source_snapshotobjectwajib

    Penumpukan lebih lanjut dihilangkan

  • dns_signalsarraywajib
  • Setiap itemobject

    Penumpukan lebih lanjut dihilangkan

  • dns_providertidak ditentukanwajib
  • oneOf 1object

    Tidak ada properti tambahan

    Penumpukan lebih lanjut dihilangkan

  • oneOf 2null

    Penumpukan lebih lanjut dihilangkan

  • provider_detectionsarraywajib
  • Setiap itemobject

    Penumpukan lebih lanjut dihilangkan

  • capability_summaryarraywajib
  • Setiap itemobject

    Penumpukan lebih lanjut dihilangkan

  • recommended_connectionsarraywajib
  • Setiap itemobject

    Tidak ada properti tambahan

    Penumpukan lebih lanjut dihilangkan

  • connection_planarraywajib
  • Setiap itemobject

    Tidak ada properti tambahan

    Penumpukan lebih lanjut dihilangkan

  • limitationsarraywajib
  • Setiap itemstring

    Penumpukan lebih lanjut dihilangkan

  • scanned_atstringwajib

    format: "date-time"

  • confirmed_atstring | nullwajib

    format: "date-time"

  • oneOf 2null
  • recommended_connectionsarraywajib
  • Setiap itemobject

    Tidak ada properti tambahan

  • keystringwajib
  • namestringwajib
  • categorystringwajib

    enum: "email", "customer", "product", "work", "data"

  • prioritystringwajib

    enum: "required", "recommended"

  • reasonstringwajib
  • sourcestringwajib

    enum: "dns", "business_context", "opportunity_plan", "banger_recommendation"

  • setup_modestringwajib

    enum: "oauth", "secure_credentials"

  • availablebooleanwajib
  • provider_keystring
  • evidencearraywajib
  • Setiap itemobject

    Penumpukan lebih lanjut dihilangkan

  • domain_bundleobject | nullwajib
  • Properti tambahanNilai apa pun
  • growthobjectwajib
  • Properti tambahanNilai apa pun
  • activationobjectwajib
  • modestringwajib

    enum: "hosted", "company_domain", "starter"

  • statusstringwajib

    enum: "hosted_mailbox_required", "hosted_mailbox_proving", "hosted_mailbox_ready", "needs_context", "needs_provisioning", "provisioning", "dns_required", "ready_for_proof", "proving", "activated", "starter_required", "starter_proving", "starter_ready"

  • domainstring | nullwajib
  • sending_domain_idstring | nullwajib

    format: "uuid"

  • mailbox_idstring | nullwajib

    format: "uuid"

  • mailbox_addressstring | nullwajib

    format: "email"

  • exact_dns_recordsarraywajib
  • Setiap itemobject

    Tidak ada properti tambahan

  • idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • lane_idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • providerstringwajib

    enum: "banger", "resend"

    Penumpukan lebih lanjut dihilangkan

  • purposestringwajib

    Penumpukan lebih lanjut dihilangkan

  • typestringwajib

    enum: "TXT", "MX", "CNAME"

    Penumpukan lebih lanjut dihilangkan

  • namestringwajib

    Penumpukan lebih lanjut dihilangkan

  • valuestringwajib

    Penumpukan lebih lanjut dihilangkan

  • priorityinteger | nullwajib

    Penumpukan lebih lanjut dihilangkan

  • requiredbooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • statusstringwajib

    enum: "pending", "verified", "error"

    Penumpukan lebih lanjut dihilangkan

  • provider_statusstringwajib

    enum: "pending", "verified", "error", "not_applicable"

    Penumpukan lebih lanjut dihilangkan

  • first_observed_atstring | nullwajib

    format: "date-time"

    Penumpukan lebih lanjut dihilangkan

  • last_checked_atstring | nullwajib

    format: "date-time"

    Penumpukan lebih lanjut dihilangkan

  • errorobjectwajib

    Penumpukan lebih lanjut dihilangkan

  • provider_referencestring | nullwajib

    Penumpukan lebih lanjut dihilangkan

  • checkpointsarraywajib
  • Setiap itemobject
  • keystringwajib

    enum: "domain", "provider", "infrastructure", "dns", "mailbox", "product", "broadcast"

    Penumpukan lebih lanjut dihilangkan

  • labelstringwajib

    Penumpukan lebih lanjut dihilangkan

  • statusstringwajib

    enum: "pending", "working", "action_required", "verified"

    Penumpukan lebih lanjut dihilangkan

  • detailstringwajib

    Penumpukan lebih lanjut dihilangkan

  • lanesobjectwajib
  • mailboxobjectwajib
  • statusstringwajib

    enum: "pending", "working", "action_required", "verified"

    Penumpukan lebih lanjut dihilangkan

  • detailstringwajib

    Penumpukan lebih lanjut dihilangkan

  • transactionalobjectwajib
  • statusstringwajib

    enum: "pending", "working", "action_required", "verified"

    Penumpukan lebih lanjut dihilangkan

  • detailstringwajib

    Penumpukan lebih lanjut dihilangkan

  • marketingobjectwajib
  • statusstringwajib

    enum: "pending", "working", "action_required", "verified"

    Penumpukan lebih lanjut dihilangkan

  • detailstringwajib

    Penumpukan lebih lanjut dihilangkan

  • prooftidak ditentukanwajib
  • oneOf 1object
  • proof_idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • mailbox_idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • mailbox_addressstringwajib

    format: "email"

    Penumpukan lebih lanjut dihilangkan

  • command_idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • phasestringwajib

    enum: "sending", "sent", "received", "checked", "failed"

    Penumpukan lebih lanjut dihilangkan

  • send_completebooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • receive_completebooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • round_trip_check_completebooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • agent_check_completebooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • completebooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • expected_subjectstringwajib

    Penumpukan lebih lanjut dihilangkan

  • expected_body_textstringwajib

    Penumpukan lebih lanjut dihilangkan

  • received_message_idstring

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • received_thread_idstring

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • received_subjectstring

    Penumpukan lebih lanjut dihilangkan

  • received_body_textstring

    Penumpukan lebih lanjut dihilangkan

  • received_atstring

    format: "date-time"

    Penumpukan lebih lanjut dihilangkan

  • agent_labelstring

    Penumpukan lebih lanjut dihilangkan

  • agent_suggested_actionstring

    Penumpukan lebih lanjut dihilangkan

  • error_codestring

    Penumpukan lebih lanjut dihilangkan

  • replayedbooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • oneOf 2object
  • proof_idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • domain_idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • native_domain_idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • mailbox_idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • mailbox_addressstringwajib

    format: "email"

    Penumpukan lebih lanjut dihilangkan

  • transactional_send_intent_idstring

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • marketing_send_intent_idstring

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • transactional_subjectstringwajib

    Penumpukan lebih lanjut dihilangkan

  • marketing_subjectstringwajib

    Penumpukan lebih lanjut dihilangkan

  • phasestringwajib

    enum: "sending", "receiving", "received", "checked", "failed"

    Penumpukan lebih lanjut dihilangkan

  • send_completebooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • transactional_receivedbooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • marketing_receivedbooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • receive_completebooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • agent_check_completebooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • completebooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • error_codestring

    Penumpukan lebih lanjut dihilangkan

  • replayedbooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • oneOf 3null
  • overall_readybooleanwajib
  • production_readybooleanwajib
  • completedbooleanwajib
  • pendingbooleanwajib
  • next_actionstringwajib

    enum: "choose_agent", "provision_hosted_mailbox", "send_aha_1", "wait_for_aha_1", "offer_custom_domain", "review_domain_bundle", "provision_domain_bundle", "wait_for_dns_records", "ask_computer_use_permission", "configure_dns_with_computer_use", "present_manual_dns_instructions", "wait_for_dns_propagation", "send_aha_2", "wait_for_aha_2", "create_starter_mailbox", "run_starter_proof", "wait_for_starter_proof", "collect_business_context", "build_lifecycle_map", "review_growth_system", "connect_required_services", "explain_persistent_mcp", "offer_autopilot", "activate_autopilot", "validate", "complete", "open_dashboard"

  • action_requiredobjectwajib
  • typestringwajib
  • requiredbooleanwajib
  • actionstringwajib

    enum: "choose_agent", "provision_hosted_mailbox", "send_aha_1", "wait_for_aha_1", "offer_custom_domain", "review_domain_bundle", "provision_domain_bundle", "wait_for_dns_records", "ask_computer_use_permission", "configure_dns_with_computer_use", "present_manual_dns_instructions", "wait_for_dns_propagation", "send_aha_2", "wait_for_aha_2", "create_starter_mailbox", "run_starter_proof", "wait_for_starter_proof", "collect_business_context", "build_lifecycle_map", "review_growth_system", "connect_required_services", "explain_persistent_mcp", "offer_autopilot", "activate_autopilot", "validate", "complete", "open_dashboard"

  • urlstring | nullwajib

    format: "uri"

  • instructionsstring | nullwajib
  • secure_urlstring | nullwajib

    format: "uri"

  • mcp_urlstringwajib

    format: "uri"

  • dashboard_urlstringwajib

    format: "uri"

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/onboarding/agent-state/apply' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "summary": {}
}'
POST/v1/workspaces/{workspaceId}/onboarding/agent-state/plan/approve

Setujui peta peluang yang diusulkan sebelum agen menyiapkan perubahan sensitif.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Rencana peluang disetujui administrator ruang kerja terautentikasi.

application/json

  • valueobject
  • datatidak ditentukanwajib
  • allOf 1object
  • workspace_idstringwajib

    format: "uuid"

  • statusstringwajib

    enum: "choose_agent", "discovering", "planning", "implementing", "validating", "ready", "complete"

  • entry_surfacestring | nullwajib

    enum: "codex", "chatgpt", "claude", "grok", "other_agent", "browser", null

  • agent_statusstringwajib

    enum: "not_connected", "connecting", "connected", "browser_only"

  • agent_client_namestring | nullwajib
  • domain_choicestringwajib

    enum: "undecided", "company_domain", "no_domain"

  • company_domainstring | nullwajib
  • domain_chosen_atstring | nullwajib

    format: "date-time"

  • business_contextobjectwajib
  • Properti tambahanNilai apa pun
  • opportunity_planarraywajib
  • Setiap itemobject
  • Properti tambahanNilai apa pun
  • implementation_summaryobjectwajib
  • Properti tambahanNilai apa pun
  • validation_summaryobjectwajib
  • Properti tambahanNilai apa pun
  • journey_metadataobjectwajib
  • Properti tambahanNilai apa pun
  • context_reviewed_atstring | nullwajib

    format: "date-time"

  • plan_proposed_atstring | nullwajib

    format: "date-time"

  • plan_approved_atstring | nullwajib

    format: "date-time"

  • completed_atstring | nullwajib

    format: "date-time"

  • versionintegerwajib

    format: "int64" · minimum: 1

  • updated_atstringwajib

    format: "date-time"

  • allOf 2object
  • domain_discoverytidak ditentukanwajib
  • oneOf 1object
  • domainstringwajib
  • scan_statusstringwajib

    enum: "complete", "partial", "failed"

  • companyobjectwajib
  • domainstringwajib

    Penumpukan lebih lanjut dihilangkan

  • website_urlstring | nullwajib

    format: "uri"

    Penumpukan lebih lanjut dihilangkan

  • website_statusstringwajib

    enum: "available", "missing", "blocked", "error"

    Penumpukan lebih lanjut dihilangkan

  • company_namestringwajib

    Penumpukan lebih lanjut dihilangkan

  • summarystringwajib

    Penumpukan lebih lanjut dihilangkan

  • audiencestringwajib

    Penumpukan lebih lanjut dihilangkan

  • offeringsarraywajib

    Penumpukan lebih lanjut dihilangkan

  • logo_urlstring | nullwajib

    format: "uri"

    Penumpukan lebih lanjut dihilangkan

  • favicon_urlstring | nullwajib

    format: "uri"

    Penumpukan lebih lanjut dihilangkan

  • visual_identityobjectwajib

    Penumpukan lebih lanjut dihilangkan

  • source_snapshotobjectwajib

    Penumpukan lebih lanjut dihilangkan

  • dns_signalsarraywajib
  • Setiap itemobject

    Penumpukan lebih lanjut dihilangkan

  • dns_providertidak ditentukanwajib
  • oneOf 1object

    Tidak ada properti tambahan

    Penumpukan lebih lanjut dihilangkan

  • oneOf 2null

    Penumpukan lebih lanjut dihilangkan

  • provider_detectionsarraywajib
  • Setiap itemobject

    Penumpukan lebih lanjut dihilangkan

  • capability_summaryarraywajib
  • Setiap itemobject

    Penumpukan lebih lanjut dihilangkan

  • recommended_connectionsarraywajib
  • Setiap itemobject

    Tidak ada properti tambahan

    Penumpukan lebih lanjut dihilangkan

  • connection_planarraywajib
  • Setiap itemobject

    Tidak ada properti tambahan

    Penumpukan lebih lanjut dihilangkan

  • limitationsarraywajib
  • Setiap itemstring

    Penumpukan lebih lanjut dihilangkan

  • scanned_atstringwajib

    format: "date-time"

  • confirmed_atstring | nullwajib

    format: "date-time"

  • oneOf 2null
  • recommended_connectionsarraywajib
  • Setiap itemobject

    Tidak ada properti tambahan

  • keystringwajib
  • namestringwajib
  • categorystringwajib

    enum: "email", "customer", "product", "work", "data"

  • prioritystringwajib

    enum: "required", "recommended"

  • reasonstringwajib
  • sourcestringwajib

    enum: "dns", "business_context", "opportunity_plan", "banger_recommendation"

  • setup_modestringwajib

    enum: "oauth", "secure_credentials"

  • availablebooleanwajib
  • provider_keystring
  • evidencearraywajib
  • Setiap itemobject

    Penumpukan lebih lanjut dihilangkan

  • domain_bundleobject | nullwajib
  • Properti tambahanNilai apa pun
  • growthobjectwajib
  • Properti tambahanNilai apa pun
  • activationobjectwajib
  • modestringwajib

    enum: "hosted", "company_domain", "starter"

  • statusstringwajib

    enum: "hosted_mailbox_required", "hosted_mailbox_proving", "hosted_mailbox_ready", "needs_context", "needs_provisioning", "provisioning", "dns_required", "ready_for_proof", "proving", "activated", "starter_required", "starter_proving", "starter_ready"

  • domainstring | nullwajib
  • sending_domain_idstring | nullwajib

    format: "uuid"

  • mailbox_idstring | nullwajib

    format: "uuid"

  • mailbox_addressstring | nullwajib

    format: "email"

  • exact_dns_recordsarraywajib
  • Setiap itemobject

    Tidak ada properti tambahan

  • idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • lane_idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • providerstringwajib

    enum: "banger", "resend"

    Penumpukan lebih lanjut dihilangkan

  • purposestringwajib

    Penumpukan lebih lanjut dihilangkan

  • typestringwajib

    enum: "TXT", "MX", "CNAME"

    Penumpukan lebih lanjut dihilangkan

  • namestringwajib

    Penumpukan lebih lanjut dihilangkan

  • valuestringwajib

    Penumpukan lebih lanjut dihilangkan

  • priorityinteger | nullwajib

    Penumpukan lebih lanjut dihilangkan

  • requiredbooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • statusstringwajib

    enum: "pending", "verified", "error"

    Penumpukan lebih lanjut dihilangkan

  • provider_statusstringwajib

    enum: "pending", "verified", "error", "not_applicable"

    Penumpukan lebih lanjut dihilangkan

  • first_observed_atstring | nullwajib

    format: "date-time"

    Penumpukan lebih lanjut dihilangkan

  • last_checked_atstring | nullwajib

    format: "date-time"

    Penumpukan lebih lanjut dihilangkan

  • errorobjectwajib

    Penumpukan lebih lanjut dihilangkan

  • provider_referencestring | nullwajib

    Penumpukan lebih lanjut dihilangkan

  • checkpointsarraywajib
  • Setiap itemobject
  • keystringwajib

    enum: "domain", "provider", "infrastructure", "dns", "mailbox", "product", "broadcast"

    Penumpukan lebih lanjut dihilangkan

  • labelstringwajib

    Penumpukan lebih lanjut dihilangkan

  • statusstringwajib

    enum: "pending", "working", "action_required", "verified"

    Penumpukan lebih lanjut dihilangkan

  • detailstringwajib

    Penumpukan lebih lanjut dihilangkan

  • lanesobjectwajib
  • mailboxobjectwajib
  • statusstringwajib

    enum: "pending", "working", "action_required", "verified"

    Penumpukan lebih lanjut dihilangkan

  • detailstringwajib

    Penumpukan lebih lanjut dihilangkan

  • transactionalobjectwajib
  • statusstringwajib

    enum: "pending", "working", "action_required", "verified"

    Penumpukan lebih lanjut dihilangkan

  • detailstringwajib

    Penumpukan lebih lanjut dihilangkan

  • marketingobjectwajib
  • statusstringwajib

    enum: "pending", "working", "action_required", "verified"

    Penumpukan lebih lanjut dihilangkan

  • detailstringwajib

    Penumpukan lebih lanjut dihilangkan

  • prooftidak ditentukanwajib
  • oneOf 1object
  • proof_idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • mailbox_idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • mailbox_addressstringwajib

    format: "email"

    Penumpukan lebih lanjut dihilangkan

  • command_idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • phasestringwajib

    enum: "sending", "sent", "received", "checked", "failed"

    Penumpukan lebih lanjut dihilangkan

  • send_completebooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • receive_completebooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • round_trip_check_completebooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • agent_check_completebooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • completebooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • expected_subjectstringwajib

    Penumpukan lebih lanjut dihilangkan

  • expected_body_textstringwajib

    Penumpukan lebih lanjut dihilangkan

  • received_message_idstring

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • received_thread_idstring

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • received_subjectstring

    Penumpukan lebih lanjut dihilangkan

  • received_body_textstring

    Penumpukan lebih lanjut dihilangkan

  • received_atstring

    format: "date-time"

    Penumpukan lebih lanjut dihilangkan

  • agent_labelstring

    Penumpukan lebih lanjut dihilangkan

  • agent_suggested_actionstring

    Penumpukan lebih lanjut dihilangkan

  • error_codestring

    Penumpukan lebih lanjut dihilangkan

  • replayedbooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • oneOf 2object
  • proof_idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • domain_idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • native_domain_idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • mailbox_idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • mailbox_addressstringwajib

    format: "email"

    Penumpukan lebih lanjut dihilangkan

  • transactional_send_intent_idstring

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • marketing_send_intent_idstring

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • transactional_subjectstringwajib

    Penumpukan lebih lanjut dihilangkan

  • marketing_subjectstringwajib

    Penumpukan lebih lanjut dihilangkan

  • phasestringwajib

    enum: "sending", "receiving", "received", "checked", "failed"

    Penumpukan lebih lanjut dihilangkan

  • send_completebooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • transactional_receivedbooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • marketing_receivedbooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • receive_completebooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • agent_check_completebooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • completebooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • error_codestring

    Penumpukan lebih lanjut dihilangkan

  • replayedbooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • oneOf 3null
  • overall_readybooleanwajib
  • production_readybooleanwajib
  • completedbooleanwajib
  • pendingbooleanwajib
  • next_actionstringwajib

    enum: "choose_agent", "provision_hosted_mailbox", "send_aha_1", "wait_for_aha_1", "offer_custom_domain", "review_domain_bundle", "provision_domain_bundle", "wait_for_dns_records", "ask_computer_use_permission", "configure_dns_with_computer_use", "present_manual_dns_instructions", "wait_for_dns_propagation", "send_aha_2", "wait_for_aha_2", "create_starter_mailbox", "run_starter_proof", "wait_for_starter_proof", "collect_business_context", "build_lifecycle_map", "review_growth_system", "connect_required_services", "explain_persistent_mcp", "offer_autopilot", "activate_autopilot", "validate", "complete", "open_dashboard"

  • action_requiredobjectwajib
  • typestringwajib
  • requiredbooleanwajib
  • actionstringwajib

    enum: "choose_agent", "provision_hosted_mailbox", "send_aha_1", "wait_for_aha_1", "offer_custom_domain", "review_domain_bundle", "provision_domain_bundle", "wait_for_dns_records", "ask_computer_use_permission", "configure_dns_with_computer_use", "present_manual_dns_instructions", "wait_for_dns_propagation", "send_aha_2", "wait_for_aha_2", "create_starter_mailbox", "run_starter_proof", "wait_for_starter_proof", "collect_business_context", "build_lifecycle_map", "review_growth_system", "connect_required_services", "explain_persistent_mcp", "offer_autopilot", "activate_autopilot", "validate", "complete", "open_dashboard"

  • urlstring | nullwajib

    format: "uri"

  • instructionsstring | nullwajib
  • secure_urlstring | nullwajib

    format: "uri"

  • mcp_urlstringwajib

    format: "uri"

  • dashboard_urlstringwajib

    format: "uri"

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/onboarding/agent-state/plan/approve' \
  --header "Authorization: Bearer $BANGER_API_KEY"
POST/v1/workspaces/{workspaceId}/onboarding/agent-state/validate

Turunkan validasi aktivasi deterministis dari status bukti milik Banger.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan wajib

application/json

  • valueobject

    Tidak ada properti tambahan

  • summaryobject
  • Properti tambahanNilai apa pun

Respons berhasil 200

Hasil validasi dicatat.

application/json

  • valueobject
  • datatidak ditentukanwajib
  • allOf 1object
  • workspace_idstringwajib

    format: "uuid"

  • statusstringwajib

    enum: "choose_agent", "discovering", "planning", "implementing", "validating", "ready", "complete"

  • entry_surfacestring | nullwajib

    enum: "codex", "chatgpt", "claude", "grok", "other_agent", "browser", null

  • agent_statusstringwajib

    enum: "not_connected", "connecting", "connected", "browser_only"

  • agent_client_namestring | nullwajib
  • domain_choicestringwajib

    enum: "undecided", "company_domain", "no_domain"

  • company_domainstring | nullwajib
  • domain_chosen_atstring | nullwajib

    format: "date-time"

  • business_contextobjectwajib
  • Properti tambahanNilai apa pun
  • opportunity_planarraywajib
  • Setiap itemobject
  • Properti tambahanNilai apa pun
  • implementation_summaryobjectwajib
  • Properti tambahanNilai apa pun
  • validation_summaryobjectwajib
  • Properti tambahanNilai apa pun
  • journey_metadataobjectwajib
  • Properti tambahanNilai apa pun
  • context_reviewed_atstring | nullwajib

    format: "date-time"

  • plan_proposed_atstring | nullwajib

    format: "date-time"

  • plan_approved_atstring | nullwajib

    format: "date-time"

  • completed_atstring | nullwajib

    format: "date-time"

  • versionintegerwajib

    format: "int64" · minimum: 1

  • updated_atstringwajib

    format: "date-time"

  • allOf 2object
  • domain_discoverytidak ditentukanwajib
  • oneOf 1object
  • domainstringwajib
  • scan_statusstringwajib

    enum: "complete", "partial", "failed"

  • companyobjectwajib
  • domainstringwajib

    Penumpukan lebih lanjut dihilangkan

  • website_urlstring | nullwajib

    format: "uri"

    Penumpukan lebih lanjut dihilangkan

  • website_statusstringwajib

    enum: "available", "missing", "blocked", "error"

    Penumpukan lebih lanjut dihilangkan

  • company_namestringwajib

    Penumpukan lebih lanjut dihilangkan

  • summarystringwajib

    Penumpukan lebih lanjut dihilangkan

  • audiencestringwajib

    Penumpukan lebih lanjut dihilangkan

  • offeringsarraywajib

    Penumpukan lebih lanjut dihilangkan

  • logo_urlstring | nullwajib

    format: "uri"

    Penumpukan lebih lanjut dihilangkan

  • favicon_urlstring | nullwajib

    format: "uri"

    Penumpukan lebih lanjut dihilangkan

  • visual_identityobjectwajib

    Penumpukan lebih lanjut dihilangkan

  • source_snapshotobjectwajib

    Penumpukan lebih lanjut dihilangkan

  • dns_signalsarraywajib
  • Setiap itemobject

    Penumpukan lebih lanjut dihilangkan

  • dns_providertidak ditentukanwajib
  • oneOf 1object

    Tidak ada properti tambahan

    Penumpukan lebih lanjut dihilangkan

  • oneOf 2null

    Penumpukan lebih lanjut dihilangkan

  • provider_detectionsarraywajib
  • Setiap itemobject

    Penumpukan lebih lanjut dihilangkan

  • capability_summaryarraywajib
  • Setiap itemobject

    Penumpukan lebih lanjut dihilangkan

  • recommended_connectionsarraywajib
  • Setiap itemobject

    Tidak ada properti tambahan

    Penumpukan lebih lanjut dihilangkan

  • connection_planarraywajib
  • Setiap itemobject

    Tidak ada properti tambahan

    Penumpukan lebih lanjut dihilangkan

  • limitationsarraywajib
  • Setiap itemstring

    Penumpukan lebih lanjut dihilangkan

  • scanned_atstringwajib

    format: "date-time"

  • confirmed_atstring | nullwajib

    format: "date-time"

  • oneOf 2null
  • recommended_connectionsarraywajib
  • Setiap itemobject

    Tidak ada properti tambahan

  • keystringwajib
  • namestringwajib
  • categorystringwajib

    enum: "email", "customer", "product", "work", "data"

  • prioritystringwajib

    enum: "required", "recommended"

  • reasonstringwajib
  • sourcestringwajib

    enum: "dns", "business_context", "opportunity_plan", "banger_recommendation"

  • setup_modestringwajib

    enum: "oauth", "secure_credentials"

  • availablebooleanwajib
  • provider_keystring
  • evidencearraywajib
  • Setiap itemobject

    Penumpukan lebih lanjut dihilangkan

  • domain_bundleobject | nullwajib
  • Properti tambahanNilai apa pun
  • growthobjectwajib
  • Properti tambahanNilai apa pun
  • activationobjectwajib
  • modestringwajib

    enum: "hosted", "company_domain", "starter"

  • statusstringwajib

    enum: "hosted_mailbox_required", "hosted_mailbox_proving", "hosted_mailbox_ready", "needs_context", "needs_provisioning", "provisioning", "dns_required", "ready_for_proof", "proving", "activated", "starter_required", "starter_proving", "starter_ready"

  • domainstring | nullwajib
  • sending_domain_idstring | nullwajib

    format: "uuid"

  • mailbox_idstring | nullwajib

    format: "uuid"

  • mailbox_addressstring | nullwajib

    format: "email"

  • exact_dns_recordsarraywajib
  • Setiap itemobject

    Tidak ada properti tambahan

  • idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • lane_idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • providerstringwajib

    enum: "banger", "resend"

    Penumpukan lebih lanjut dihilangkan

  • purposestringwajib

    Penumpukan lebih lanjut dihilangkan

  • typestringwajib

    enum: "TXT", "MX", "CNAME"

    Penumpukan lebih lanjut dihilangkan

  • namestringwajib

    Penumpukan lebih lanjut dihilangkan

  • valuestringwajib

    Penumpukan lebih lanjut dihilangkan

  • priorityinteger | nullwajib

    Penumpukan lebih lanjut dihilangkan

  • requiredbooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • statusstringwajib

    enum: "pending", "verified", "error"

    Penumpukan lebih lanjut dihilangkan

  • provider_statusstringwajib

    enum: "pending", "verified", "error", "not_applicable"

    Penumpukan lebih lanjut dihilangkan

  • first_observed_atstring | nullwajib

    format: "date-time"

    Penumpukan lebih lanjut dihilangkan

  • last_checked_atstring | nullwajib

    format: "date-time"

    Penumpukan lebih lanjut dihilangkan

  • errorobjectwajib

    Penumpukan lebih lanjut dihilangkan

  • provider_referencestring | nullwajib

    Penumpukan lebih lanjut dihilangkan

  • checkpointsarraywajib
  • Setiap itemobject
  • keystringwajib

    enum: "domain", "provider", "infrastructure", "dns", "mailbox", "product", "broadcast"

    Penumpukan lebih lanjut dihilangkan

  • labelstringwajib

    Penumpukan lebih lanjut dihilangkan

  • statusstringwajib

    enum: "pending", "working", "action_required", "verified"

    Penumpukan lebih lanjut dihilangkan

  • detailstringwajib

    Penumpukan lebih lanjut dihilangkan

  • lanesobjectwajib
  • mailboxobjectwajib
  • statusstringwajib

    enum: "pending", "working", "action_required", "verified"

    Penumpukan lebih lanjut dihilangkan

  • detailstringwajib

    Penumpukan lebih lanjut dihilangkan

  • transactionalobjectwajib
  • statusstringwajib

    enum: "pending", "working", "action_required", "verified"

    Penumpukan lebih lanjut dihilangkan

  • detailstringwajib

    Penumpukan lebih lanjut dihilangkan

  • marketingobjectwajib
  • statusstringwajib

    enum: "pending", "working", "action_required", "verified"

    Penumpukan lebih lanjut dihilangkan

  • detailstringwajib

    Penumpukan lebih lanjut dihilangkan

  • prooftidak ditentukanwajib
  • oneOf 1object
  • proof_idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • mailbox_idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • mailbox_addressstringwajib

    format: "email"

    Penumpukan lebih lanjut dihilangkan

  • command_idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • phasestringwajib

    enum: "sending", "sent", "received", "checked", "failed"

    Penumpukan lebih lanjut dihilangkan

  • send_completebooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • receive_completebooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • round_trip_check_completebooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • agent_check_completebooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • completebooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • expected_subjectstringwajib

    Penumpukan lebih lanjut dihilangkan

  • expected_body_textstringwajib

    Penumpukan lebih lanjut dihilangkan

  • received_message_idstring

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • received_thread_idstring

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • received_subjectstring

    Penumpukan lebih lanjut dihilangkan

  • received_body_textstring

    Penumpukan lebih lanjut dihilangkan

  • received_atstring

    format: "date-time"

    Penumpukan lebih lanjut dihilangkan

  • agent_labelstring

    Penumpukan lebih lanjut dihilangkan

  • agent_suggested_actionstring

    Penumpukan lebih lanjut dihilangkan

  • error_codestring

    Penumpukan lebih lanjut dihilangkan

  • replayedbooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • oneOf 2object
  • proof_idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • domain_idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • native_domain_idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • mailbox_idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • mailbox_addressstringwajib

    format: "email"

    Penumpukan lebih lanjut dihilangkan

  • transactional_send_intent_idstring

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • marketing_send_intent_idstring

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • transactional_subjectstringwajib

    Penumpukan lebih lanjut dihilangkan

  • marketing_subjectstringwajib

    Penumpukan lebih lanjut dihilangkan

  • phasestringwajib

    enum: "sending", "receiving", "received", "checked", "failed"

    Penumpukan lebih lanjut dihilangkan

  • send_completebooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • transactional_receivedbooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • marketing_receivedbooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • receive_completebooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • agent_check_completebooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • completebooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • error_codestring

    Penumpukan lebih lanjut dihilangkan

  • replayedbooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • oneOf 3null
  • overall_readybooleanwajib
  • production_readybooleanwajib
  • completedbooleanwajib
  • pendingbooleanwajib
  • next_actionstringwajib

    enum: "choose_agent", "provision_hosted_mailbox", "send_aha_1", "wait_for_aha_1", "offer_custom_domain", "review_domain_bundle", "provision_domain_bundle", "wait_for_dns_records", "ask_computer_use_permission", "configure_dns_with_computer_use", "present_manual_dns_instructions", "wait_for_dns_propagation", "send_aha_2", "wait_for_aha_2", "create_starter_mailbox", "run_starter_proof", "wait_for_starter_proof", "collect_business_context", "build_lifecycle_map", "review_growth_system", "connect_required_services", "explain_persistent_mcp", "offer_autopilot", "activate_autopilot", "validate", "complete", "open_dashboard"

  • action_requiredobjectwajib
  • typestringwajib
  • requiredbooleanwajib
  • actionstringwajib

    enum: "choose_agent", "provision_hosted_mailbox", "send_aha_1", "wait_for_aha_1", "offer_custom_domain", "review_domain_bundle", "provision_domain_bundle", "wait_for_dns_records", "ask_computer_use_permission", "configure_dns_with_computer_use", "present_manual_dns_instructions", "wait_for_dns_propagation", "send_aha_2", "wait_for_aha_2", "create_starter_mailbox", "run_starter_proof", "wait_for_starter_proof", "collect_business_context", "build_lifecycle_map", "review_growth_system", "connect_required_services", "explain_persistent_mcp", "offer_autopilot", "activate_autopilot", "validate", "complete", "open_dashboard"

  • urlstring | nullwajib

    format: "uri"

  • instructionsstring | nullwajib
  • secure_urlstring | nullwajib

    format: "uri"

  • mcp_urlstringwajib

    format: "uri"

  • dashboard_urlstringwajib

    format: "uri"

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/onboarding/agent-state/validate' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "summary": {}
}'
POST/v1/workspaces/{workspaceId}/onboarding/agent-state/complete

Selesaikan onboarding setelah validasi deterministis lolos.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Onboarding selesai.

application/json

  • valueobject
  • datatidak ditentukanwajib
  • allOf 1object
  • workspace_idstringwajib

    format: "uuid"

  • statusstringwajib

    enum: "choose_agent", "discovering", "planning", "implementing", "validating", "ready", "complete"

  • entry_surfacestring | nullwajib

    enum: "codex", "chatgpt", "claude", "grok", "other_agent", "browser", null

  • agent_statusstringwajib

    enum: "not_connected", "connecting", "connected", "browser_only"

  • agent_client_namestring | nullwajib
  • domain_choicestringwajib

    enum: "undecided", "company_domain", "no_domain"

  • company_domainstring | nullwajib
  • domain_chosen_atstring | nullwajib

    format: "date-time"

  • business_contextobjectwajib
  • Properti tambahanNilai apa pun
  • opportunity_planarraywajib
  • Setiap itemobject
  • Properti tambahanNilai apa pun
  • implementation_summaryobjectwajib
  • Properti tambahanNilai apa pun
  • validation_summaryobjectwajib
  • Properti tambahanNilai apa pun
  • journey_metadataobjectwajib
  • Properti tambahanNilai apa pun
  • context_reviewed_atstring | nullwajib

    format: "date-time"

  • plan_proposed_atstring | nullwajib

    format: "date-time"

  • plan_approved_atstring | nullwajib

    format: "date-time"

  • completed_atstring | nullwajib

    format: "date-time"

  • versionintegerwajib

    format: "int64" · minimum: 1

  • updated_atstringwajib

    format: "date-time"

  • allOf 2object
  • domain_discoverytidak ditentukanwajib
  • oneOf 1object
  • domainstringwajib
  • scan_statusstringwajib

    enum: "complete", "partial", "failed"

  • companyobjectwajib
  • domainstringwajib

    Penumpukan lebih lanjut dihilangkan

  • website_urlstring | nullwajib

    format: "uri"

    Penumpukan lebih lanjut dihilangkan

  • website_statusstringwajib

    enum: "available", "missing", "blocked", "error"

    Penumpukan lebih lanjut dihilangkan

  • company_namestringwajib

    Penumpukan lebih lanjut dihilangkan

  • summarystringwajib

    Penumpukan lebih lanjut dihilangkan

  • audiencestringwajib

    Penumpukan lebih lanjut dihilangkan

  • offeringsarraywajib

    Penumpukan lebih lanjut dihilangkan

  • logo_urlstring | nullwajib

    format: "uri"

    Penumpukan lebih lanjut dihilangkan

  • favicon_urlstring | nullwajib

    format: "uri"

    Penumpukan lebih lanjut dihilangkan

  • visual_identityobjectwajib

    Penumpukan lebih lanjut dihilangkan

  • source_snapshotobjectwajib

    Penumpukan lebih lanjut dihilangkan

  • dns_signalsarraywajib
  • Setiap itemobject

    Penumpukan lebih lanjut dihilangkan

  • dns_providertidak ditentukanwajib
  • oneOf 1object

    Tidak ada properti tambahan

    Penumpukan lebih lanjut dihilangkan

  • oneOf 2null

    Penumpukan lebih lanjut dihilangkan

  • provider_detectionsarraywajib
  • Setiap itemobject

    Penumpukan lebih lanjut dihilangkan

  • capability_summaryarraywajib
  • Setiap itemobject

    Penumpukan lebih lanjut dihilangkan

  • recommended_connectionsarraywajib
  • Setiap itemobject

    Tidak ada properti tambahan

    Penumpukan lebih lanjut dihilangkan

  • connection_planarraywajib
  • Setiap itemobject

    Tidak ada properti tambahan

    Penumpukan lebih lanjut dihilangkan

  • limitationsarraywajib
  • Setiap itemstring

    Penumpukan lebih lanjut dihilangkan

  • scanned_atstringwajib

    format: "date-time"

  • confirmed_atstring | nullwajib

    format: "date-time"

  • oneOf 2null
  • recommended_connectionsarraywajib
  • Setiap itemobject

    Tidak ada properti tambahan

  • keystringwajib
  • namestringwajib
  • categorystringwajib

    enum: "email", "customer", "product", "work", "data"

  • prioritystringwajib

    enum: "required", "recommended"

  • reasonstringwajib
  • sourcestringwajib

    enum: "dns", "business_context", "opportunity_plan", "banger_recommendation"

  • setup_modestringwajib

    enum: "oauth", "secure_credentials"

  • availablebooleanwajib
  • provider_keystring
  • evidencearraywajib
  • Setiap itemobject

    Penumpukan lebih lanjut dihilangkan

  • domain_bundleobject | nullwajib
  • Properti tambahanNilai apa pun
  • growthobjectwajib
  • Properti tambahanNilai apa pun
  • activationobjectwajib
  • modestringwajib

    enum: "hosted", "company_domain", "starter"

  • statusstringwajib

    enum: "hosted_mailbox_required", "hosted_mailbox_proving", "hosted_mailbox_ready", "needs_context", "needs_provisioning", "provisioning", "dns_required", "ready_for_proof", "proving", "activated", "starter_required", "starter_proving", "starter_ready"

  • domainstring | nullwajib
  • sending_domain_idstring | nullwajib

    format: "uuid"

  • mailbox_idstring | nullwajib

    format: "uuid"

  • mailbox_addressstring | nullwajib

    format: "email"

  • exact_dns_recordsarraywajib
  • Setiap itemobject

    Tidak ada properti tambahan

  • idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • lane_idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • providerstringwajib

    enum: "banger", "resend"

    Penumpukan lebih lanjut dihilangkan

  • purposestringwajib

    Penumpukan lebih lanjut dihilangkan

  • typestringwajib

    enum: "TXT", "MX", "CNAME"

    Penumpukan lebih lanjut dihilangkan

  • namestringwajib

    Penumpukan lebih lanjut dihilangkan

  • valuestringwajib

    Penumpukan lebih lanjut dihilangkan

  • priorityinteger | nullwajib

    Penumpukan lebih lanjut dihilangkan

  • requiredbooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • statusstringwajib

    enum: "pending", "verified", "error"

    Penumpukan lebih lanjut dihilangkan

  • provider_statusstringwajib

    enum: "pending", "verified", "error", "not_applicable"

    Penumpukan lebih lanjut dihilangkan

  • first_observed_atstring | nullwajib

    format: "date-time"

    Penumpukan lebih lanjut dihilangkan

  • last_checked_atstring | nullwajib

    format: "date-time"

    Penumpukan lebih lanjut dihilangkan

  • errorobjectwajib

    Penumpukan lebih lanjut dihilangkan

  • provider_referencestring | nullwajib

    Penumpukan lebih lanjut dihilangkan

  • checkpointsarraywajib
  • Setiap itemobject
  • keystringwajib

    enum: "domain", "provider", "infrastructure", "dns", "mailbox", "product", "broadcast"

    Penumpukan lebih lanjut dihilangkan

  • labelstringwajib

    Penumpukan lebih lanjut dihilangkan

  • statusstringwajib

    enum: "pending", "working", "action_required", "verified"

    Penumpukan lebih lanjut dihilangkan

  • detailstringwajib

    Penumpukan lebih lanjut dihilangkan

  • lanesobjectwajib
  • mailboxobjectwajib
  • statusstringwajib

    enum: "pending", "working", "action_required", "verified"

    Penumpukan lebih lanjut dihilangkan

  • detailstringwajib

    Penumpukan lebih lanjut dihilangkan

  • transactionalobjectwajib
  • statusstringwajib

    enum: "pending", "working", "action_required", "verified"

    Penumpukan lebih lanjut dihilangkan

  • detailstringwajib

    Penumpukan lebih lanjut dihilangkan

  • marketingobjectwajib
  • statusstringwajib

    enum: "pending", "working", "action_required", "verified"

    Penumpukan lebih lanjut dihilangkan

  • detailstringwajib

    Penumpukan lebih lanjut dihilangkan

  • prooftidak ditentukanwajib
  • oneOf 1object
  • proof_idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • mailbox_idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • mailbox_addressstringwajib

    format: "email"

    Penumpukan lebih lanjut dihilangkan

  • command_idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • phasestringwajib

    enum: "sending", "sent", "received", "checked", "failed"

    Penumpukan lebih lanjut dihilangkan

  • send_completebooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • receive_completebooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • round_trip_check_completebooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • agent_check_completebooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • completebooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • expected_subjectstringwajib

    Penumpukan lebih lanjut dihilangkan

  • expected_body_textstringwajib

    Penumpukan lebih lanjut dihilangkan

  • received_message_idstring

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • received_thread_idstring

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • received_subjectstring

    Penumpukan lebih lanjut dihilangkan

  • received_body_textstring

    Penumpukan lebih lanjut dihilangkan

  • received_atstring

    format: "date-time"

    Penumpukan lebih lanjut dihilangkan

  • agent_labelstring

    Penumpukan lebih lanjut dihilangkan

  • agent_suggested_actionstring

    Penumpukan lebih lanjut dihilangkan

  • error_codestring

    Penumpukan lebih lanjut dihilangkan

  • replayedbooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • oneOf 2object
  • proof_idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • domain_idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • native_domain_idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • mailbox_idstringwajib

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • mailbox_addressstringwajib

    format: "email"

    Penumpukan lebih lanjut dihilangkan

  • transactional_send_intent_idstring

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • marketing_send_intent_idstring

    format: "uuid"

    Penumpukan lebih lanjut dihilangkan

  • transactional_subjectstringwajib

    Penumpukan lebih lanjut dihilangkan

  • marketing_subjectstringwajib

    Penumpukan lebih lanjut dihilangkan

  • phasestringwajib

    enum: "sending", "receiving", "received", "checked", "failed"

    Penumpukan lebih lanjut dihilangkan

  • send_completebooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • transactional_receivedbooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • marketing_receivedbooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • receive_completebooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • agent_check_completebooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • completebooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • error_codestring

    Penumpukan lebih lanjut dihilangkan

  • replayedbooleanwajib

    Penumpukan lebih lanjut dihilangkan

  • oneOf 3null
  • overall_readybooleanwajib
  • production_readybooleanwajib
  • completedbooleanwajib
  • pendingbooleanwajib
  • next_actionstringwajib

    enum: "choose_agent", "provision_hosted_mailbox", "send_aha_1", "wait_for_aha_1", "offer_custom_domain", "review_domain_bundle", "provision_domain_bundle", "wait_for_dns_records", "ask_computer_use_permission", "configure_dns_with_computer_use", "present_manual_dns_instructions", "wait_for_dns_propagation", "send_aha_2", "wait_for_aha_2", "create_starter_mailbox", "run_starter_proof", "wait_for_starter_proof", "collect_business_context", "build_lifecycle_map", "review_growth_system", "connect_required_services", "explain_persistent_mcp", "offer_autopilot", "activate_autopilot", "validate", "complete", "open_dashboard"

  • action_requiredobjectwajib
  • typestringwajib
  • requiredbooleanwajib
  • actionstringwajib

    enum: "choose_agent", "provision_hosted_mailbox", "send_aha_1", "wait_for_aha_1", "offer_custom_domain", "review_domain_bundle", "provision_domain_bundle", "wait_for_dns_records", "ask_computer_use_permission", "configure_dns_with_computer_use", "present_manual_dns_instructions", "wait_for_dns_propagation", "send_aha_2", "wait_for_aha_2", "create_starter_mailbox", "run_starter_proof", "wait_for_starter_proof", "collect_business_context", "build_lifecycle_map", "review_growth_system", "connect_required_services", "explain_persistent_mcp", "offer_autopilot", "activate_autopilot", "validate", "complete", "open_dashboard"

  • urlstring | nullwajib

    format: "uri"

  • instructionsstring | nullwajib
  • secure_urlstring | nullwajib

    format: "uri"

  • mcp_urlstringwajib

    format: "uri"

  • dashboard_urlstringwajib

    format: "uri"

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/onboarding/agent-state/complete' \
  --header "Authorization: Bearer $BANGER_API_KEY"
GET/v1/workspaces/{workspaceId}/onboarding/starter-proof

Baca status persisten proses kirim-terima alamat awal.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

mailbox_id
query · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Status bukti saat ini.

application/json

  • valueobject
  • dataobjectwajib
  • proof_idstringwajib

    format: "uuid"

  • mailbox_idstringwajib

    format: "uuid"

  • mailbox_addressstringwajib

    format: "email"

  • command_idstringwajib

    format: "uuid"

  • phasestringwajib

    enum: "sending", "sent", "received", "checked", "failed"

  • send_completebooleanwajib
  • receive_completebooleanwajib
  • round_trip_check_completebooleanwajib
  • agent_check_completebooleanwajib
  • completebooleanwajib
  • expected_subjectstringwajib
  • expected_body_textstringwajib
  • received_message_idstring

    format: "uuid"

  • received_thread_idstring

    format: "uuid"

  • received_subjectstring
  • received_body_textstring
  • received_atstring

    format: "date-time"

  • agent_labelstring
  • agent_suggested_actionstring
  • error_codestring
  • replayedbooleanwajib

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/onboarding/starter-proof?mailbox_id=00000000-0000-4000-8000-000000000001' \
  --header "Authorization: Bearer $BANGER_API_KEY"
POST/v1/workspaces/{workspaceId}/onboarding/starter-proof

Mulai atau lanjutkan bukti kirim-terima nyata untuk alamat awal.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan wajib

application/json

  • valueobject

    Tidak ada properti tambahan

  • mailbox_idstringwajib

    format: "uuid"

Respons berhasil 200

Bukti yang ada dilanjutkan.

application/json

  • valueobject
  • dataobjectwajib
  • proof_idstringwajib

    format: "uuid"

  • mailbox_idstringwajib

    format: "uuid"

  • mailbox_addressstringwajib

    format: "email"

  • command_idstringwajib

    format: "uuid"

  • phasestringwajib

    enum: "sending", "sent", "received", "checked", "failed"

  • send_completebooleanwajib
  • receive_completebooleanwajib
  • round_trip_check_completebooleanwajib
  • agent_check_completebooleanwajib
  • completebooleanwajib
  • expected_subjectstringwajib
  • expected_body_textstringwajib
  • received_message_idstring

    format: "uuid"

  • received_thread_idstring

    format: "uuid"

  • received_subjectstring
  • received_body_textstring
  • received_atstring

    format: "date-time"

  • agent_labelstring
  • agent_suggested_actionstring
  • error_codestring
  • replayedbooleanwajib

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/onboarding/starter-proof' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "mailbox_id": "00000000-0000-4000-8000-000000000001"
}'
GET/v1/workspaces/{workspaceId}/onboarding/domain-proof

Baca status persisten pemeriksaan infrastruktur domain.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Status bukti saat ini.

application/json

  • valueobject
  • dataobjectwajib
  • proof_idstringwajib

    format: "uuid"

  • domain_idstringwajib

    format: "uuid"

  • native_domain_idstringwajib

    format: "uuid"

  • mailbox_idstringwajib

    format: "uuid"

  • mailbox_addressstringwajib

    format: "email"

  • transactional_send_intent_idstring

    format: "uuid"

  • marketing_send_intent_idstring

    format: "uuid"

  • transactional_subjectstringwajib
  • marketing_subjectstringwajib
  • phasestringwajib

    enum: "sending", "receiving", "received", "checked", "failed"

  • send_completebooleanwajib
  • transactional_receivedbooleanwajib
  • marketing_receivedbooleanwajib
  • receive_completebooleanwajib
  • agent_check_completebooleanwajib
  • completebooleanwajib
  • error_codestring
  • replayedbooleanwajib

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/onboarding/domain-proof' \
  --header "Authorization: Bearer $BANGER_API_KEY"
POST/v1/workspaces/{workspaceId}/onboarding/domain-proof

Mulai atau lanjutkan dua pemeriksaan kirim-terima nyata untuk infrastruktur Banger terverifikasi.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan wajib

application/json

  • valueobject

    Tidak ada properti tambahan

  • native_domain_idstringwajib

    format: "uuid"

Respons berhasil 200

Bukti yang ada dilanjutkan.

application/json

  • valueobject
  • dataobjectwajib
  • proof_idstringwajib

    format: "uuid"

  • domain_idstringwajib

    format: "uuid"

  • native_domain_idstringwajib

    format: "uuid"

  • mailbox_idstringwajib

    format: "uuid"

  • mailbox_addressstringwajib

    format: "email"

  • transactional_send_intent_idstring

    format: "uuid"

  • marketing_send_intent_idstring

    format: "uuid"

  • transactional_subjectstringwajib
  • marketing_subjectstringwajib
  • phasestringwajib

    enum: "sending", "receiving", "received", "checked", "failed"

  • send_completebooleanwajib
  • transactional_receivedbooleanwajib
  • marketing_receivedbooleanwajib
  • receive_completebooleanwajib
  • agent_check_completebooleanwajib
  • completebooleanwajib
  • error_codestring
  • replayedbooleanwajib

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/onboarding/domain-proof' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "native_domain_id": "00000000-0000-4000-8000-000000000001"
}'
PUT/v1/workspaces/{workspaceId}/onboarding/goal

selectActivationGoal

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan wajib

application/json

  • valueobject

    Tidak ada properti tambahan

  • goalstringwajib

    enum: "work_inbox", "product_email", "campaign", "company_workflow"

Respons berhasil 200

Hasil pertama dipilih dan eksekusi terpandu dapat terbuka di shell produk.

application/json

  • valueobject
  • dataobjectwajib
  • goalstringwajib

    enum: "work_inbox", "product_email", "campaign", "company_workflow"

Contoh curl

curl --request PUT --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/onboarding/goal' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "goal": "work_inbox"
}'
GET/v1/workspaces/{workspaceId}/onboarding/discovery

getWorkspaceDomainDiscovery

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Penemuan perusahaan dan susunan email saat ini.

application/json

  • valueobject
  • dataobjectwajib
  • domainstringwajib
  • scan_statusstringwajib

    enum: "complete", "partial", "failed"

  • companyobjectwajib
  • domainstringwajib
  • website_urlstring | nullwajib

    format: "uri"

  • website_statusstringwajib

    enum: "available", "missing", "blocked", "error"

  • company_namestringwajib
  • summarystringwajib
  • audiencestringwajib
  • offeringsarraywajib
  • Setiap itemstring
  • logo_urlstring | nullwajib

    format: "uri"

  • favicon_urlstring | nullwajib

    format: "uri"

  • visual_identityobjectwajib
  • colorsarraywajib

    maxItems: 6

  • Setiap itemstring
  • fontsarraywajib

    maxItems: 6

  • Setiap itemstring
  • tonearraywajib

    maxItems: 6

  • Setiap itemstring
  • source_confidencestringwajib

    enum: "high", "medium", "low"

  • hero_image_urlstring

    format: "uri"

  • palettearraywajib

    maxItems: 6

  • Setiap itemobject

    Tidak ada properti tambahan

  • valuestringwajib

    Penumpukan lebih lanjut dihilangkan

  • rolestringwajib

    enum: "primary", "accent", "background", "surface", "text", "other"

    Penumpukan lebih lanjut dihilangkan

  • namestringwajib

    Penumpukan lebih lanjut dihilangkan

  • typographyarraywajib

    maxItems: 6

  • Setiap itemobject

    Tidak ada properti tambahan

  • familystringwajib

    Penumpukan lebih lanjut dihilangkan

  • rolestringwajib

    enum: "heading", "body", "mono", "other"

    Penumpukan lebih lanjut dihilangkan

  • weightsarraywajib

    Penumpukan lebih lanjut dihilangkan

  • assetsarraywajib

    maxItems: 8

  • Setiap itemobject

    Tidak ada properti tambahan

  • urlstringwajib

    format: "uri"

    Penumpukan lebih lanjut dihilangkan

  • kindstringwajib

    enum: "logo", "wordmark", "favicon", "hero"

    Penumpukan lebih lanjut dihilangkan

  • sourcestringwajib

    Penumpukan lebih lanjut dihilangkan

  • brand_summarystringwajib
  • imagery_stylearraywajib

    maxItems: 6

  • Setiap itemstring
  • source_snapshotobjectwajib
  • Properti tambahanNilai apa pun
  • dns_signalsarraywajib
  • Setiap itemobject
  • namestringwajib
  • typestringwajib

    enum: "MX", "TXT", "CNAME", "NS"

  • valuestringwajib
  • ttlintegerwajib

    minimum: 0

  • dns_providertidak ditentukanwajib
  • oneOf 1object

    Tidak ada properti tambahan

  • keystringwajib
  • namestringwajib
  • confidencestringwajib

    enum: "high", "medium", "low"

  • dashboard_urlstringwajib

    format: "uri"

  • evidencearraywajib
  • Setiap itemobject
  • namestringwajib

    Penumpukan lebih lanjut dihilangkan

  • typestringwajib

    enum: "MX", "TXT", "CNAME", "NS"

    Penumpukan lebih lanjut dihilangkan

  • valuestringwajib

    Penumpukan lebih lanjut dihilangkan

  • ttlintegerwajib

    minimum: 0

    Penumpukan lebih lanjut dihilangkan

  • oneOf 2null
  • provider_detectionsarraywajib
  • Setiap itemobject
  • keystringwajib
  • namestringwajib
  • categoriesarraywajib
  • Setiap itemstring

    enum: "work_mailbox", "transactional", "marketing", "deliverability"

  • confidencestringwajib

    enum: "high", "medium", "low"

  • evidencearraywajib
  • Setiap itemobject
  • namestringwajib

    Penumpukan lebih lanjut dihilangkan

  • typestringwajib

    enum: "MX", "TXT", "CNAME", "NS"

    Penumpukan lebih lanjut dihilangkan

  • valuestringwajib

    Penumpukan lebih lanjut dihilangkan

  • ttlintegerwajib

    minimum: 0

    Penumpukan lebih lanjut dihilangkan

  • capability_summaryarraywajib
  • Setiap itemobject
  • kindstringwajib

    enum: "work_mailbox", "transactional", "marketing", "deliverability"

  • labelstringwajib
  • statusstringwajib

    enum: "detected", "missing", "needs_review"

  • provider_keysarraywajib
  • Setiap itemstring
  • recommendationstringwajib

    enum: "connect", "setup_banger", "review"

  • recommended_connectionsarraywajib
  • Setiap itemobject

    Tidak ada properti tambahan

  • keystringwajib
  • namestringwajib
  • categorystringwajib

    enum: "email", "customer", "product", "work", "data"

  • prioritystringwajib

    enum: "required", "recommended"

  • reasonstringwajib
  • sourcestringwajib

    enum: "dns", "business_context", "opportunity_plan", "banger_recommendation"

  • setup_modestringwajib

    enum: "oauth", "secure_credentials"

  • availablebooleanwajib
  • provider_keystring
  • evidencearraywajib
  • Setiap itemobject
  • namestringwajib

    Penumpukan lebih lanjut dihilangkan

  • typestringwajib

    enum: "MX", "TXT", "CNAME", "NS"

    Penumpukan lebih lanjut dihilangkan

  • valuestringwajib

    Penumpukan lebih lanjut dihilangkan

  • ttlintegerwajib

    minimum: 0

    Penumpukan lebih lanjut dihilangkan

  • connection_planarraywajib
  • Setiap itemobject

    Tidak ada properti tambahan

  • capabilitystringwajib

    enum: "work_mailbox", "transactional", "marketing", "deliverability"

  • provider_keystring
  • actionstringwajib

    enum: "connect", "setup_banger", "review"

  • domainstring

    minLength: 3 · maxLength: 253

  • limitationsarraywajib
  • Setiap itemstring
  • scanned_atstringwajib

    format: "date-time"

  • confirmed_atstring | nullwajib

    format: "date-time"

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/onboarding/discovery' \
  --header "Authorization: Bearer $BANGER_API_KEY"
POST/v1/workspaces/{workspaceId}/onboarding/discovery

scanWorkspaceDomain

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan wajib

application/json

  • valueobject

    Tidak ada properti tambahan

  • domainstringwajib

    minLength: 3 · maxLength: 253

  • stream_kindstring

    default: "default" · enum: "default", "transactional", "marketing"

Respons berhasil 201

Penemuan DNS publik dan situs selesai serta disimpan.

application/json

  • valueobject
  • dataobjectwajib
  • domainstringwajib
  • scan_statusstringwajib

    enum: "complete", "partial", "failed"

  • companyobjectwajib
  • domainstringwajib
  • website_urlstring | nullwajib

    format: "uri"

  • website_statusstringwajib

    enum: "available", "missing", "blocked", "error"

  • company_namestringwajib
  • summarystringwajib
  • audiencestringwajib
  • offeringsarraywajib
  • Setiap itemstring
  • logo_urlstring | nullwajib

    format: "uri"

  • favicon_urlstring | nullwajib

    format: "uri"

  • visual_identityobjectwajib
  • colorsarraywajib

    maxItems: 6

  • Setiap itemstring
  • fontsarraywajib

    maxItems: 6

  • Setiap itemstring
  • tonearraywajib

    maxItems: 6

  • Setiap itemstring
  • source_confidencestringwajib

    enum: "high", "medium", "low"

  • hero_image_urlstring

    format: "uri"

  • palettearraywajib

    maxItems: 6

  • Setiap itemobject

    Tidak ada properti tambahan

  • valuestringwajib

    Penumpukan lebih lanjut dihilangkan

  • rolestringwajib

    enum: "primary", "accent", "background", "surface", "text", "other"

    Penumpukan lebih lanjut dihilangkan

  • namestringwajib

    Penumpukan lebih lanjut dihilangkan

  • typographyarraywajib

    maxItems: 6

  • Setiap itemobject

    Tidak ada properti tambahan

  • familystringwajib

    Penumpukan lebih lanjut dihilangkan

  • rolestringwajib

    enum: "heading", "body", "mono", "other"

    Penumpukan lebih lanjut dihilangkan

  • weightsarraywajib

    Penumpukan lebih lanjut dihilangkan

  • assetsarraywajib

    maxItems: 8

  • Setiap itemobject

    Tidak ada properti tambahan

  • urlstringwajib

    format: "uri"

    Penumpukan lebih lanjut dihilangkan

  • kindstringwajib

    enum: "logo", "wordmark", "favicon", "hero"

    Penumpukan lebih lanjut dihilangkan

  • sourcestringwajib

    Penumpukan lebih lanjut dihilangkan

  • brand_summarystringwajib
  • imagery_stylearraywajib

    maxItems: 6

  • Setiap itemstring
  • source_snapshotobjectwajib
  • Properti tambahanNilai apa pun
  • dns_signalsarraywajib
  • Setiap itemobject
  • namestringwajib
  • typestringwajib

    enum: "MX", "TXT", "CNAME", "NS"

  • valuestringwajib
  • ttlintegerwajib

    minimum: 0

  • dns_providertidak ditentukanwajib
  • oneOf 1object

    Tidak ada properti tambahan

  • keystringwajib
  • namestringwajib
  • confidencestringwajib

    enum: "high", "medium", "low"

  • dashboard_urlstringwajib

    format: "uri"

  • evidencearraywajib
  • Setiap itemobject
  • namestringwajib

    Penumpukan lebih lanjut dihilangkan

  • typestringwajib

    enum: "MX", "TXT", "CNAME", "NS"

    Penumpukan lebih lanjut dihilangkan

  • valuestringwajib

    Penumpukan lebih lanjut dihilangkan

  • ttlintegerwajib

    minimum: 0

    Penumpukan lebih lanjut dihilangkan

  • oneOf 2null
  • provider_detectionsarraywajib
  • Setiap itemobject
  • keystringwajib
  • namestringwajib
  • categoriesarraywajib
  • Setiap itemstring

    enum: "work_mailbox", "transactional", "marketing", "deliverability"

  • confidencestringwajib

    enum: "high", "medium", "low"

  • evidencearraywajib
  • Setiap itemobject
  • namestringwajib

    Penumpukan lebih lanjut dihilangkan

  • typestringwajib

    enum: "MX", "TXT", "CNAME", "NS"

    Penumpukan lebih lanjut dihilangkan

  • valuestringwajib

    Penumpukan lebih lanjut dihilangkan

  • ttlintegerwajib

    minimum: 0

    Penumpukan lebih lanjut dihilangkan

  • capability_summaryarraywajib
  • Setiap itemobject
  • kindstringwajib

    enum: "work_mailbox", "transactional", "marketing", "deliverability"

  • labelstringwajib
  • statusstringwajib

    enum: "detected", "missing", "needs_review"

  • provider_keysarraywajib
  • Setiap itemstring
  • recommendationstringwajib

    enum: "connect", "setup_banger", "review"

  • recommended_connectionsarraywajib
  • Setiap itemobject

    Tidak ada properti tambahan

  • keystringwajib
  • namestringwajib
  • categorystringwajib

    enum: "email", "customer", "product", "work", "data"

  • prioritystringwajib

    enum: "required", "recommended"

  • reasonstringwajib
  • sourcestringwajib

    enum: "dns", "business_context", "opportunity_plan", "banger_recommendation"

  • setup_modestringwajib

    enum: "oauth", "secure_credentials"

  • availablebooleanwajib
  • provider_keystring
  • evidencearraywajib
  • Setiap itemobject
  • namestringwajib

    Penumpukan lebih lanjut dihilangkan

  • typestringwajib

    enum: "MX", "TXT", "CNAME", "NS"

    Penumpukan lebih lanjut dihilangkan

  • valuestringwajib

    Penumpukan lebih lanjut dihilangkan

  • ttlintegerwajib

    minimum: 0

    Penumpukan lebih lanjut dihilangkan

  • connection_planarraywajib
  • Setiap itemobject

    Tidak ada properti tambahan

  • capabilitystringwajib

    enum: "work_mailbox", "transactional", "marketing", "deliverability"

  • provider_keystring
  • actionstringwajib

    enum: "connect", "setup_banger", "review"

  • domainstring

    minLength: 3 · maxLength: 253

  • limitationsarraywajib
  • Setiap itemstring
  • scanned_atstringwajib

    format: "date-time"

  • confirmed_atstring | nullwajib

    format: "date-time"

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/onboarding/discovery' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "domain": "example",
  "stream_kind": "default"
}'
PUT/v1/workspaces/{workspaceId}/onboarding/discovery

confirmWorkspaceDomainDiscovery

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan wajib

application/json

  • valueobject

    Tidak ada properti tambahan

  • company_namestringwajib

    minLength: 1 · maxLength: 200

  • summarystringwajib

    minLength: 1 · maxLength: 4000

  • audiencestring

    maxLength: 2000

  • offeringsarray

    maxItems: 8

  • Setiap itemstring

    maxLength: 120

  • website_urlstring | null

    format: "uri"

  • connection_planarraywajib

    maxItems: 30

  • Setiap itemobject

    Tidak ada properti tambahan

  • capabilitystringwajib

    enum: "work_mailbox", "transactional", "marketing", "deliverability"

  • provider_keystring
  • actionstringwajib

    enum: "connect", "setup_banger", "review"

  • domainstring

    minLength: 3 · maxLength: 253

Respons berhasil 200

Konteks perusahaan dan rencana koneksi yang disarankan dikonfirmasi.

application/json

  • valueobject
  • dataobjectwajib
  • domainstringwajib
  • scan_statusstringwajib

    enum: "complete", "partial", "failed"

  • companyobjectwajib
  • domainstringwajib
  • website_urlstring | nullwajib

    format: "uri"

  • website_statusstringwajib

    enum: "available", "missing", "blocked", "error"

  • company_namestringwajib
  • summarystringwajib
  • audiencestringwajib
  • offeringsarraywajib
  • Setiap itemstring
  • logo_urlstring | nullwajib

    format: "uri"

  • favicon_urlstring | nullwajib

    format: "uri"

  • visual_identityobjectwajib
  • colorsarraywajib

    maxItems: 6

  • Setiap itemstring
  • fontsarraywajib

    maxItems: 6

  • Setiap itemstring
  • tonearraywajib

    maxItems: 6

  • Setiap itemstring
  • source_confidencestringwajib

    enum: "high", "medium", "low"

  • hero_image_urlstring

    format: "uri"

  • palettearraywajib

    maxItems: 6

  • Setiap itemobject

    Tidak ada properti tambahan

  • valuestringwajib

    Penumpukan lebih lanjut dihilangkan

  • rolestringwajib

    enum: "primary", "accent", "background", "surface", "text", "other"

    Penumpukan lebih lanjut dihilangkan

  • namestringwajib

    Penumpukan lebih lanjut dihilangkan

  • typographyarraywajib

    maxItems: 6

  • Setiap itemobject

    Tidak ada properti tambahan

  • familystringwajib

    Penumpukan lebih lanjut dihilangkan

  • rolestringwajib

    enum: "heading", "body", "mono", "other"

    Penumpukan lebih lanjut dihilangkan

  • weightsarraywajib

    Penumpukan lebih lanjut dihilangkan

  • assetsarraywajib

    maxItems: 8

  • Setiap itemobject

    Tidak ada properti tambahan

  • urlstringwajib

    format: "uri"

    Penumpukan lebih lanjut dihilangkan

  • kindstringwajib

    enum: "logo", "wordmark", "favicon", "hero"

    Penumpukan lebih lanjut dihilangkan

  • sourcestringwajib

    Penumpukan lebih lanjut dihilangkan

  • brand_summarystringwajib
  • imagery_stylearraywajib

    maxItems: 6

  • Setiap itemstring
  • source_snapshotobjectwajib
  • Properti tambahanNilai apa pun
  • dns_signalsarraywajib
  • Setiap itemobject
  • namestringwajib
  • typestringwajib

    enum: "MX", "TXT", "CNAME", "NS"

  • valuestringwajib
  • ttlintegerwajib

    minimum: 0

  • dns_providertidak ditentukanwajib
  • oneOf 1object

    Tidak ada properti tambahan

  • keystringwajib
  • namestringwajib
  • confidencestringwajib

    enum: "high", "medium", "low"

  • dashboard_urlstringwajib

    format: "uri"

  • evidencearraywajib
  • Setiap itemobject
  • namestringwajib

    Penumpukan lebih lanjut dihilangkan

  • typestringwajib

    enum: "MX", "TXT", "CNAME", "NS"

    Penumpukan lebih lanjut dihilangkan

  • valuestringwajib

    Penumpukan lebih lanjut dihilangkan

  • ttlintegerwajib

    minimum: 0

    Penumpukan lebih lanjut dihilangkan

  • oneOf 2null
  • provider_detectionsarraywajib
  • Setiap itemobject
  • keystringwajib
  • namestringwajib
  • categoriesarraywajib
  • Setiap itemstring

    enum: "work_mailbox", "transactional", "marketing", "deliverability"

  • confidencestringwajib

    enum: "high", "medium", "low"

  • evidencearraywajib
  • Setiap itemobject
  • namestringwajib

    Penumpukan lebih lanjut dihilangkan

  • typestringwajib

    enum: "MX", "TXT", "CNAME", "NS"

    Penumpukan lebih lanjut dihilangkan

  • valuestringwajib

    Penumpukan lebih lanjut dihilangkan

  • ttlintegerwajib

    minimum: 0

    Penumpukan lebih lanjut dihilangkan

  • capability_summaryarraywajib
  • Setiap itemobject
  • kindstringwajib

    enum: "work_mailbox", "transactional", "marketing", "deliverability"

  • labelstringwajib
  • statusstringwajib

    enum: "detected", "missing", "needs_review"

  • provider_keysarraywajib
  • Setiap itemstring
  • recommendationstringwajib

    enum: "connect", "setup_banger", "review"

  • recommended_connectionsarraywajib
  • Setiap itemobject

    Tidak ada properti tambahan

  • keystringwajib
  • namestringwajib
  • categorystringwajib

    enum: "email", "customer", "product", "work", "data"

  • prioritystringwajib

    enum: "required", "recommended"

  • reasonstringwajib
  • sourcestringwajib

    enum: "dns", "business_context", "opportunity_plan", "banger_recommendation"

  • setup_modestringwajib

    enum: "oauth", "secure_credentials"

  • availablebooleanwajib
  • provider_keystring
  • evidencearraywajib
  • Setiap itemobject
  • namestringwajib

    Penumpukan lebih lanjut dihilangkan

  • typestringwajib

    enum: "MX", "TXT", "CNAME", "NS"

    Penumpukan lebih lanjut dihilangkan

  • valuestringwajib

    Penumpukan lebih lanjut dihilangkan

  • ttlintegerwajib

    minimum: 0

    Penumpukan lebih lanjut dihilangkan

  • connection_planarraywajib
  • Setiap itemobject

    Tidak ada properti tambahan

  • capabilitystringwajib

    enum: "work_mailbox", "transactional", "marketing", "deliverability"

  • provider_keystring
  • actionstringwajib

    enum: "connect", "setup_banger", "review"

  • domainstring

    minLength: 3 · maxLength: 253

  • limitationsarraywajib
  • Setiap itemstring
  • scanned_atstringwajib

    format: "date-time"

  • confirmed_atstring | nullwajib

    format: "date-time"

Contoh curl

curl --request PUT --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/onboarding/discovery' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "company_name": "example",
  "summary": "example",
  "audience": "example",
  "offerings": [
    "example"
  ],
  "website_url": "https://example.com",
  "connection_plan": [
    {
      "capability": "work_mailbox",
      "provider_key": "example",
      "action": "connect",
      "domain": "example"
    }
  ]
}'
POST/v1/workspaces/{workspaceId}/onboarding/agent-state/confirm-connection

Konfirmasi koneksi agen OAuth saat ini

Memerlukan kredensial OAuth terpasang pada klien agen saat ini dan cakupan automation:read.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Respons berhasil.

application/json

  • valueobject
  • dataobjectwajib
  • statusstringwajib

    enum: "connected"

  • messagestringwajib
  • workspace_idstringwajib

    format: "uuid"

  • client_namestringwajib
  • confirmed_atstringwajib

    format: "date-time"

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/onboarding/agent-state/confirm-connection' \
  --header "Authorization: Bearer $BANGER_API_KEY"

Akses

GET/v1/workspaces/{workspaceId}/access

Daftar anggota ruang kerja dan undangan aktif.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Direktori ruang kerja.

application/json

  • valueobject
  • dataobjectwajib
  • actorIdstringwajib
  • identitiesarraywajib
  • Setiap itemobject
  • idstringwajib

    format: "uuid"

  • userIdstringwajib
  • emailstring

    format: "email"

  • displayNamestring
  • kindstringwajib

    const: "user"

  • rolestringwajib

    enum: "owner", "admin", "member", "viewer"

  • statusstringwajib

    enum: "active", "suspended"

  • pendingInvitationsarraywajib
  • Setiap itemobject
  • idstringwajib

    format: "uuid"

  • codestringwajib

    format: "uuid"

  • inviteCodestring

    format: "uuid"

  • invitedEmailstring

    format: "email"

  • workspaceIdstringwajib

    format: "uuid"

  • workspaceNamestringwajib
  • rolestringwajib

    enum: "admin", "member", "viewer"

  • accessScopestring

    const: "workspace"

  • statusstringwajib

    enum: "pending", "accepted"

  • expiresAtstringwajib

    format: "date-time"

  • notificationSentboolean

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/access' \
  --header "Authorization: Bearer $BANGER_API_KEY"

Undangan

POST/v1/workspaces/{workspaceId}/invitations

Undang pelaku manusia ke ruang kerja.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan wajib

application/json

  • valueobject

    Tidak ada properti tambahan

  • emailstringwajib

    format: "email" · maxLength: 320

  • rolestring

    default: "member" · enum: "admin", "member", "viewer"

  • mailbox_idsarray

    maxItems: 250

  • Setiap itemstring

    format: "uuid"

  • send_modestring

    default: "direct" · enum: "direct", "approval_required"

  • expires_in_hoursinteger

    minimum: 1 · maximum: 720 · default: 168

Respons berhasil 201

Undangan dibuat.

application/json

  • valueobject
  • dataobjectwajib
  • idstringwajib

    format: "uuid"

  • codestringwajib

    format: "uuid"

  • inviteCodestring

    format: "uuid"

  • invitedEmailstring

    format: "email"

  • workspaceIdstringwajib

    format: "uuid"

  • workspaceNamestringwajib
  • rolestringwajib

    enum: "admin", "member", "viewer"

  • accessScopestring

    const: "workspace"

  • statusstringwajib

    enum: "pending", "accepted"

  • expiresAtstringwajib

    format: "date-time"

  • notificationSentboolean

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/invitations' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "email": "person@example.com",
  "role": "member",
  "mailbox_ids": [
    "00000000-0000-4000-8000-000000000001"
  ],
  "send_mode": "direct",
  "expires_in_hours": 168
}'

Kunci API

GET/v1/workspaces/{workspaceId}/api-keys

listWorkspaceApiKeys

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Kunci API aktif bercakupan. Nilai rahasia tidak pernah dikembalikan.

application/json

  • valueobject
  • dataarraywajib
  • Setiap itemobject
  • idstringwajib

    format: "uuid"

  • namestringwajib
  • prefixstringwajib
  • scopesarraywajib
  • Setiap itemstring

    enum: "mail:read", "mail:write", "mail:send", "contacts:read", "contacts:write", "campaigns:read", "campaigns:write", "campaigns:send", "automation:read", "automation:execute", "connections:read", "connections:use", "connections:admin", "workspace:admin"

  • expires_atstring

    format: "date-time"

  • last_used_atstring

    format: "date-time"

  • created_atstringwajib

    format: "date-time"

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/api-keys' \
  --header "Authorization: Bearer $BANGER_API_KEY"
POST/v1/workspaces/{workspaceId}/api-keys

createWorkspaceApiKey

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan wajib

application/json

  • valueobject

    Tidak ada properti tambahan

  • namestringwajib

    minLength: 1 · maxLength: 100

  • scopesarraywajib

    minItems: 1 · uniqueItems: true

  • Setiap itemstring

    enum: "mail:read", "mail:write", "mail:send", "contacts:read", "contacts:write", "campaigns:read", "campaigns:write", "campaigns:send", "automation:read", "automation:execute", "connections:read", "connections:use", "connections:admin", "workspace:admin"

  • expires_atstring

    format: "date-time"

Respons berhasil 201

Kunci API dibuat. Token hanya dikembalikan sekali.

application/json

  • valueobject
  • datatidak ditentukanwajib
  • allOf 1object
  • idstringwajib

    format: "uuid"

  • namestringwajib
  • prefixstringwajib
  • scopesarraywajib
  • Setiap itemstring

    enum: "mail:read", "mail:write", "mail:send", "contacts:read", "contacts:write", "campaigns:read", "campaigns:write", "campaigns:send", "automation:read", "automation:execute", "connections:read", "connections:use", "connections:admin", "workspace:admin"

  • expires_atstring

    format: "date-time"

  • last_used_atstring

    format: "date-time"

  • created_atstringwajib

    format: "date-time"

  • allOf 2object
  • tokenstringwajib
  • smtpobject

    Cara aplikasi yang hanya mengirim lewat SMTP (Supabase Auth, Auth0, WordPress, mailer framework) mengirim melalui Banger. Kata sandinya adalah kunci API dengan mail:send; Banger meneruskan tiap pesan sebagaimana ditulis dan baru menjawab setelah semua pemeriksaan lolos. Hanya ada untuk kunci yang dapat mengirim email, di lingkungan dengan host submission yang menjawab.

  • hoststringwajib
  • portintegerwajib

    TLS implisit, disarankan.

  • starttls_portintegerwajib

    STARTTLS sebelum AUTH.

  • alternate_portsobjectwajib

    Dua listener yang sama, untuk jaringan yang memblokir 465 dan 587.

  • tlsintegerwajib
  • starttlsintegerwajib
  • usernamestringwajib

    Nama pengguna apa pun bisa; kunci saja mengidentifikasi ruang kerja dan produk.

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/api-keys' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "name": "example",
  "scopes": [
    "mail:read"
  ],
  "expires_at": "2026-01-01T00:00:00Z"
}'
DELETE/v1/workspaces/{workspaceId}/api-keys/{apiKeyId}

revokeWorkspaceApiKey

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

apiKeyId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 204

Kunci API dicabut.

Tanpa isi respons.

Contoh curl

curl --request DELETE --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/api-keys/{apiKeyId}' \
  --header "Authorization: Bearer $BANGER_API_KEY"

Penagihan

GET/v1/workspaces/{workspaceId}/billing

Baca penagihan, penggunaan, dan paket tersedia

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Respons berhasil.

application/json

  • valueobject
  • dataobjectwajib
  • billingobjectwajib
  • workspaceIdstringwajib

    format: "uuid"

  • tierstringwajib

    enum: "free", "starter", "pro", "business", "scale", "enterprise"

  • planKeystringwajib

    enum: "free", "starter", "pro", "business", "scale", "enterprise"

  • statusstringwajib
  • planIntervalstring | nullwajib

    enum: "month", "year", null

  • stripeCustomerIdstring | nullwajib
  • stripeSubscriptionIdstring | nullwajib
  • currentPeriodEndinteger | nullwajib

    Timestamp Unix dalam milidetik.

  • cancelAtPeriodEndbooleanwajib
  • prepaidPlanKeystring | nullwajib
  • prepaidUntilinteger | nullwajib

    Timestamp Unix dalam milidetik.

  • usageobjectwajib
  • storageBytesnumberwajib
  • storageLimitBytesnumberwajib
  • sendsThisMonthnumberwajib
  • sendLimitnumberwajib
  • sendsTodaynumberwajib
  • dailySendLimitnumber | nullwajib
  • periodEndinteger | nullwajib

    Timestamp Unix dalam milidetik.

  • catalogobjectwajib
  • plansarraywajib
  • Setiap itemobject
  • planKeystringwajib

    enum: "free", "starter", "pro", "business", "scale", "enterprise"

  • labelstringwajib
  • sendLimitnumberwajib
  • storageGbnumberwajib
  • gmailImportLimitnumberwajib
  • triageRuleLimitnumberwajib
  • triageRunLimitnumberwajib
  • pricesarraywajib
  • Setiap itemobject

    Penumpukan lebih lanjut dihilangkan

  • addonsarraywajib

    maxItems: 0

  • Setiap itemtidak ditentukan
  • agentPaymenttidak ditentukanwajib
  • anyOf 1object
  • network_idstringwajib
  • currencystringwajib

    enum: "usd"

  • howstringwajib
  • optionsarraywajib
  • Setiap itemobject
  • plan_keystringwajib

    enum: "starter", "pro"

    Penumpukan lebih lanjut dihilangkan

  • intervalstringwajib

    enum: "month", "year"

    Penumpukan lebih lanjut dihilangkan

  • monthsintegerwajib

    enum: 1, 12

    Penumpukan lebih lanjut dihilangkan

  • amount_centsintegerwajib

    What to mint the token for

    Penumpukan lebih lanjut dihilangkan

  • discountobject

    Penumpukan lebih lanjut dihilangkan

  • anyOf 2null
  • switchOffertidak ditentukan

    The month free on a yearly plan this workspace gets for switching from Mailchimp; null when it doesn't.

  • anyOf 1object
  • offerstringwajib

    enum: "switch_from_mailchimp"

  • sourcestringwajib

    enum: "signup_campaign", "mailchimp_connection"

  • appliesTostringwajib

    enum: "year"

  • plansarraywajib
  • Setiap itemobject
  • planKeystringwajib

    enum: "starter", "pro", "business", "scale"

    Penumpukan lebih lanjut dihilangkan

  • currencystringwajib

    Penumpukan lebih lanjut dihilangkan

  • yearlyPriceintegerwajib

    In the currency's smallest unit.

    Penumpukan lebih lanjut dihilangkan

  • firstYearPriceintegerwajib

    In the currency's smallest unit.

    Penumpukan lebih lanjut dihilangkan

  • messagestringwajib
  • anyOf 2null

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/billing' \
  --header "Authorization: Bearer $BANGER_API_KEY"
POST/v1/workspaces/{workspaceId}/billing

Sinkronkan penagihan dari Stripe

Alias POST /billing/sync. Memerlukan workspace:admin.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Respons berhasil.

application/json

  • valueobject
  • dataobjectwajib
  • billingobjectwajib
  • workspaceIdstringwajib

    format: "uuid"

  • tierstringwajib

    enum: "free", "starter", "pro", "business", "scale", "enterprise"

  • planKeystringwajib

    enum: "free", "starter", "pro", "business", "scale", "enterprise"

  • statusstringwajib
  • planIntervalstring | nullwajib

    enum: "month", "year", null

  • stripeCustomerIdstring | nullwajib
  • stripeSubscriptionIdstring | nullwajib
  • currentPeriodEndinteger | nullwajib

    Timestamp Unix dalam milidetik.

  • cancelAtPeriodEndbooleanwajib
  • prepaidPlanKeystring | nullwajib
  • prepaidUntilinteger | nullwajib

    Timestamp Unix dalam milidetik.

  • usageobjectwajib
  • storageBytesnumberwajib
  • storageLimitBytesnumberwajib
  • sendsThisMonthnumberwajib
  • sendLimitnumberwajib
  • sendsTodaynumberwajib
  • dailySendLimitnumber | nullwajib
  • periodEndinteger | nullwajib

    Timestamp Unix dalam milidetik.

  • catalogobjectwajib
  • plansarraywajib
  • Setiap itemobject
  • planKeystringwajib

    enum: "free", "starter", "pro", "business", "scale", "enterprise"

  • labelstringwajib
  • sendLimitnumberwajib
  • storageGbnumberwajib
  • gmailImportLimitnumberwajib
  • triageRuleLimitnumberwajib
  • triageRunLimitnumberwajib
  • pricesarraywajib
  • Setiap itemobject

    Penumpukan lebih lanjut dihilangkan

  • addonsarraywajib

    maxItems: 0

  • Setiap itemtidak ditentukan
  • agentPaymenttidak ditentukanwajib
  • anyOf 1object
  • network_idstringwajib
  • currencystringwajib

    enum: "usd"

  • howstringwajib
  • optionsarraywajib
  • Setiap itemobject
  • plan_keystringwajib

    enum: "starter", "pro"

    Penumpukan lebih lanjut dihilangkan

  • intervalstringwajib

    enum: "month", "year"

    Penumpukan lebih lanjut dihilangkan

  • monthsintegerwajib

    enum: 1, 12

    Penumpukan lebih lanjut dihilangkan

  • amount_centsintegerwajib

    What to mint the token for

    Penumpukan lebih lanjut dihilangkan

  • discountobject

    Penumpukan lebih lanjut dihilangkan

  • anyOf 2null
  • switchOffertidak ditentukan

    The month free on a yearly plan this workspace gets for switching from Mailchimp; null when it doesn't.

  • anyOf 1object
  • offerstringwajib

    enum: "switch_from_mailchimp"

  • sourcestringwajib

    enum: "signup_campaign", "mailchimp_connection"

  • appliesTostringwajib

    enum: "year"

  • plansarraywajib
  • Setiap itemobject
  • planKeystringwajib

    enum: "starter", "pro", "business", "scale"

    Penumpukan lebih lanjut dihilangkan

  • currencystringwajib

    Penumpukan lebih lanjut dihilangkan

  • yearlyPriceintegerwajib

    In the currency's smallest unit.

    Penumpukan lebih lanjut dihilangkan

  • firstYearPriceintegerwajib

    In the currency's smallest unit.

    Penumpukan lebih lanjut dihilangkan

  • messagestringwajib
  • anyOf 2null

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/billing' \
  --header "Authorization: Bearer $BANGER_API_KEY"
POST/v1/workspaces/{workspaceId}/billing/sync

Sinkronkan langganan Stripe terbaru

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Respons berhasil.

application/json

  • valueobject
  • dataobjectwajib
  • billingobjectwajib
  • workspaceIdstringwajib

    format: "uuid"

  • tierstringwajib

    enum: "free", "starter", "pro", "business", "scale", "enterprise"

  • planKeystringwajib

    enum: "free", "starter", "pro", "business", "scale", "enterprise"

  • statusstringwajib
  • planIntervalstring | nullwajib

    enum: "month", "year", null

  • stripeCustomerIdstring | nullwajib
  • stripeSubscriptionIdstring | nullwajib
  • currentPeriodEndinteger | nullwajib

    Timestamp Unix dalam milidetik.

  • cancelAtPeriodEndbooleanwajib
  • prepaidPlanKeystring | nullwajib
  • prepaidUntilinteger | nullwajib

    Timestamp Unix dalam milidetik.

  • usageobjectwajib
  • storageBytesnumberwajib
  • storageLimitBytesnumberwajib
  • sendsThisMonthnumberwajib
  • sendLimitnumberwajib
  • sendsTodaynumberwajib
  • dailySendLimitnumber | nullwajib
  • periodEndinteger | nullwajib

    Timestamp Unix dalam milidetik.

  • catalogobjectwajib
  • plansarraywajib
  • Setiap itemobject
  • planKeystringwajib

    enum: "free", "starter", "pro", "business", "scale", "enterprise"

  • labelstringwajib
  • sendLimitnumberwajib
  • storageGbnumberwajib
  • gmailImportLimitnumberwajib
  • triageRuleLimitnumberwajib
  • triageRunLimitnumberwajib
  • pricesarraywajib
  • Setiap itemobject

    Penumpukan lebih lanjut dihilangkan

  • addonsarraywajib

    maxItems: 0

  • Setiap itemtidak ditentukan
  • agentPaymenttidak ditentukanwajib
  • anyOf 1object
  • network_idstringwajib
  • currencystringwajib

    enum: "usd"

  • howstringwajib
  • optionsarraywajib
  • Setiap itemobject
  • plan_keystringwajib

    enum: "starter", "pro"

    Penumpukan lebih lanjut dihilangkan

  • intervalstringwajib

    enum: "month", "year"

    Penumpukan lebih lanjut dihilangkan

  • monthsintegerwajib

    enum: 1, 12

    Penumpukan lebih lanjut dihilangkan

  • amount_centsintegerwajib

    What to mint the token for

    Penumpukan lebih lanjut dihilangkan

  • discountobject

    Penumpukan lebih lanjut dihilangkan

  • anyOf 2null
  • switchOffertidak ditentukan

    The month free on a yearly plan this workspace gets for switching from Mailchimp; null when it doesn't.

  • anyOf 1object
  • offerstringwajib

    enum: "switch_from_mailchimp"

  • sourcestringwajib

    enum: "signup_campaign", "mailchimp_connection"

  • appliesTostringwajib

    enum: "year"

  • plansarraywajib
  • Setiap itemobject
  • planKeystringwajib

    enum: "starter", "pro", "business", "scale"

    Penumpukan lebih lanjut dihilangkan

  • currencystringwajib

    Penumpukan lebih lanjut dihilangkan

  • yearlyPriceintegerwajib

    In the currency's smallest unit.

    Penumpukan lebih lanjut dihilangkan

  • firstYearPriceintegerwajib

    In the currency's smallest unit.

    Penumpukan lebih lanjut dihilangkan

  • messagestringwajib
  • anyOf 2null

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/billing/sync' \
  --header "Authorization: Bearer $BANGER_API_KEY"
POST/v1/workspaces/{workspaceId}/billing/checkout

Mulai checkout atau buka portal penagihan

Memerlukan workspace:admin. Hanya paket berbayar mandiri yang dijual. Langganan aktif membuka portal pelanggan. Field snake-case didahulukan daripada alias camel-case.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan wajib

application/json

  • valueobject
  • plan_keystring

    enum: "starter", "pro", "business", "scale"

  • planKeystring

    enum: "starter", "pro", "business", "scale"

  • intervalstring

    default: "month" · enum: "month", "year"

  • billing_attempt_idstring

    Pengenal percobaan ulang opsional: 8–64 huruf, angka, atau tanda hubung. Pengenal tidak valid diabaikan.

  • billingAttemptIdstring
  • anyOf 1tidak ditentukan
  • anyOf 2tidak ditentukan

Respons berhasil 200

Respons berhasil.

application/json

  • valueobject
  • dataobjectwajib
  • urlstringwajib

    format: "uri"

  • kindstringwajib

    enum: "checkout", "portal"

  • discounttidak ditentukan

    The switch-from-Mailchimp month applied to this yearly checkout.

  • allOf 1object

    Switch from Mailchimp: one month off the first yearly invoice.

  • offerstringwajib

    enum: "switch_from_mailchimp"

  • sourcestringwajib

    enum: "signup_campaign", "mailchimp_connection"

  • planKeystringwajib

    enum: "starter", "pro", "business", "scale"

  • intervalstringwajib

    enum: "year"

  • currencystringwajib

    Lowercase ISO currency the amounts are in.

  • amountOffintegerwajib

    In the currency's smallest unit.

  • yearlyPriceintegerwajib

    In the currency's smallest unit.

  • firstYearPriceintegerwajib

    In the currency's smallest unit.

  • messagestringwajib

    A sentence to tell the person.

  • switchOffertidak ditentukan

    On a monthly checkout, the month a yearly one would get instead.

  • allOf 1object

    Switch from Mailchimp: one month off the first yearly invoice.

  • offerstringwajib

    enum: "switch_from_mailchimp"

  • sourcestringwajib

    enum: "signup_campaign", "mailchimp_connection"

  • planKeystringwajib

    enum: "starter", "pro", "business", "scale"

  • intervalstringwajib

    enum: "year"

  • currencystringwajib

    Lowercase ISO currency the amounts are in.

  • amountOffintegerwajib

    In the currency's smallest unit.

  • yearlyPriceintegerwajib

    In the currency's smallest unit.

  • firstYearPriceintegerwajib

    In the currency's smallest unit.

  • messagestringwajib

    A sentence to tell the person.

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/billing/checkout' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Content-Type: application/json' \
  --data-raw '"example"'
POST/v1/workspaces/{workspaceId}/billing/portal

Buka portal penagihan pelanggan

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Respons berhasil.

application/json

  • valueobject
  • dataobjectwajib
  • urlstringwajib

    format: "uri"

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/billing/portal' \
  --header "Authorization: Bearer $BANGER_API_KEY"
POST/v1/workspaces/{workspaceId}/billing/agent-payment

Beli waktu paket prabayar dengan Shared Payment Token

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan wajib

application/json

  • valueobject
  • plan_keystringwajib

    enum: "starter", "pro"

  • intervalstring

    default: "month" · enum: "month", "year"

  • shared_payment_tokenstringwajib

    pattern: "^spt_[A-Za-z0-9_]{6,200}$"

Respons berhasil 200

Respons berhasil.

application/json

  • valueobject
  • dataobjectwajib
  • statusstringwajib
  • payment_intent_idstringwajib
  • messagestringwajib
  • plan_keystring

    enum: "starter", "pro"

  • prepaid_untilstring | null

    format: "date-time"

  • amount_centsinteger

    What was charged.

  • discountobject
  • offerstringwajib

    enum: "switch_from_mailchimp"

  • amount_off_centsintegerwajib
  • full_price_centsintegerwajib
  • messagestringwajib

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/billing/agent-payment' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "plan_key": "starter",
  "interval": "month",
  "shared_payment_token": "example"
}'

Ruang kerja

POST/v1/workspaces

createWorkspace

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
Idempotency-Key
header · wajib
  • valuestring

    minLength: 16 · maxLength: 128

Isi permintaan wajib

application/json

  • valueobject

    Tidak ada properti tambahan

  • namestringwajib

    minLength: 1 · maxLength: 200

Respons berhasil 200

Pengulangan idempoten ruang kerja yang dibuat sebelumnya.

application/json

  • valueobject
  • datatidak ditentukanwajib
  • allOf 1object
  • idstringwajib

    format: "uuid"

  • namestringwajib
  • shardstringwajib
  • rolestringwajib

    enum: "owner", "admin", "member", "viewer"

  • revisionintegerwajib

    format: "int64"

  • name_sourcestringwajib

    Asal nama ruang kerja: signup (nama pendaftaran otomatis), brand (perusahaan atau merek yang dikonfirmasi saat onboarding), atau user (diketik seseorang; konfirmasi merek tidak lagi mengubah namanya).

    enum: "signup", "brand", "user"

  • owner_emailstring | nullwajib

    Alamat email pemilik aktif paling awal. Null jika pemanggil kunci API statis atau pemilik tidak memiliki alamat tercatat.

  • avatar_urlstring | nullwajib

    Simbol merek ruang kerja: logo merek produk default, atau logo penemuan perusahaan terakhir yang dikonfirmasi.

  • allOf 2object
  • replayedbooleanwajib

Contoh curl

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Idempotency-Key: examplexxxxxxxxx' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "name": "example"
}'
GET/v1/workspaces/{workspaceId}

Baca ruang kerja, pemiliknya, dan ruang kerja lain orang yang masuk.

Setiap pelaku berwenang untuk ruang kerja dapat membacanya. other_workspaces mencantumkan keanggotaan aktif lain orang yang masuk. Izin OAuth atau kunci API hanya diizinkan untuk ruang kerja ini dan tidak mengetahui ruang kerja lain, sehingga other_workspaces kosong dan respons membawa catatan tentang itu. Kunci API statis tidak mewakili seseorang, sehingga owner_email-nya null.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 200

Ruang kerja sebagaimana dilihat pemanggil.

application/json

  • valueobject
  • dataobjectwajib

    Tidak ada properti tambahan

  • idstringwajib

    format: "uuid"

  • namestringwajib
  • name_sourcestringwajib

    Asal nama ruang kerja: signup (nama pendaftaran otomatis), brand (perusahaan atau merek yang dikonfirmasi saat onboarding), atau user (diketik seseorang; konfirmasi merek tidak lagi mengubah namanya).

    enum: "signup", "brand", "user"

  • rolestringwajib

    enum: "owner", "admin", "member", "viewer"

  • owner_emailstring | nullwajib
  • avatar_urlstring | nullwajib
  • other_workspacesarraywajib

    maxItems: 50

  • Setiap itemobject

    Tidak ada properti tambahan

  • idstringwajib

    format: "uuid"

  • namestringwajib
  • rolestringwajib

    enum: "owner", "admin", "member", "viewer"

  • notestring

    Ada untuk pemanggil kunci API dan OAuth yang koneksinya hanya diizinkan untuk ruang kerja ini.

Contoh curl

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}' \
  --header "Authorization: Bearer $BANGER_API_KEY"
PATCH/v1/workspaces/{workspaceId}

Ubah nama ruang kerja.

Memerlukan pemilik atau admin aktif; kredensial perlu workspace:admin untuk ruang kerja ini. Nama dipangkas spasinya dan harus 1-80 karakter. Nama yang diketik bersifat final: konfirmasi merek berikutnya tidak lagi mengubah nama ruang kerja (name_source menjadi user). Menaikkan revisi ruang kerja dan mencatat perubahan "workspace".

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan wajib

application/json

  • valueobject

    Tidak ada properti tambahan

  • namestringwajib

    minLength: 1 · maxLength: 80

Respons berhasil 200

Nama ruang kerja diubah.

application/json

  • valueobject
  • dataobjectwajib

    Tidak ada properti tambahan

  • idstringwajib

    format: "uuid"

  • namestringwajib

    minLength: 1 · maxLength: 80

  • name_sourcestringwajib

    const: "user"

Contoh curl

curl --request PATCH --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "name": "example"
}'
DELETE/v1/workspaces/{workspaceId}

Hapus permanen ruang kerja yang dimiliki dan antrekan pembersihan objek fisik.

Pelaku terautentikasi harus pemilik. Kunci API ruang kerja statis tidak dapat menghapus ruang kerja; memerlukan sesi manusia atau izin OAuth yang diizinkan pengguna dengan workspace:admin. Langganan berbayar harus dibatalkan dahulu. Status PostgreSQL dihapus secara atomik dan semua versi objek B2 di bawah awalan ruang kerja dibersihkan secara asinkron.

Autentikasi: kunci API ruang kerja Bearer.

Parameter

Nama / lokasiSkema
workspaceId
path · wajib
  • valuestring

    format: "uuid"

Isi permintaan

Kontrak tidak menentukan isi permintaan.

Respons berhasil 202

Ruang kerja kanonis dihapus dan pembersihan objek fisik diantrekan.

application/json

  • valueobject
  • dataobjectwajib

    Tidak ada properti tambahan

  • idstringwajib

    format: "uuid"

  • namestringwajib
  • deletedbooleanwajib

    const: true

  • storage_cleanupstringwajib

    const: "queued"

  • next_workspace_idstring

    format: "uuid"

Contoh curl

curl --request DELETE --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}' \
  --header "Authorization: Bearer $BANGER_API_KEY"