Banger-API-Referenz

Mit der Banger-API kannst du Postfächer verwalten, E-Mails senden, Kontakte verwalten und Kampagnen und Journeys in deinem Workspace ausführen.

Verbinde deinen Workspace

Basis-URL: https://api.bangermail.com

OpenAPI herunterladen (OpenAPI 3.1 JSON mit denselben Operationen wie auf dieser Seite), für Codegeneratoren, API-Clients und KI-Agenten.

Öffne in der Banger-App den Bereich Einstellungen → Entwickler → API-Schlüssel verwalten. Wähle API-Schlüssel erstellen, gib einen Namen ein, wähle die benötigten Berechtigungen deiner Anwendung und dann Schlüssel erstellen. Kopiere den Schlüssel jetzt: Er wird nur einmal angezeigt und kann nicht wiederhergestellt werden.

Workspace-Schlüssel haben das Format bgr_<12-character prefix>_<secret>. Setze deinen Schlüssel als BANGER_API_KEY in deiner Umgebung und authentifiziere Workspace-Anfragen mit:

Authorization: Bearer <workspace API key>

Die folgenden Routen für öffentliche Anmeldeformulare benötigen keine Authentifizierung. Jede Operation gibt an, ob sie ein Bearer-Token benötigt. Ersetze Pfadplatzhalter wie {workspaceId} vor dem Ausführen der Beispiele durch deine Ressourcen-IDs.

Anfragen und Antworten

JSON-Antworten enthalten Ergebnisse meist in { data } und Fehler in { error: { code, message } }. Einige Endpunkte liefern andere Formate oder keinen Inhalt; beachte die Antwortdefinition der Operation.

Sende Idempotency-Key, wenn es in den Header-Parametern aufgeführt ist, und verwende beim Wiederholen derselben Anfrage denselben Schlüssel. Der Vertrag definiert je nach Operation unterschiedliche Längenbeschränkungen; beachte die Parametertabelle.

Die Paginierung hängt vom Endpunkt ab. Bei den gemeinsamen Parametern cursor und limit ist der Cursor eine Zeichenfolge mit bis zu 1,024 Zeichen und das Limit standardmäßig 50 im Bereich 1–100. Andere Endpunkte definieren eigene Parameter und Antwortfelder wie next_cursor; beachte diese Schemas.

Die Beispiele werden aus Beispielen, Standardwerten, Enums und Schematypen des Vertrags erzeugt. Ersetze Beispielwerte durch deine eigenen Daten. Fehlende Body- oder Antwortschemas sind unten gekennzeichnet.

Diese Funktionen stehen KI-Assistenten auch über den Banger-MCP-Server zur Verfügung.

Produkte

GET/v1/workspaces/{workspaceId}/products

Workspace-Produkte auflisten

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Erfolgreiche Antwort.

application/json

  • valueobject
  • dataarrayerforderlich
  • Jedes Elementobject
  • idstringerforderlich

    format: "uuid"

  • workspace_idstringerforderlich

    format: "uuid"

  • namestringerforderlich
  • slugstringerforderlich
  • kindstringerforderlich

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

  • website_urlstring | nullerforderlich
  • domainsarrayerforderlich
  • Jedes Elementstring
  • descriptionstringerforderlich
  • contextobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • brandobjecterforderlich
  • company_namestring

    maxLength: 160

  • logo_urlstring

    Das Symbol: die Bildmarke allein, klein verwendet (E-Mail-Fußzeile, eingeblendete Formulare) und als Kopfzeile, wenn keine Wortmarke vorhanden ist.

    maxLength: 2000

  • wordmark_urlstring

    Die Wortmarke: der gestaltete Firmenname, allein oben in jeder E-Mail angezeigt.

    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

  • statusstringerforderlich

    deleting: von einer Person gelöscht; bis delete_after wiederherstellbar, danach endgültig entfernt.

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

  • delete_afterstring | null

    Zeitpunkt der endgültigen Entfernung eines Produkts im Zustand deleting.

    format: "date-time"

  • is_defaultbooleanerforderlich
  • route_readybooleanerforderlich
  • setuparrayerforderlich
  • Jedes Elementobject
  • keystringerforderlich

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

  • statusstringerforderlich

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

  • completion_sourcestring | nullerforderlich

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

  • notestringerforderlich
  • updated_atstring | nullerforderlich

    format: "date-time"

  • created_atstringerforderlich

    format: "date-time"

  • updated_atstringerforderlich

    format: "date-time"

curl-Beispiel

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

Produkt erstellen

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body erforderlich

application/json

  • valueobject
  • namestringerforderlich

    minLength: 1 · maxLength: 160

  • kindstring

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

  • website_urlstring | null

    maxLength: 2000

  • descriptionstring

    maxLength: 4000

  • contextobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • domainsarray

    maxItems: 20

  • Jedes Elementstring

    maxLength: 253

Erfolgsantwort 201

Erfolgreiche Antwort.

application/json

  • valueobject
  • dataobjecterforderlich
  • idstringerforderlich

    format: "uuid"

  • workspace_idstringerforderlich

    format: "uuid"

  • namestringerforderlich
  • slugstringerforderlich
  • kindstringerforderlich

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

  • website_urlstring | nullerforderlich
  • domainsarrayerforderlich
  • Jedes Elementstring
  • descriptionstringerforderlich
  • contextobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • brandobjecterforderlich
  • company_namestring

    maxLength: 160

  • logo_urlstring

    Das Symbol: die Bildmarke allein, klein verwendet (E-Mail-Fußzeile, eingeblendete Formulare) und als Kopfzeile, wenn keine Wortmarke vorhanden ist.

    maxLength: 2000

  • wordmark_urlstring

    Die Wortmarke: der gestaltete Firmenname, allein oben in jeder E-Mail angezeigt.

    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

  • statusstringerforderlich

    deleting: von einer Person gelöscht; bis delete_after wiederherstellbar, danach endgültig entfernt.

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

  • delete_afterstring | null

    Zeitpunkt der endgültigen Entfernung eines Produkts im Zustand deleting.

    format: "date-time"

  • is_defaultbooleanerforderlich
  • route_readybooleanerforderlich
  • setuparrayerforderlich
  • Jedes Elementobject
  • keystringerforderlich

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

  • statusstringerforderlich

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

  • completion_sourcestring | nullerforderlich

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

  • notestringerforderlich
  • updated_atstring | nullerforderlich

    format: "date-time"

  • created_atstringerforderlich

    format: "date-time"

  • updated_atstringerforderlich

    format: "date-time"

curl-Beispiel

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}

Produkt abrufen

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

productId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Erfolgreiche Antwort.

application/json

  • valueobject
  • dataobjecterforderlich
  • idstringerforderlich

    format: "uuid"

  • workspace_idstringerforderlich

    format: "uuid"

  • namestringerforderlich
  • slugstringerforderlich
  • kindstringerforderlich

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

  • website_urlstring | nullerforderlich
  • domainsarrayerforderlich
  • Jedes Elementstring
  • descriptionstringerforderlich
  • contextobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • brandobjecterforderlich
  • company_namestring

    maxLength: 160

  • logo_urlstring

    Das Symbol: die Bildmarke allein, klein verwendet (E-Mail-Fußzeile, eingeblendete Formulare) und als Kopfzeile, wenn keine Wortmarke vorhanden ist.

    maxLength: 2000

  • wordmark_urlstring

    Die Wortmarke: der gestaltete Firmenname, allein oben in jeder E-Mail angezeigt.

    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

  • statusstringerforderlich

    deleting: von einer Person gelöscht; bis delete_after wiederherstellbar, danach endgültig entfernt.

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

  • delete_afterstring | null

    Zeitpunkt der endgültigen Entfernung eines Produkts im Zustand deleting.

    format: "date-time"

  • is_defaultbooleanerforderlich
  • route_readybooleanerforderlich
  • setuparrayerforderlich
  • Jedes Elementobject
  • keystringerforderlich

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

  • statusstringerforderlich

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

  • completion_sourcestring | nullerforderlich

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

  • notestringerforderlich
  • updated_atstring | nullerforderlich

    format: "date-time"

  • created_atstringerforderlich

    format: "date-time"

  • updated_atstringerforderlich

    format: "date-time"

curl-Beispiel

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}

Produkt aktualisieren

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

productId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body erforderlich

application/json

  • valueobject
  • namestring

    maxLength: 160

  • kindstring

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

  • website_urlstring | null

    maxLength: 2000

  • descriptionstring

    maxLength: 4000

  • contextobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • brandobject
  • company_namestring

    maxLength: 160

  • logo_urlstring

    Das Symbol: die Bildmarke allein, klein verwendet (E-Mail-Fußzeile, eingeblendete Formulare) und als Kopfzeile, wenn keine Wortmarke vorhanden ist.

    maxLength: 2000

  • wordmark_urlstring

    Die Wortmarke: der gestaltete Firmenname, allein oben in jeder E-Mail angezeigt.

    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"

Erfolgsantwort 200

Erfolgreiche Antwort.

application/json

  • valueobject
  • dataobjecterforderlich
  • idstringerforderlich

    format: "uuid"

  • workspace_idstringerforderlich

    format: "uuid"

  • namestringerforderlich
  • slugstringerforderlich
  • kindstringerforderlich

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

  • website_urlstring | nullerforderlich
  • domainsarrayerforderlich
  • Jedes Elementstring
  • descriptionstringerforderlich
  • contextobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • brandobjecterforderlich
  • company_namestring

    maxLength: 160

  • logo_urlstring

    Das Symbol: die Bildmarke allein, klein verwendet (E-Mail-Fußzeile, eingeblendete Formulare) und als Kopfzeile, wenn keine Wortmarke vorhanden ist.

    maxLength: 2000

  • wordmark_urlstring

    Die Wortmarke: der gestaltete Firmenname, allein oben in jeder E-Mail angezeigt.

    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

  • statusstringerforderlich

    deleting: von einer Person gelöscht; bis delete_after wiederherstellbar, danach endgültig entfernt.

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

  • delete_afterstring | null

    Zeitpunkt der endgültigen Entfernung eines Produkts im Zustand deleting.

    format: "date-time"

  • is_defaultbooleanerforderlich
  • route_readybooleanerforderlich
  • setuparrayerforderlich
  • Jedes Elementobject
  • keystringerforderlich

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

  • statusstringerforderlich

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

  • completion_sourcestring | nullerforderlich

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

  • notestringerforderlich
  • updated_atstring | nullerforderlich

    format: "date-time"

  • created_atstringerforderlich

    format: "date-time"

  • updated_atstringerforderlich

    format: "date-time"

curl-Beispiel

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}

Lösche ein Produkt (ein Projekt in der App) nach Prüfung der Löschvorschau. Es wird sofort außer Betrieb genommen (sein Versand stoppt) und bleibt 24 Stunden wiederherstellbar; danach entfernt Banger seine Versanddomains und alle zugehörigen Zeilen. Das letzte aktive Produkt des Workspace kann nicht gelöscht werden. Erfordert einen Workspace-Administrator und eine angemeldete Sitzung; API-Schlüssel und OAuth-Berechtigungen werden abgelehnt.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

productId
path · erforderlich
  • valuestring

    format: "uuid"

Idempotency-Key
header · erforderlich
  • valuestring

    minLength: 16 · maxLength: 128

Anfrage-Body erforderlich

application/json

  • valueobject

    Keine zusätzlichen Eigenschaften

  • confirm_namestringerforderlich

    Der genaue Produktname.

    minLength: 1 · maxLength: 160

  • preview_tokenstringerforderlich

    minLength: 64 · maxLength: 64

Erfolgsantwort 202

Das Produkt ist außer Betrieb und wird bei delete_after endgültig gelöscht, sofern es nicht vorher wiederhergestellt wird. Eine idempotente Wiederholung liefert dasselbe Ergebnis.

application/json

  • valueobject
  • dataobjecterforderlich
  • idstringerforderlich

    format: "uuid"

  • namestringerforderlich
  • statusstringerforderlich

    enum: "deleting"

  • delete_afterstringerforderlich

    Zeitpunkt der endgültigen Löschung; bis dahin kann das Produkt wiederhergestellt werden.

    format: "date-time"

  • next_product_idstringerforderlich

    Das aktuelle Standardprodukt des Workspace.

    format: "uuid"

  • replayedboolean

curl-Beispiel

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

Zeige die Löschung eines Produkts und aller zugehörigen Daten in der Vorschau an, ohne etwas zu löschen. Erfordert einen Workspace-Administrator, angemeldet oder über vom Nutzer autorisiertes OAuth.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

productId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Was die Produktlöschung entfernt und stoppt.

application/json

  • valueobject
  • dataobjecterforderlich
  • productobjecterforderlich
  • idstringerforderlich

    format: "uuid"

  • namestringerforderlich
  • is_defaultbooleanerforderlich
  • next_default_productnicht angegebenerforderlich

    Das Produkt, das beim Löschen des Standardprodukts zum Workspace-Standard wird.

  • oneOf 1null
  • oneOf 2object
  • idstringerforderlich

    format: "uuid"

  • namestringerforderlich
  • last_productbooleanerforderlich

    Das einzige aktive Produkt kann nicht gelöscht werden.

  • mailboxesarrayerforderlich
  • Jedes Elementobject
  • idstringerforderlich

    format: "uuid"

  • addressstringerforderlich
  • domainsarrayerforderlich

    Versanddomains, die Banger nach Ablauf des Wiederherstellungszeitraums entfernt.

  • Jedes Elementobject
  • idstringerforderlich

    format: "uuid"

  • domainstringerforderlich
  • journeysintegererforderlich
  • broadcastsintegererforderlich
  • signup_formsintegererforderlich
  • contactsintegererforderlich
  • api_keysintegererforderlich
  • webhooksintegererforderlich
  • pending_sendsintegererforderlich
  • impactarrayerforderlich
  • Jedes Elementstring
  • preview_tokenstringerforderlich

curl-Beispiel

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

Stelle ein gelöschtes Produkt vor seinem delete_after wieder her. Seine Postfächer, Journeys, Anmeldeformulare, Webhooks und Integrationen werden wieder aktiviert; Kampagnen bleiben pausiert. Erfordert einen Workspace-Administrator, angemeldet oder über vom Nutzer autorisiertes OAuth.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

productId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Das Produkt ist wieder aktiv.

application/json

  • valueobject
  • dataobjecterforderlich
  • idstringerforderlich

    format: "uuid"

  • namestringerforderlich
  • statusstringerforderlich

    enum: "active"

curl-Beispiel

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}

Ein Einrichtungselement des Produkts aktualisieren

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

productId
path · erforderlich
  • valuestring

    format: "uuid"

key
path · erforderlich
  • valuestring

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

Anfrage-Body erforderlich

application/json

  • valueobject
  • statusstringerforderlich

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

  • completion_sourcestring

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

  • notestring

    maxLength: 1000

Erfolgsantwort 200

Erfolgreiche Antwort.

application/json

  • valueobject
  • dataobjecterforderlich
  • keystringerforderlich

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

  • statusstringerforderlich

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

  • completion_sourcestring | nullerforderlich

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

  • notestringerforderlich
  • updated_atstring | nullerforderlich

    format: "date-time"

curl-Beispiel

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

Eine Domain einem Produkt zuordnen

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

productId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body erforderlich

application/json

  • valueobject
  • domainstringerforderlich

    minLength: 3 · maxLength: 253

Erfolgsantwort 201

Erfolgreiche Antwort.

application/json

  • valueobject
  • dataobjecterforderlich
  • idstringerforderlich

    format: "uuid"

  • workspace_idstringerforderlich

    format: "uuid"

  • namestringerforderlich
  • slugstringerforderlich
  • kindstringerforderlich

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

  • website_urlstring | nullerforderlich
  • domainsarrayerforderlich
  • Jedes Elementstring
  • descriptionstringerforderlich
  • contextobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • brandobjecterforderlich
  • company_namestring

    maxLength: 160

  • logo_urlstring

    Das Symbol: die Bildmarke allein, klein verwendet (E-Mail-Fußzeile, eingeblendete Formulare) und als Kopfzeile, wenn keine Wortmarke vorhanden ist.

    maxLength: 2000

  • wordmark_urlstring

    Die Wortmarke: der gestaltete Firmenname, allein oben in jeder E-Mail angezeigt.

    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

  • statusstringerforderlich

    deleting: von einer Person gelöscht; bis delete_after wiederherstellbar, danach endgültig entfernt.

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

  • delete_afterstring | null

    Zeitpunkt der endgültigen Entfernung eines Produkts im Zustand deleting.

    format: "date-time"

  • is_defaultbooleanerforderlich
  • route_readybooleanerforderlich
  • setuparrayerforderlich
  • Jedes Elementobject
  • keystringerforderlich

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

  • statusstringerforderlich

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

  • completion_sourcestring | nullerforderlich

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

  • notestringerforderlich
  • updated_atstring | nullerforderlich

    format: "date-time"

  • created_atstringerforderlich

    format: "date-time"

  • updated_atstringerforderlich

    format: "date-time"

curl-Beispiel

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

Postfächer

GET/v1/workspaces/{workspaceId}/mailboxes

listMailboxes

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Für den Akteur sichtbare Postfächer.

application/json

  • valueobject
  • dataarrayerforderlich
  • Jedes Elementobject
  • idstringerforderlich

    format: "uuid"

  • workspace_idstringerforderlich

    format: "uuid"

  • product_idstring | null

    Das Produkt (Projekt), zu dem das Postfach gehört. Clients gruppieren damit Postfächer und erstellen Web-App-Links.

    format: "uuid"

  • domain_idstring | null

    format: "uuid"

  • addressstringerforderlich

    format: "email"

  • display_namestringerforderlich
  • providerstringerforderlich

    enum: "gmail", "smtp"

  • statusstringerforderlich

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

  • status_reasonstring | null
  • suspended_atstring | null
  • mailbox_kindstringerforderlich

    enum: "domain", "starter"

curl-Beispiel

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

Erstelle ein Banger-eigenes Arbeitspostfach auf einer Versanddomain des Workspace.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

Idempotency-Key
header · erforderlich
  • valuestring

    minLength: 16 · maxLength: 128

Anfrage-Body erforderlich

application/json

  • valueobject

    Keine zusätzlichen Eigenschaften

  • domain_idstringerforderlich

    format: "uuid"

  • local_partstringerforderlich

    minLength: 1 · maxLength: 64

  • display_namestring

    maxLength: 200

Erfolgsantwort 200

Idempotente Wiederholung einer nativen Postfacherstellung.

application/json

  • valueobject
  • dataobjecterforderlich
  • idstringerforderlich

    format: "uuid"

  • workspace_idstringerforderlich

    format: "uuid"

  • product_idstring | null

    Das Produkt (Projekt), zu dem das Postfach gehört. Clients gruppieren damit Postfächer und erstellen Web-App-Links.

    format: "uuid"

  • domain_idstring | null

    format: "uuid"

  • addressstringerforderlich

    format: "email"

  • display_namestringerforderlich
  • providerstringerforderlich

    enum: "gmail", "smtp"

  • statusstringerforderlich

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

  • status_reasonstring | null
  • suspended_atstring | null
  • mailbox_kindstringerforderlich

    enum: "domain", "starter"

curl-Beispiel

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

Zeige die endgültige Postfachlöschung und abhängige Versandabläufe in der Vorschau an. Erfordert einen Workspace-Administrator und Produktzugriff.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

mailboxId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Genaues Postfach und aktuelle Löschfolgen, ohne etwas zu löschen.

application/json

  • valueobject
  • dataobjecterforderlich
  • mailboxobjecterforderlich
  • idstringerforderlich

    format: "uuid"

  • addressstringerforderlich
  • providerstringerforderlich
  • domain_idstring | nullerforderlich

    format: "uuid"

  • provider_connection_idstring | nullerforderlich

    format: "uuid"

  • messagesintegererforderlich
  • draftsintegererforderlich
  • pending_sendsintegererforderlich
  • broadcastsarrayerforderlich
  • Jedes Elementobject
  • idstringerforderlich

    format: "uuid"

  • namestringerforderlich
  • statusstringerforderlich
  • journeysarrayerforderlich
  • Jedes Elementobject
  • idstringerforderlich

    format: "uuid"

  • namestringerforderlich
  • statusstringerforderlich
  • signup_formsarrayerforderlich
  • Jedes Elementobject
  • idstringerforderlich

    format: "uuid"

  • namestringerforderlich
  • statusstringerforderlich
  • impactarrayerforderlich
  • Jedes Elementstring
  • preview_tokenstringerforderlich

curl-Beispiel

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}

Lege den Absendernamen fest, den Empfänger bei E-Mails eines Banger-Postfachs sehen ("Name <address>"). Gmail-Postfächer behalten den in Gmail festgelegten Namen. Erfordert einen Workspace-Administrator.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

mailboxId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body erforderlich

application/json

  • valueobject

    Keine zusätzlichen Eigenschaften

  • display_namestringerforderlich

    Eine Zeile. Leer wird nur die Adresse gesendet.

    maxLength: 200

Erfolgsantwort 200

Das Postfach mit seinem Absendernamen.

application/json

  • valueobject
  • dataobjecterforderlich
  • idstringerforderlich

    format: "uuid"

  • workspace_idstringerforderlich

    format: "uuid"

  • product_idstring | null

    Das Produkt (Projekt), zu dem das Postfach gehört. Clients gruppieren damit Postfächer und erstellen Web-App-Links.

    format: "uuid"

  • domain_idstring | null

    format: "uuid"

  • addressstringerforderlich

    format: "email"

  • display_namestringerforderlich
  • providerstringerforderlich

    enum: "gmail", "smtp"

  • statusstringerforderlich

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

  • status_reasonstring | null
  • suspended_atstring | null
  • mailbox_kindstringerforderlich

    enum: "domain", "starter"

curl-Beispiel

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}

Lösche ein Postfach endgültig; seine Domain und andere Postfächer bleiben erhalten. Erfordert einen Workspace-Administrator und Produktzugriff.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

mailboxId
path · erforderlich
  • valuestring

    format: "uuid"

Idempotency-Key
header · erforderlich
  • valuestring

    minLength: 16 · maxLength: 128

Anfrage-Body erforderlich

application/json

  • valueobject

    Keine zusätzlichen Eigenschaften

  • confirm_addressstringerforderlich

    minLength: 3 · maxLength: 320

  • preview_tokenstringerforderlich

    minLength: 64 · maxLength: 64

Erfolgsantwort 200

Gelöscht oder idempotente Wiederholung. Gespeicherte Dateien werden zur endgültigen Bereinigung eingereiht.

application/json

  • valueobject
  • dataobjecterforderlich
  • idstringerforderlich

    format: "uuid"

  • addressstringerforderlich
  • deletedbooleanerforderlich
  • replayedboolean

curl-Beispiel

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

Erstelle ein gehostetes Postfach, beschränkt auf gehostete Posteingänge desselben Produkts und den Registrierungsempfänger des Workspace.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

Idempotency-Key
header · erforderlich
  • valuestring

    minLength: 16 · maxLength: 128

Anfrage-Body erforderlich

application/json

  • valueobject

    Keine zusätzlichen Eigenschaften

  • create_newboolean

    Erstelle ein zusätzliches gehostetes Postfach, statt das erste fortzusetzen.

  • local_partstring

    Name vor @bangermail.com. Ohne ihn erhält das Postfach einen Wortnamen wie quiet-maple-harbor.

    minLength: 3 · maxLength: 40

  • display_namestring

    maxLength: 200

Erfolgsantwort 200

Idempotente Wiederholung der Erstellung einer Startidentität.

application/json

  • valueobject
  • dataobjecterforderlich
  • idstringerforderlich

    format: "uuid"

  • workspace_idstringerforderlich

    format: "uuid"

  • product_idstring | null

    Das Produkt (Projekt), zu dem das Postfach gehört. Clients gruppieren damit Postfächer und erstellen Web-App-Links.

    format: "uuid"

  • domain_idstring | null

    format: "uuid"

  • addressstringerforderlich

    format: "email"

  • display_namestringerforderlich
  • providerstringerforderlich

    enum: "gmail", "smtp"

  • statusstringerforderlich

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

  • status_reasonstring | null
  • suspended_atstring | null
  • mailbox_kindstringerforderlich

    enum: "domain", "starter"

curl-Beispiel

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

Hebe die durch Absenderreputation bedingte Pause eines Postfachs gemäß den Selbstbedienungsregeln von resumeSending auf.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

mailboxId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body erforderlich

application/json

  • valueobject

    Keine zusätzlichen Eigenschaften

  • acknowledge_recipient_complaintbooleanerforderlich

    const: true

  • reasonstring

    Grund für die Wiederherstellung des Versands; im Auditprotokoll erfasst.

    maxLength: 500

Erfolgsantwort 200

Postfach reaktiviert oder nach einer früheren erfolgreichen Anfrage bereits aktiv.

application/json

  • valueobject
  • dataobjecterforderlich
  • idstringerforderlich

    format: "uuid"

  • workspace_idstringerforderlich

    format: "uuid"

  • product_idstring | null

    Das Produkt (Projekt), zu dem das Postfach gehört. Clients gruppieren damit Postfächer und erstellen Web-App-Links.

    format: "uuid"

  • domain_idstring | null

    format: "uuid"

  • addressstringerforderlich

    format: "email"

  • display_namestringerforderlich
  • providerstringerforderlich

    enum: "gmail", "smtp"

  • statusstringerforderlich

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

  • status_reasonstring | null
  • suspended_atstring | null
  • mailbox_kindstringerforderlich

    enum: "domain", "starter"

curl-Beispiel

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

Entwürfe

GET/v1/workspaces/{workspaceId}/drafts

listDrafts

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

mailbox_id
query
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Erfolgreiche Antwort.

application/json

  • valueobject
  • dataarrayerforderlich
  • Jedes Elementobject
  • idstringerforderlich

    format: "uuid"

  • mailbox_idstringerforderlich

    format: "uuid"

  • thread_idstring | nullerforderlich

    format: "uuid"

  • versionintegererforderlich
  • toarrayerforderlich
  • Jedes Elementobject
  • emailstringerforderlich
  • namestring
  • ccarrayerforderlich
  • Jedes Elementobject
  • emailstringerforderlich
  • namestring
  • bccarrayerforderlich
  • Jedes Elementobject
  • emailstringerforderlich
  • namestring
  • subjectstringerforderlich
  • body_textstringerforderlich
  • statusstringerforderlich
  • created_atstringerforderlich

    format: "date-time"

  • updated_atstringerforderlich

    format: "date-time"

  • attachmentsarrayerforderlich
  • Jedes Elementobject
  • idstringerforderlich

    format: "uuid"

  • filenamestringerforderlich
  • content_typestringerforderlich
  • size_bytesintegererforderlich
  • sha256string
  • created_atstring

    format: "date-time"

  • body_html_urlstring

    format: "uri"

curl-Beispiel

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

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body erforderlich

application/json

  • valueobject

    Keine zusätzlichen Eigenschaften

  • mailbox_idstringerforderlich

    format: "uuid"

  • thread_idstring

    format: "uuid"

  • toarray

    maxItems: 500

  • Jedes Elementobject
  • namestring
  • emailstringerforderlich

    format: "email"

  • ccarray

    maxItems: 500

  • Jedes Elementobject
  • namestring
  • emailstringerforderlich

    format: "email"

  • bccarray

    maxItems: 500

  • Jedes Elementobject
  • namestring
  • emailstringerforderlich

    format: "email"

  • subjectstring

    maxLength: 10000

  • body_textstring

    maxLength: 2000000

  • body_htmlstring

    maxLength: 2000000

Erfolgsantwort 201

Erfolgreiche Antwort.

application/json

  • valueobject
  • dataobjecterforderlich
  • idstringerforderlich

    format: "uuid"

  • mailbox_idstringerforderlich

    format: "uuid"

  • thread_idstring | nullerforderlich

    format: "uuid"

  • versionintegererforderlich
  • toarrayerforderlich
  • Jedes Elementobject
  • emailstringerforderlich
  • namestring
  • ccarrayerforderlich
  • Jedes Elementobject
  • emailstringerforderlich
  • namestring
  • bccarrayerforderlich
  • Jedes Elementobject
  • emailstringerforderlich
  • namestring
  • subjectstringerforderlich
  • body_textstringerforderlich
  • statusstringerforderlich
  • created_atstringerforderlich

    format: "date-time"

  • updated_atstringerforderlich

    format: "date-time"

  • attachmentsarrayerforderlich
  • Jedes Elementobject
  • idstringerforderlich

    format: "uuid"

  • filenamestringerforderlich
  • content_typestringerforderlich
  • size_bytesintegererforderlich
  • sha256string
  • created_atstring

    format: "date-time"

  • body_html_urlstring

    format: "uri"

curl-Beispiel

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

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

draftId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Kanonische Zustellleistung, Status und Vorfälle.

application/json

  • valueobject
  • dataobjecterforderlich
  • idstringerforderlich

    format: "uuid"

  • mailbox_idstringerforderlich

    format: "uuid"

  • thread_idstring | nullerforderlich

    format: "uuid"

  • versionintegererforderlich
  • toarrayerforderlich
  • Jedes Elementobject
  • emailstringerforderlich
  • namestring
  • ccarrayerforderlich
  • Jedes Elementobject
  • emailstringerforderlich
  • namestring
  • bccarrayerforderlich
  • Jedes Elementobject
  • emailstringerforderlich
  • namestring
  • subjectstringerforderlich
  • body_textstringerforderlich
  • statusstringerforderlich
  • created_atstringerforderlich

    format: "date-time"

  • updated_atstringerforderlich

    format: "date-time"

  • attachmentsarrayerforderlich
  • Jedes Elementobject
  • idstringerforderlich

    format: "uuid"

  • filenamestringerforderlich
  • content_typestringerforderlich
  • size_bytesintegererforderlich
  • sha256string
  • created_atstring

    format: "date-time"

  • body_html_urlstring

    format: "uri"

curl-Beispiel

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

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

draftId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body erforderlich

application/json

  • valuenicht angegeben
  • allOf 1object

    Keine zusätzlichen Eigenschaften

  • mailbox_idstringerforderlich

    format: "uuid"

  • thread_idstring

    format: "uuid"

  • toarray

    maxItems: 500

  • Jedes Elementobject
  • namestring
  • emailstringerforderlich

    format: "email"

  • ccarray

    maxItems: 500

  • Jedes Elementobject
  • namestring
  • emailstringerforderlich

    format: "email"

  • bccarray

    maxItems: 500

  • Jedes Elementobject
  • namestring
  • emailstringerforderlich

    format: "email"

  • subjectstring

    maxLength: 10000

  • body_textstring

    maxLength: 2000000

  • body_htmlstring

    maxLength: 2000000

  • allOf 2object
  • versionintegererforderlich

    minimum: 1

Erfolgsantwort 200

Erfolgreiche Antwort.

application/json

  • valueobject
  • dataobjecterforderlich
  • idstringerforderlich

    format: "uuid"

  • mailbox_idstringerforderlich

    format: "uuid"

  • thread_idstring | nullerforderlich

    format: "uuid"

  • versionintegererforderlich
  • toarrayerforderlich
  • Jedes Elementobject
  • emailstringerforderlich
  • namestring
  • ccarrayerforderlich
  • Jedes Elementobject
  • emailstringerforderlich
  • namestring
  • bccarrayerforderlich
  • Jedes Elementobject
  • emailstringerforderlich
  • namestring
  • subjectstringerforderlich
  • body_textstringerforderlich
  • statusstringerforderlich
  • created_atstringerforderlich

    format: "date-time"

  • updated_atstringerforderlich

    format: "date-time"

  • attachmentsarrayerforderlich
  • Jedes Elementobject
  • idstringerforderlich

    format: "uuid"

  • filenamestringerforderlich
  • content_typestringerforderlich
  • size_bytesintegererforderlich
  • sha256string
  • created_atstring

    format: "date-time"

  • body_html_urlstring

    format: "uri"

curl-Beispiel

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

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

draftId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 204

Entwurf und referenzierte Objekte zur Löschung vorgesehen.

Kein Antwort-Body.

curl-Beispiel

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

Sendet den Entwurf aus seinem Postfach, auf das der Aufrufer Zugriff haben muss. Benötigen seine Sendungen eine Freigabe, erhält er eine ausstehende Freigabe; eine Person, die den Entwurf direkt senden könnte, entscheidet.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

draftId
path · erforderlich
  • valuestring

    format: "uuid"

Idempotency-Key
header · erforderlich
  • valuestring

    minLength: 16 · maxLength: 128

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 202

Der Versand ist eingereiht oder wartet auf Freigabe.

application/json

  • valueobject
  • datanicht angegebenerforderlich
  • oneOf 1object
  • idstringerforderlich

    format: "uuid"

  • typestringerforderlich
  • statusstringerforderlich

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

  • workspace_revisionintegererforderlich

    format: "int64"

  • created_atstringerforderlich

    format: "date-time"

  • oneOf 2object

    Keine zusätzlichen Eigenschaften

  • approvalobjecterforderlich
  • idstringerforderlich

    format: "uuid"

  • requested_by_actor_idstringerforderlich
  • action_kindstringerforderlich
  • summarystringerforderlich
  • capability_scopesarrayerforderlich
  • Jedes Elementstring
  • resource_scopeobjecterforderlich
  • Zusätzliche Eigenschaftarray
  • Jedes Elementstring

    Weitere Verschachtelung ausgelassen

  • payloadobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • payload_sha256stringerforderlich

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

  • statusstringerforderlich

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

  • missedbooleanerforderlich
  • expires_atstringerforderlich

    format: "date-time"

  • decided_by_actor_idstring | null
  • decision_reasonstring | null
  • created_atstringerforderlich

    format: "date-time"

  • updated_atstringerforderlich

    format: "date-time"

  • decided_atstring | null

    format: "date-time"

  • execution_job_idstring

    format: "uuid"

  • reviewobject

    Keine zusätzlichen Eigenschaften

  • dispositionstringerforderlich

    enum: "automatic", "human_required"

  • recipient_countinteger | nullerforderlich

    minimum: 0

  • reasonsarrayerforderlich
  • Jedes Elementstring

    Weitere Verschachtelung ausgelassen

  • checksarrayerforderlich
  • Jedes Elementstring

    Weitere Verschachtelung ausgelassen

curl-Beispiel

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

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

draftId
path · erforderlich
  • valuestring

    format: "uuid"

X-Banger-Filename
header · erforderlich
  • valuestring

    minLength: 1 · maxLength: 500

Anfrage-Body erforderlich

application/octet-stream

  • valuestring

    format: "binary" · maxLength: 26214400

Erfolgsantwort 201

Erfolgreiche Antwort.

application/json

  • valueobject
  • dataobjecterforderlich
  • idstringerforderlich

    format: "uuid"

  • filenamestringerforderlich
  • content_typestringerforderlich
  • size_bytesintegererforderlich
  • sha256string
  • created_atstring

    format: "date-time"

curl-Beispiel

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

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

draftId
path · erforderlich
  • valuestring

    format: "uuid"

attachmentId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 204

Anhang zur versionsbewussten B2-Löschung vorgesehen.

Kein Antwort-Body.

curl-Beispiel

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

HTML-Body eines Entwurfs lesen

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

draftId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Entwurfs-HTML.

text/html

  • valuestring

curl-Beispiel

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

Versand

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

listSendIntents

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

limit
query
  • valueinteger

    minimum: 1 · maximum: 100 · default: 50

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Aktuelle kanonische Sendungen und ihr Anbieterstatus.

application/json

  • valueobject
  • dataarrayerforderlich
  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

  • idstringerforderlich

    format: "uuid"

  • statusstringerforderlich

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

  • traffic_classstringerforderlich

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

  • recipient_countintegererforderlich

    minimum: 1

  • provider_keystringerforderlich
  • provider_statestringerforderlich

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

  • provider_message_idstring | null
  • error_codestring | null
  • created_atstringerforderlich

    format: "date-time"

  • updated_atstringerforderlich

    format: "date-time"

  • completed_atstring | null

    format: "date-time"

curl-Beispiel

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

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

sendIntentId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Kanonischer asynchroner Versandstatus.

application/json

  • valueobject
  • dataobjecterforderlich

    Keine zusätzlichen Eigenschaften

  • idstringerforderlich

    format: "uuid"

  • statusstringerforderlich

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

  • traffic_classstringerforderlich

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

  • recipient_countintegererforderlich

    minimum: 1

  • provider_keystringerforderlich
  • provider_statestringerforderlich

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

  • provider_message_idstring | null
  • error_codestring | null
  • created_atstringerforderlich

    format: "date-time"

  • updated_atstringerforderlich

    format: "date-time"

  • completed_atstring | null

    format: "date-time"

curl-Beispiel

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

Transaktionsversand

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

listTransactionalSends

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

limit
query
  • valueinteger

    minimum: 1 · maximum: 500 · default: 200

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Erfolgreiche Antwort.

application/json

  • valueobject
  • dataarrayerforderlich
  • Jedes Elementobject
  • idstringerforderlich

    format: "uuid"

  • mailbox_idstring | nullerforderlich

    format: "uuid"

  • command_idstring | nullerforderlich

    format: "uuid"

  • statusstringerforderlich
  • command_statusstring | nullerforderlich
  • subjectstring
  • recipientsarray
  • Jedes Elementobject
  • emailstringerforderlich
  • namestring
  • recipient_countintegererforderlich
  • error_codestring | null
  • send_intent_idstring

    format: "uuid"

  • providerstring | null
  • route_kindstring | null
  • sourcestring
  • from_addressstring
  • recipient_statesobject
  • Zusätzliche Eigenschaftinteger
  • provider_message_idstring | null
  • languagenicht angegeben

    Sprache, in der diese E-Mail gesendet wurde; null, wenn sie nicht übersetzt wurde.

  • anyOf 1object

    Sprache, in der eine Person eine E-Mail erhielt. Nur übersetzte E-Mails (verwaltete Inhalte) haben eine.

  • localestringerforderlich

    BCP-47-Tag der Sprache, in der die E-Mail verfasst wurde.

  • requested_localestring

    Nur bei einer älteren Sendung in einer anderen Sprache vorhanden: die Sprache, die die Person hätte erhalten sollen.

  • fallback_reasonstring

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

  • anyOf 2null
  • journeyobject | null

    Journey-Schritt und Anmeldung, die diese E-Mail gesendet haben; null bei anderen Sendungen.

  • journey_idstringerforderlich

    format: "uuid"

  • step_idstringerforderlich

    format: "uuid"

  • enrollment_idstringerforderlich

    format: "uuid"

  • experimentobject | null

    Experimentvariante dieser E-Mail; null, wenn keine zutraf.

  • experiment_idstringerforderlich

    format: "uuid"

  • variant_keystringerforderlich
  • created_atstringerforderlich

    format: "date-time"

  • updated_atstringerforderlich

    format: "date-time"

  • completed_atstring | nullerforderlich

    format: "date-time"

  • template_idstring | null

    format: "uuid"

  • template_versioninteger | null
  • workspace_revisioninteger | null
  • command_resultobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • command_started_atstring | null

    format: "date-time"

  • command_completed_atstring | null

    format: "date-time"

  • body_textstring
  • body_htmlstring
  • reply_toarray
  • Jedes Elementobject
  • emailstringerforderlich
  • namestring
  • headersobject
  • Zusätzliche Eigenschaftstring
  • tagsarray
  • Jedes Elementobject
  • namestringerforderlich
  • valuestringerforderlich

curl-Beispiel

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

Ein Empfänger pro Journey-Sendung. To akzeptiert einen Empfänger in jedem RecipientInput-Format ("a@example.com", "Pat <a@example.com>", { email, name } oder eine Liste mit einem Element); Cc und Bcc müssen leer sein. reply_to verwendet standardmäßig das Journey-Postfach (auch eine leere Liste bedeutet den Standard); Produkt-E-Mails benötigen genau eines. Eine neue API-Journey verwendet standardmäßig verwaltete Quellinhalte; ältere Code-Journeys behalten Sendungen mit vollständigem Inhalt. Eine Ablehnung (4xx) friert für den Empfänger nichts ein, sodass ein korrigierter Aufruf mit neuem Idempotenzschlüssel sendet.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

Idempotency-Key
header · erforderlich
  • valuestring

    minLength: 16 · maxLength: 128

Anfrage-Body erforderlich

application/json

  • valueobject
  • mailbox_idstringerforderlich

    format: "uuid"

  • tonicht angegebenerforderlich

    Empfänger für to, cc, bcc und reply_to: eine Adresse ("a@example.com" oder "Pat <a@example.com>"), ein { email, name }-Objekt oder eine Liste mit beiden Formen. Banger speichert sie als { email, name }-Objekte mit kleingeschriebener E-Mail-Adresse. Der Idempotenzhash umfasst den Body wie gesendet; wiederhole deshalb mit derselben Form.

  • oneOf 1string

    minLength: 3 · maxLength: 1000

  • oneOf 2object
  • namestring
  • emailstringerforderlich

    format: "email"

  • oneOf 3array

    maxItems: 500

  • Jedes Elementnicht angegeben
  • oneOf 1string

    minLength: 3 · maxLength: 1000

  • oneOf 2object
  • namestring
  • emailstringerforderlich

    format: "email"

  • ccarray

    maxItems: 0

  • Jedes Elementobject
  • namestring
  • emailstringerforderlich

    format: "email"

  • bccarray

    maxItems: 0

  • Jedes Elementobject
  • namestring
  • emailstringerforderlich

    format: "email"

  • subjectstring

    maxLength: 10000

  • expires_atstring

    Verwirf eine verzögerte Journey-Sendung nach diesem Zeitpunkt; höchstens sieben Tage nach der ursprünglichen Anfrage.

    format: "date-time"

  • expires_after_secondsinteger

    minimum: 1 · maximum: 604800

  • body_textstring

    maxLength: 2000000

  • body_htmlstring

    maxLength: 2000000

  • reply_tonicht angegeben

    Empfänger für to, cc, bcc und reply_to: eine Adresse ("a@example.com" oder "Pat <a@example.com>"), ein { email, name }-Objekt oder eine Liste mit beiden Formen. Banger speichert sie als { email, name }-Objekte mit kleingeschriebener E-Mail-Adresse. Der Idempotenzhash umfasst den Body wie gesendet; wiederhole deshalb mit derselben Form.

  • oneOf 1string

    minLength: 3 · maxLength: 1000

  • oneOf 2object
  • namestring
  • emailstringerforderlich

    format: "email"

  • oneOf 3array

    maxItems: 500

  • Jedes Elementnicht angegeben
  • oneOf 1string

    minLength: 3 · maxLength: 1000

  • oneOf 2object
  • namestring
  • emailstringerforderlich

    format: "email"

  • headersobject
  • Zusätzliche Eigenschaftstring

    maxLength: 5000

  • tagsarray

    maxItems: 49

  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

  • namestringerforderlich

    minLength: 1 · maxLength: 256

  • valuestringerforderlich

    minLength: 1 · maxLength: 256

Erfolgsantwort 202

Erfolgreiche Antwort.

application/json

  • valueobject
  • dataobjecterforderlich
  • action_kindstringerforderlich

    enum: "transactional.send"

  • idstring

    format: "uuid"

  • send_intent_idstring

    format: "uuid"

  • provider_attempt_idstring

    format: "uuid"

  • statusstringerforderlich

    sent/queued-Zustände der Zustellung oder bei eingefrorenen Anfragen: deferred (durch Richtlinie geplant oder auf Übersetzung wartend), processing (wird gesendet), discarded.

  • replayedboolean
  • journeynicht angegebenerforderlich
  • anyOf 1object
  • journey_idstringerforderlich

    format: "uuid"

  • enrollment_idstringerforderlich

    format: "uuid"

  • step_idstringerforderlich

    format: "uuid"

  • step_positionintegererforderlich
  • originstring

    enum: "journey"

  • journey_identitystring
  • anyOf 2null
  • ignored_variablesarrayerforderlich
  • Jedes Elementstring
  • scheduled_atstring

    format: "date-time"

  • reasonstring
  • communication_reservation_idstring

    format: "uuid"

curl-Beispiel

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

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

transactionalSendId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Erfolgreiche Antwort.

application/json

  • valueobject
  • dataobjecterforderlich
  • idstringerforderlich

    format: "uuid"

  • mailbox_idstring | nullerforderlich

    format: "uuid"

  • command_idstring | nullerforderlich

    format: "uuid"

  • statusstringerforderlich
  • command_statusstring | nullerforderlich
  • subjectstring
  • recipientsarray
  • Jedes Elementobject
  • emailstringerforderlich
  • namestring
  • recipient_countintegererforderlich
  • error_codestring | null
  • send_intent_idstring

    format: "uuid"

  • providerstring | null
  • route_kindstring | null
  • sourcestring
  • from_addressstring
  • recipient_statesobject
  • Zusätzliche Eigenschaftinteger
  • provider_message_idstring | null
  • languagenicht angegeben

    Sprache, in der diese E-Mail gesendet wurde; null, wenn sie nicht übersetzt wurde.

  • anyOf 1object

    Sprache, in der eine Person eine E-Mail erhielt. Nur übersetzte E-Mails (verwaltete Inhalte) haben eine.

  • localestringerforderlich

    BCP-47-Tag der Sprache, in der die E-Mail verfasst wurde.

  • requested_localestring

    Nur bei einer älteren Sendung in einer anderen Sprache vorhanden: die Sprache, die die Person hätte erhalten sollen.

  • fallback_reasonstring

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

  • anyOf 2null
  • journeyobject | null

    Journey-Schritt und Anmeldung, die diese E-Mail gesendet haben; null bei anderen Sendungen.

  • journey_idstringerforderlich

    format: "uuid"

  • step_idstringerforderlich

    format: "uuid"

  • enrollment_idstringerforderlich

    format: "uuid"

  • experimentobject | null

    Experimentvariante dieser E-Mail; null, wenn keine zutraf.

  • experiment_idstringerforderlich

    format: "uuid"

  • variant_keystringerforderlich
  • created_atstringerforderlich

    format: "date-time"

  • updated_atstringerforderlich

    format: "date-time"

  • completed_atstring | nullerforderlich

    format: "date-time"

  • template_idstring | null

    format: "uuid"

  • template_versioninteger | null
  • workspace_revisioninteger | null
  • command_resultobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • command_started_atstring | null

    format: "date-time"

  • command_completed_atstring | null

    format: "date-time"

  • body_textstring
  • body_htmlstring
  • reply_toarray
  • Jedes Elementobject
  • emailstringerforderlich
  • namestring
  • headersobject
  • Zusätzliche Eigenschaftstring
  • tagsarray
  • Jedes Elementobject
  • namestringerforderlich
  • valuestringerforderlich

curl-Beispiel

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

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

transactionalSendId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Geordnete Zeitleiste von Annahme, Anbieterversuchen und Empfängerereignissen.

application/json

  • valueobject
  • dataarrayerforderlich
  • Jedes Elementobject
  • occurred_atstringerforderlich

    format: "date-time"

  • event_typestringerforderlich
  • labelstringerforderlich
  • providerstring | null
  • recipient_domainstring | null
  • error_codestring | null

curl-Beispiel

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

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

transactionalSendId
path · erforderlich
  • valuestring

    format: "uuid"

Idempotency-Key
header · erforderlich
  • valuestring

    minLength: 16 · maxLength: 128

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 202

Erfolgreiche Antwort.

application/json

  • valueobject
  • dataobjecterforderlich
  • action_kindstringerforderlich

    enum: "transactional.send"

  • idstringerforderlich

    format: "uuid"

  • send_intent_idstringerforderlich

    format: "uuid"

  • provider_attempt_idstringerforderlich

    format: "uuid"

  • statusstringerforderlich
  • replayedbooleanerforderlich

curl-Beispiel

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'

Unterhaltungen

GET/v1/workspaces/{workspaceId}/threads

listThreads

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • 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

Nur Unterhaltungen mit diesem Postfachlabel zurückgeben.

  • valuestring

    format: "uuid"

view
query
  • valuestring

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

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Workspace-Unterhaltungen mit Keyset-Paginierung.

application/json

  • valueobject
  • dataarrayerforderlich
  • Jedes Elementobject
  • idstringerforderlich

    format: "uuid"

  • mailbox_idstringerforderlich

    format: "uuid"

  • subjectstringerforderlich
  • snippetstringerforderlich
  • last_message_atstringerforderlich

    format: "date-time"

  • message_countintegererforderlich
  • unread_countintegererforderlich
  • is_archivedbooleanerforderlich
  • is_trashbooleanerforderlich
  • is_spambooleanerforderlich
  • is_starredbooleanerforderlich
  • is_sentbooleanerforderlich
  • has_attachmentsbooleanerforderlich
  • labelsarrayerforderlich
  • Jedes Elementstring
  • participantsarray
  • Jedes Elementobject
  • namestring
  • emailstringerforderlich

    format: "email"

  • pageobjecterforderlich
  • next_cursorstring
  • has_morebooleanerforderlich

curl-Beispiel

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

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

threadId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Unterhaltung und geordnete Nachrichten.

application/json

  • valueobject
  • datanicht angegebenerforderlich
  • allOf 1object
  • idstringerforderlich

    format: "uuid"

  • mailbox_idstringerforderlich

    format: "uuid"

  • subjectstringerforderlich
  • snippetstringerforderlich
  • last_message_atstringerforderlich

    format: "date-time"

  • message_countintegererforderlich
  • unread_countintegererforderlich
  • is_archivedbooleanerforderlich
  • is_trashbooleanerforderlich
  • is_spambooleanerforderlich
  • is_starredbooleanerforderlich
  • is_sentbooleanerforderlich
  • has_attachmentsbooleanerforderlich
  • labelsarrayerforderlich
  • Jedes Elementstring
  • participantsarray
  • Jedes Elementobject
  • namestring
  • emailstringerforderlich

    format: "email"

  • allOf 2object
  • messagesarrayerforderlich
  • Jedes Elementobject
  • idstringerforderlich

    format: "uuid"

  • mailbox_idstringerforderlich

    format: "uuid"

  • thread_idstringerforderlich

    format: "uuid"

  • sent_atstringerforderlich

    format: "date-time"

  • received_atstring

    format: "date-time"

  • envelope_recipientsarray

    Ursprüngliche SMTP-Umschlagempfänger, vom SMTP-Eingang hinsichtlich Groß-/Kleinschreibung normalisiert, vor dem Routing reiner Empfangsaliase. Leer bei älteren Nachrichten oder Nicht-SMTP-Quellen. Unabhängig von sichtbaren To/Cc-Headern.

  • Jedes Elementstring

    format: "email"

    Weitere Verschachtelung ausgelassen

  • fromobjecterforderlich
  • namestring

    Weitere Verschachtelung ausgelassen

  • emailstringerforderlich

    format: "email"

    Weitere Verschachtelung ausgelassen

  • toarrayerforderlich
  • Jedes Elementobject

    Weitere Verschachtelung ausgelassen

  • ccarray
  • Jedes Elementobject

    Weitere Verschachtelung ausgelassen

  • reply_toarray
  • Jedes Elementobject

    Weitere Verschachtelung ausgelassen

  • is_sentboolean

    Ob diese Nachricht vom Postfach gesendet wurde, auch über einen Alias.

  • body_textstring
  • body_html_urlstring

    format: "uri"

  • reply_originobject
  • send_intent_idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • sourcestringerforderlich

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

    Weitere Verschachtelung ausgelassen

  • source_idstring

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • traffic_classstringerforderlich

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

    Weitere Verschachtelung ausgelassen

  • kindstringerforderlich

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

    Weitere Verschachtelung ausgelassen

  • namestring

    Weitere Verschachtelung ausgelassen

  • has_attachmentsbooleanerforderlich
  • attachmentsarray
  • Jedes Elementobject

    Weitere Verschachtelung ausgelassen

curl-Beispiel

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

Nachrichten

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

getMessageHtml

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

messageId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Authentifizierter, durch Sandbox beschränkter HTML-Nachrichtenbody.

text/html

  • valuestring

curl-Beispiel

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

Anhänge

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

downloadAttachment

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

attachmentId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Authentifizierter Anhangstream.

application/octet-stream

  • valuestring

    format: "binary"

curl-Beispiel

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

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

q
query · erforderlich
  • 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"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Suchergebnisse im gesamten Workspace.

application/json

  • valueobject
  • dataarrayerforderlich
  • Jedes Elementobject
  • idstringerforderlich

    format: "uuid"

  • mailbox_idstringerforderlich

    format: "uuid"

  • subjectstringerforderlich
  • snippetstringerforderlich
  • last_message_atstringerforderlich

    format: "date-time"

  • message_countintegererforderlich
  • unread_countintegererforderlich
  • is_archivedbooleanerforderlich
  • is_trashbooleanerforderlich
  • is_spambooleanerforderlich
  • is_starredbooleanerforderlich
  • is_sentbooleanerforderlich
  • has_attachmentsbooleanerforderlich
  • labelsarrayerforderlich
  • Jedes Elementstring
  • participantsarray
  • Jedes Elementobject
  • namestring
  • emailstringerforderlich

    format: "email"

  • pageobjecterforderlich
  • next_cursorstring
  • has_morebooleanerforderlich

curl-Beispiel

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"

Kontakte

GET/v1/workspaces/{workspaceId}/contacts

listContacts

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

cursor
query
  • valuestring

    maxLength: 1024

limit
query
  • valueinteger

    minimum: 1 · maximum: 100 · default: 50

q
query
  • valuestring

    maxLength: 512

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Erfolgreiche Antwort.

application/json

  • valueobject
  • dataarrayerforderlich
  • Jedes Elementobject
  • idstringerforderlich

    format: "uuid"

  • emailstringerforderlich

    format: "email"

  • display_namestring | nullerforderlich
  • attributesobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • statusstringerforderlich

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

  • created_atstringerforderlich

    format: "date-time"

  • updated_atstringerforderlich

    format: "date-time"

  • pageobjecterforderlich
  • next_cursorstring
  • has_morebooleanerforderlich

curl-Beispiel

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

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body erforderlich

application/json

  • valueobject

    Keine zusätzlichen Eigenschaften

  • emailstringerforderlich

    format: "email"

  • display_namestring

    maxLength: 1000

  • statusstringerforderlich

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

  • attributesobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • consent_confirmedboolean

    Beim erstmaligen Abonnieren einer Adresse erforderlich.

Erfolgsantwort 201

Erfolgreiche Antwort.

application/json

  • valueobject
  • dataobjecterforderlich
  • idstringerforderlich

    format: "uuid"

  • emailstringerforderlich

    format: "email"

  • display_namestring | nullerforderlich
  • attributesobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • statusstringerforderlich

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

  • created_atstringerforderlich

    format: "date-time"

  • updated_atstringerforderlich

    format: "date-time"

curl-Beispiel

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

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

contactId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Erfolgreiche Antwort.

application/json

  • valueobject
  • dataobjecterforderlich
  • idstringerforderlich

    format: "uuid"

  • emailstringerforderlich

    format: "email"

  • display_namestring | nullerforderlich
  • attributesobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • statusstringerforderlich

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

  • created_atstringerforderlich

    format: "date-time"

  • updated_atstringerforderlich

    format: "date-time"

  • suppressedbooleanerforderlich
  • suppression_reasonstring | nullerforderlich
  • sourcesarrayerforderlich
  • Jedes Elementobject
  • kindstringerforderlich
  • referencestringerforderlich
  • connection_idstring | nullerforderlich

    format: "uuid"

  • metadataobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • first_seen_atstringerforderlich

    format: "date-time"

  • last_seen_atstringerforderlich

    format: "date-time"

  • listsarrayerforderlich
  • Jedes Elementobject
  • idstringerforderlich

    format: "uuid"

  • namestringerforderlich
  • subscription_statusstringerforderlich
  • consent_evidencearrayerforderlich
  • Jedes Elementobject
  • kindstringerforderlich
  • referencestringerforderlich
  • connection_idstring | nullerforderlich

    format: "uuid"

  • metadataobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • first_seen_atstringerforderlich

    format: "date-time"

  • last_seen_atstringerforderlich

    format: "date-time"

curl-Beispiel

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

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

contactId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 204

Kontakt gelöscht.

Kein Antwort-Body.

curl-Beispiel

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

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Erfolgreiche Antwort.

application/json

  • valueobject
  • dataarrayerforderlich
  • Jedes Elementobject
  • idstring

    format: "uuid"

  • filenamestring
  • list_idstring | null

    format: "uuid"

  • list_namestring | null
  • statusstring
  • total_rowsinteger
  • imported_rowsinteger
  • invalid_rowsinteger
  • error_summaryarray
  • Jedes Elementstring
  • 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"

curl-Beispiel

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

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body erforderlich

application/json

  • valueobject
  • filenamestringerforderlich

    minLength: 1 · maxLength: 500

  • list_idstring

    format: "uuid"

  • consent_confirmedboolean

    Erforderlich, wenn eine importierte Zeile abonniert ist.

  • rowsarrayerforderlich

    minItems: 1 · maxItems: 5000

  • Jedes Elementobject
  • emailstringerforderlich

    format: "email"

  • display_namestring

    maxLength: 1000

  • statusstring

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

  • attributesobject
  • Zusätzliche EigenschaftBeliebiger Wert

Erfolgsantwort 201

Erfolgreiche Antwort.

application/json

  • valueobject
  • dataobjecterforderlich
  • idstringerforderlich

    format: "uuid"

  • statusstringerforderlich

    enum: "queued"

  • total_rowsintegererforderlich
  • imported_rowsintegererforderlich
  • invalid_rowsintegererforderlich
  • list_idstring | nullerforderlich

    format: "uuid"

curl-Beispiel

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

Typisierte Attribute zusammenführen, ohne Abonnement oder Einwilligung zu ändern

Erfordert contacts:write und contacts:read. Aktualisiert nur einen bestehenden Kontakt. Ausgelassene Attribute bleiben erhalten, explizites false wird gespeichert und null entfernt ein Feld. Gib verifizierte Quellfakten an; fehlende Daten bedeuten nicht false. Abonnement, Sperre, Identität und Quellhistorie bleiben unverändert.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

X-Banger-Product-Id
header · erforderlich

Explizites Betriebsprodukt; muss zu den produktgebundenen OAuth-Zugangsdaten passen.

  • valuestring

    format: "uuid"

contactId
path · erforderlich
  • valuestring

    format: "uuid"

Idempotency-Key
header · erforderlich
  • valuestring

    minLength: 1 · maxLength: 256

Anfrage-Body erforderlich

application/json

  • valueobject

    Keine zusätzlichen Eigenschaften

  • attributesobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert

Erfolgsantwort 200

Aktueller zurückgelesener Kontakt; replayed ist true, wenn diese Änderung bereits angewendet wurde.

application/json

  • valueobject
  • dataobjecterforderlich
  • idstringerforderlich

    format: "uuid"

  • attributesobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • statusstringerforderlich

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

  • replayedbooleanerforderlich
  • Zusätzliche EigenschaftBeliebiger Wert

curl-Beispiel

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

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

X-Banger-Product-Id
header · erforderlich

Explizites Betriebsprodukt; muss zu den produktgebundenen OAuth-Zugangsdaten passen.

  • valuestring

    format: "uuid"

Idempotency-Key
header · erforderlich
  • valuestring

    minLength: 1 · maxLength: 256

Anfrage-Body erforderlich

application/json

  • valueobject

    Keine zusätzlichen Eigenschaften

  • emailstringerforderlich

    format: "email" · maxLength: 320

  • display_namestring

    minLength: 0 · maxLength: 1000

  • attributesobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • statusstringerforderlich

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

  • consent_evidenceobject

    Keine zusätzlichen Eigenschaften

  • sourcestring

    minLength: 1 · maxLength: 2000

  • referencestring

    minLength: 1 · maxLength: 2000

  • observed_atstring

    format: "date-time"

  • statementstring

    minLength: 1 · maxLength: 2000

  • consent_confirmedboolean

Erfolgsantwort 200

Kanonischer Rücklesewert oder idempotente Bestätigung. Anbieterannahme ist sent; delivered benötigt ein Zustellereignis und belegt keine Platzierung im Posteingang.

application/json

  • valueobject
  • datanicht angegebenerforderlich
  • allOf 1object
  • idstringerforderlich

    format: "uuid"

  • emailstringerforderlich

    format: "email"

  • display_namestring | nullerforderlich
  • attributesobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • statusstringerforderlich

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

  • created_atstringerforderlich

    format: "date-time"

  • updated_atstringerforderlich

    format: "date-time"

  • suppressedbooleanerforderlich
  • suppression_reasonstring | nullerforderlich
  • sourcesarrayerforderlich
  • Jedes Elementobject
  • kindstringerforderlich
  • referencestringerforderlich
  • connection_idstring | nullerforderlich

    format: "uuid"

  • metadataobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • first_seen_atstringerforderlich

    format: "date-time"

  • last_seen_atstringerforderlich

    format: "date-time"

  • listsarrayerforderlich
  • Jedes Elementobject
  • idstringerforderlich

    format: "uuid"

  • namestringerforderlich
  • subscription_statusstringerforderlich
  • consent_evidencearrayerforderlich
  • Jedes Elementobject
  • kindstringerforderlich
  • referencestringerforderlich
  • connection_idstring | nullerforderlich

    format: "uuid"

  • metadataobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • first_seen_atstringerforderlich

    format: "date-time"

  • last_seen_atstringerforderlich

    format: "date-time"

  • allOf 2object
  • replayedbooleanerforderlich

curl-Beispiel

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

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

X-Banger-Product-Id
header · erforderlich

Explizites Betriebsprodukt; muss zu den produktgebundenen OAuth-Zugangsdaten passen.

  • valuestring

    format: "uuid"

Anfrage-Body erforderlich

application/json

  • valueobject

    Keine zusätzlichen Eigenschaften

  • rowsarrayerforderlich

    minItems: 1 · maxItems: 5000

  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

  • emailstringerforderlich

    format: "email" · maxLength: 320

  • display_namestring

    minLength: 0 · maxLength: 1000

  • attributesobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • statusstringerforderlich

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

  • consent_evidenceobject

    Keine zusätzlichen Eigenschaften

  • sourcestring

    minLength: 1 · maxLength: 2000

  • referencestring

    minLength: 1 · maxLength: 2000

  • observed_atstring

    format: "date-time"

  • statementstring

    minLength: 1 · maxLength: 2000

  • consent_confirmedboolean

Erfolgsantwort 200

Kanonischer Rücklesewert oder idempotente Bestätigung. Anbieterannahme ist sent; delivered benötigt ein Zustellereignis und belegt keine Platzierung im Posteingang.

application/json

  • valueobject
  • dataobjecterforderlich
  • validbooleanerforderlich
  • total_rowsintegererforderlich
  • valid_rowsintegererforderlich
  • errorsarrayerforderlich
  • Jedes Elementobject
  • rowintegererforderlich
  • codestringerforderlich
  • messagestringerforderlich

curl-Beispiel

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

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

X-Banger-Product-Id
header · erforderlich

Explizites Betriebsprodukt; muss zu den produktgebundenen OAuth-Zugangsdaten passen.

  • valuestring

    format: "uuid"

importId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Kanonischer Rücklesewert oder idempotente Bestätigung. Anbieterannahme ist sent; delivered benötigt ein Zustellereignis und belegt keine Platzierung im Posteingang.

application/json

  • valueobject
  • dataobjecterforderlich
  • idstring

    format: "uuid"

  • filenamestring
  • list_idstring | null

    format: "uuid"

  • list_namestring | null
  • statusstring
  • total_rowsinteger
  • imported_rowsinteger
  • invalid_rowsinteger
  • error_summaryarray
  • Jedes Elementstring
  • 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"

curl-Beispiel

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

Gespeicherte Kontaktattributschlüssel auflisten

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Erfolgreiche Antwort.

application/json

  • valueobject
  • dataarrayerforderlich
  • Jedes Elementstring

curl-Beispiel

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

Spaltenzuordnungen für Kontaktimport vorschlagen

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body erforderlich

application/json

  • valueobject
  • filenamestring

    maxLength: 500

  • columnsarrayerforderlich

    minItems: 1 · maxItems: 100

  • Jedes Elementobject
  • namestringerforderlich

    minLength: 1 · maxLength: 200

  • samplesarray

    maxItems: 8

  • Jedes Elementstring

    maxLength: 120

  • filledinteger

    minimum: 0

  • rowsinteger

    minimum: 0

Erfolgsantwort 200

Erfolgreiche Antwort.

application/json

  • valueobject
  • dataobjecterforderlich
  • mappingobjecterforderlich
  • columnsarrayerforderlich
  • Jedes Elementobject
  • columnstringerforderlich
  • targetstringerforderlich

    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"

  • confidencenumbererforderlich
  • sourcestringerforderlich

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

  • alternativesarray
  • Jedes Elementobject

    Weitere Verschachtelung ausgelassen

  • locale_valuesobjecterforderlich
  • Zusätzliche Eigenschaftstring | null
  • reviewobjecterforderlich
  • neededbooleanerforderlich
  • reasonsarrayerforderlich
  • Jedes Elementstring
  • columnsarrayerforderlich
  • Jedes Elementstring
  • sourcestringerforderlich

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

curl-Beispiel

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
    }
  ]
}'

Kontaktlisten

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

listContactLists

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Erfolgreiche Antwort.

application/json

  • valueobject
  • dataarrayerforderlich
  • Jedes Elementobject
  • idstringerforderlich

    format: "uuid"

  • namestringerforderlich
  • descriptionstringerforderlich
  • member_countintegererforderlich
  • created_atstringerforderlich

    format: "date-time"

  • updated_atstringerforderlich

    format: "date-time"

curl-Beispiel

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

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body erforderlich

application/json

  • valueobject
  • namestringerforderlich

    minLength: 1 · maxLength: 200

  • descriptionstring

    maxLength: 2000

Erfolgsantwort 201

Erfolgreiche Antwort.

application/json

  • valueobject
  • dataobjecterforderlich
  • idstringerforderlich

    format: "uuid"

  • namestringerforderlich
  • descriptionstringerforderlich
  • member_countintegererforderlich
  • created_atstringerforderlich

    format: "date-time"

  • updated_atstringerforderlich

    format: "date-time"

curl-Beispiel

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

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

listId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Erfolgreiche Antwort.

application/json

  • valueobject
  • dataobjecterforderlich
  • idstringerforderlich

    format: "uuid"

  • namestringerforderlich
  • descriptionstringerforderlich
  • created_atstringerforderlich

    format: "date-time"

  • updated_atstringerforderlich

    format: "date-time"

  • membersarrayerforderlich
  • Jedes Elementobject
  • idstringerforderlich

    format: "uuid"

  • emailstringerforderlich
  • display_namestring | nullerforderlich
  • statusstringerforderlich
  • attributesobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • updated_atstringerforderlich

    format: "date-time"

curl-Beispiel

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

Lösche diese Liste und ihre exklusiven Kontakte. Kontakte in anderen Listen bleiben erhalten. Erfordert contacts:write.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

listId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Anzahl gelöschter (oder zu löschender) exklusiver und beibehaltener gemeinsamer Kontakte.

application/json

  • valueobject
  • dataobjecterforderlich
  • deleted_contactsintegererforderlich

    minimum: 0

  • kept_contactsintegererforderlich

    minimum: 0

curl-Beispiel

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

Zeige die Löschzahlen der Liste in der Vorschau. Mitgliedschaften werden beim Löschen erneut geprüft. Erfordert contacts:read.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

listId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Anzahl gelöschter (oder zu löschender) exklusiver und beibehaltener gemeinsamer Kontakte.

application/json

  • valueobject
  • dataobjecterforderlich
  • deleted_contactsintegererforderlich

    minimum: 0

  • kept_contactsintegererforderlich

    minimum: 0

curl-Beispiel

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

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

listId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body erforderlich

application/json

  • valueobject
  • contact_idsarrayerforderlich

    maxItems: 1000

  • Jedes Elementstring

    format: "uuid"

Erfolgsantwort 204

Listenmitgliedschaft aktualisiert.

Kein Antwort-Body.

curl-Beispiel

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

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

listId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body erforderlich

application/json

  • valueobject
  • contact_idsarrayerforderlich

    maxItems: 1000

  • Jedes Elementstring

    format: "uuid"

Erfolgsantwort 204

Listenmitgliedschaft aktualisiert.

Kein Antwort-Body.

curl-Beispiel

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

Kontaktfelder

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

Kontaktfelder des Produkts (integriert, deklariert und entdeckt) mit Typ, Auswahlmöglichkeiten, Quelle, Anzahl der Kontakte mit Wert und unterstützten Segmentoperatoren.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Erfolgreiche Antwort.

application/json

  • valueobject
  • dataarrayerforderlich
  • Jedes Elementobject
  • keystringerforderlich

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

  • labelstringerforderlich

    maxLength: 80

  • descriptionstringerforderlich

    maxLength: 500

  • typestringerforderlich

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

  • optionsarrayerforderlich

    maxItems: 50

  • Jedes Elementstring
  • originstringerforderlich

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

  • statusstringerforderlich

    enum: "active", "hidden"

  • created_atstring

    format: "date-time"

  • updated_atstring

    format: "date-time"

  • operatorsarray
  • Jedes Elementstring
  • contacts_with_valueinteger

curl-Beispiel

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

Deklariere ein Kontaktfeld: label, type (text, number, boolean, date, choice, choices), optionaler key, options und description.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body erforderlich

application/json

  • valueobject
  • keystring

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

  • labelstringerforderlich

    minLength: 1 · maxLength: 80

  • descriptionstring

    maxLength: 500

  • typestring

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

  • optionsarray

    maxItems: 50

  • Jedes Elementstring

Erfolgsantwort 201

Erfolgreiche Antwort.

application/json

  • valueobject
  • dataobjecterforderlich
  • keystringerforderlich

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

  • labelstringerforderlich

    maxLength: 80

  • descriptionstringerforderlich

    maxLength: 500

  • typestringerforderlich

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

  • optionsarrayerforderlich

    maxItems: 50

  • Jedes Elementstring
  • originstringerforderlich

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

  • statusstringerforderlich

    enum: "active", "hidden"

  • created_atstring

    format: "date-time"

  • updated_atstring

    format: "date-time"

  • operatorsarray
  • Jedes Elementstring
  • contacts_with_valueinteger

curl-Beispiel

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}

Benenne ein Feld um, beschreibe es, ändere seinen Typ (mit Umwandlung gespeicherter Werte oder 409 samt unpassendem Beispiel), ändere Auswahlmöglichkeiten oder blende es aus.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

key
path · erforderlich
  • valuestring

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

Anfrage-Body erforderlich

application/json

  • valueobject
  • labelstring

    maxLength: 80

  • descriptionstring

    maxLength: 500

  • typestring

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

  • optionsarray

    maxItems: 50

  • Jedes Elementstring
  • statusstring

    enum: "active", "hidden"

Erfolgsantwort 200

Erfolgreiche Antwort.

application/json

  • valueobject
  • dataobjecterforderlich
  • keystringerforderlich

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

  • labelstringerforderlich

    maxLength: 80

  • descriptionstringerforderlich

    maxLength: 500

  • typestringerforderlich

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

  • optionsarrayerforderlich

    maxItems: 50

  • Jedes Elementstring
  • originstringerforderlich

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

  • statusstringerforderlich

    enum: "active", "hidden"

  • created_atstring

    format: "date-time"

  • updated_atstring

    format: "date-time"

  • operatorsarray
  • Jedes Elementstring
  • contacts_with_valueinteger

curl-Beispiel

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

Segmente

GET/v1/workspaces/{workspaceId}/segments

listSegments

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Erfolgreiche Antwort.

application/json

  • valueobject
  • dataarrayerforderlich
  • Jedes Elementobject
  • idstringerforderlich

    format: "uuid"

  • namestringerforderlich
  • filterobjecterforderlich

    Bedingungen müssen deklarierte Kontaktfelder und vom Typ unterstützte Operatoren verwenden. set und not_set lassen value aus; within_days verwendet 1–3650 Tage.

    Keine zusätzlichen Eigenschaften

  • statusstring

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

  • attributesobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • conditionsarray

    maxItems: 20

  • Jedes Elementobject
  • fieldstringerforderlich

    Weitere Verschachtelung ausgelassen

  • opstringerforderlich

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

    Weitere Verschachtelung ausgelassen

  • valuenicht angegeben

    Weitere Verschachtelung ausgelassen

  • matchstring

    enum: "all", "any"

  • created_atstringerforderlich

    format: "date-time"

  • updated_atstringerforderlich

    format: "date-time"

curl-Beispiel

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

createSegment

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body erforderlich

application/json

  • valueobject
  • namestringerforderlich

    minLength: 1 · maxLength: 200

  • filterobject

    Bedingungen müssen deklarierte Kontaktfelder und vom Typ unterstützte Operatoren verwenden. set und not_set lassen value aus; within_days verwendet 1–3650 Tage.

    Keine zusätzlichen Eigenschaften

  • statusstring

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

  • attributesobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • conditionsarray

    maxItems: 20

  • Jedes Elementobject
  • fieldstringerforderlich
  • opstringerforderlich

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

  • valuenicht angegeben
  • anyOf 1string
  • anyOf 2number
  • anyOf 3boolean
  • anyOf 4array
  • Jedes Elementstring

    Weitere Verschachtelung ausgelassen

  • matchstring

    enum: "all", "any"

Erfolgsantwort 201

Erfolgreiche Antwort.

application/json

  • valueobject
  • dataobjecterforderlich
  • idstringerforderlich

    format: "uuid"

  • namestringerforderlich
  • filterobjecterforderlich

    Bedingungen müssen deklarierte Kontaktfelder und vom Typ unterstützte Operatoren verwenden. set und not_set lassen value aus; within_days verwendet 1–3650 Tage.

    Keine zusätzlichen Eigenschaften

  • statusstring

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

  • attributesobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • conditionsarray

    maxItems: 20

  • Jedes Elementobject
  • fieldstringerforderlich
  • opstringerforderlich

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

  • valuenicht angegeben
  • anyOf 1string

    Weitere Verschachtelung ausgelassen

  • anyOf 2number

    Weitere Verschachtelung ausgelassen

  • anyOf 3boolean

    Weitere Verschachtelung ausgelassen

  • anyOf 4array

    Weitere Verschachtelung ausgelassen

  • matchstring

    enum: "all", "any"

  • created_atstringerforderlich

    format: "date-time"

  • updated_atstringerforderlich

    format: "date-time"

curl-Beispiel

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

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

segmentId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Erfolgreiche Antwort.

application/json

  • valueobject
  • datanicht angegebenerforderlich
  • allOf 1object
  • idstringerforderlich

    format: "uuid"

  • namestringerforderlich
  • filterobjecterforderlich

    Bedingungen müssen deklarierte Kontaktfelder und vom Typ unterstützte Operatoren verwenden. set und not_set lassen value aus; within_days verwendet 1–3650 Tage.

    Keine zusätzlichen Eigenschaften

  • statusstring

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

  • attributesobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • conditionsarray

    maxItems: 20

  • Jedes Elementobject
  • fieldstringerforderlich

    Weitere Verschachtelung ausgelassen

  • opstringerforderlich

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

    Weitere Verschachtelung ausgelassen

  • valuenicht angegeben

    Weitere Verschachtelung ausgelassen

  • matchstring

    enum: "all", "any"

  • created_atstringerforderlich

    format: "date-time"

  • updated_atstringerforderlich

    format: "date-time"

  • allOf 2object
  • countintegererforderlich
  • missing_consent_evidence_countintegererforderlich
  • samplearrayerforderlich
  • Jedes Elementobject
  • idstringerforderlich

    format: "uuid"

  • emailstringerforderlich
  • display_namestring | nullerforderlich
  • attributesobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • excludedobjecterforderlich
  • suppressedintegererforderlich
  • not_subscribedintegererforderlich
  • missing_recipient_hashintegererforderlich
  • missing_consent_evidenceintegererforderlich

curl-Beispiel

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}

Segment löschen

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

segmentId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Erfolgreiche Antwort.

application/json

  • valueobject
  • dataobjecterforderlich
  • idstringerforderlich

    format: "uuid"

  • deletedbooleanerforderlich

    const: true

curl-Beispiel

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

Zielgruppe

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

createProductContactList

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

X-Banger-Product-Id
header · erforderlich

Explizites Betriebsprodukt; muss zu den produktgebundenen OAuth-Zugangsdaten passen.

  • valuestring

    format: "uuid"

Idempotency-Key
header · erforderlich
  • valuestring

    minLength: 1 · maxLength: 256

Anfrage-Body erforderlich

application/json

  • valueobject

    Keine zusätzlichen Eigenschaften

  • namestringerforderlich

    minLength: 1 · maxLength: 200

  • descriptionstring

    minLength: 0 · maxLength: 2000

Erfolgsantwort 200

Kanonischer Rücklesewert oder idempotente Bestätigung. Anbieterannahme ist sent; delivered benötigt ein Zustellereignis und belegt keine Platzierung im Posteingang.

application/json

  • valueobject
  • datanicht angegebenerforderlich
  • allOf 1object
  • idstringerforderlich

    format: "uuid"

  • namestringerforderlich
  • descriptionstringerforderlich
  • created_atstringerforderlich

    format: "date-time"

  • updated_atstringerforderlich

    format: "date-time"

  • membersarrayerforderlich
  • Jedes Elementobject
  • idstringerforderlich

    format: "uuid"

  • emailstringerforderlich
  • display_namestring | nullerforderlich
  • statusstringerforderlich
  • attributesobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • updated_atstringerforderlich

    format: "date-time"

  • allOf 2object
  • replayedbooleanerforderlich

curl-Beispiel

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

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

X-Banger-Product-Id
header · erforderlich

Explizites Betriebsprodukt; muss zu den produktgebundenen OAuth-Zugangsdaten passen.

  • valuestring

    format: "uuid"

listId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Kanonischer Rücklesewert oder idempotente Bestätigung. Anbieterannahme ist sent; delivered benötigt ein Zustellereignis und belegt keine Platzierung im Posteingang.

application/json

  • valueobject
  • dataobjecterforderlich
  • idstringerforderlich

    format: "uuid"

  • namestringerforderlich
  • descriptionstringerforderlich
  • created_atstringerforderlich

    format: "date-time"

  • updated_atstringerforderlich

    format: "date-time"

  • membersarrayerforderlich
  • Jedes Elementobject
  • idstringerforderlich

    format: "uuid"

  • emailstringerforderlich
  • display_namestring | nullerforderlich
  • statusstringerforderlich
  • attributesobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • updated_atstringerforderlich

    format: "date-time"

curl-Beispiel

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

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

X-Banger-Product-Id
header · erforderlich

Explizites Betriebsprodukt; muss zu den produktgebundenen OAuth-Zugangsdaten passen.

  • valuestring

    format: "uuid"

listId
path · erforderlich
  • valuestring

    format: "uuid"

Idempotency-Key
header · erforderlich
  • valuestring

    minLength: 1 · maxLength: 256

Anfrage-Body erforderlich

application/json

  • valueobject

    Keine zusätzlichen Eigenschaften

  • contact_idsarrayerforderlich

    maxItems: 1000

  • Jedes Elementstring

    format: "uuid"

Erfolgsantwort 200

Kanonischer Rücklesewert oder idempotente Bestätigung. Anbieterannahme ist sent; delivered benötigt ein Zustellereignis und belegt keine Platzierung im Posteingang.

application/json

  • valueobject
  • datanicht angegebenerforderlich
  • allOf 1object
  • idstringerforderlich

    format: "uuid"

  • namestringerforderlich
  • descriptionstringerforderlich
  • created_atstringerforderlich

    format: "date-time"

  • updated_atstringerforderlich

    format: "date-time"

  • membersarrayerforderlich
  • Jedes Elementobject
  • idstringerforderlich

    format: "uuid"

  • emailstringerforderlich
  • display_namestring | nullerforderlich
  • statusstringerforderlich
  • attributesobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • updated_atstringerforderlich

    format: "date-time"

  • allOf 2object
  • replayedbooleanerforderlich

curl-Beispiel

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

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

X-Banger-Product-Id
header · erforderlich

Explizites Betriebsprodukt; muss zu den produktgebundenen OAuth-Zugangsdaten passen.

  • valuestring

    format: "uuid"

listId
path · erforderlich
  • valuestring

    format: "uuid"

Idempotency-Key
header · erforderlich
  • valuestring

    minLength: 1 · maxLength: 256

Anfrage-Body erforderlich

application/json

  • valueobject

    Keine zusätzlichen Eigenschaften

  • contact_idsarrayerforderlich

    maxItems: 1000

  • Jedes Elementstring

    format: "uuid"

Erfolgsantwort 200

Kanonischer Rücklesewert oder idempotente Bestätigung. Anbieterannahme ist sent; delivered benötigt ein Zustellereignis und belegt keine Platzierung im Posteingang.

application/json

  • valueobject
  • datanicht angegebenerforderlich
  • allOf 1object
  • idstringerforderlich

    format: "uuid"

  • namestringerforderlich
  • descriptionstringerforderlich
  • created_atstringerforderlich

    format: "date-time"

  • updated_atstringerforderlich

    format: "date-time"

  • membersarrayerforderlich
  • Jedes Elementobject
  • idstringerforderlich

    format: "uuid"

  • emailstringerforderlich
  • display_namestring | nullerforderlich
  • statusstringerforderlich
  • attributesobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • updated_atstringerforderlich

    format: "date-time"

  • allOf 2object
  • replayedbooleanerforderlich

curl-Beispiel

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

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

X-Banger-Product-Id
header · erforderlich

Explizites Betriebsprodukt; muss zu den produktgebundenen OAuth-Zugangsdaten passen.

  • valuestring

    format: "uuid"

Idempotency-Key
header · erforderlich
  • valuestring

    minLength: 1 · maxLength: 256

Anfrage-Body erforderlich

application/json

  • valueobject

    Keine zusätzlichen Eigenschaften

  • namestringerforderlich

    minLength: 1 · maxLength: 200

  • filterobjecterforderlich

    Keine zusätzlichen Eigenschaften

  • statusstring

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

  • attributesobject
  • Zusätzliche EigenschaftBeliebiger Wert

Erfolgsantwort 200

Kanonischer Rücklesewert oder idempotente Bestätigung. Anbieterannahme ist sent; delivered benötigt ein Zustellereignis und belegt keine Platzierung im Posteingang.

application/json

  • valueobject
  • datanicht angegebenerforderlich
  • allOf 1nicht angegeben
  • allOf 1object
  • idstringerforderlich

    format: "uuid"

  • namestringerforderlich
  • filterobjecterforderlich

    Bedingungen müssen deklarierte Kontaktfelder und vom Typ unterstützte Operatoren verwenden. set und not_set lassen value aus; within_days verwendet 1–3650 Tage.

    Keine zusätzlichen Eigenschaften

  • statusstring

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

  • attributesobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • conditionsarray

    maxItems: 20

  • Jedes Elementobject

    Weitere Verschachtelung ausgelassen

  • matchstring

    enum: "all", "any"

  • created_atstringerforderlich

    format: "date-time"

  • updated_atstringerforderlich

    format: "date-time"

  • allOf 2object
  • countintegererforderlich
  • missing_consent_evidence_countintegererforderlich
  • samplearrayerforderlich
  • Jedes Elementobject
  • idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • emailstringerforderlich

    Weitere Verschachtelung ausgelassen

  • display_namestring | nullerforderlich

    Weitere Verschachtelung ausgelassen

  • attributesobjecterforderlich

    Weitere Verschachtelung ausgelassen

  • excludedobjecterforderlich
  • suppressedintegererforderlich
  • not_subscribedintegererforderlich
  • missing_recipient_hashintegererforderlich
  • missing_consent_evidenceintegererforderlich
  • allOf 2object
  • replayedbooleanerforderlich

curl-Beispiel

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

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

X-Banger-Product-Id
header · erforderlich

Explizites Betriebsprodukt; muss zu den produktgebundenen OAuth-Zugangsdaten passen.

  • valuestring

    format: "uuid"

segmentId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Kanonischer Rücklesewert oder idempotente Bestätigung. Anbieterannahme ist sent; delivered benötigt ein Zustellereignis und belegt keine Platzierung im Posteingang.

application/json

  • valueobject
  • datanicht angegebenerforderlich
  • allOf 1object
  • idstringerforderlich

    format: "uuid"

  • namestringerforderlich
  • filterobjecterforderlich

    Bedingungen müssen deklarierte Kontaktfelder und vom Typ unterstützte Operatoren verwenden. set und not_set lassen value aus; within_days verwendet 1–3650 Tage.

    Keine zusätzlichen Eigenschaften

  • statusstring

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

  • attributesobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • conditionsarray

    maxItems: 20

  • Jedes Elementobject
  • fieldstringerforderlich

    Weitere Verschachtelung ausgelassen

  • opstringerforderlich

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

    Weitere Verschachtelung ausgelassen

  • valuenicht angegeben

    Weitere Verschachtelung ausgelassen

  • matchstring

    enum: "all", "any"

  • created_atstringerforderlich

    format: "date-time"

  • updated_atstringerforderlich

    format: "date-time"

  • allOf 2object
  • countintegererforderlich
  • missing_consent_evidence_countintegererforderlich
  • samplearrayerforderlich
  • Jedes Elementobject
  • idstringerforderlich

    format: "uuid"

  • emailstringerforderlich
  • display_namestring | nullerforderlich
  • attributesobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • excludedobjecterforderlich
  • suppressedintegererforderlich
  • not_subscribedintegererforderlich
  • missing_recipient_hashintegererforderlich
  • missing_consent_evidenceintegererforderlich

curl-Beispiel

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

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

X-Banger-Product-Id
header · erforderlich

Explizites Betriebsprodukt; muss zu den produktgebundenen OAuth-Zugangsdaten passen.

  • valuestring

    format: "uuid"

status
query
  • valuestring

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

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Kanonischer Rücklesewert oder idempotente Bestätigung. Anbieterannahme ist sent; delivered benötigt ein Zustellereignis und belegt keine Platzierung im Posteingang.

application/json

  • valueobject
  • dataarrayerforderlich
  • Jedes Elementnicht angegeben
  • allOf 1object
  • idstringerforderlich

    format: "uuid"

  • requested_by_actor_idstringerforderlich
  • action_kindstringerforderlich
  • summarystringerforderlich
  • capability_scopesarrayerforderlich
  • Jedes Elementstring
  • resource_scopeobjecterforderlich
  • Zusätzliche Eigenschaftarray
  • Jedes Elementstring

    Weitere Verschachtelung ausgelassen

  • payloadobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • payload_sha256stringerforderlich

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

  • statusstringerforderlich

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

  • missedbooleanerforderlich
  • expires_atstringerforderlich

    format: "date-time"

  • decided_by_actor_idstring | null
  • decision_reasonstring | null
  • created_atstringerforderlich

    format: "date-time"

  • updated_atstringerforderlich

    format: "date-time"

  • decided_atstring | null

    format: "date-time"

  • execution_job_idstring

    format: "uuid"

  • reviewobject

    Keine zusätzlichen Eigenschaften

  • dispositionstringerforderlich

    enum: "automatic", "human_required"

  • recipient_countinteger | nullerforderlich

    minimum: 0

  • reasonsarrayerforderlich
  • Jedes Elementstring

    Weitere Verschachtelung ausgelassen

  • checksarrayerforderlich
  • Jedes Elementstring

    Weitere Verschachtelung ausgelassen

  • allOf 2object
  • approval_idstringerforderlich

    format: "uuid"

  • broadcast_idstring | nullerforderlich

    format: "uuid"

  • import_idstring | nullerforderlich

    format: "uuid"

  • blockersarrayerforderlich
  • Jedes Elementobject
  • codestringerforderlich

    Weitere Verschachtelung ausgelassen

  • messagestringerforderlich

    Weitere Verschachtelung ausgelassen

  • executionsarrayerforderlich
  • Jedes Elementobject
  • idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • statusstringerforderlich

    Weitere Verschachtelung ausgelassen

  • resultobjecterforderlich

    Weitere Verschachtelung ausgelassen

  • error_codestring | nullerforderlich

    Weitere Verschachtelung ausgelassen

  • execution_job_idsarrayerforderlich
  • Jedes Elementstring

    format: "uuid"

  • execution_statusstringerforderlich

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

  • human_review_urlstring | nullerforderlich
  • human_review_instructionstring | nullerforderlich

curl-Beispiel

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

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

X-Banger-Product-Id
header · erforderlich

Explizites Betriebsprodukt; muss zu den produktgebundenen OAuth-Zugangsdaten passen.

  • valuestring

    format: "uuid"

approvalId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Kanonischer Rücklesewert oder idempotente Bestätigung. Anbieterannahme ist sent; delivered benötigt ein Zustellereignis und belegt keine Platzierung im Posteingang.

application/json

  • valueobject
  • datanicht angegebenerforderlich
  • allOf 1object
  • idstringerforderlich

    format: "uuid"

  • requested_by_actor_idstringerforderlich
  • action_kindstringerforderlich
  • summarystringerforderlich
  • capability_scopesarrayerforderlich
  • Jedes Elementstring
  • resource_scopeobjecterforderlich
  • Zusätzliche Eigenschaftarray
  • Jedes Elementstring
  • payloadobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • payload_sha256stringerforderlich

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

  • statusstringerforderlich

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

  • missedbooleanerforderlich
  • expires_atstringerforderlich

    format: "date-time"

  • decided_by_actor_idstring | null
  • decision_reasonstring | null
  • created_atstringerforderlich

    format: "date-time"

  • updated_atstringerforderlich

    format: "date-time"

  • decided_atstring | null

    format: "date-time"

  • execution_job_idstring

    format: "uuid"

  • reviewobject

    Keine zusätzlichen Eigenschaften

  • dispositionstringerforderlich

    enum: "automatic", "human_required"

  • recipient_countinteger | nullerforderlich

    minimum: 0

  • reasonsarrayerforderlich
  • Jedes Elementstring
  • checksarrayerforderlich
  • Jedes Elementstring
  • allOf 2object
  • approval_idstringerforderlich

    format: "uuid"

  • broadcast_idstring | nullerforderlich

    format: "uuid"

  • import_idstring | nullerforderlich

    format: "uuid"

  • blockersarrayerforderlich
  • Jedes Elementobject
  • codestringerforderlich
  • messagestringerforderlich
  • executionsarrayerforderlich
  • Jedes Elementobject
  • idstringerforderlich

    format: "uuid"

  • statusstringerforderlich
  • resultobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • error_codestring | nullerforderlich
  • execution_job_idsarrayerforderlich
  • Jedes Elementstring

    format: "uuid"

  • execution_statusstringerforderlich

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

  • human_review_urlstring | nullerforderlich
  • human_review_instructionstring | nullerforderlich

curl-Beispiel

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'

Anmeldeformulare

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

Anmeldeformulare des Produkts mit Einbettungscode, gehostetem Link, Aufrufen, Anmeldungen, Bestätigungen, Abonnenten und Konversionsrate.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

include_archived
query
  • valueboolean

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Erfolgreiche Antwort.

application/json

  • valueobject
  • dataarrayerforderlich
  • Jedes Elementobject
  • idstringerforderlich

    format: "uuid"

  • product_idstringerforderlich

    format: "uuid"

  • public_idstringerforderlich

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

  • namestringerforderlich
  • kindstringerforderlich

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

  • list_idstringerforderlich

    format: "uuid"

  • list_namestringerforderlich
  • mailbox_idstring | nullerforderlich

    format: "uuid"

  • double_opt_inbooleanerforderlich
  • configobjecterforderlich

    Keine zusätzlichen Eigenschaften

  • 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

  • Jedes Elementobject

    Select-Fragen benötigen options. Andere Fragetypen akzeptieren keine options. Schlüssel müssen eindeutig sein und dürfen keine reservierten Formularfelder verwenden; fehlende Schlüssel werden aus Beschriftungen abgeleitet.

    Keine zusätzlichen Eigenschaften

  • keystring

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

    Weitere Verschachtelung ausgelassen

  • labelstringerforderlich

    minLength: 1 · maxLength: 80

    Weitere Verschachtelung ausgelassen

  • typestring

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

    Weitere Verschachtelung ausgelassen

  • requiredboolean

    default: false

    Weitere Verschachtelung ausgelassen

  • placeholderstring

    maxLength: 80

    Weitere Verschachtelung ausgelassen

  • optionsarray

    minItems: 1 · maxItems: 20 · uniqueItems: true

    Weitere Verschachtelung ausgelassen

  • statusstringerforderlich

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

  • viewsintegererforderlich
  • submissionsintegererforderlich
  • confirmationsintegererforderlich
  • subscribersintegererforderlich
  • versionintegererforderlich
  • created_atstringerforderlich

    format: "date-time"

  • updated_atstringerforderlich

    format: "date-time"

  • hosted_urlstringerforderlich
  • embed_codestringerforderlich
  • embed_slotstringerforderlich
  • open_buttonstringerforderlich
  • conversion_ratenumbererforderlich

curl-Beispiel

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

Erstelle ein Formular: kind (inline, popup, bar, slide_in, page), list_id oder list_name, optionaler mailbox_id, double_opt_in (standardmäßig true) und teilweise config.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

Idempotency-Key
header · erforderlich
  • valuestring

    minLength: 1 · maxLength: 256

Anfrage-Body erforderlich

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

    Keine zusätzlichen Eigenschaften

  • 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

  • Jedes Elementobject

    Select-Fragen benötigen options. Andere Fragetypen akzeptieren keine options. Schlüssel müssen eindeutig sein und dürfen keine reservierten Formularfelder verwenden; fehlende Schlüssel werden aus Beschriftungen abgeleitet.

    Keine zusätzlichen Eigenschaften

  • keystring

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

  • labelstringerforderlich

    minLength: 1 · maxLength: 80

  • typestring

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

  • requiredboolean

    default: false

  • placeholderstring

    maxLength: 80

  • optionsarray

    minItems: 1 · maxItems: 20 · uniqueItems: true

  • Jedes Elementstring

    minLength: 1 · maxLength: 80

Erfolgsantwort 200

Erfolgreiche Antwort.

application/json

  • valueobject
  • dataobjecterforderlich
  • 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

    Keine zusätzlichen Eigenschaften

  • 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

  • Jedes Elementobject

    Select-Fragen benötigen options. Andere Fragetypen akzeptieren keine options. Schlüssel müssen eindeutig sein und dürfen keine reservierten Formularfelder verwenden; fehlende Schlüssel werden aus Beschriftungen abgeleitet.

    Keine zusätzlichen Eigenschaften

  • keystring

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

  • labelstringerforderlich

    minLength: 1 · maxLength: 80

  • typestring

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

  • requiredboolean

    default: false

  • placeholderstring

    maxLength: 80

  • optionsarray

    minItems: 1 · maxItems: 20 · uniqueItems: true

  • Jedes Elementstring

    minLength: 1 · maxLength: 80

    Weitere Verschachtelung ausgelassen

  • 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

curl-Beispiel

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

Ob dieses Produkt Formulare aktivieren kann (sein Produktkanal sendet von einer verifizierten Domain).

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Erfolgreiche Antwort.

application/json

  • valueobject
  • dataobjecterforderlich
  • forms_enabledbooleanerforderlich
  • reasonstring

    enum: "verified_domain_required"

curl-Beispiel

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

Rendere ungespeicherte Formulareinstellungen als vollständige HTML-Seite auf einer Website-Skizze.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body erforderlich

application/json

  • valueobject
  • kindstring

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

  • configobject

    Keine zusätzlichen Eigenschaften

  • 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

  • Jedes Elementobject

    Select-Fragen benötigen options. Andere Fragetypen akzeptieren keine options. Schlüssel müssen eindeutig sein und dürfen keine reservierten Formularfelder verwenden; fehlende Schlüssel werden aus Beschriftungen abgeleitet.

    Keine zusätzlichen Eigenschaften

  • keystring

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

  • labelstringerforderlich

    minLength: 1 · maxLength: 80

  • typestring

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

  • requiredboolean

    default: false

  • placeholderstring

    maxLength: 80

  • optionsarray

    minItems: 1 · maxItems: 20 · uniqueItems: true

  • Jedes Elementstring

    minLength: 1 · maxLength: 80

  • double_opt_inboolean
  • statestring

    enum: "form", "success"

Erfolgsantwort 200

Erfolgreiche Antwort.

application/json

  • valueobject
  • dataobjecterforderlich
  • kindstringerforderlich

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

  • statestringerforderlich

    enum: "form", "success"

  • htmlstringerforderlich

curl-Beispiel

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

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

formId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Erfolgreiche Antwort.

application/json

  • valueobject
  • dataobjecterforderlich
  • idstringerforderlich

    format: "uuid"

  • product_idstringerforderlich

    format: "uuid"

  • public_idstringerforderlich

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

  • namestringerforderlich
  • kindstringerforderlich

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

  • list_idstringerforderlich

    format: "uuid"

  • list_namestringerforderlich
  • mailbox_idstring | nullerforderlich

    format: "uuid"

  • double_opt_inbooleanerforderlich
  • configobjecterforderlich

    Keine zusätzlichen Eigenschaften

  • 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

  • Jedes Elementobject

    Select-Fragen benötigen options. Andere Fragetypen akzeptieren keine options. Schlüssel müssen eindeutig sein und dürfen keine reservierten Formularfelder verwenden; fehlende Schlüssel werden aus Beschriftungen abgeleitet.

    Keine zusätzlichen Eigenschaften

  • keystring

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

  • labelstringerforderlich

    minLength: 1 · maxLength: 80

  • typestring

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

  • requiredboolean

    default: false

  • placeholderstring

    maxLength: 80

  • optionsarray

    minItems: 1 · maxItems: 20 · uniqueItems: true

  • Jedes Elementstring

    minLength: 1 · maxLength: 80

    Weitere Verschachtelung ausgelassen

  • statusstringerforderlich

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

  • viewsintegererforderlich
  • submissionsintegererforderlich
  • confirmationsintegererforderlich
  • subscribersintegererforderlich
  • versionintegererforderlich
  • created_atstringerforderlich

    format: "date-time"

  • updated_atstringerforderlich

    format: "date-time"

  • hosted_urlstringerforderlich
  • embed_codestringerforderlich
  • embed_slotstringerforderlich
  • open_buttonstringerforderlich
  • conversion_ratenumbererforderlich

curl-Beispiel

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}

Teilaktualisierung; config wird mit gespeicherten Einstellungen zusammengeführt; status active, paused oder archived; expected_version schützt vor gleichzeitigen Änderungen.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

formId
path · erforderlich
  • valuestring

    format: "uuid"

Idempotency-Key
header · erforderlich
  • valuestring

    minLength: 1 · maxLength: 256

Anfrage-Body erforderlich

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

    Keine zusätzlichen Eigenschaften

  • 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

  • Jedes Elementobject

    Select-Fragen benötigen options. Andere Fragetypen akzeptieren keine options. Schlüssel müssen eindeutig sein und dürfen keine reservierten Formularfelder verwenden; fehlende Schlüssel werden aus Beschriftungen abgeleitet.

    Keine zusätzlichen Eigenschaften

  • keystring

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

  • labelstringerforderlich

    minLength: 1 · maxLength: 80

  • typestring

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

  • requiredboolean

    default: false

  • placeholderstring

    maxLength: 80

  • optionsarray

    minItems: 1 · maxItems: 20 · uniqueItems: true

  • Jedes Elementstring

    minLength: 1 · maxLength: 80

  • statusstring

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

  • expected_versioninteger

Erfolgsantwort 200

Erfolgreiche Antwort.

application/json

  • valueobject
  • dataobjecterforderlich
  • idstringerforderlich

    format: "uuid"

  • product_idstringerforderlich

    format: "uuid"

  • public_idstringerforderlich

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

  • namestringerforderlich
  • kindstringerforderlich

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

  • list_idstringerforderlich

    format: "uuid"

  • list_namestringerforderlich
  • mailbox_idstring | nullerforderlich

    format: "uuid"

  • double_opt_inbooleanerforderlich
  • configobjecterforderlich

    Keine zusätzlichen Eigenschaften

  • 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

  • Jedes Elementobject

    Select-Fragen benötigen options. Andere Fragetypen akzeptieren keine options. Schlüssel müssen eindeutig sein und dürfen keine reservierten Formularfelder verwenden; fehlende Schlüssel werden aus Beschriftungen abgeleitet.

    Keine zusätzlichen Eigenschaften

  • keystring

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

  • labelstringerforderlich

    minLength: 1 · maxLength: 80

  • typestring

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

  • requiredboolean

    default: false

  • placeholderstring

    maxLength: 80

  • optionsarray

    minItems: 1 · maxItems: 20 · uniqueItems: true

  • Jedes Elementstring

    minLength: 1 · maxLength: 80

    Weitere Verschachtelung ausgelassen

  • statusstringerforderlich

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

  • viewsintegererforderlich
  • submissionsintegererforderlich
  • confirmationsintegererforderlich
  • subscribersintegererforderlich
  • versionintegererforderlich
  • created_atstringerforderlich

    format: "date-time"

  • updated_atstringerforderlich

    format: "date-time"

  • hosted_urlstringerforderlich
  • embed_codestringerforderlich
  • embed_slotstringerforderlich
  • open_buttonstringerforderlich
  • conversion_ratenumbererforderlich
  • replayedbooleanerforderlich

curl-Beispiel

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

Rendere ein gespeichertes Formular, optional mit ungespeicherten Änderungen, im Formular- oder Erfolgszustand.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

formId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body erforderlich

application/json

  • valueobject
  • kindstring

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

  • configobject

    Keine zusätzlichen Eigenschaften

  • 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

  • Jedes Elementobject

    Select-Fragen benötigen options. Andere Fragetypen akzeptieren keine options. Schlüssel müssen eindeutig sein und dürfen keine reservierten Formularfelder verwenden; fehlende Schlüssel werden aus Beschriftungen abgeleitet.

    Keine zusätzlichen Eigenschaften

  • keystring

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

  • labelstringerforderlich

    minLength: 1 · maxLength: 80

  • typestring

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

  • requiredboolean

    default: false

  • placeholderstring

    maxLength: 80

  • optionsarray

    minItems: 1 · maxItems: 20 · uniqueItems: true

  • Jedes Elementstring

    minLength: 1 · maxLength: 80

  • double_opt_inboolean
  • statestring

    enum: "form", "success"

Erfolgsantwort 200

Erfolgreiche Antwort.

application/json

  • valueobject
  • dataobjecterforderlich
  • kindstringerforderlich

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

  • statestringerforderlich

    enum: "form", "success"

  • htmlstringerforderlich

curl-Beispiel

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

Öffentliche Anmeldeformulare

GET/v1/forms/embed.js

Der Anmeldeformular-Loader. Ein script-Tag pro Formular (data-banger-form="f_…") rendert das Widget in einem Shadow-Root und verarbeitet Auslöser und Übermittlungen.

Öffentlicher Endpunkt: keine Authentifizierung erforderlich.

Parameter

Keine Parameter angegeben.

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Einbettbarer Anmeldeformular-Loader.

text/javascript

  • valuestring

curl-Beispiel

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

CORS-Richtlinie für öffentliche Anmeldung lesen

Öffentlicher Endpunkt: keine Authentifizierung erforderlich.

Parameter

Keine Parameter angegeben.

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 204

Erfolgreiche Antwort.

Kein Antwort-Body.

curl-Beispiel

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

Header des Einbettungsskripts lesen

Öffentlicher Endpunkt: keine Authentifizierung erforderlich.

Parameter

Keine Parameter angegeben.

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Erfolgreiche Antwort.

Im Vertrag ist kein Antwortschema angegeben.

curl-Beispiel

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

Gerendertes Widget eines aktiven Formulars (html, css, Schriftlink) und Popup-Verhalten. Öffentlich, offenes CORS, eine Minute gecacht.

Öffentlicher Endpunkt: keine Authentifizierung erforderlich.

Parameter

Name / PositionSchema
publicId
path · erforderlich
  • valuestring

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

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Erfolgreiche Antwort.

application/json

  • valueobject
  • dataobjecterforderlich
  • kindstringerforderlich

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

  • langstringerforderlich
  • htmlstringerforderlich
  • cssstringerforderlich
  • font_hrefstringerforderlich
  • redirect_urlstringerforderlich
  • behaviorobjecterforderlich
  • delay_secondsnumbererforderlich
  • scroll_percentnumbererforderlich
  • exit_intentbooleanerforderlich
  • frequency_daysnumbererforderlich

curl-Beispiel

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

CORS-Richtlinie für öffentliche Anmeldung lesen

Öffentlicher Endpunkt: keine Authentifizierung erforderlich.

Parameter

Name / PositionSchema
publicId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 204

Erfolgreiche Antwort.

Kein Antwort-Body.

curl-Beispiel

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

Ein Besucher meldet sich an. Formularcodiert (email, name, page, optional lang), damit Browser die Preflight-Anfrage überspringen; JSON wird ebenfalls akzeptiert. Nachrichten und Bestätigungsmail verwenden die Formularsprache, sonst lang, sonst Accept-Language. Bei Double-Opt-in wird eine Bestätigungsmail gesendet und die Person tritt nach Bestätigung der Liste bei.

Öffentlicher Endpunkt: keine Authentifizierung erforderlich.

Parameter

Name / PositionSchema
publicId
path · erforderlich
  • valuestring

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

Anfrage-Body erforderlich

application/x-www-form-urlencoded

  • valueobject

    Individuelle Antworten verwenden x_<field key> (oder den Schlüssel ohne Präfix). Pflichtantworten hängen von der Formularkonfiguration ab. Der Handler liest die ersten 8000 Zeichen des Bodys.

  • emailstringerforderlich

    format: "email" · maxLength: 320

  • namestring

    maxLength: 100

  • pagestring

    maxLength: 2000

  • elapsednumber | string

    Millisekunden seit Anzeige des Formulars.

  • langstring

    maxLength: 35

  • localestring

    maxLength: 35

  • websitestring

    Honeypot; leer lassen.

    maxLength: 200

  • Zusätzliche Eigenschaftstring | number

application/json

  • valueobject

    Individuelle Antworten verwenden x_<field key> (oder den Schlüssel ohne Präfix). Pflichtantworten hängen von der Formularkonfiguration ab. Der Handler liest die ersten 8000 Zeichen des Bodys.

  • emailstringerforderlich

    format: "email" · maxLength: 320

  • namestring

    maxLength: 100

  • pagestring

    maxLength: 2000

  • elapsednumber | string

    Millisekunden seit Anzeige des Formulars.

  • langstring

    maxLength: 35

  • localestring

    maxLength: 35

  • websitestring

    Honeypot; leer lassen.

    maxLength: 200

  • Zusätzliche Eigenschaftstring | number

Erfolgsantwort 200

Anmeldung angenommen.

application/json

  • valueobject
  • okbooleanerforderlich

    const: true

  • statusstringerforderlich

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

  • redirect_urlstring

curl-Beispiel

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

CORS-Richtlinie für öffentliche Anmeldung lesen

Öffentlicher Endpunkt: keine Authentifizierung erforderlich.

Parameter

Name / PositionSchema
publicId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 204

Erfolgreiche Antwort.

Kein Antwort-Body.

curl-Beispiel

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

Zählt eine Widget-Anzeige.

Öffentlicher Endpunkt: keine Authentifizierung erforderlich.

Parameter

Name / PositionSchema
publicId
path · erforderlich
  • valuestring

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

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 204

Gezählt.

Kein Antwort-Body.

curl-Beispiel

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

CORS-Richtlinie für öffentliche Anmeldung lesen

Öffentlicher Endpunkt: keine Authentifizierung erforderlich.

Parameter

Name / PositionSchema
publicId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 204

Erfolgreiche Antwort.

Kein Antwort-Body.

curl-Beispiel

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

Vorlagen

GET/v1/workspaces/{workspaceId}/templates

listTemplates

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Erfolgreiche Antwort.

application/json

  • valueobject
  • dataarrayerforderlich
  • Jedes Elementobject
  • idstringerforderlich

    format: "uuid"

  • product_idstring

    format: "uuid"

  • namestringerforderlich
  • subjectstringerforderlich
  • body_textstringerforderlich
  • contentobjecterforderlich
  • Zusätzliche Eigenschaftstring
  • slotsarrayerforderlich
  • Jedes Elementobject
  • keystringerforderlich

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

  • labelstring

    maxLength: 120

  • typestring

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

  • helpstring

    maxLength: 300

  • statusstringerforderlich

    enum: "active", "archived"

  • originstringerforderlich

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

  • created_by_actor_idstring | null
  • campaign_idstring | null

    format: "uuid"

  • message_kindstring
  • starter_idstring | null
  • starter_versioninteger | null
  • versionintegererforderlich
  • created_atstringerforderlich

    format: "date-time"

  • updated_atstringerforderlich

    format: "date-time"

  • body_html_urlstring

    format: "uri"

curl-Beispiel

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

createTemplate

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body erforderlich

application/json

  • valueobject
  • namestringerforderlich

    minLength: 1 · maxLength: 200

  • subjectstring

    maxLength: 10000

  • body_textstring

    maxLength: 2000000

  • body_htmlstring

    maxLength: 2000000

  • contentobject
  • Zusätzliche Eigenschaftstring
  • slotsarray
  • Jedes Elementobject
  • keystringerforderlich

    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

Erfolgsantwort 201

Erfolgreiche Antwort.

application/json

  • valueobject
  • dataobjecterforderlich
  • idstringerforderlich

    format: "uuid"

  • product_idstring

    format: "uuid"

  • namestringerforderlich
  • subjectstringerforderlich
  • body_textstringerforderlich
  • contentobjecterforderlich
  • Zusätzliche Eigenschaftstring
  • slotsarrayerforderlich
  • Jedes Elementobject
  • keystringerforderlich

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

  • labelstring

    maxLength: 120

  • typestring

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

  • helpstring

    maxLength: 300

  • statusstringerforderlich

    enum: "active", "archived"

  • originstringerforderlich

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

  • created_by_actor_idstring | null
  • campaign_idstring | null

    format: "uuid"

  • message_kindstring
  • starter_idstring | null
  • starter_versioninteger | null
  • versionintegererforderlich
  • created_atstringerforderlich

    format: "date-time"

  • updated_atstringerforderlich

    format: "date-time"

  • body_html_urlstring

    format: "uri"

curl-Beispiel

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

Rendere ungespeicherte Design-Eingaben mit Beispiel- oder Zielgruppenwerten und melde Platzhalterlücken.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body erforderlich

application/json

  • valueobject
  • subjectstring

    maxLength: 10000

  • body_textstring

    maxLength: 2000000

  • body_htmlstring

    maxLength: 2000000

  • contentobject
  • Zusätzliche Eigenschaftstring
  • audienceobject

    Wähle alle abonnierten Kontakte oder mindestens eine nicht leere Liste contact_ids, list_ids oder segment_ids.

  • all_subscribedboolean
  • contact_idsarray

    maxItems: 10000

  • Jedes Elementstring

    format: "uuid"

  • list_idsarray

    maxItems: 1000

  • Jedes Elementstring

    format: "uuid"

  • segment_idsarray

    maxItems: 1000

  • Jedes Elementstring

    format: "uuid"

  • sample_emailstring

    E-Mail eines vorhandenen Kontakts. Unbekannte Adressen liefern sample_recipient_not_found. Für Beispiel- oder Zielgruppenwerte weglassen.

    maxLength: 320

Erfolgsantwort 200

Erfolgreiche Antwort.

application/json

  • valueobject
  • dataobjecterforderlich
  • subjectstringerforderlich
  • body_textstringerforderlich
  • body_htmlstring
  • font_renderingarrayerforderlich
  • Jedes Elementobject
  • stackstringerforderlich
  • fontstringerforderlich
  • web_fontbooleanerforderlich
  • clientsarrayerforderlich
  • Jedes Elementobject
  • clientstringerforderlich

    Weitere Verschachtelung ausgelassen

  • labelstringerforderlich

    Weitere Verschachtelung ausgelassen

  • fontstringerforderlich

    Weitere Verschachtelung ausgelassen

  • web_fontbooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • fallbackbooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • sample_recipientnicht angegebenerforderlich
  • anyOf 1object
  • emailstringerforderlich
  • display_namestring | nullerforderlich
  • anyOf 2null
  • required_variablesarrayerforderlich
  • Jedes Elementstring
  • effective_slotsarrayerforderlich
  • Jedes Elementobject
  • keystringerforderlich

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

  • labelstring

    maxLength: 120

  • typestring

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

  • helpstring

    maxLength: 300

  • audience_countinteger
  • gapsarray
  • Jedes Elementobject
  • variablestringerforderlich
  • missing_countintegererforderlich
  • sample_emailsarrayerforderlich
  • Jedes Elementstring

curl-Beispiel

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

Ein Design mit Inline-HTML, auszufüllendem Inhalt und wirksamen Slots.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

templateId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Erfolgreiche Antwort.

application/json

  • valueobject
  • dataobjecterforderlich
  • idstringerforderlich

    format: "uuid"

  • product_idstring

    format: "uuid"

  • namestringerforderlich
  • subjectstringerforderlich
  • body_textstringerforderlich
  • contentobjecterforderlich
  • Zusätzliche Eigenschaftstring
  • slotsarrayerforderlich
  • Jedes Elementobject
  • keystringerforderlich

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

  • labelstring

    maxLength: 120

  • typestring

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

  • helpstring

    maxLength: 300

  • statusstringerforderlich

    enum: "active", "archived"

  • originstringerforderlich

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

  • created_by_actor_idstring | null
  • campaign_idstring | null

    format: "uuid"

  • message_kindstring
  • starter_idstring | null
  • starter_versioninteger | null
  • versionintegererforderlich
  • created_atstringerforderlich

    format: "date-time"

  • updated_atstringerforderlich

    format: "date-time"

  • body_html_urlstring

    format: "uri"

curl-Beispiel

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

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

templateId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body erforderlich

application/json

  • valueobject
  • namestring

    maxLength: 200

  • subjectstring

    maxLength: 10000

  • body_textstring

    maxLength: 2000000

  • body_htmlstring

    minLength: 1 · maxLength: 2000000

  • contentobject
  • Zusätzliche Eigenschaftstring

    maxLength: 20000

  • slotsarray

    maxItems: 100

  • Jedes Elementobject
  • keystringerforderlich

    maxLength: 200

  • labelstring

    maxLength: 120

  • typestring

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

  • helpstring

    maxLength: 300

  • statusstring

    enum: "active", "archived"

Erfolgsantwort 200

Erfolgreiche Antwort.

application/json

  • valueobject
  • dataobjecterforderlich
  • idstringerforderlich

    format: "uuid"

  • product_idstring

    format: "uuid"

  • namestringerforderlich
  • subjectstringerforderlich
  • body_textstringerforderlich
  • contentobjecterforderlich
  • Zusätzliche Eigenschaftstring
  • slotsarrayerforderlich
  • Jedes Elementobject
  • keystringerforderlich

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

  • labelstring

    maxLength: 120

  • typestring

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

  • helpstring

    maxLength: 300

  • statusstringerforderlich

    enum: "active", "archived"

  • originstringerforderlich

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

  • created_by_actor_idstring | null
  • campaign_idstring | null

    format: "uuid"

  • message_kindstring
  • starter_idstring | null
  • starter_versioninteger | null
  • versionintegererforderlich
  • created_atstringerforderlich

    format: "date-time"

  • updated_atstringerforderlich

    format: "date-time"

  • body_html_urlstring

    format: "uri"

curl-Beispiel

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

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

templateId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body erforderlich

application/json

  • valueobject
  • namestring

    maxLength: 200

Erfolgsantwort 201

Erfolgreiche Antwort.

application/json

  • valueobject
  • dataobjecterforderlich
  • idstringerforderlich

    format: "uuid"

  • product_idstring

    format: "uuid"

  • namestringerforderlich
  • subjectstringerforderlich
  • body_textstringerforderlich
  • contentobjecterforderlich
  • Zusätzliche Eigenschaftstring
  • slotsarrayerforderlich
  • Jedes Elementobject
  • keystringerforderlich

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

  • labelstring

    maxLength: 120

  • typestring

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

  • helpstring

    maxLength: 300

  • statusstringerforderlich

    enum: "active", "archived"

  • originstringerforderlich

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

  • created_by_actor_idstring | null
  • campaign_idstring | null

    format: "uuid"

  • message_kindstring
  • starter_idstring | null
  • starter_versioninteger | null
  • versionintegererforderlich
  • created_atstringerforderlich

    format: "date-time"

  • updated_atstringerforderlich

    format: "date-time"

  • body_html_urlstring

    format: "uri"

curl-Beispiel

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

Rendere ein gespeichertes Design mit Beispiel- oder Zielgruppenwerten und melde Platzhalterlücken.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

templateId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body erforderlich

application/json

  • valueobject
  • contentobject
  • Zusätzliche Eigenschaftstring
  • audienceobject

    Wähle alle abonnierten Kontakte oder mindestens eine nicht leere Liste contact_ids, list_ids oder segment_ids.

  • all_subscribedboolean
  • contact_idsarray

    maxItems: 10000

  • Jedes Elementstring

    format: "uuid"

  • list_idsarray

    maxItems: 1000

  • Jedes Elementstring

    format: "uuid"

  • segment_idsarray

    maxItems: 1000

  • Jedes Elementstring

    format: "uuid"

  • sample_emailstring

    E-Mail eines vorhandenen Kontakts. Unbekannte Adressen liefern sample_recipient_not_found. Für Beispiel- oder Zielgruppenwerte weglassen.

    maxLength: 320

Erfolgsantwort 200

Erfolgreiche Antwort.

application/json

  • valueobject
  • dataobjecterforderlich
  • subjectstringerforderlich
  • body_textstringerforderlich
  • body_htmlstring
  • font_renderingarrayerforderlich
  • Jedes Elementobject
  • stackstringerforderlich
  • fontstringerforderlich
  • web_fontbooleanerforderlich
  • clientsarrayerforderlich
  • Jedes Elementobject
  • clientstringerforderlich

    Weitere Verschachtelung ausgelassen

  • labelstringerforderlich

    Weitere Verschachtelung ausgelassen

  • fontstringerforderlich

    Weitere Verschachtelung ausgelassen

  • web_fontbooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • fallbackbooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • sample_recipientnicht angegebenerforderlich
  • anyOf 1object
  • emailstringerforderlich
  • display_namestring | nullerforderlich
  • anyOf 2null
  • required_variablesarrayerforderlich
  • Jedes Elementstring
  • effective_slotsarrayerforderlich
  • Jedes Elementobject
  • keystringerforderlich

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

  • labelstring

    maxLength: 120

  • typestring

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

  • helpstring

    maxLength: 300

  • audience_countinteger
  • gapsarray
  • Jedes Elementobject
  • variablestringerforderlich
  • missing_countintegererforderlich
  • sample_emailsarrayerforderlich
  • Jedes Elementstring

curl-Beispiel

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

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

templateId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

HTML-E-Mail-Vorlagenbody ohne Skripte.

text/html

  • valuestring

curl-Beispiel

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

Kampagnen

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

previewCampaignCoverage

Erforderliche Platzhalter, die eine Zielgruppe nicht füllen kann, bevor eine Kampagne gespeichert wird.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body erforderlich

application/json

  • valueobject
  • subjectstring

    maxLength: 10000

  • body_textstring

    maxLength: 2000000

  • body_htmlstring

    maxLength: 2000000

  • contentobject
  • Zusätzliche Eigenschaftstring
  • audienceobjecterforderlich

    Wähle alle abonnierten Kontakte oder mindestens eine nicht leere Liste contact_ids, list_ids oder segment_ids.

  • all_subscribedboolean
  • contact_idsarray

    maxItems: 10000

  • Jedes Elementstring

    format: "uuid"

  • list_idsarray

    maxItems: 1000

  • Jedes Elementstring

    format: "uuid"

  • segment_idsarray

    maxItems: 1000

  • Jedes Elementstring

    format: "uuid"

  • sample_emailstring

    maxLength: 320

  • template_idstring

    format: "uuid"

Erfolgsantwort 200

Erfolgreiche Antwort.

application/json

  • valueobject
  • dataobjecterforderlich
  • required_variablesarrayerforderlich
  • Jedes Elementstring
  • audience_countintegererforderlich
  • gapsarrayerforderlich
  • Jedes Elementobject
  • variablestringerforderlich
  • missing_countintegererforderlich
  • sample_emailsarrayerforderlich
  • Jedes Elementstring

curl-Beispiel

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

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Erfolgreiche Antwort.

application/json

  • valueobject
  • dataarrayerforderlich
  • Jedes Elementobject
  • idstringerforderlich

    format: "uuid"

  • product_idstring

    format: "uuid"

  • namestringerforderlich
  • 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
  • Jedes Elementstring
  • expires_after_secondsinteger | null
  • statusstringerforderlich
  • versionintegererforderlich
  • subject_variantsarray
  • Jedes Elementstring
  • selected_subject_variantinteger
  • content_overridesobject
  • Zusätzliche Eigenschaftstring
  • audience_queryobject

    Wähle alle abonnierten Kontakte oder mindestens eine nicht leere Liste contact_ids, list_ids oder segment_ids.

  • all_subscribedboolean
  • contact_idsarray

    maxItems: 10000

  • Jedes Elementstring

    format: "uuid"

  • list_idsarray

    maxItems: 1000

  • Jedes Elementstring

    format: "uuid"

  • segment_idsarray

    maxItems: 1000

  • Jedes Elementstring

    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
  • Zusätzliche EigenschaftBeliebiger Wert

curl-Beispiel

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

createCampaign

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body erforderlich

application/json

  • valueobject
  • namestringerforderlich

    maxLength: 200

  • mailbox_idstring

    format: "uuid"

  • template_idstringerforderlich

    format: "uuid"

  • subject_variantsarray

    maxItems: 8

  • Jedes Elementstring

    minLength: 1 · maxLength: 998

  • selected_subject_variantinteger

    minimum: 0

  • audienceobjecterforderlich
  • all_subscribedboolean

    default: false

  • contact_idsarray

    maxItems: 10000

  • Jedes Elementstring

    format: "uuid"

  • list_idsarray

    maxItems: 1000

  • Jedes Elementstring

    format: "uuid"

  • segment_idsarray

    maxItems: 1000

  • Jedes Elementstring

    format: "uuid"

Erfolgsantwort 201

Erfolgreiche Antwort.

application/json

  • valueobject
  • dataobjecterforderlich
  • idstringerforderlich

    format: "uuid"

  • product_idstring

    format: "uuid"

  • namestringerforderlich
  • 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
  • Jedes Elementstring
  • expires_after_secondsinteger | null
  • statusstringerforderlich
  • versionintegererforderlich
  • subject_variantsarray
  • Jedes Elementstring
  • selected_subject_variantinteger
  • content_overridesobject
  • Zusätzliche Eigenschaftstring
  • audience_queryobject

    Wähle alle abonnierten Kontakte oder mindestens eine nicht leere Liste contact_ids, list_ids oder segment_ids.

  • all_subscribedboolean
  • contact_idsarray

    maxItems: 10000

  • Jedes Elementstring

    format: "uuid"

  • list_idsarray

    maxItems: 1000

  • Jedes Elementstring

    format: "uuid"

  • segment_idsarray

    maxItems: 1000

  • Jedes Elementstring

    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
  • Zusätzliche EigenschaftBeliebiger Wert

curl-Beispiel

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

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body erforderlich

application/json

  • valueobject
  • audienceobjecterforderlich

    Wähle alle abonnierten Kontakte oder mindestens eine nicht leere Liste contact_ids, list_ids oder segment_ids.

  • all_subscribedboolean
  • contact_idsarray

    maxItems: 10000

  • Jedes Elementstring

    format: "uuid"

  • list_idsarray

    maxItems: 1000

  • Jedes Elementstring

    format: "uuid"

  • segment_idsarray

    maxItems: 1000

  • Jedes Elementstring

    format: "uuid"

Erfolgsantwort 200

Erfolgreiche Antwort.

application/json

  • valueobject
  • dataobjecterforderlich
  • countintegererforderlich
  • missing_consent_evidence_countintegererforderlich
  • samplearrayerforderlich
  • Jedes Elementobject
  • idstringerforderlich

    format: "uuid"

  • emailstringerforderlich
  • display_namestring | nullerforderlich
  • attributesobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • excludedobjecterforderlich
  • suppressedintegererforderlich
  • not_subscribedintegererforderlich
  • missing_recipient_hashintegererforderlich
  • missing_consent_evidenceintegererforderlich

curl-Beispiel

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

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

campaignId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Erfolgreiche Antwort.

application/json

  • valueobject
  • dataobjecterforderlich
  • idstringerforderlich

    format: "uuid"

  • product_idstring

    format: "uuid"

  • namestringerforderlich
  • 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
  • Jedes Elementstring
  • expires_after_secondsinteger | null
  • statusstringerforderlich
  • versionintegererforderlich
  • subject_variantsarray
  • Jedes Elementstring
  • selected_subject_variantinteger
  • content_overridesobject
  • Zusätzliche Eigenschaftstring
  • audience_queryobject

    Wähle alle abonnierten Kontakte oder mindestens eine nicht leere Liste contact_ids, list_ids oder segment_ids.

  • all_subscribedboolean
  • contact_idsarray

    maxItems: 10000

  • Jedes Elementstring

    format: "uuid"

  • list_idsarray

    maxItems: 1000

  • Jedes Elementstring

    format: "uuid"

  • segment_idsarray

    maxItems: 1000

  • Jedes Elementstring

    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
  • Zusätzliche EigenschaftBeliebiger Wert

curl-Beispiel

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

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

campaignId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body erforderlich

application/json

  • valueobject
  • namestringerforderlich

    maxLength: 200

  • mailbox_idstringerforderlich

    format: "uuid"

  • template_idstring

    format: "uuid"

  • subject_variantsarray

    maxItems: 8

  • Jedes Elementstring

    minLength: 1 · maxLength: 998

  • selected_subject_variantinteger

    minimum: 0

  • audienceobjecterforderlich

    Im Vertrag nicht angegebene Eigenschaften

Erfolgsantwort 200

Erfolgreiche Antwort.

application/json

  • valueobject
  • dataobjecterforderlich
  • idstringerforderlich

    format: "uuid"

  • product_idstring

    format: "uuid"

  • namestringerforderlich
  • 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
  • Jedes Elementstring
  • expires_after_secondsinteger | null
  • statusstringerforderlich
  • versionintegererforderlich
  • subject_variantsarray
  • Jedes Elementstring
  • selected_subject_variantinteger
  • content_overridesobject
  • Zusätzliche Eigenschaftstring
  • audience_queryobject

    Wähle alle abonnierten Kontakte oder mindestens eine nicht leere Liste contact_ids, list_ids oder segment_ids.

  • all_subscribedboolean
  • contact_idsarray

    maxItems: 10000

  • Jedes Elementstring

    format: "uuid"

  • list_idsarray

    maxItems: 1000

  • Jedes Elementstring

    format: "uuid"

  • segment_idsarray

    maxItems: 1000

  • Jedes Elementstring

    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
  • Zusätzliche EigenschaftBeliebiger Wert

curl-Beispiel

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}

Eine ungesendete Kampagne löschen

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

campaignId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Erfolgreiche Antwort.

application/json

  • valueobject
  • dataobjecterforderlich
  • idstringerforderlich

    format: "uuid"

  • deletedbooleanerforderlich

    const: true

curl-Beispiel

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

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

campaignId
path · erforderlich
  • 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"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Erfolgreiche Antwort.

application/json

  • valueobject
  • dataarrayerforderlich
  • Jedes Elementobject
  • 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"

  • pageobjecterforderlich
  • next_cursorstring
  • has_morebooleanerforderlich

curl-Beispiel

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

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

campaignId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Erfolgreiche Antwort.

application/json

  • valueobject
  • dataarrayerforderlich
  • Jedes Elementobject
  • idstringerforderlich
  • typestringerforderlich
  • occurred_atstringerforderlich

    format: "date-time"

  • actor_idstring | nullerforderlich
  • detailobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert

curl-Beispiel

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

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

campaignId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Erfolgreiche Antwort.

application/json

  • valueobject
  • dataobjecterforderlich
  • idstringerforderlich

    format: "uuid"

  • product_idstringerforderlich

    format: "uuid"

  • namestringerforderlich
  • mailbox_idstringerforderlich

    format: "uuid"

  • template_idstring | nullerforderlich

    format: "uuid"

  • statusstringerforderlich
  • audience_queryobjecterforderlich

    Wähle alle abonnierten Kontakte oder mindestens eine nicht leere Liste contact_ids, list_ids oder segment_ids.

  • all_subscribedboolean
  • contact_idsarray

    maxItems: 10000

  • Jedes Elementstring

    format: "uuid"

  • list_idsarray

    maxItems: 1000

  • Jedes Elementstring

    format: "uuid"

  • segment_idsarray

    maxItems: 1000

  • Jedes Elementstring

    format: "uuid"

  • scheduled_atstring | nullerforderlich

    format: "date-time"

  • started_atstring | nullerforderlich

    format: "date-time"

  • completed_atstring | nullerforderlich

    format: "date-time"

  • created_atstringerforderlich

    format: "date-time"

  • updated_atstringerforderlich

    format: "date-time"

curl-Beispiel

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

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

campaignId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Erfolgreiche Antwort.

application/json

  • valueobject
  • dataobjecterforderlich
  • idstringerforderlich

    format: "uuid"

  • product_idstringerforderlich

    format: "uuid"

  • namestringerforderlich
  • mailbox_idstringerforderlich

    format: "uuid"

  • template_idstring | nullerforderlich

    format: "uuid"

  • statusstringerforderlich
  • audience_queryobjecterforderlich

    Wähle alle abonnierten Kontakte oder mindestens eine nicht leere Liste contact_ids, list_ids oder segment_ids.

  • all_subscribedboolean
  • contact_idsarray

    maxItems: 10000

  • Jedes Elementstring

    format: "uuid"

  • list_idsarray

    maxItems: 1000

  • Jedes Elementstring

    format: "uuid"

  • segment_idsarray

    maxItems: 1000

  • Jedes Elementstring

    format: "uuid"

  • scheduled_atstring | nullerforderlich

    format: "date-time"

  • started_atstring | nullerforderlich

    format: "date-time"

  • completed_atstring | nullerforderlich

    format: "date-time"

  • created_atstringerforderlich

    format: "date-time"

  • updated_atstringerforderlich

    format: "date-time"

curl-Beispiel

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

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

campaignId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Erfolgreiche Antwort.

application/json

  • valueobject
  • dataobjecterforderlich
  • idstringerforderlich

    format: "uuid"

  • product_idstringerforderlich

    format: "uuid"

  • namestringerforderlich
  • mailbox_idstringerforderlich

    format: "uuid"

  • template_idstring | nullerforderlich

    format: "uuid"

  • statusstringerforderlich
  • audience_queryobjecterforderlich

    Wähle alle abonnierten Kontakte oder mindestens eine nicht leere Liste contact_ids, list_ids oder segment_ids.

  • all_subscribedboolean
  • contact_idsarray

    maxItems: 10000

  • Jedes Elementstring

    format: "uuid"

  • list_idsarray

    maxItems: 1000

  • Jedes Elementstring

    format: "uuid"

  • segment_idsarray

    maxItems: 1000

  • Jedes Elementstring

    format: "uuid"

  • scheduled_atstring | nullerforderlich

    format: "date-time"

  • started_atstring | nullerforderlich

    format: "date-time"

  • completed_atstring | nullerforderlich

    format: "date-time"

  • created_atstringerforderlich

    format: "date-time"

  • updated_atstringerforderlich

    format: "date-time"

curl-Beispiel

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

Veraltet

Veraltete Grenze für direkte Planung. Liefert immer governed_review_required; nutze den Kampagnenprüfungs-Endpunkt, damit der Empfängerschwellenwert des Workspace durchgesetzt wird.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

campaignId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort

Im Vertrag ist keine Erfolgsantwort angegeben.

curl-Beispiel

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

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

campaignId
path · erforderlich
  • valuestring

    format: "uuid"

Idempotency-Key
header · erforderlich
  • valuestring

    minLength: 16 · maxLength: 128

Anfrage-Body erforderlich

application/json

  • valueobject
  • tostringerforderlich

    minLength: 3 · maxLength: 320

  • data_modestring

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

  • contact_emailstring

    maxLength: 320

  • variant_keystring

    maxLength: 80

  • localestring

Erfolgsantwort 202

Erfolgreiche Antwort.

application/json

  • valueobject
  • dataobjecterforderlich
  • action_kindstringerforderlich

    enum: "transactional.send"

  • idstringerforderlich

    format: "uuid"

  • send_intent_idstringerforderlich

    format: "uuid"

  • provider_attempt_idstringerforderlich

    format: "uuid"

  • statusstringerforderlich
  • replayedbooleanerforderlich

curl-Beispiel

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

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

campaignId
path · erforderlich
  • valuestring

    format: "uuid"

Idempotency-Key
header · erforderlich
  • valuestring

    minLength: 16 · maxLength: 128

Anfrage-Body erforderlich

application/json

  • valueobject

    Keine zusätzlichen Eigenschaften

  • expected_versioninteger

    minimum: 1

  • expected_design_versioninteger

    minimum: 1

  • recipient_selectionobject

    Keine zusätzlichen Eigenschaften

  • all_subscribedboolean
  • contact_idsarray

    maxItems: 10000

  • Jedes Elementstring

    format: "uuid"

  • list_idsarray

    maxItems: 1000

  • Jedes Elementstring

    format: "uuid"

  • segment_idsarray

    maxItems: 1000

  • Jedes Elementstring

    format: "uuid"

  • scheduled_atstring

    format: "date-time"

  • send_nowboolean

    const: true

  • approve_as_launcherboolean

    Eine Person, die auf Senden klickt, genehmigt genau diese Anfrage, wenn die Prüfrichtlinie eine Person verlangt. Bei API-Schlüsseln und Agenten ignoriert; diese warten in Freigaben.

  • oneOf 1nicht angegeben
  • oneOf 2nicht angegeben

Erfolgsantwort 201

Freigabe zur Kampagnenplanung erstellt.

application/json

  • valueobject
  • dataobjecterforderlich
  • idstringerforderlich

    format: "uuid"

  • requested_by_actor_idstringerforderlich
  • action_kindstringerforderlich
  • summarystringerforderlich
  • capability_scopesarrayerforderlich
  • Jedes Elementstring
  • resource_scopeobjecterforderlich
  • Zusätzliche Eigenschaftarray
  • Jedes Elementstring
  • payloadobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • payload_sha256stringerforderlich

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

  • statusstringerforderlich

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

  • missedbooleanerforderlich
  • expires_atstringerforderlich

    format: "date-time"

  • decided_by_actor_idstring | null
  • decision_reasonstring | null
  • created_atstringerforderlich

    format: "date-time"

  • updated_atstringerforderlich

    format: "date-time"

  • decided_atstring | null

    format: "date-time"

  • execution_job_idstring

    format: "uuid"

  • reviewobject

    Keine zusätzlichen Eigenschaften

  • dispositionstringerforderlich

    enum: "automatic", "human_required"

  • recipient_countinteger | nullerforderlich

    minimum: 0

  • reasonsarrayerforderlich
  • Jedes Elementstring
  • checksarrayerforderlich
  • Jedes Elementstring

curl-Beispiel

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

Kampagne archivieren

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

campaignId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Erfolgreiche Antwort.

application/json

  • valueobject
  • dataobjecterforderlich
  • idstringerforderlich

    format: "uuid"

  • namestringerforderlich
  • statusstringerforderlich
  • archived_atstring | nullerforderlich

    format: "date-time"

  • updated_atstringerforderlich

    format: "date-time"

curl-Beispiel

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

Kampagne aus dem Archiv holen

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

campaignId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Erfolgreiche Antwort.

application/json

  • valueobject
  • dataobjecterforderlich
  • idstringerforderlich

    format: "uuid"

  • namestringerforderlich
  • statusstringerforderlich
  • archived_atstring | nullerforderlich

    format: "date-time"

  • updated_atstringerforderlich

    format: "date-time"

curl-Beispiel

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

Ein bis vier Kampagnen-E-Mail-Designs speichern

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

campaignId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body erforderlich

application/json

  • valueobject
  • namestringerforderlich

    minLength: 1 · maxLength: 200

  • mailbox_idstringerforderlich

    format: "uuid"

  • audienceobjecterforderlich

    Wähle alle abonnierten Kontakte oder mindestens eine nicht leere Liste contact_ids, list_ids oder segment_ids.

  • all_subscribedboolean
  • contact_idsarray

    maxItems: 10000

  • Jedes Elementstring

    format: "uuid"

  • list_idsarray

    maxItems: 1000

  • Jedes Elementstring

    format: "uuid"

  • segment_idsarray

    maxItems: 1000

  • Jedes Elementstring

    format: "uuid"

  • automatic_translationboolean
  • variantsarrayerforderlich

    minItems: 1 · maxItems: 4

  • Jedes Elementobject
  • body_htmlstringerforderlich

    minLength: 1 · maxLength: 2000000

  • subjectstring

    maxLength: 10000

  • body_textstring

    maxLength: 2000000

  • contentobject
  • Zusätzliche Eigenschaftstring

Erfolgsantwort 200

Erfolgreiche Antwort.

application/json

  • valueobject
  • dataobjecterforderlich
  • idstringerforderlich

    format: "uuid"

  • product_idstring

    format: "uuid"

  • namestringerforderlich
  • 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
  • Jedes Elementstring
  • expires_after_secondsinteger | null
  • statusstringerforderlich
  • versionintegererforderlich
  • subject_variantsarray
  • Jedes Elementstring
  • selected_subject_variantinteger
  • content_overridesobject
  • Zusätzliche Eigenschaftstring
  • audience_queryobject

    Wähle alle abonnierten Kontakte oder mindestens eine nicht leere Liste contact_ids, list_ids oder segment_ids.

  • all_subscribedboolean
  • contact_idsarray

    maxItems: 10000

  • Jedes Elementstring

    format: "uuid"

  • list_idsarray

    maxItems: 1000

  • Jedes Elementstring

    format: "uuid"

  • segment_idsarray

    maxItems: 1000

  • Jedes Elementstring

    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
  • Zusätzliche EigenschaftBeliebiger Wert
  • design_template_idstringerforderlich

    format: "uuid"

curl-Beispiel

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

Kampagnen

POST/v1/workspaces/{workspaceId}/broadcasts

createBroadcast

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

X-Banger-Product-Id
header · erforderlich

Explizites Betriebsprodukt; muss zu den produktgebundenen OAuth-Zugangsdaten passen.

  • valuestring

    format: "uuid"

Idempotency-Key
header · erforderlich
  • valuestring

    minLength: 1 · maxLength: 256

Anfrage-Body erforderlich

application/json

  • valueobject

    Keine zusätzlichen Eigenschaften

  • namestringerforderlich

    minLength: 1 · maxLength: 200

  • mailbox_idstring

    Vorhandene Absenderadresse. Weglassen, um den Einrichtungsabsender, dann ein aktives eigenes Postfach, dann ein gehostetes zu verwenden.

    format: "uuid"

  • template_idstring

    format: "uuid"

  • audienceobject

    Keine zusätzlichen Eigenschaften

  • all_subscribedboolean
  • contact_idsarray

    maxItems: 10000

  • Jedes Elementstring

    format: "uuid"

  • list_idsarray

    maxItems: 1000

  • Jedes Elementstring

    format: "uuid"

  • segment_idsarray

    maxItems: 1000

  • Jedes Elementstring

    format: "uuid"

  • subject_variantsarray

    maxItems: 8

  • Jedes Elementstring

    minLength: 1 · maxLength: 998

  • selected_subject_variantinteger

    minimum: 0 · maximum: 7

  • expires_after_secondsinteger

    Verwirf ungesendete Empfänger nach so vielen Sekunden ab dem geplanten Zeitpunkt; standardmäßig sieben Tage.

    minimum: 1 · maximum: 604800

  • content_overridesobject
  • Zusätzliche Eigenschaftstring

    maxLength: 20000

Erfolgsantwort 200

Kanonischer Rücklesewert oder idempotente Bestätigung. Anbieterannahme ist sent; delivered benötigt ein Zustellereignis und belegt keine Platzierung im Posteingang.

application/json

  • valueobject
  • datanicht angegebenerforderlich
  • allOf 1nicht angegeben
  • allOf 1object
  • idstringerforderlich

    format: "uuid"

  • product_idstringerforderlich

    format: "uuid"

  • namestringerforderlich
  • 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
  • Jedes Elementstring
  • expires_after_secondsinteger | null
  • statusstring
  • versionintegererforderlich
  • subject_variantsarray
  • Jedes Elementstring
  • selected_subject_variantinteger
  • content_overridesobject
  • Zusätzliche Eigenschaftstring
  • audience_queryobject

    Wähle alle abonnierten Kontakte oder mindestens eine nicht leere Liste contact_ids, list_ids oder segment_ids.

  • all_subscribedboolean
  • contact_idsarray

    maxItems: 10000

  • Jedes Elementstring

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • list_idsarray

    maxItems: 1000

  • Jedes Elementstring

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • segment_idsarray

    maxItems: 1000

  • Jedes Elementstring

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • 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
  • Zusätzliche EigenschaftBeliebiger Wert
  • broadcast_idstringerforderlich

    format: "uuid"

  • sender_addressstring | nullerforderlich
  • sending_blockernicht angegebenerforderlich
  • anyOf 1object
  • codestringerforderlich

    Weitere Verschachtelung ausgelassen

  • messagestringerforderlich

    Weitere Verschachtelung ausgelassen

  • anyOf 2null
  • designnicht angegebenerforderlich
  • anyOf 1object
  • idstring

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • product_idstring

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • namestring

    Weitere Verschachtelung ausgelassen

  • subjectstring

    Weitere Verschachtelung ausgelassen

  • body_textstring

    Weitere Verschachtelung ausgelassen

  • contentobject

    Weitere Verschachtelung ausgelassen

  • slotsarray

    Weitere Verschachtelung ausgelassen

  • statusstring

    enum: "active", "archived"

    Weitere Verschachtelung ausgelassen

  • originstring

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

    Weitere Verschachtelung ausgelassen

  • created_by_actor_idstring | null

    Weitere Verschachtelung ausgelassen

  • campaign_idstring | null

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • message_kindstring

    Weitere Verschachtelung ausgelassen

  • starter_idstring | null

    Weitere Verschachtelung ausgelassen

  • starter_versioninteger | null

    Weitere Verschachtelung ausgelassen

  • versioninteger

    Weitere Verschachtelung ausgelassen

  • created_atstring

    format: "date-time"

    Weitere Verschachtelung ausgelassen

  • updated_atstring

    format: "date-time"

    Weitere Verschachtelung ausgelassen

  • body_html_urlstring

    format: "uri"

    Weitere Verschachtelung ausgelassen

  • body_htmlstring | null

    Weitere Verschachtelung ausgelassen

  • body_html_b2_keystring | null

    Weitere Verschachtelung ausgelassen

  • anyOf 2null
  • managed_contentnicht angegebenerforderlich
  • anyOf 1nicht angegeben
  • allOf 1object

    Weitere Verschachtelung ausgelassen

  • allOf 2object

    Weitere Verschachtelung ausgelassen

  • anyOf 2null
  • subjectstring | nullerforderlich
  • sender_mailboxnicht angegebenerforderlich
  • anyOf 1object
  • idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • addressstringerforderlich

    Weitere Verschachtelung ausgelassen

  • display_namestringerforderlich

    Weitere Verschachtelung ausgelassen

  • statusstringerforderlich

    Weitere Verschachtelung ausgelassen

  • anyOf 2null
  • reply_mailboxnicht angegebenerforderlich
  • anyOf 1object
  • idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • addressstringerforderlich

    Weitere Verschachtelung ausgelassen

  • display_namestringerforderlich

    Weitere Verschachtelung ausgelassen

  • statusstringerforderlich

    Weitere Verschachtelung ausgelassen

  • anyOf 2null
  • design_versioninteger | nullerforderlich
  • audienceobjecterforderlich

    Wähle alle abonnierten Kontakte oder mindestens eine nicht leere Liste contact_ids, list_ids oder segment_ids.

  • all_subscribedboolean
  • contact_idsarray

    maxItems: 10000

  • Jedes Elementstring

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • list_idsarray

    maxItems: 1000

  • Jedes Elementstring

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • segment_idsarray

    maxItems: 1000

  • Jedes Elementstring

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • allOf 2object
  • replayedbooleanerforderlich
  • allOf 2object
  • previewobject
  • subjectstringerforderlich
  • preheaderstring
  • htmlstringerforderlich
  • textstringerforderlich
  • localestringerforderlich
  • directionstringerforderlich

    enum: "ltr", "rtl"

  • warningsarray
  • Jedes Elementstring
  • Zusätzliche EigenschaftBeliebiger Wert
  • translation_jobsarrayerforderlich
  • Jedes Elementstring

    format: "uuid"

curl-Beispiel

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

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

X-Banger-Product-Id
header · erforderlich

Explizites Betriebsprodukt; muss zu den produktgebundenen OAuth-Zugangsdaten passen.

  • valuestring

    format: "uuid"

broadcastId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Kanonischer Rücklesewert oder idempotente Bestätigung. Anbieterannahme ist sent; delivered benötigt ein Zustellereignis und belegt keine Platzierung im Posteingang.

application/json

  • valueobject
  • dataobjecterforderlich
  • idstringerforderlich

    format: "uuid"

  • product_idstringerforderlich

    format: "uuid"

  • namestringerforderlich
  • 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
  • Jedes Elementstring
  • expires_after_secondsinteger | null
  • statusstring
  • versionintegererforderlich
  • subject_variantsarray
  • Jedes Elementstring
  • selected_subject_variantinteger
  • content_overridesobject
  • Zusätzliche Eigenschaftstring
  • audience_queryobject

    Wähle alle abonnierten Kontakte oder mindestens eine nicht leere Liste contact_ids, list_ids oder segment_ids.

  • all_subscribedboolean
  • contact_idsarray

    maxItems: 10000

  • Jedes Elementstring

    format: "uuid"

  • list_idsarray

    maxItems: 1000

  • Jedes Elementstring

    format: "uuid"

  • segment_idsarray

    maxItems: 1000

  • Jedes Elementstring

    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
  • Zusätzliche EigenschaftBeliebiger Wert
  • broadcast_idstringerforderlich

    format: "uuid"

  • sender_addressstring | nullerforderlich
  • sending_blockernicht angegebenerforderlich
  • anyOf 1object
  • codestringerforderlich
  • messagestringerforderlich
  • anyOf 2null
  • designnicht angegebenerforderlich
  • anyOf 1object
  • idstring

    format: "uuid"

  • product_idstring

    format: "uuid"

  • namestring
  • subjectstring
  • body_textstring
  • contentobject
  • Zusätzliche Eigenschaftstring
  • slotsarray
  • Jedes Elementobject
  • keystringerforderlich

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

    Weitere Verschachtelung ausgelassen

  • labelstring

    maxLength: 120

    Weitere Verschachtelung ausgelassen

  • typestring

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

    Weitere Verschachtelung ausgelassen

  • helpstring

    maxLength: 300

    Weitere Verschachtelung ausgelassen

  • 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_contentnicht angegebenerforderlich
  • anyOf 1nicht angegeben
  • allOf 1object
  • idstringerforderlich

    format: "uuid"

  • namestringerforderlich
  • versionintegererforderlich

    minimum: 1

  • review_requiredbooleanerforderlich
  • 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
  • Zusätzliche EigenschaftBeliebiger Wert
  • translationsarray
  • Jedes Elementobject

    Weitere Verschachtelung ausgelassen

  • translation_jobsarray
  • Jedes Elementobject

    Weitere Verschachtelung ausgelassen

  • allOf 2object
  • source_revisionnicht angegebenerforderlich
  • anyOf 1object

    Weitere Verschachtelung ausgelassen

  • anyOf 2null

    Weitere Verschachtelung ausgelassen

  • published_source_revisionnicht angegebenerforderlich
  • anyOf 1object

    Weitere Verschachtelung ausgelassen

  • anyOf 2null

    Weitere Verschachtelung ausgelassen

  • translationsarrayerforderlich
  • Jedes Elementobject

    Weitere Verschachtelung ausgelassen

  • anyOf 2null
  • subjectstring | nullerforderlich
  • sender_mailboxnicht angegebenerforderlich
  • anyOf 1object
  • idstringerforderlich

    format: "uuid"

  • addressstringerforderlich
  • display_namestringerforderlich
  • statusstringerforderlich
  • anyOf 2null
  • reply_mailboxnicht angegebenerforderlich
  • anyOf 1object
  • idstringerforderlich

    format: "uuid"

  • addressstringerforderlich
  • display_namestringerforderlich
  • statusstringerforderlich
  • anyOf 2null
  • design_versioninteger | nullerforderlich
  • audienceobjecterforderlich

    Wähle alle abonnierten Kontakte oder mindestens eine nicht leere Liste contact_ids, list_ids oder segment_ids.

  • all_subscribedboolean
  • contact_idsarray

    maxItems: 10000

  • Jedes Elementstring

    format: "uuid"

  • list_idsarray

    maxItems: 1000

  • Jedes Elementstring

    format: "uuid"

  • segment_idsarray

    maxItems: 1000

  • Jedes Elementstring

    format: "uuid"

curl-Beispiel

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

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

X-Banger-Product-Id
header · erforderlich

Explizites Betriebsprodukt; muss zu den produktgebundenen OAuth-Zugangsdaten passen.

  • valuestring

    format: "uuid"

broadcastId
path · erforderlich
  • valuestring

    format: "uuid"

Idempotency-Key
header · erforderlich
  • valuestring

    minLength: 1 · maxLength: 256

Anfrage-Body erforderlich

application/json

  • valueobject

    Keine zusätzlichen Eigenschaften

  • namestring

    minLength: 1 · maxLength: 200

  • mailbox_idstring

    format: "uuid"

  • template_idstring

    format: "uuid"

  • audienceobject

    Keine zusätzlichen Eigenschaften

  • all_subscribedboolean
  • contact_idsarray

    maxItems: 10000

  • Jedes Elementstring

    format: "uuid"

  • list_idsarray

    maxItems: 1000

  • Jedes Elementstring

    format: "uuid"

  • segment_idsarray

    maxItems: 1000

  • Jedes Elementstring

    format: "uuid"

  • subject_variantsarray

    maxItems: 8

  • Jedes Elementstring

    minLength: 1 · maxLength: 998

  • selected_subject_variantinteger

    minimum: 0 · maximum: 7

  • expires_after_secondsinteger

    Verwirf ungesendete Empfänger nach so vielen Sekunden ab dem geplanten Zeitpunkt.

    minimum: 1 · maximum: 604800

  • content_overridesobject
  • Zusätzliche Eigenschaftstring

    maxLength: 20000

  • expected_versionintegererforderlich

    minimum: 1

Erfolgsantwort 200

Kanonischer Rücklesewert oder idempotente Bestätigung. Anbieterannahme ist sent; delivered benötigt ein Zustellereignis und belegt keine Platzierung im Posteingang.

application/json

  • valueobject
  • datanicht angegebenerforderlich
  • allOf 1object
  • idstringerforderlich

    format: "uuid"

  • product_idstringerforderlich

    format: "uuid"

  • namestringerforderlich
  • 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
  • Jedes Elementstring
  • expires_after_secondsinteger | null
  • statusstring
  • versionintegererforderlich
  • subject_variantsarray
  • Jedes Elementstring
  • selected_subject_variantinteger
  • content_overridesobject
  • Zusätzliche Eigenschaftstring
  • audience_queryobject

    Wähle alle abonnierten Kontakte oder mindestens eine nicht leere Liste contact_ids, list_ids oder segment_ids.

  • all_subscribedboolean
  • contact_idsarray

    maxItems: 10000

  • Jedes Elementstring

    format: "uuid"

  • list_idsarray

    maxItems: 1000

  • Jedes Elementstring

    format: "uuid"

  • segment_idsarray

    maxItems: 1000

  • Jedes Elementstring

    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
  • Zusätzliche EigenschaftBeliebiger Wert
  • broadcast_idstringerforderlich

    format: "uuid"

  • sender_addressstring | nullerforderlich
  • sending_blockernicht angegebenerforderlich
  • anyOf 1object
  • codestringerforderlich
  • messagestringerforderlich
  • anyOf 2null
  • designnicht angegebenerforderlich
  • anyOf 1object
  • idstring

    format: "uuid"

  • product_idstring

    format: "uuid"

  • namestring
  • subjectstring
  • body_textstring
  • contentobject
  • Zusätzliche Eigenschaftstring

    Weitere Verschachtelung ausgelassen

  • slotsarray
  • Jedes Elementobject

    Weitere Verschachtelung ausgelassen

  • 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_contentnicht angegebenerforderlich
  • anyOf 1nicht angegeben
  • allOf 1object
  • idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • namestringerforderlich

    Weitere Verschachtelung ausgelassen

  • versionintegererforderlich

    minimum: 1

    Weitere Verschachtelung ausgelassen

  • review_requiredbooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • draft_revision_idstring | null

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • submitted_revision_idstring | null

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • approved_revision_idstring | null

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • published_revision_idstring | null

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • published_publication_idstring | null

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • source_revisionobject

    Weitere Verschachtelung ausgelassen

  • translationsarray

    Weitere Verschachtelung ausgelassen

  • translation_jobsarray

    Weitere Verschachtelung ausgelassen

  • allOf 2object
  • source_revisionnicht angegebenerforderlich

    Weitere Verschachtelung ausgelassen

  • published_source_revisionnicht angegebenerforderlich

    Weitere Verschachtelung ausgelassen

  • translationsarrayerforderlich

    Weitere Verschachtelung ausgelassen

  • anyOf 2null
  • subjectstring | nullerforderlich
  • sender_mailboxnicht angegebenerforderlich
  • anyOf 1object
  • idstringerforderlich

    format: "uuid"

  • addressstringerforderlich
  • display_namestringerforderlich
  • statusstringerforderlich
  • anyOf 2null
  • reply_mailboxnicht angegebenerforderlich
  • anyOf 1object
  • idstringerforderlich

    format: "uuid"

  • addressstringerforderlich
  • display_namestringerforderlich
  • statusstringerforderlich
  • anyOf 2null
  • design_versioninteger | nullerforderlich
  • audienceobjecterforderlich

    Wähle alle abonnierten Kontakte oder mindestens eine nicht leere Liste contact_ids, list_ids oder segment_ids.

  • all_subscribedboolean
  • contact_idsarray

    maxItems: 10000

  • Jedes Elementstring

    format: "uuid"

  • list_idsarray

    maxItems: 1000

  • Jedes Elementstring

    format: "uuid"

  • segment_idsarray

    maxItems: 1000

  • Jedes Elementstring

    format: "uuid"

  • allOf 2object
  • replayedbooleanerforderlich

curl-Beispiel

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

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

X-Banger-Product-Id
header · erforderlich

Explizites Betriebsprodukt; muss zu den produktgebundenen OAuth-Zugangsdaten passen.

  • valuestring

    format: "uuid"

Anfrage-Body erforderlich

application/json

  • valueobject

    Keine zusätzlichen Eigenschaften

  • audienceobjecterforderlich

    Keine zusätzlichen Eigenschaften

  • all_subscribedboolean
  • contact_idsarray

    maxItems: 10000

  • Jedes Elementstring

    format: "uuid"

  • list_idsarray

    maxItems: 1000

  • Jedes Elementstring

    format: "uuid"

  • segment_idsarray

    maxItems: 1000

  • Jedes Elementstring

    format: "uuid"

  • template_idstring

    format: "uuid"

  • subjectstring

    minLength: 0 · maxLength: 10000

  • content_overridesobject
  • Zusätzliche Eigenschaftstring

    maxLength: 20000

Erfolgsantwort 200

Kanonischer Rücklesewert oder idempotente Bestätigung. Anbieterannahme ist sent; delivered benötigt ein Zustellereignis und belegt keine Platzierung im Posteingang.

application/json

  • valueobject
  • datanicht angegebenerforderlich
  • allOf 1object
  • countintegererforderlich
  • missing_consent_evidence_countintegererforderlich
  • samplearrayerforderlich
  • Jedes Elementobject
  • idstringerforderlich

    format: "uuid"

  • emailstringerforderlich
  • display_namestring | nullerforderlich
  • attributesobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • excludedobjecterforderlich
  • suppressedintegererforderlich
  • not_subscribedintegererforderlich
  • missing_recipient_hashintegererforderlich
  • missing_consent_evidenceintegererforderlich
  • allOf 2object
  • eligible_countintegererforderlich
  • required_variablesarrayerforderlich
  • Jedes Elementstring
  • missing_personalization_fieldsarrayerforderlich
  • Jedes Elementobject
  • variablestringerforderlich
  • missingCountintegererforderlich
  • sampleEmailsarrayerforderlich
  • Jedes Elementstring

    Weitere Verschachtelung ausgelassen

  • audienceobjecterforderlich

    Wähle alle abonnierten Kontakte oder mindestens eine nicht leere Liste contact_ids, list_ids oder segment_ids.

  • all_subscribedboolean
  • contact_idsarray

    maxItems: 10000

  • Jedes Elementstring

    format: "uuid"

  • list_idsarray

    maxItems: 1000

  • Jedes Elementstring

    format: "uuid"

  • segment_idsarray

    maxItems: 1000

  • Jedes Elementstring

    format: "uuid"

curl-Beispiel

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

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

X-Banger-Product-Id
header · erforderlich

Explizites Betriebsprodukt; muss zu den produktgebundenen OAuth-Zugangsdaten passen.

  • valuestring

    format: "uuid"

broadcastId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body erforderlich

application/json

  • valueobject

    Keine zusätzlichen Eigenschaften

  • audienceobject

    Keine zusätzlichen Eigenschaften

  • all_subscribedboolean
  • contact_idsarray

    maxItems: 10000

  • Jedes Elementstring

    format: "uuid"

  • list_idsarray

    maxItems: 1000

  • Jedes Elementstring

    format: "uuid"

  • segment_idsarray

    maxItems: 1000

  • Jedes Elementstring

    format: "uuid"

Erfolgsantwort 200

Kanonischer Rücklesewert oder idempotente Bestätigung. Anbieterannahme ist sent; delivered benötigt ein Zustellereignis und belegt keine Platzierung im Posteingang.

application/json

  • valueobject
  • datanicht angegebenerforderlich
  • allOf 1object
  • countintegererforderlich
  • missing_consent_evidence_countintegererforderlich
  • samplearrayerforderlich
  • Jedes Elementobject
  • idstringerforderlich

    format: "uuid"

  • emailstringerforderlich
  • display_namestring | nullerforderlich
  • attributesobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • excludedobjecterforderlich
  • suppressedintegererforderlich
  • not_subscribedintegererforderlich
  • missing_recipient_hashintegererforderlich
  • missing_consent_evidenceintegererforderlich
  • allOf 2object
  • eligible_countintegererforderlich
  • required_variablesarrayerforderlich
  • Jedes Elementstring
  • missing_personalization_fieldsarrayerforderlich
  • Jedes Elementobject
  • variablestringerforderlich
  • missingCountintegererforderlich
  • sampleEmailsarrayerforderlich
  • Jedes Elementstring

    Weitere Verschachtelung ausgelassen

  • audienceobjecterforderlich

    Wähle alle abonnierten Kontakte oder mindestens eine nicht leere Liste contact_ids, list_ids oder segment_ids.

  • all_subscribedboolean
  • contact_idsarray

    maxItems: 10000

  • Jedes Elementstring

    format: "uuid"

  • list_idsarray

    maxItems: 1000

  • Jedes Elementstring

    format: "uuid"

  • segment_idsarray

    maxItems: 1000

  • Jedes Elementstring

    format: "uuid"

curl-Beispiel

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

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

X-Banger-Product-Id
header · erforderlich

Explizites Betriebsprodukt; muss zu den produktgebundenen OAuth-Zugangsdaten passen.

  • valuestring

    format: "uuid"

broadcastId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Kanonischer Rücklesewert oder idempotente Bestätigung. Anbieterannahme ist sent; delivered benötigt ein Zustellereignis und belegt keine Platzierung im Posteingang.

application/json

  • valueobject
  • dataobjecterforderlich
  • broadcast_idstringerforderlich

    format: "uuid"

  • product_idstringerforderlich

    format: "uuid"

  • readybooleanerforderlich
  • blockersarrayerforderlich
  • Jedes Elementobject
  • codestringerforderlich
  • messagestringerforderlich
  • audiencenicht angegebenerforderlich
  • allOf 1object
  • countintegererforderlich
  • missing_consent_evidence_countintegererforderlich
  • samplearrayerforderlich
  • Jedes Elementobject
  • idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • emailstringerforderlich

    Weitere Verschachtelung ausgelassen

  • display_namestring | nullerforderlich

    Weitere Verschachtelung ausgelassen

  • attributesobjecterforderlich

    Weitere Verschachtelung ausgelassen

  • excludedobjecterforderlich
  • suppressedintegererforderlich
  • not_subscribedintegererforderlich
  • missing_recipient_hashintegererforderlich
  • missing_consent_evidenceintegererforderlich
  • allOf 2object
  • eligible_countintegererforderlich
  • required_variablesarrayerforderlich
  • Jedes Elementstring
  • missing_personalization_fieldsarrayerforderlich
  • Jedes Elementobject
  • variablestringerforderlich

    Weitere Verschachtelung ausgelassen

  • missingCountintegererforderlich

    Weitere Verschachtelung ausgelassen

  • sampleEmailsarrayerforderlich

    Weitere Verschachtelung ausgelassen

  • audienceobjecterforderlich

    Wähle alle abonnierten Kontakte oder mindestens eine nicht leere Liste contact_ids, list_ids oder segment_ids.

  • all_subscribedboolean
  • contact_idsarray

    maxItems: 10000

  • Jedes Elementstring

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • list_idsarray

    maxItems: 1000

  • Jedes Elementstring

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • segment_idsarray

    maxItems: 1000

  • Jedes Elementstring

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • campaign_versionintegererforderlich
  • design_versioninteger | nullerforderlich
  • languagesnicht angegebenerforderlich
  • anyOf 1object

    Noch laufende Übersetzungen von Zielgruppensprachen halten die Kampagne nie auf. Ihre Leser erhalten sie, sobald ihre Übersetzung bereit ist, und werden übersprungen (translation_failed, translation_awaiting_review oder translation_still_preparing), wenn sie nicht innerhalb eines Tages nach dem Versand bereit ist.

  • requestedarrayerforderlich
  • Jedes Elementobject
  • localestringerforderlich

    Weitere Verschachtelung ausgelassen

  • countintegererforderlich

    Weitere Verschachtelung ausgelassen

  • pending_localesarrayerforderlich
  • Jedes Elementstring
  • waiting_localesarrayerforderlich
  • Jedes Elementstring
  • anyOf 2null
  • sendingobjecterforderlich
  • 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_pacenicht angegebenerforderlich
  • anyOf 1object
  • daysintegererforderlich
  • daily_limitintegererforderlich
  • messagestringerforderlich
  • anyOf 2null
  • approval_requirementsobjecterforderlich
  • dispositionstringerforderlich

    enum: "automatic", "human_required"

  • recipient_countinteger | nullerforderlich
  • reasonsarrayerforderlich
  • Jedes Elementstring
  • checksarrayerforderlich
  • Jedes Elementstring
  • footerobjecterforderlich
  • identity_presentbooleanerforderlich
  • address_presentbooleanerforderlich
  • checks_are_advisorybooleanerforderlich

    const: true

  • next_actionstringerforderlich

curl-Beispiel

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

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

X-Banger-Product-Id
header · erforderlich

Explizites Betriebsprodukt; muss zu den produktgebundenen OAuth-Zugangsdaten passen.

  • valuestring

    format: "uuid"

broadcastId
path · erforderlich
  • 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"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Kanonischer Rücklesewert oder idempotente Bestätigung. Anbieterannahme ist sent; delivered benötigt ein Zustellereignis und belegt keine Platzierung im Posteingang.

application/json

  • valueobject
  • dataarrayerforderlich
  • Jedes Elementobject
  • 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"

  • pageobjecterforderlich
  • next_cursorstring
  • has_morebooleanerforderlich
  • delivery_semanticsstringerforderlich

curl-Beispiel

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

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

X-Banger-Product-Id
header · erforderlich

Explizites Betriebsprodukt; muss zu den produktgebundenen OAuth-Zugangsdaten passen.

  • valuestring

    format: "uuid"

broadcastId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Kanonischer Rücklesewert oder idempotente Bestätigung. Anbieterannahme ist sent; delivered benötigt ein Zustellereignis und belegt keine Platzierung im Posteingang.

application/json

  • valueobject
  • dataarrayerforderlich
  • Jedes Elementobject
  • idstringerforderlich
  • typestringerforderlich
  • occurred_atstringerforderlich

    format: "date-time"

  • actor_idstring | nullerforderlich
  • detailobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • delivery_semanticsstringerforderlich

curl-Beispiel

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'

Journeys

GET/v1/workspaces/{workspaceId}/journeys

listJourneys

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • 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

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Produkt-Journeys.

application/json

  • valueobject
  • dataarrayerforderlich
  • Jedes Elementnicht angegeben
  • allOf 1object

    Keine zusätzlichen Eigenschaften

  • namestringerforderlich

    minLength: 1 · maxLength: 200

  • descriptionstring

    maxLength: 2000

  • mailbox_idstring

    Vorhandener Absender. Weglassen, um zuerst den Einrichtungsabsender, dann ein aktives eigenes Postfach und dann ein gehostetes zu wählen. Gespeicherte und explizite Absender bleiben unverändert.

    format: "uuid"

  • from_local_partstring

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

  • triggerobjecterforderlich
  • kindstringerforderlich

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

  • connection_idstring

    format: "uuid"

  • configobject
  • eventstring

    Weitere Verschachtelung ausgelassen

  • once_per_personboolean

    Jede Person tritt einmal ein. Setze false, um nach Abschluss einen erneuten Eintritt zu erlauben.

    default: true

    Weitere Verschachtelung ausgelassen

  • reentry_daysinteger

    Bei once_per_person false: Tage seit dem letzten Eintritt einer Person bis zum erneuten Eintritt.

    minimum: 1 · maximum: 365

    Weitere Verschachtelung ausgelassen

  • Zusätzliche EigenschaftBeliebiger Wert
  • conditionsarray
  • Jedes Elementobject

    Weitere Verschachtelung ausgelassen

  • audienceobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • goalobject

    Keine zusätzlichen Eigenschaften

  • kindstringerforderlich

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

  • connection_idstring

    format: "uuid"

  • configobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • exitobject

    Keine zusätzlichen Eigenschaften

  • 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

    Abkürzung nur zur Erstellung: Speichert atomar einen E-Mail-Entwurf mit verwalteter Quelle und eine Journey, deren E-Mail-Schritt darauf verweist. Fehlende Zielsprachen werden zur kostenlosen Übersetzung eingereiht; dies veröffentlicht oder aktiviert die Journey nicht.

    Keine zusätzlichen Eigenschaften

  • source_localestring

    Kanonische BCP-47-Quell-Locale; übernimmt bei Auslassung die Produkteinstellungen.

  • configured_localesarray

    Quell- und Ziel-Locales; eine ausgelassene Quelle wird vom Server hinzugefügt.

    maxItems: 100 · uniqueItems: true

  • Jedes Elementstring

    Weitere Verschachtelung ausgelassen

  • fallback_localestring
  • layout_idstring

    Gewähltes wiederverwendbares Layout; der Server übernimmt einen Snapshot seiner veröffentlichten Revision in diese Inhaltsrevision.

    format: "uuid"

  • localization_policyobject

    Eine Journey-E-Mail geht nur in der Sprache der Person heraus: Sie wartet auf ihre Übersetzung, etwa eine Minute bei Belegen, Codes und Sicherheitshinweisen und bis zu einen Tag bei anderen E-Mails, und wird nicht gesendet, wenn die Übersetzung dann nicht bereit ist.

    Keine zusätzlichen Eigenschaften

  • manual_reviewboolean

    default: false

    Weitere Verschachtelung ausgelassen

  • sourceobjecterforderlich

    Keine zusätzlichen Eigenschaften

  • subjectstringerforderlich

    minLength: 1 · maxLength: 100000

    Weitere Verschachtelung ausgelassen

  • preheaderstring

    maxLength: 100000

    Weitere Verschachtelung ausgelassen

  • body_textstring

    Für Quellkompatibilität akzeptiert; gerenderter Klartext wird aus dem endgültigen HTML abgeleitet.

    maxLength: 100000

    Weitere Verschachtelung ausgelassen

  • body_htmlstringerforderlich

    minLength: 1 · maxLength: 100000

    Weitere Verschachtelung ausgelassen

  • layoutstring

    Muss einen {{ content }}-Slot enthalten.

    maxLength: 100000

    Weitere Verschachtelung ausgelassen

  • variantsobject

    Optionale Quellversionen. Jede Version wird automatisch in derselben Revision übersetzt.

    Weitere Verschachtelung ausgelassen

  • variablesobjecterforderlich

    Weitere Verschachtelung ausgelassen

  • samplesobject

    Benannte Beispielwertsätze für Vorschau und Quellvalidierung.

  • Zusätzliche Eigenschaftobject

    Weitere Verschachtelung ausgelassen

  • translationsobject

    ICU-Quellnachrichtenkatalog und optional bereitgestellte Zielkataloge. Fehlende konfigurierte Ziele werden zur asynchronen Übersetzung eingereiht; zum Speichern sind sie nicht erforderlich.

  • Zusätzliche Eigenschaftobject

    Weitere Verschachtelung ausgelassen

  • stepsarrayerforderlich

    maxItems: 100

  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

  • idstring

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • positioninteger

    minimum: 1 · maximum: 100

    Weitere Verschachtelung ausgelassen

  • kindstringerforderlich

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

    Weitere Verschachtelung ausgelassen

  • namestringerforderlich

    minLength: 1 · maxLength: 200

    Weitere Verschachtelung ausgelassen

  • managed_contentobject

    Typisierter Quellvertrag und Entwurfs-/Veröffentlichungsrevisionsidentität eines E-Mail-Schritts.

    Weitere Verschachtelung ausgelassen

  • configobjecterforderlich

    Warteschritte akzeptieren optional until mit name, path, operator (equals, not_equals, contains oder exists) und value sowie das erforderliche on_met (continue oder end_journey). continue überspringt die folgende Erinnerungsmail; end_journey beendet die Journey. Eine Erinnerungsmail muss unmittelbar im selben Zweig folgen. Die Wartephase prüft aktuelle Kundendaten jede Minute bis amount/unit. Fehlende Felder sind unbekannt und halten die Erinnerung zurück. Normale Wartephasen und eigenständige Bedingungen behalten ihr Verhalten. Benenne Prüfungen nach verifizierten Kundenmeilensteinen. Verwaltete E-Mail-Schritte referenzieren veröffentlichte Inhalte über managed_content_id; die Aktivierung lehnt unveröffentlichte Referenzen ab. E-Mail-Schritte können expires_after_seconds (1-604800) setzen, um eine verzögerte Sendung nach diesem Intervall ab ihrem ursprünglichen Start zu verwerfen; Standard sind sieben Tage.

    Weitere Verschachtelung ausgelassen

  • armsarray

    minItems: 2 · maxItems: 4

    Weitere Verschachtelung ausgelassen

  • allOf 2object
  • idstringerforderlich

    format: "uuid"

  • statusstringerforderlich

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

  • api_keystring | null
  • content_modestring | null

    enum: "code", "managed", null

  • identitystring | null
  • identity_aliasesarray
  • Jedes Elementstring
  • samplesarray
  • Jedes Elementobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • versionintegererforderlich

    minimum: 1

  • statsobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • stepStatsarray
  • Jedes Elementobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • armStatsarray
  • Jedes Elementobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • healthobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • indicatorobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • sparklinearrayerforderlich
  • Jedes Elementnumber
  • activated_atstring | null

    format: "date-time"

  • updated_atstring

    format: "date-time"

  • last_activity_atstring | null

    format: "date-time"

curl-Beispiel

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

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

Idempotency-Key
header · erforderlich
  • valuestring

    minLength: 16 · maxLength: 128

Anfrage-Body erforderlich

application/json

  • valueobject

    Keine zusätzlichen Eigenschaften

  • namestringerforderlich

    minLength: 1 · maxLength: 200

  • descriptionstring

    maxLength: 2000

  • mailbox_idstring

    Vorhandener Absender. Weglassen, um zuerst den Einrichtungsabsender, dann ein aktives eigenes Postfach und dann ein gehostetes zu wählen. Gespeicherte und explizite Absender bleiben unverändert.

    format: "uuid"

  • from_local_partstring

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

  • triggerobjecterforderlich
  • kindstringerforderlich

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

  • connection_idstring

    format: "uuid"

  • configobject
  • eventstring
  • once_per_personboolean

    Jede Person tritt einmal ein. Setze false, um nach Abschluss einen erneuten Eintritt zu erlauben.

    default: true

  • reentry_daysinteger

    Bei once_per_person false: Tage seit dem letzten Eintritt einer Person bis zum erneuten Eintritt.

    minimum: 1 · maximum: 365

  • Zusätzliche EigenschaftBeliebiger Wert
  • conditionsarray
  • Jedes Elementobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • audienceobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • goalobject

    Keine zusätzlichen Eigenschaften

  • kindstringerforderlich

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

  • connection_idstring

    format: "uuid"

  • configobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • exitobject

    Keine zusätzlichen Eigenschaften

  • 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

    Abkürzung nur zur Erstellung: Speichert atomar einen E-Mail-Entwurf mit verwalteter Quelle und eine Journey, deren E-Mail-Schritt darauf verweist. Fehlende Zielsprachen werden zur kostenlosen Übersetzung eingereiht; dies veröffentlicht oder aktiviert die Journey nicht.

    Keine zusätzlichen Eigenschaften

  • source_localestring

    Kanonische BCP-47-Quell-Locale; übernimmt bei Auslassung die Produkteinstellungen.

  • configured_localesarray

    Quell- und Ziel-Locales; eine ausgelassene Quelle wird vom Server hinzugefügt.

    maxItems: 100 · uniqueItems: true

  • Jedes Elementstring
  • fallback_localestring
  • layout_idstring

    Gewähltes wiederverwendbares Layout; der Server übernimmt einen Snapshot seiner veröffentlichten Revision in diese Inhaltsrevision.

    format: "uuid"

  • localization_policyobject

    Eine Journey-E-Mail geht nur in der Sprache der Person heraus: Sie wartet auf ihre Übersetzung, etwa eine Minute bei Belegen, Codes und Sicherheitshinweisen und bis zu einen Tag bei anderen E-Mails, und wird nicht gesendet, wenn die Übersetzung dann nicht bereit ist.

    Keine zusätzlichen Eigenschaften

  • manual_reviewboolean

    default: false

  • sourceobjecterforderlich

    Keine zusätzlichen Eigenschaften

  • subjectstringerforderlich

    minLength: 1 · maxLength: 100000

  • preheaderstring

    maxLength: 100000

  • body_textstring

    Für Quellkompatibilität akzeptiert; gerenderter Klartext wird aus dem endgültigen HTML abgeleitet.

    maxLength: 100000

  • body_htmlstringerforderlich

    minLength: 1 · maxLength: 100000

  • layoutstring

    Muss einen {{ content }}-Slot enthalten.

    maxLength: 100000

  • variantsobject

    Optionale Quellversionen. Jede Version wird automatisch in derselben Revision übersetzt.

  • Zusätzliche Eigenschaftobject

    Keine zusätzlichen Eigenschaften

  • subjectstringerforderlich

    minLength: 1 · maxLength: 100000

  • preheaderstring

    maxLength: 100000

  • body_htmlstringerforderlich

    minLength: 1 · maxLength: 100000

  • body_textstring

    maxLength: 100000

  • layoutstring

    maxLength: 100000

  • variablesobjecterforderlich
  • Zusätzliche Eigenschaftnicht angegeben

    Rekursive typisierte Variable. Geldwerte verwenden {amount_cents: integer, currency: ISO 4217 code}; date-Werte sind ISO-Kalenderdaten und datetime-Werte ISO-Zeitstempel mit Offsets.

  • oneOf 1object

    Keine zusätzlichen Eigenschaften

  • typestringerforderlich

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

    Weitere Verschachtelung ausgelassen

  • requiredboolean

    Weitere Verschachtelung ausgelassen

  • descriptionstring

    maxLength: 2000

    Weitere Verschachtelung ausgelassen

  • defaultnicht angegeben

    Muss zum Feldtyp passen.

    Weitere Verschachtelung ausgelassen

  • oneOf 2object

    Keine zusätzlichen Eigenschaften

  • typenicht angegebenerforderlich

    const: "object"

    Weitere Verschachtelung ausgelassen

  • requiredboolean

    Weitere Verschachtelung ausgelassen

  • descriptionstring

    maxLength: 2000

    Weitere Verschachtelung ausgelassen

  • defaultobject

    Weitere Verschachtelung ausgelassen

  • propertiesobjecterforderlich

    Weitere Verschachtelung ausgelassen

  • oneOf 3object

    Keine zusätzlichen Eigenschaften

  • typenicht angegebenerforderlich

    const: "list"

    Weitere Verschachtelung ausgelassen

  • requiredboolean

    Weitere Verschachtelung ausgelassen

  • descriptionstring

    maxLength: 2000

    Weitere Verschachtelung ausgelassen

  • defaultarray

    Weitere Verschachtelung ausgelassen

  • itemsnicht angegebenerforderlich

    Rekursive typisierte Variable. Geldwerte verwenden {amount_cents: integer, currency: ISO 4217 code}; date-Werte sind ISO-Kalenderdaten und datetime-Werte ISO-Zeitstempel mit Offsets.

    Weitere Verschachtelung ausgelassen

  • samplesobject

    Benannte Beispielwertsätze für Vorschau und Quellvalidierung.

  • Zusätzliche Eigenschaftobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • translationsobject

    ICU-Quellnachrichtenkatalog und optional bereitgestellte Zielkataloge. Fehlende konfigurierte Ziele werden zur asynchronen Übersetzung eingereiht; zum Speichern sind sie nicht erforderlich.

  • Zusätzliche Eigenschaftobject
  • Zusätzliche Eigenschaftstring
  • stepsarrayerforderlich

    maxItems: 100

  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

  • idstring

    format: "uuid"

  • positioninteger

    minimum: 1 · maximum: 100

  • kindstringerforderlich

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

  • namestringerforderlich

    minLength: 1 · maxLength: 200

  • managed_contentobject

    Typisierter Quellvertrag und Entwurfs-/Veröffentlichungsrevisionsidentität eines E-Mail-Schritts.

  • 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
  • Jedes Elementstring
  • variablesobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • published_variablesobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • configobjecterforderlich

    Warteschritte akzeptieren optional until mit name, path, operator (equals, not_equals, contains oder exists) und value sowie das erforderliche on_met (continue oder end_journey). continue überspringt die folgende Erinnerungsmail; end_journey beendet die Journey. Eine Erinnerungsmail muss unmittelbar im selben Zweig folgen. Die Wartephase prüft aktuelle Kundendaten jede Minute bis amount/unit. Fehlende Felder sind unbekannt und halten die Erinnerung zurück. Normale Wartephasen und eigenständige Bedingungen behalten ihr Verhalten. Benenne Prüfungen nach verifizierten Kundenmeilensteinen. Verwaltete E-Mail-Schritte referenzieren veröffentlichte Inhalte über managed_content_id; die Aktivierung lehnt unveröffentlichte Referenzen ab. E-Mail-Schritte können expires_after_seconds (1-604800) setzen, um eine verzögerte Sendung nach diesem Intervall ab ihrem ursprünglichen Start zu verwerfen; Standard sind sieben Tage.

  • Zusätzliche EigenschaftBeliebiger Wert
  • armsarray

    minItems: 2 · maxItems: 4

  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

  • keystringerforderlich

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

  • labelstringerforderlich

    maxLength: 120

  • allocationnumbererforderlich

    minimum: 0 · maximum: 100

  • stepsarrayerforderlich
  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

    Weitere Verschachtelung ausgelassen

Erfolgsantwort 201

Journey erstellt.

application/json

  • valueobject
  • datanicht angegeben
  • allOf 1object

    Keine zusätzlichen Eigenschaften

  • namestringerforderlich

    minLength: 1 · maxLength: 200

  • descriptionstring

    maxLength: 2000

  • mailbox_idstring

    Vorhandener Absender. Weglassen, um zuerst den Einrichtungsabsender, dann ein aktives eigenes Postfach und dann ein gehostetes zu wählen. Gespeicherte und explizite Absender bleiben unverändert.

    format: "uuid"

  • from_local_partstring

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

  • triggerobjecterforderlich
  • kindstringerforderlich

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

  • connection_idstring

    format: "uuid"

  • configobject
  • eventstring
  • once_per_personboolean

    Jede Person tritt einmal ein. Setze false, um nach Abschluss einen erneuten Eintritt zu erlauben.

    default: true

  • reentry_daysinteger

    Bei once_per_person false: Tage seit dem letzten Eintritt einer Person bis zum erneuten Eintritt.

    minimum: 1 · maximum: 365

  • Zusätzliche EigenschaftBeliebiger Wert
  • conditionsarray
  • Jedes Elementobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • audienceobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • goalobject

    Keine zusätzlichen Eigenschaften

  • kindstringerforderlich

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

  • connection_idstring

    format: "uuid"

  • configobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • exitobject

    Keine zusätzlichen Eigenschaften

  • 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

    Abkürzung nur zur Erstellung: Speichert atomar einen E-Mail-Entwurf mit verwalteter Quelle und eine Journey, deren E-Mail-Schritt darauf verweist. Fehlende Zielsprachen werden zur kostenlosen Übersetzung eingereiht; dies veröffentlicht oder aktiviert die Journey nicht.

    Keine zusätzlichen Eigenschaften

  • source_localestring

    Kanonische BCP-47-Quell-Locale; übernimmt bei Auslassung die Produkteinstellungen.

  • configured_localesarray

    Quell- und Ziel-Locales; eine ausgelassene Quelle wird vom Server hinzugefügt.

    maxItems: 100 · uniqueItems: true

  • Jedes Elementstring
  • fallback_localestring
  • layout_idstring

    Gewähltes wiederverwendbares Layout; der Server übernimmt einen Snapshot seiner veröffentlichten Revision in diese Inhaltsrevision.

    format: "uuid"

  • localization_policyobject

    Eine Journey-E-Mail geht nur in der Sprache der Person heraus: Sie wartet auf ihre Übersetzung, etwa eine Minute bei Belegen, Codes und Sicherheitshinweisen und bis zu einen Tag bei anderen E-Mails, und wird nicht gesendet, wenn die Übersetzung dann nicht bereit ist.

    Keine zusätzlichen Eigenschaften

  • manual_reviewboolean

    default: false

  • sourceobjecterforderlich

    Keine zusätzlichen Eigenschaften

  • subjectstringerforderlich

    minLength: 1 · maxLength: 100000

  • preheaderstring

    maxLength: 100000

  • body_textstring

    Für Quellkompatibilität akzeptiert; gerenderter Klartext wird aus dem endgültigen HTML abgeleitet.

    maxLength: 100000

  • body_htmlstringerforderlich

    minLength: 1 · maxLength: 100000

  • layoutstring

    Muss einen {{ content }}-Slot enthalten.

    maxLength: 100000

  • variantsobject

    Optionale Quellversionen. Jede Version wird automatisch in derselben Revision übersetzt.

  • Zusätzliche Eigenschaftobject

    Keine zusätzlichen Eigenschaften

    Weitere Verschachtelung ausgelassen

  • variablesobjecterforderlich
  • Zusätzliche Eigenschaftnicht angegeben

    Rekursive typisierte Variable. Geldwerte verwenden {amount_cents: integer, currency: ISO 4217 code}; date-Werte sind ISO-Kalenderdaten und datetime-Werte ISO-Zeitstempel mit Offsets.

    Weitere Verschachtelung ausgelassen

  • samplesobject

    Benannte Beispielwertsätze für Vorschau und Quellvalidierung.

  • Zusätzliche Eigenschaftobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • translationsobject

    ICU-Quellnachrichtenkatalog und optional bereitgestellte Zielkataloge. Fehlende konfigurierte Ziele werden zur asynchronen Übersetzung eingereiht; zum Speichern sind sie nicht erforderlich.

  • Zusätzliche Eigenschaftobject
  • Zusätzliche Eigenschaftstring

    Weitere Verschachtelung ausgelassen

  • stepsarrayerforderlich

    maxItems: 100

  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

  • idstring

    format: "uuid"

  • positioninteger

    minimum: 1 · maximum: 100

  • kindstringerforderlich

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

  • namestringerforderlich

    minLength: 1 · maxLength: 200

  • managed_contentobject

    Typisierter Quellvertrag und Entwurfs-/Veröffentlichungsrevisionsidentität eines E-Mail-Schritts.

  • idstring

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • versioninteger

    Weitere Verschachtelung ausgelassen

  • draft_revision_idstring | null

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • published_revision_idstring | null

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • published_publication_idstring | null

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • source_revision_idstring | null

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • layout_revision_idstring | null

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • published_layout_revision_idstring | null

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • source_localestring | null

    Weitere Verschachtelung ausgelassen

  • configured_localesarray

    Weitere Verschachtelung ausgelassen

  • variablesobject

    Weitere Verschachtelung ausgelassen

  • published_variablesobject

    Weitere Verschachtelung ausgelassen

  • configobjecterforderlich

    Warteschritte akzeptieren optional until mit name, path, operator (equals, not_equals, contains oder exists) und value sowie das erforderliche on_met (continue oder end_journey). continue überspringt die folgende Erinnerungsmail; end_journey beendet die Journey. Eine Erinnerungsmail muss unmittelbar im selben Zweig folgen. Die Wartephase prüft aktuelle Kundendaten jede Minute bis amount/unit. Fehlende Felder sind unbekannt und halten die Erinnerung zurück. Normale Wartephasen und eigenständige Bedingungen behalten ihr Verhalten. Benenne Prüfungen nach verifizierten Kundenmeilensteinen. Verwaltete E-Mail-Schritte referenzieren veröffentlichte Inhalte über managed_content_id; die Aktivierung lehnt unveröffentlichte Referenzen ab. E-Mail-Schritte können expires_after_seconds (1-604800) setzen, um eine verzögerte Sendung nach diesem Intervall ab ihrem ursprünglichen Start zu verwerfen; Standard sind sieben Tage.

  • Zusätzliche EigenschaftBeliebiger Wert
  • armsarray

    minItems: 2 · maxItems: 4

  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

    Weitere Verschachtelung ausgelassen

  • allOf 2object
  • idstringerforderlich

    format: "uuid"

  • statusstringerforderlich

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

  • api_keystring | null
  • content_modestring | null

    enum: "code", "managed", null

  • identitystring | null
  • identity_aliasesarray
  • Jedes Elementstring
  • samplesarray
  • Jedes Elementobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • versionintegererforderlich

    minimum: 1

  • statsobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • stepStatsarray
  • Jedes Elementobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • armStatsarray
  • Jedes Elementobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • healthobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • indicatorobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • sparklinearrayerforderlich
  • Jedes Elementnumber
  • activated_atstring | null

    format: "date-time"

  • updated_atstring

    format: "date-time"

  • last_activity_atstring | null

    format: "date-time"

curl-Beispiel

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

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

journeyId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Journey-Definition, Anmeldeaktivität und Tests.

application/json

  • valueobject
  • datanicht angegeben
  • allOf 1object

    Keine zusätzlichen Eigenschaften

  • namestringerforderlich

    minLength: 1 · maxLength: 200

  • descriptionstring

    maxLength: 2000

  • mailbox_idstring

    Vorhandener Absender. Weglassen, um zuerst den Einrichtungsabsender, dann ein aktives eigenes Postfach und dann ein gehostetes zu wählen. Gespeicherte und explizite Absender bleiben unverändert.

    format: "uuid"

  • from_local_partstring

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

  • triggerobjecterforderlich
  • kindstringerforderlich

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

  • connection_idstring

    format: "uuid"

  • configobject
  • eventstring
  • once_per_personboolean

    Jede Person tritt einmal ein. Setze false, um nach Abschluss einen erneuten Eintritt zu erlauben.

    default: true

  • reentry_daysinteger

    Bei once_per_person false: Tage seit dem letzten Eintritt einer Person bis zum erneuten Eintritt.

    minimum: 1 · maximum: 365

  • Zusätzliche EigenschaftBeliebiger Wert
  • conditionsarray
  • Jedes Elementobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • audienceobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • goalobject

    Keine zusätzlichen Eigenschaften

  • kindstringerforderlich

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

  • connection_idstring

    format: "uuid"

  • configobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • exitobject

    Keine zusätzlichen Eigenschaften

  • 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

    Abkürzung nur zur Erstellung: Speichert atomar einen E-Mail-Entwurf mit verwalteter Quelle und eine Journey, deren E-Mail-Schritt darauf verweist. Fehlende Zielsprachen werden zur kostenlosen Übersetzung eingereiht; dies veröffentlicht oder aktiviert die Journey nicht.

    Keine zusätzlichen Eigenschaften

  • source_localestring

    Kanonische BCP-47-Quell-Locale; übernimmt bei Auslassung die Produkteinstellungen.

  • configured_localesarray

    Quell- und Ziel-Locales; eine ausgelassene Quelle wird vom Server hinzugefügt.

    maxItems: 100 · uniqueItems: true

  • Jedes Elementstring
  • fallback_localestring
  • layout_idstring

    Gewähltes wiederverwendbares Layout; der Server übernimmt einen Snapshot seiner veröffentlichten Revision in diese Inhaltsrevision.

    format: "uuid"

  • localization_policyobject

    Eine Journey-E-Mail geht nur in der Sprache der Person heraus: Sie wartet auf ihre Übersetzung, etwa eine Minute bei Belegen, Codes und Sicherheitshinweisen und bis zu einen Tag bei anderen E-Mails, und wird nicht gesendet, wenn die Übersetzung dann nicht bereit ist.

    Keine zusätzlichen Eigenschaften

  • manual_reviewboolean

    default: false

  • sourceobjecterforderlich

    Keine zusätzlichen Eigenschaften

  • subjectstringerforderlich

    minLength: 1 · maxLength: 100000

  • preheaderstring

    maxLength: 100000

  • body_textstring

    Für Quellkompatibilität akzeptiert; gerenderter Klartext wird aus dem endgültigen HTML abgeleitet.

    maxLength: 100000

  • body_htmlstringerforderlich

    minLength: 1 · maxLength: 100000

  • layoutstring

    Muss einen {{ content }}-Slot enthalten.

    maxLength: 100000

  • variantsobject

    Optionale Quellversionen. Jede Version wird automatisch in derselben Revision übersetzt.

  • Zusätzliche Eigenschaftobject

    Keine zusätzlichen Eigenschaften

    Weitere Verschachtelung ausgelassen

  • variablesobjecterforderlich
  • Zusätzliche Eigenschaftnicht angegeben

    Rekursive typisierte Variable. Geldwerte verwenden {amount_cents: integer, currency: ISO 4217 code}; date-Werte sind ISO-Kalenderdaten und datetime-Werte ISO-Zeitstempel mit Offsets.

    Weitere Verschachtelung ausgelassen

  • samplesobject

    Benannte Beispielwertsätze für Vorschau und Quellvalidierung.

  • Zusätzliche Eigenschaftobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • translationsobject

    ICU-Quellnachrichtenkatalog und optional bereitgestellte Zielkataloge. Fehlende konfigurierte Ziele werden zur asynchronen Übersetzung eingereiht; zum Speichern sind sie nicht erforderlich.

  • Zusätzliche Eigenschaftobject
  • Zusätzliche Eigenschaftstring

    Weitere Verschachtelung ausgelassen

  • stepsarrayerforderlich

    maxItems: 100

  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

  • idstring

    format: "uuid"

  • positioninteger

    minimum: 1 · maximum: 100

  • kindstringerforderlich

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

  • namestringerforderlich

    minLength: 1 · maxLength: 200

  • managed_contentobject

    Typisierter Quellvertrag und Entwurfs-/Veröffentlichungsrevisionsidentität eines E-Mail-Schritts.

  • idstring

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • versioninteger

    Weitere Verschachtelung ausgelassen

  • draft_revision_idstring | null

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • published_revision_idstring | null

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • published_publication_idstring | null

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • source_revision_idstring | null

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • layout_revision_idstring | null

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • published_layout_revision_idstring | null

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • source_localestring | null

    Weitere Verschachtelung ausgelassen

  • configured_localesarray

    Weitere Verschachtelung ausgelassen

  • variablesobject

    Weitere Verschachtelung ausgelassen

  • published_variablesobject

    Weitere Verschachtelung ausgelassen

  • configobjecterforderlich

    Warteschritte akzeptieren optional until mit name, path, operator (equals, not_equals, contains oder exists) und value sowie das erforderliche on_met (continue oder end_journey). continue überspringt die folgende Erinnerungsmail; end_journey beendet die Journey. Eine Erinnerungsmail muss unmittelbar im selben Zweig folgen. Die Wartephase prüft aktuelle Kundendaten jede Minute bis amount/unit. Fehlende Felder sind unbekannt und halten die Erinnerung zurück. Normale Wartephasen und eigenständige Bedingungen behalten ihr Verhalten. Benenne Prüfungen nach verifizierten Kundenmeilensteinen. Verwaltete E-Mail-Schritte referenzieren veröffentlichte Inhalte über managed_content_id; die Aktivierung lehnt unveröffentlichte Referenzen ab. E-Mail-Schritte können expires_after_seconds (1-604800) setzen, um eine verzögerte Sendung nach diesem Intervall ab ihrem ursprünglichen Start zu verwerfen; Standard sind sieben Tage.

  • Zusätzliche EigenschaftBeliebiger Wert
  • armsarray

    minItems: 2 · maxItems: 4

  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

    Weitere Verschachtelung ausgelassen

  • allOf 2object
  • idstringerforderlich

    format: "uuid"

  • statusstringerforderlich

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

  • api_keystring | null
  • content_modestring | null

    enum: "code", "managed", null

  • identitystring | null
  • identity_aliasesarray
  • Jedes Elementstring
  • samplesarray
  • Jedes Elementobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • versionintegererforderlich

    minimum: 1

  • statsobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • stepStatsarray
  • Jedes Elementobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • armStatsarray
  • Jedes Elementobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • healthobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • indicatorobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • sparklinearrayerforderlich
  • Jedes Elementnumber
  • activated_atstring | null

    format: "date-time"

  • updated_atstring

    format: "date-time"

  • last_activity_atstring | null

    format: "date-time"

curl-Beispiel

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

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

journeyId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body erforderlich

application/json

  • valueobject

    Keine zusätzlichen Eigenschaften

  • namestringerforderlich

    minLength: 1 · maxLength: 200

  • descriptionstring

    maxLength: 2000

  • mailbox_idstring

    Vorhandener Absender. Weglassen, um zuerst den Einrichtungsabsender, dann ein aktives eigenes Postfach und dann ein gehostetes zu wählen. Gespeicherte und explizite Absender bleiben unverändert.

    format: "uuid"

  • from_local_partstring

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

  • triggerobjecterforderlich
  • kindstringerforderlich

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

  • connection_idstring

    format: "uuid"

  • configobject
  • eventstring
  • once_per_personboolean

    Jede Person tritt einmal ein. Setze false, um nach Abschluss einen erneuten Eintritt zu erlauben.

    default: true

  • reentry_daysinteger

    Bei once_per_person false: Tage seit dem letzten Eintritt einer Person bis zum erneuten Eintritt.

    minimum: 1 · maximum: 365

  • Zusätzliche EigenschaftBeliebiger Wert
  • conditionsarray
  • Jedes Elementobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • audienceobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • goalobject

    Keine zusätzlichen Eigenschaften

  • kindstringerforderlich

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

  • connection_idstring

    format: "uuid"

  • configobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • exitobject

    Keine zusätzlichen Eigenschaften

  • 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

    Abkürzung nur zur Erstellung: Speichert atomar einen E-Mail-Entwurf mit verwalteter Quelle und eine Journey, deren E-Mail-Schritt darauf verweist. Fehlende Zielsprachen werden zur kostenlosen Übersetzung eingereiht; dies veröffentlicht oder aktiviert die Journey nicht.

    Keine zusätzlichen Eigenschaften

  • source_localestring

    Kanonische BCP-47-Quell-Locale; übernimmt bei Auslassung die Produkteinstellungen.

  • configured_localesarray

    Quell- und Ziel-Locales; eine ausgelassene Quelle wird vom Server hinzugefügt.

    maxItems: 100 · uniqueItems: true

  • Jedes Elementstring
  • fallback_localestring
  • layout_idstring

    Gewähltes wiederverwendbares Layout; der Server übernimmt einen Snapshot seiner veröffentlichten Revision in diese Inhaltsrevision.

    format: "uuid"

  • localization_policyobject

    Eine Journey-E-Mail geht nur in der Sprache der Person heraus: Sie wartet auf ihre Übersetzung, etwa eine Minute bei Belegen, Codes und Sicherheitshinweisen und bis zu einen Tag bei anderen E-Mails, und wird nicht gesendet, wenn die Übersetzung dann nicht bereit ist.

    Keine zusätzlichen Eigenschaften

  • manual_reviewboolean

    default: false

  • sourceobjecterforderlich

    Keine zusätzlichen Eigenschaften

  • subjectstringerforderlich

    minLength: 1 · maxLength: 100000

  • preheaderstring

    maxLength: 100000

  • body_textstring

    Für Quellkompatibilität akzeptiert; gerenderter Klartext wird aus dem endgültigen HTML abgeleitet.

    maxLength: 100000

  • body_htmlstringerforderlich

    minLength: 1 · maxLength: 100000

  • layoutstring

    Muss einen {{ content }}-Slot enthalten.

    maxLength: 100000

  • variantsobject

    Optionale Quellversionen. Jede Version wird automatisch in derselben Revision übersetzt.

  • Zusätzliche Eigenschaftobject

    Keine zusätzlichen Eigenschaften

  • subjectstringerforderlich

    minLength: 1 · maxLength: 100000

  • preheaderstring

    maxLength: 100000

  • body_htmlstringerforderlich

    minLength: 1 · maxLength: 100000

  • body_textstring

    maxLength: 100000

  • layoutstring

    maxLength: 100000

  • variablesobjecterforderlich
  • Zusätzliche Eigenschaftnicht angegeben

    Rekursive typisierte Variable. Geldwerte verwenden {amount_cents: integer, currency: ISO 4217 code}; date-Werte sind ISO-Kalenderdaten und datetime-Werte ISO-Zeitstempel mit Offsets.

  • oneOf 1object

    Keine zusätzlichen Eigenschaften

  • typestringerforderlich

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

    Weitere Verschachtelung ausgelassen

  • requiredboolean

    Weitere Verschachtelung ausgelassen

  • descriptionstring

    maxLength: 2000

    Weitere Verschachtelung ausgelassen

  • defaultnicht angegeben

    Muss zum Feldtyp passen.

    Weitere Verschachtelung ausgelassen

  • oneOf 2object

    Keine zusätzlichen Eigenschaften

  • typenicht angegebenerforderlich

    const: "object"

    Weitere Verschachtelung ausgelassen

  • requiredboolean

    Weitere Verschachtelung ausgelassen

  • descriptionstring

    maxLength: 2000

    Weitere Verschachtelung ausgelassen

  • defaultobject

    Weitere Verschachtelung ausgelassen

  • propertiesobjecterforderlich

    Weitere Verschachtelung ausgelassen

  • oneOf 3object

    Keine zusätzlichen Eigenschaften

  • typenicht angegebenerforderlich

    const: "list"

    Weitere Verschachtelung ausgelassen

  • requiredboolean

    Weitere Verschachtelung ausgelassen

  • descriptionstring

    maxLength: 2000

    Weitere Verschachtelung ausgelassen

  • defaultarray

    Weitere Verschachtelung ausgelassen

  • itemsnicht angegebenerforderlich

    Rekursive typisierte Variable. Geldwerte verwenden {amount_cents: integer, currency: ISO 4217 code}; date-Werte sind ISO-Kalenderdaten und datetime-Werte ISO-Zeitstempel mit Offsets.

    Weitere Verschachtelung ausgelassen

  • samplesobject

    Benannte Beispielwertsätze für Vorschau und Quellvalidierung.

  • Zusätzliche Eigenschaftobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • translationsobject

    ICU-Quellnachrichtenkatalog und optional bereitgestellte Zielkataloge. Fehlende konfigurierte Ziele werden zur asynchronen Übersetzung eingereiht; zum Speichern sind sie nicht erforderlich.

  • Zusätzliche Eigenschaftobject
  • Zusätzliche Eigenschaftstring
  • stepsarrayerforderlich

    maxItems: 100

  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

  • idstring

    format: "uuid"

  • positioninteger

    minimum: 1 · maximum: 100

  • kindstringerforderlich

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

  • namestringerforderlich

    minLength: 1 · maxLength: 200

  • managed_contentobject

    Typisierter Quellvertrag und Entwurfs-/Veröffentlichungsrevisionsidentität eines E-Mail-Schritts.

  • 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
  • Jedes Elementstring
  • variablesobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • published_variablesobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • configobjecterforderlich

    Warteschritte akzeptieren optional until mit name, path, operator (equals, not_equals, contains oder exists) und value sowie das erforderliche on_met (continue oder end_journey). continue überspringt die folgende Erinnerungsmail; end_journey beendet die Journey. Eine Erinnerungsmail muss unmittelbar im selben Zweig folgen. Die Wartephase prüft aktuelle Kundendaten jede Minute bis amount/unit. Fehlende Felder sind unbekannt und halten die Erinnerung zurück. Normale Wartephasen und eigenständige Bedingungen behalten ihr Verhalten. Benenne Prüfungen nach verifizierten Kundenmeilensteinen. Verwaltete E-Mail-Schritte referenzieren veröffentlichte Inhalte über managed_content_id; die Aktivierung lehnt unveröffentlichte Referenzen ab. E-Mail-Schritte können expires_after_seconds (1-604800) setzen, um eine verzögerte Sendung nach diesem Intervall ab ihrem ursprünglichen Start zu verwerfen; Standard sind sieben Tage.

  • Zusätzliche EigenschaftBeliebiger Wert
  • armsarray

    minItems: 2 · maxItems: 4

  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

  • keystringerforderlich

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

  • labelstringerforderlich

    maxLength: 120

  • allocationnumbererforderlich

    minimum: 0 · maximum: 100

  • stepsarrayerforderlich
  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

    Weitere Verschachtelung ausgelassen

Erfolgsantwort 200

Journey aktualisiert.

application/json

  • valueobject
  • datanicht angegeben
  • allOf 1object

    Keine zusätzlichen Eigenschaften

  • namestringerforderlich

    minLength: 1 · maxLength: 200

  • descriptionstring

    maxLength: 2000

  • mailbox_idstring

    Vorhandener Absender. Weglassen, um zuerst den Einrichtungsabsender, dann ein aktives eigenes Postfach und dann ein gehostetes zu wählen. Gespeicherte und explizite Absender bleiben unverändert.

    format: "uuid"

  • from_local_partstring

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

  • triggerobjecterforderlich
  • kindstringerforderlich

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

  • connection_idstring

    format: "uuid"

  • configobject
  • eventstring
  • once_per_personboolean

    Jede Person tritt einmal ein. Setze false, um nach Abschluss einen erneuten Eintritt zu erlauben.

    default: true

  • reentry_daysinteger

    Bei once_per_person false: Tage seit dem letzten Eintritt einer Person bis zum erneuten Eintritt.

    minimum: 1 · maximum: 365

  • Zusätzliche EigenschaftBeliebiger Wert
  • conditionsarray
  • Jedes Elementobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • audienceobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • goalobject

    Keine zusätzlichen Eigenschaften

  • kindstringerforderlich

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

  • connection_idstring

    format: "uuid"

  • configobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • exitobject

    Keine zusätzlichen Eigenschaften

  • 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

    Abkürzung nur zur Erstellung: Speichert atomar einen E-Mail-Entwurf mit verwalteter Quelle und eine Journey, deren E-Mail-Schritt darauf verweist. Fehlende Zielsprachen werden zur kostenlosen Übersetzung eingereiht; dies veröffentlicht oder aktiviert die Journey nicht.

    Keine zusätzlichen Eigenschaften

  • source_localestring

    Kanonische BCP-47-Quell-Locale; übernimmt bei Auslassung die Produkteinstellungen.

  • configured_localesarray

    Quell- und Ziel-Locales; eine ausgelassene Quelle wird vom Server hinzugefügt.

    maxItems: 100 · uniqueItems: true

  • Jedes Elementstring
  • fallback_localestring
  • layout_idstring

    Gewähltes wiederverwendbares Layout; der Server übernimmt einen Snapshot seiner veröffentlichten Revision in diese Inhaltsrevision.

    format: "uuid"

  • localization_policyobject

    Eine Journey-E-Mail geht nur in der Sprache der Person heraus: Sie wartet auf ihre Übersetzung, etwa eine Minute bei Belegen, Codes und Sicherheitshinweisen und bis zu einen Tag bei anderen E-Mails, und wird nicht gesendet, wenn die Übersetzung dann nicht bereit ist.

    Keine zusätzlichen Eigenschaften

  • manual_reviewboolean

    default: false

  • sourceobjecterforderlich

    Keine zusätzlichen Eigenschaften

  • subjectstringerforderlich

    minLength: 1 · maxLength: 100000

  • preheaderstring

    maxLength: 100000

  • body_textstring

    Für Quellkompatibilität akzeptiert; gerenderter Klartext wird aus dem endgültigen HTML abgeleitet.

    maxLength: 100000

  • body_htmlstringerforderlich

    minLength: 1 · maxLength: 100000

  • layoutstring

    Muss einen {{ content }}-Slot enthalten.

    maxLength: 100000

  • variantsobject

    Optionale Quellversionen. Jede Version wird automatisch in derselben Revision übersetzt.

  • Zusätzliche Eigenschaftobject

    Keine zusätzlichen Eigenschaften

    Weitere Verschachtelung ausgelassen

  • variablesobjecterforderlich
  • Zusätzliche Eigenschaftnicht angegeben

    Rekursive typisierte Variable. Geldwerte verwenden {amount_cents: integer, currency: ISO 4217 code}; date-Werte sind ISO-Kalenderdaten und datetime-Werte ISO-Zeitstempel mit Offsets.

    Weitere Verschachtelung ausgelassen

  • samplesobject

    Benannte Beispielwertsätze für Vorschau und Quellvalidierung.

  • Zusätzliche Eigenschaftobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • translationsobject

    ICU-Quellnachrichtenkatalog und optional bereitgestellte Zielkataloge. Fehlende konfigurierte Ziele werden zur asynchronen Übersetzung eingereiht; zum Speichern sind sie nicht erforderlich.

  • Zusätzliche Eigenschaftobject
  • Zusätzliche Eigenschaftstring

    Weitere Verschachtelung ausgelassen

  • stepsarrayerforderlich

    maxItems: 100

  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

  • idstring

    format: "uuid"

  • positioninteger

    minimum: 1 · maximum: 100

  • kindstringerforderlich

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

  • namestringerforderlich

    minLength: 1 · maxLength: 200

  • managed_contentobject

    Typisierter Quellvertrag und Entwurfs-/Veröffentlichungsrevisionsidentität eines E-Mail-Schritts.

  • idstring

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • versioninteger

    Weitere Verschachtelung ausgelassen

  • draft_revision_idstring | null

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • published_revision_idstring | null

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • published_publication_idstring | null

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • source_revision_idstring | null

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • layout_revision_idstring | null

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • published_layout_revision_idstring | null

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • source_localestring | null

    Weitere Verschachtelung ausgelassen

  • configured_localesarray

    Weitere Verschachtelung ausgelassen

  • variablesobject

    Weitere Verschachtelung ausgelassen

  • published_variablesobject

    Weitere Verschachtelung ausgelassen

  • configobjecterforderlich

    Warteschritte akzeptieren optional until mit name, path, operator (equals, not_equals, contains oder exists) und value sowie das erforderliche on_met (continue oder end_journey). continue überspringt die folgende Erinnerungsmail; end_journey beendet die Journey. Eine Erinnerungsmail muss unmittelbar im selben Zweig folgen. Die Wartephase prüft aktuelle Kundendaten jede Minute bis amount/unit. Fehlende Felder sind unbekannt und halten die Erinnerung zurück. Normale Wartephasen und eigenständige Bedingungen behalten ihr Verhalten. Benenne Prüfungen nach verifizierten Kundenmeilensteinen. Verwaltete E-Mail-Schritte referenzieren veröffentlichte Inhalte über managed_content_id; die Aktivierung lehnt unveröffentlichte Referenzen ab. E-Mail-Schritte können expires_after_seconds (1-604800) setzen, um eine verzögerte Sendung nach diesem Intervall ab ihrem ursprünglichen Start zu verwerfen; Standard sind sieben Tage.

  • Zusätzliche EigenschaftBeliebiger Wert
  • armsarray

    minItems: 2 · maxItems: 4

  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

    Weitere Verschachtelung ausgelassen

  • allOf 2object
  • idstringerforderlich

    format: "uuid"

  • statusstringerforderlich

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

  • api_keystring | null
  • content_modestring | null

    enum: "code", "managed", null

  • identitystring | null
  • identity_aliasesarray
  • Jedes Elementstring
  • samplesarray
  • Jedes Elementobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • versionintegererforderlich

    minimum: 1

  • statsobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • stepStatsarray
  • Jedes Elementobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • armStatsarray
  • Jedes Elementobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • healthobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • indicatorobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • sparklinearrayerforderlich
  • Jedes Elementnumber
  • activated_atstring | null

    format: "date-time"

  • updated_atstring

    format: "date-time"

  • last_activity_atstring | null

    format: "date-time"

curl-Beispiel

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}

Aktualisiere ausgewählte Journey-Felder und behalte ihre übrigen Definitionsfelder bei.

Unterstützt name, description, mailbox_id, from_local_part, trigger, audience, goal, exit, approval_mode, api und steps. trigger-, goal-, api- und exit-Objekte werden eine Ebene tief zusammengeführt; steps ersetzt den übergebenen Baum. Gib expected_version an, um veraltete Änderungen abzulehnen.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

journeyId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body erforderlich

application/json

  • valueobject

    Keine zusätzlichen Eigenschaften

  • expected_versioninteger

    minimum: 1

  • namestring
  • descriptionstring
  • mailbox_idstring

    format: "uuid"

  • from_local_partstring
  • triggerobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • audienceobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • goalobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • exitobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • approval_modestring

    enum: "policy", "required"

  • apiobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • stepsarray
  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

  • idstring

    format: "uuid"

  • positioninteger

    minimum: 1 · maximum: 100

  • kindstringerforderlich

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

  • namestringerforderlich

    minLength: 1 · maxLength: 200

  • managed_contentobject

    Typisierter Quellvertrag und Entwurfs-/Veröffentlichungsrevisionsidentität eines E-Mail-Schritts.

  • 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
  • Jedes Elementstring
  • variablesobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • published_variablesobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • configobjecterforderlich

    Warteschritte akzeptieren optional until mit name, path, operator (equals, not_equals, contains oder exists) und value sowie das erforderliche on_met (continue oder end_journey). continue überspringt die folgende Erinnerungsmail; end_journey beendet die Journey. Eine Erinnerungsmail muss unmittelbar im selben Zweig folgen. Die Wartephase prüft aktuelle Kundendaten jede Minute bis amount/unit. Fehlende Felder sind unbekannt und halten die Erinnerung zurück. Normale Wartephasen und eigenständige Bedingungen behalten ihr Verhalten. Benenne Prüfungen nach verifizierten Kundenmeilensteinen. Verwaltete E-Mail-Schritte referenzieren veröffentlichte Inhalte über managed_content_id; die Aktivierung lehnt unveröffentlichte Referenzen ab. E-Mail-Schritte können expires_after_seconds (1-604800) setzen, um eine verzögerte Sendung nach diesem Intervall ab ihrem ursprünglichen Start zu verwerfen; Standard sind sieben Tage.

  • Zusätzliche EigenschaftBeliebiger Wert
  • armsarray

    minItems: 2 · maxItems: 4

  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

  • keystringerforderlich

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

  • labelstringerforderlich

    maxLength: 120

  • allocationnumbererforderlich

    minimum: 0 · maximum: 100

  • stepsarrayerforderlich
  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

    Weitere Verschachtelung ausgelassen

Erfolgsantwort 200

Journey aktualisiert.

application/json

  • valueobject
  • datanicht angegebenerforderlich
  • allOf 1object

    Keine zusätzlichen Eigenschaften

  • namestringerforderlich

    minLength: 1 · maxLength: 200

  • descriptionstring

    maxLength: 2000

  • mailbox_idstring

    Vorhandener Absender. Weglassen, um zuerst den Einrichtungsabsender, dann ein aktives eigenes Postfach und dann ein gehostetes zu wählen. Gespeicherte und explizite Absender bleiben unverändert.

    format: "uuid"

  • from_local_partstring

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

  • triggerobjecterforderlich
  • kindstringerforderlich

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

  • connection_idstring

    format: "uuid"

  • configobject
  • eventstring
  • once_per_personboolean

    Jede Person tritt einmal ein. Setze false, um nach Abschluss einen erneuten Eintritt zu erlauben.

    default: true

  • reentry_daysinteger

    Bei once_per_person false: Tage seit dem letzten Eintritt einer Person bis zum erneuten Eintritt.

    minimum: 1 · maximum: 365

  • Zusätzliche EigenschaftBeliebiger Wert
  • conditionsarray
  • Jedes Elementobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • audienceobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • goalobject

    Keine zusätzlichen Eigenschaften

  • kindstringerforderlich

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

  • connection_idstring

    format: "uuid"

  • configobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • exitobject

    Keine zusätzlichen Eigenschaften

  • 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

    Abkürzung nur zur Erstellung: Speichert atomar einen E-Mail-Entwurf mit verwalteter Quelle und eine Journey, deren E-Mail-Schritt darauf verweist. Fehlende Zielsprachen werden zur kostenlosen Übersetzung eingereiht; dies veröffentlicht oder aktiviert die Journey nicht.

    Keine zusätzlichen Eigenschaften

  • source_localestring

    Kanonische BCP-47-Quell-Locale; übernimmt bei Auslassung die Produkteinstellungen.

  • configured_localesarray

    Quell- und Ziel-Locales; eine ausgelassene Quelle wird vom Server hinzugefügt.

    maxItems: 100 · uniqueItems: true

  • Jedes Elementstring
  • fallback_localestring
  • layout_idstring

    Gewähltes wiederverwendbares Layout; der Server übernimmt einen Snapshot seiner veröffentlichten Revision in diese Inhaltsrevision.

    format: "uuid"

  • localization_policyobject

    Eine Journey-E-Mail geht nur in der Sprache der Person heraus: Sie wartet auf ihre Übersetzung, etwa eine Minute bei Belegen, Codes und Sicherheitshinweisen und bis zu einen Tag bei anderen E-Mails, und wird nicht gesendet, wenn die Übersetzung dann nicht bereit ist.

    Keine zusätzlichen Eigenschaften

  • manual_reviewboolean

    default: false

  • sourceobjecterforderlich

    Keine zusätzlichen Eigenschaften

  • subjectstringerforderlich

    minLength: 1 · maxLength: 100000

  • preheaderstring

    maxLength: 100000

  • body_textstring

    Für Quellkompatibilität akzeptiert; gerenderter Klartext wird aus dem endgültigen HTML abgeleitet.

    maxLength: 100000

  • body_htmlstringerforderlich

    minLength: 1 · maxLength: 100000

  • layoutstring

    Muss einen {{ content }}-Slot enthalten.

    maxLength: 100000

  • variantsobject

    Optionale Quellversionen. Jede Version wird automatisch in derselben Revision übersetzt.

  • Zusätzliche Eigenschaftobject

    Keine zusätzlichen Eigenschaften

    Weitere Verschachtelung ausgelassen

  • variablesobjecterforderlich
  • Zusätzliche Eigenschaftnicht angegeben

    Rekursive typisierte Variable. Geldwerte verwenden {amount_cents: integer, currency: ISO 4217 code}; date-Werte sind ISO-Kalenderdaten und datetime-Werte ISO-Zeitstempel mit Offsets.

    Weitere Verschachtelung ausgelassen

  • samplesobject

    Benannte Beispielwertsätze für Vorschau und Quellvalidierung.

  • Zusätzliche Eigenschaftobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • translationsobject

    ICU-Quellnachrichtenkatalog und optional bereitgestellte Zielkataloge. Fehlende konfigurierte Ziele werden zur asynchronen Übersetzung eingereiht; zum Speichern sind sie nicht erforderlich.

  • Zusätzliche Eigenschaftobject
  • Zusätzliche Eigenschaftstring

    Weitere Verschachtelung ausgelassen

  • stepsarrayerforderlich

    maxItems: 100

  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

  • idstring

    format: "uuid"

  • positioninteger

    minimum: 1 · maximum: 100

  • kindstringerforderlich

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

  • namestringerforderlich

    minLength: 1 · maxLength: 200

  • managed_contentobject

    Typisierter Quellvertrag und Entwurfs-/Veröffentlichungsrevisionsidentität eines E-Mail-Schritts.

  • idstring

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • versioninteger

    Weitere Verschachtelung ausgelassen

  • draft_revision_idstring | null

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • published_revision_idstring | null

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • published_publication_idstring | null

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • source_revision_idstring | null

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • layout_revision_idstring | null

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • published_layout_revision_idstring | null

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • source_localestring | null

    Weitere Verschachtelung ausgelassen

  • configured_localesarray

    Weitere Verschachtelung ausgelassen

  • variablesobject

    Weitere Verschachtelung ausgelassen

  • published_variablesobject

    Weitere Verschachtelung ausgelassen

  • configobjecterforderlich

    Warteschritte akzeptieren optional until mit name, path, operator (equals, not_equals, contains oder exists) und value sowie das erforderliche on_met (continue oder end_journey). continue überspringt die folgende Erinnerungsmail; end_journey beendet die Journey. Eine Erinnerungsmail muss unmittelbar im selben Zweig folgen. Die Wartephase prüft aktuelle Kundendaten jede Minute bis amount/unit. Fehlende Felder sind unbekannt und halten die Erinnerung zurück. Normale Wartephasen und eigenständige Bedingungen behalten ihr Verhalten. Benenne Prüfungen nach verifizierten Kundenmeilensteinen. Verwaltete E-Mail-Schritte referenzieren veröffentlichte Inhalte über managed_content_id; die Aktivierung lehnt unveröffentlichte Referenzen ab. E-Mail-Schritte können expires_after_seconds (1-604800) setzen, um eine verzögerte Sendung nach diesem Intervall ab ihrem ursprünglichen Start zu verwerfen; Standard sind sieben Tage.

  • Zusätzliche EigenschaftBeliebiger Wert
  • armsarray

    minItems: 2 · maxItems: 4

  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

    Weitere Verschachtelung ausgelassen

  • allOf 2object
  • idstringerforderlich

    format: "uuid"

  • statusstringerforderlich

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

  • api_keystring | null
  • content_modestring | null

    enum: "code", "managed", null

  • identitystring | null
  • identity_aliasesarray
  • Jedes Elementstring
  • samplesarray
  • Jedes Elementobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • versionintegererforderlich

    minimum: 1

  • statsobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • stepStatsarray
  • Jedes Elementobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • armStatsarray
  • Jedes Elementobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • healthobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • indicatorobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • sparklinearrayerforderlich
  • Jedes Elementnumber
  • activated_atstring | null

    format: "date-time"

  • updated_atstring

    format: "date-time"

  • last_activity_atstring | null

    format: "date-time"

curl-Beispiel

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

Archiviert die Journey, entfernt sie aus der Standardliste und stoppt aktive Anmeldungen. Die Versandhistorie bleibt erhalten.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

journeyId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 204

Journey entfernt.

Kein Antwort-Body.

curl-Beispiel

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

Eine pausierte oder als Entwurf vorliegende ältere Journey in vorbereitete verwaltete Inhalte umwandeln.

Einseitige Umwandlung. Bei einer Journey mit einem E-Mail-Schritt gib contract an. Bei mehreren E-Mails, einschließlich geteilter Zweige, gib step_contents mit genau einer gespeicherten step_id und einem vorbereiteten HTML/Liquid-Vertrag pro E-Mail an. Die Umwandlung ist atomar und setzt die Journey auf draft. Jede neue verwaltete Inhaltsrevision erhält ihre eigene regelgebundene Veröffentlichungsprüfung; während der Umwandlung wird keine E-Mail gesendet oder veröffentlicht. Banger importiert oder führt niemals Quellcode aus.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

X-Banger-Product-Id
header · erforderlich

Explizites Betriebsprodukt; muss zu den produktgebundenen OAuth-Zugangsdaten passen.

  • valuestring

    format: "uuid"

journeyId
path · erforderlich
  • valuestring

    format: "uuid"

Idempotency-Key
header · erforderlich
  • valuestring

    minLength: 16 · maxLength: 128

Anfrage-Body erforderlich

application/json

  • valueobject

    Keine zusätzlichen Eigenschaften

  • expected_versionintegererforderlich

    minimum: 1

  • contractobject

    Keine zusätzlichen Eigenschaften

  • source_localestring

    Kanonische BCP-47-Quell-Locale; übernimmt bei Auslassung die Produkteinstellungen.

  • configured_localesarray

    Quell- und Ziel-Locales; eine ausgelassene Quelle wird vom Server hinzugefügt.

    maxItems: 100 · uniqueItems: true

  • Jedes Elementstring
  • fallback_localestring
  • layout_idstring

    Gewähltes wiederverwendbares Layout; der Server übernimmt einen Snapshot seiner veröffentlichten Revision in diese Inhaltsrevision.

    format: "uuid"

  • localization_policyobject

    Eine Journey-E-Mail geht nur in der Sprache der Person heraus: Sie wartet auf ihre Übersetzung, etwa eine Minute bei Belegen, Codes und Sicherheitshinweisen und bis zu einen Tag bei anderen E-Mails, und wird nicht gesendet, wenn die Übersetzung dann nicht bereit ist.

    Keine zusätzlichen Eigenschaften

  • manual_reviewboolean

    default: false

  • sourceobjecterforderlich

    Keine zusätzlichen Eigenschaften

  • subjectstringerforderlich

    minLength: 1 · maxLength: 100000

  • preheaderstring

    maxLength: 100000

  • body_textstring

    Für Quellkompatibilität akzeptiert; gerenderter Klartext wird aus dem endgültigen HTML abgeleitet.

    maxLength: 100000

  • body_htmlstringerforderlich

    minLength: 1 · maxLength: 100000

  • layoutstring

    Muss einen {{ content }}-Slot enthalten.

    maxLength: 100000

  • variantsobject

    Optionale Quellversionen. Jede Version wird automatisch in derselben Revision übersetzt.

  • Zusätzliche Eigenschaftobject

    Keine zusätzlichen Eigenschaften

  • subjectstringerforderlich

    minLength: 1 · maxLength: 100000

  • preheaderstring

    maxLength: 100000

  • body_htmlstringerforderlich

    minLength: 1 · maxLength: 100000

  • body_textstring

    maxLength: 100000

  • layoutstring

    maxLength: 100000

  • variablesobjecterforderlich
  • Zusätzliche Eigenschaftnicht angegeben

    Rekursive typisierte Variable. Geldwerte verwenden {amount_cents: integer, currency: ISO 4217 code}; date-Werte sind ISO-Kalenderdaten und datetime-Werte ISO-Zeitstempel mit Offsets.

  • oneOf 1object

    Keine zusätzlichen Eigenschaften

  • typestringerforderlich

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

    Weitere Verschachtelung ausgelassen

  • requiredboolean

    Weitere Verschachtelung ausgelassen

  • descriptionstring

    maxLength: 2000

    Weitere Verschachtelung ausgelassen

  • defaultnicht angegeben

    Muss zum Feldtyp passen.

    Weitere Verschachtelung ausgelassen

  • oneOf 2object

    Keine zusätzlichen Eigenschaften

  • typenicht angegebenerforderlich

    const: "object"

    Weitere Verschachtelung ausgelassen

  • requiredboolean

    Weitere Verschachtelung ausgelassen

  • descriptionstring

    maxLength: 2000

    Weitere Verschachtelung ausgelassen

  • defaultobject

    Weitere Verschachtelung ausgelassen

  • propertiesobjecterforderlich

    Weitere Verschachtelung ausgelassen

  • oneOf 3object

    Keine zusätzlichen Eigenschaften

  • typenicht angegebenerforderlich

    const: "list"

    Weitere Verschachtelung ausgelassen

  • requiredboolean

    Weitere Verschachtelung ausgelassen

  • descriptionstring

    maxLength: 2000

    Weitere Verschachtelung ausgelassen

  • defaultarray

    Weitere Verschachtelung ausgelassen

  • itemsnicht angegebenerforderlich

    Rekursive typisierte Variable. Geldwerte verwenden {amount_cents: integer, currency: ISO 4217 code}; date-Werte sind ISO-Kalenderdaten und datetime-Werte ISO-Zeitstempel mit Offsets.

    Weitere Verschachtelung ausgelassen

  • samplesobject

    Benannte Beispielwertsätze für Vorschau und Quellvalidierung.

  • Zusätzliche Eigenschaftobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • translationsobject

    ICU-Quellnachrichtenkatalog und optional bereitgestellte Zielkataloge. Fehlende konfigurierte Ziele werden zur asynchronen Übersetzung eingereiht; zum Speichern sind sie nicht erforderlich.

  • Zusätzliche Eigenschaftobject
  • Zusätzliche Eigenschaftstring
  • step_contentsarray

    minItems: 1

  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

  • step_idstringerforderlich

    format: "uuid"

  • contractobjecterforderlich

    Keine zusätzlichen Eigenschaften

  • source_localestring

    Kanonische BCP-47-Quell-Locale; übernimmt bei Auslassung die Produkteinstellungen.

  • configured_localesarray

    Quell- und Ziel-Locales; eine ausgelassene Quelle wird vom Server hinzugefügt.

    maxItems: 100 · uniqueItems: true

  • Jedes Elementstring
  • fallback_localestring
  • layout_idstring

    Gewähltes wiederverwendbares Layout; der Server übernimmt einen Snapshot seiner veröffentlichten Revision in diese Inhaltsrevision.

    format: "uuid"

  • localization_policyobject

    Eine Journey-E-Mail geht nur in der Sprache der Person heraus: Sie wartet auf ihre Übersetzung, etwa eine Minute bei Belegen, Codes und Sicherheitshinweisen und bis zu einen Tag bei anderen E-Mails, und wird nicht gesendet, wenn die Übersetzung dann nicht bereit ist.

    Keine zusätzlichen Eigenschaften

  • manual_reviewboolean

    default: false

  • sourceobjecterforderlich

    Keine zusätzlichen Eigenschaften

  • subjectstringerforderlich

    minLength: 1 · maxLength: 100000

  • preheaderstring

    maxLength: 100000

  • body_textstring

    Für Quellkompatibilität akzeptiert; gerenderter Klartext wird aus dem endgültigen HTML abgeleitet.

    maxLength: 100000

  • body_htmlstringerforderlich

    minLength: 1 · maxLength: 100000

  • layoutstring

    Muss einen {{ content }}-Slot enthalten.

    maxLength: 100000

  • variantsobject

    Optionale Quellversionen. Jede Version wird automatisch in derselben Revision übersetzt.

  • Zusätzliche Eigenschaftobject

    Keine zusätzlichen Eigenschaften

    Weitere Verschachtelung ausgelassen

  • variablesobjecterforderlich
  • Zusätzliche Eigenschaftnicht angegeben

    Rekursive typisierte Variable. Geldwerte verwenden {amount_cents: integer, currency: ISO 4217 code}; date-Werte sind ISO-Kalenderdaten und datetime-Werte ISO-Zeitstempel mit Offsets.

    Weitere Verschachtelung ausgelassen

  • samplesobject

    Benannte Beispielwertsätze für Vorschau und Quellvalidierung.

  • Zusätzliche Eigenschaftobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • translationsobject

    ICU-Quellnachrichtenkatalog und optional bereitgestellte Zielkataloge. Fehlende konfigurierte Ziele werden zur asynchronen Übersetzung eingereiht; zum Speichern sind sie nicht erforderlich.

  • Zusätzliche Eigenschaftobject
  • Zusätzliche Eigenschaftstring

    Weitere Verschachtelung ausgelassen

  • oneOf 1nicht angegeben
  • oneOf 2nicht angegeben

Erfolgsantwort 200

Idempotente Wiederholung derselben Umwandlung.

application/json

  • valueobject
  • dataobjecterforderlich
  • journey_idstringerforderlich

    format: "uuid"

  • statusstringerforderlich

    enum: "draft"

  • review_requiredbooleanerforderlich

    const: true

  • managed_content_stepsarrayerforderlich
  • Jedes Elementobject
  • step_idstringerforderlich

    format: "uuid"

  • managed_content_idstringerforderlich

    format: "uuid"

  • content_versionintegererforderlich
  • source_revision_idstring | nullerforderlich

    format: "uuid"

  • previewobjecterforderlich
  • subjectstringerforderlich
  • preheaderstring
  • htmlstringerforderlich
  • textstringerforderlich
  • localestringerforderlich
  • directionstringerforderlich

    enum: "ltr", "rtl"

  • warningsarray
  • Jedes Elementstring

    Weitere Verschachtelung ausgelassen

  • Zusätzliche EigenschaftBeliebiger Wert
  • translation_jobsarrayerforderlich
  • Jedes Elementstring

    format: "uuid"

  • managed_content_idstring

    format: "uuid"

  • content_versioninteger
  • source_revision_idstring | null

    format: "uuid"

  • previewobject
  • subjectstringerforderlich
  • preheaderstring
  • htmlstringerforderlich
  • textstringerforderlich
  • localestringerforderlich
  • directionstringerforderlich

    enum: "ltr", "rtl"

  • warningsarray
  • Jedes Elementstring
  • Zusätzliche EigenschaftBeliebiger Wert
  • replayedbooleanerforderlich
  • approvalsarrayerforderlich
  • Jedes Elementobject
  • step_idstringerforderlich

    format: "uuid"

  • approvalobjecterforderlich
  • idstringerforderlich

    format: "uuid"

  • requested_by_actor_idstringerforderlich
  • action_kindstringerforderlich
  • summarystringerforderlich
  • capability_scopesarrayerforderlich
  • Jedes Elementstring

    Weitere Verschachtelung ausgelassen

  • resource_scopeobjecterforderlich
  • Zusätzliche Eigenschaftarray

    Weitere Verschachtelung ausgelassen

  • payloadobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • payload_sha256stringerforderlich

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

  • statusstringerforderlich

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

  • missedbooleanerforderlich
  • expires_atstringerforderlich

    format: "date-time"

  • decided_by_actor_idstring | null
  • decision_reasonstring | null
  • created_atstringerforderlich

    format: "date-time"

  • updated_atstringerforderlich

    format: "date-time"

  • decided_atstring | null

    format: "date-time"

  • execution_job_idstring

    format: "uuid"

  • reviewobject

    Keine zusätzlichen Eigenschaften

  • dispositionstringerforderlich

    enum: "automatic", "human_required"

    Weitere Verschachtelung ausgelassen

  • recipient_countinteger | nullerforderlich

    minimum: 0

    Weitere Verschachtelung ausgelassen

  • reasonsarrayerforderlich

    Weitere Verschachtelung ausgelassen

  • checksarrayerforderlich

    Weitere Verschachtelung ausgelassen

  • approvalobject
  • idstringerforderlich

    format: "uuid"

  • requested_by_actor_idstringerforderlich
  • action_kindstringerforderlich
  • summarystringerforderlich
  • capability_scopesarrayerforderlich
  • Jedes Elementstring
  • resource_scopeobjecterforderlich
  • Zusätzliche Eigenschaftarray
  • Jedes Elementstring
  • payloadobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • payload_sha256stringerforderlich

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

  • statusstringerforderlich

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

  • missedbooleanerforderlich
  • expires_atstringerforderlich

    format: "date-time"

  • decided_by_actor_idstring | null
  • decision_reasonstring | null
  • created_atstringerforderlich

    format: "date-time"

  • updated_atstringerforderlich

    format: "date-time"

  • decided_atstring | null

    format: "date-time"

  • execution_job_idstring

    format: "uuid"

  • reviewobject

    Keine zusätzlichen Eigenschaften

  • dispositionstringerforderlich

    enum: "automatic", "human_required"

  • recipient_countinteger | nullerforderlich

    minimum: 0

  • reasonsarrayerforderlich
  • Jedes Elementstring
  • checksarrayerforderlich
  • Jedes Elementstring

curl-Beispiel

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

Einen gespeicherten Journey-E-Mail-Schritt ohne Versand rendern.

Gib step_id an, wenn die Journey mehrere E-Mail-Schritte einschließlich geteilter Zweige hat. Verwendet die ausgewählte unveränderliche Entwurfs- oder veröffentlichte Inhaltsrevision.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

X-Banger-Product-Id
header · erforderlich

Explizites Betriebsprodukt; muss zu den produktgebundenen OAuth-Zugangsdaten passen.

  • valuestring

    format: "uuid"

journeyId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body erforderlich

application/json

  • valueobject

    Keine zusätzlichen Eigenschaften

  • step_idstring

    format: "uuid"

  • content_statestring

    default: "draft" · enum: "draft", "published"

  • localestring
  • timezonestring
  • sample_setstring
  • variablesobject
  • Zusätzliche EigenschaftBeliebiger Wert

Erfolgsantwort 200

Gerenderter Betreff, HTML, Klartext, Locale, Revisionskennungen und Extraktionswarnungen.

application/json

  • valueobject
  • datanicht angegebenerforderlich
  • allOf 1object
  • subjectstringerforderlich
  • preheaderstring
  • htmlstringerforderlich
  • textstringerforderlich
  • localestringerforderlich
  • directionstringerforderlich

    enum: "ltr", "rtl"

  • warningsarray
  • Jedes Elementstring
  • Zusätzliche EigenschaftBeliebiger Wert
  • allOf 2object
  • source_revision_idstringerforderlich

    format: "uuid"

  • layout_revision_idstring | nullerforderlich

    format: "uuid"

curl-Beispiel

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

Gespeicherte Journey mit optionaler Berechtigung zum Auslösezeitpunkt und verwalteten Kampagnen simulieren.

Simulation mit reinem Lesezugriff. Lass enrollment für eine Vorschau nach Anmeldung weg oder gib ein explizites Auslöseszenario an, um die Berechtigung des aktuell gespeicherten Kontakts zu prüfen. Mit enrollment ist der Umfang from_trigger und der erste Zeitleisteneintrag vom Typ enrollment; unberechtigte Empfänger überspringen Journey-Schritte, während unabhängige Kampagnenkandidaten weiterlaufen. assume_active modelliert hypothetische Aktivierung, keine Governance-Freigabe. Empfang/Deduplizierung von Anbieterereignissen, Anbieterzustellung und Latenz, historischer Zielgruppenstatus, Zeitplan- und Eingangs-E-Mail-Auslöser werden nicht simuliert. Eine entdeckte API-Journey verwendet ihren speziellen Einrichtungs-Upsert-Pfad; spätere Zustellsperren sind getrennt. Eine aktive API-Journey prüft ihre gespeicherte Zielgruppe vor dem Kontakt-Upsert; die Simulation modelliert diese Reihenfolge ohne Schreibzugriff. Ein gesperrter API-Empfänger kann daher einen berechtigten Anmeldeeintrag gefolgt von exit/suppress haben, ohne gerenderten Versand; ausstehende Kampagnen werden abgebrochen.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

X-Banger-Product-Id
header · erforderlich

Explizites Betriebsprodukt; muss zu den produktgebundenen OAuth-Zugangsdaten passen.

  • valuestring

    format: "uuid"

journeyId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body erforderlich

application/json

  • valueobject

    Keine zusätzlichen Eigenschaften

  • atstringerforderlich

    format: "date-time"

  • enrollment_idstring
  • content_statestring

    default: "draft" · enum: "draft", "published"

  • localestring
  • variablesobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • communication_historyarray

    Frühere Sendungen oder Reservierungen für diesen simulierten Empfänger.

    maxItems: 10000

  • Jedes Elementstring

    format: "date-time"

  • contactobjecterforderlich
  • emailstringerforderlich

    format: "email"

  • display_namestringerforderlich
  • attributesobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • enrollmentobject

    Optionaler Auslöseversuch beim obersten at-Zeitstempel. Gespeicherte Kontakte verwenden aktuelles Abonnement, Sperre und Zielgruppenmitgliedschaft. Hypothetische API-/Ereigniskontakte benötigen explizites subscribed und suppressed=false sowie eine all_subscribed-Zielgruppe.

    Keine zusätzlichen Eigenschaften

  • kindstringerforderlich

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

  • eventstring

    maxLength: 200

  • assume_activeboolean

    default: false

  • contact_statusstring

    enum: "subscribed", "unsubscribed"

  • suppressedboolean
  • eventsarray

    maxItems: 1000

  • Jedes Elementobject
  • atstringerforderlich

    format: "date-time"

  • kindstringerforderlich

    enum: "attributes", "reply", "unsubscribe", "suppress", "goal"

  • attributesobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • broadcastsarray

    Gespeicherte geplante Kampagnen oder explizite Kandidaten verwalteter Inhalte, ausgewertet auf derselben Empfängerzeitleiste.

    maxItems: 20

  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

  • 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
  • Zusätzliche EigenschaftBeliebiger Wert
  • oneOf 1nicht angegeben
  • oneOf 2nicht angegeben

Erfolgsantwort 200

Geordnete Zeitleiste, gerenderte E-Mail-Details, Umfang und Simulationswarnungen. Anmeldeergebnisse umfassen 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 und audience_unverified. Details nennen den Auslöser und die Quelle des Kontaktstatus und können darauf hinweisen, dass gespeicherte Auslösebedingungen von der aktuellen Laufzeit nicht ausgewertet werden. Bereits für den Versand eingereihte Empfänger gespeicherter Kampagnen erzeugen already_queued; already_sent ist einem angenommenen Versand vorbehalten.

application/json

  • valueobject
  • dataobjecterforderlich
  • journey_idstringerforderlich

    format: "uuid"

  • journey_versionintegererforderlich
  • content_statestringerforderlich

    enum: "draft", "published"

  • scopestringerforderlich

    enum: "from_trigger", "after_enrollment"

  • communication_policy_versionintegererforderlich
  • timelinearrayerforderlich
  • Jedes Elementobject
  • atstringerforderlich

    format: "date-time"

  • step_idstring

    format: "uuid"

  • kindstringerforderlich
  • outcomestringerforderlich
  • detailsnicht angegeben

    Ergebnisspezifische Simulationsnachweise.

  • emailsarrayerforderlich
  • Jedes Elementobject
  • step_idstring | nullerforderlich

    format: "uuid"

  • namestringerforderlich
  • armobject
  • split_step_idstring

    format: "uuid"

  • keystringerforderlich
  • labelstringerforderlich
  • sourcestringerforderlich

    enum: "managed", "design", "inline", "empty"

  • statusstringerforderlich

    enum: "rendered", "blocked"

  • subjectstring
  • previewstring
  • codestring
  • messagestring
  • warningsarrayerforderlich
  • Jedes Elementstring

curl-Beispiel

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

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

journeyId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body erforderlich

application/json

  • valueobject
  • statusstringerforderlich

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

Erfolgsantwort 200

Journey-Status aktualisiert.

application/json

  • valueobject
  • datanicht angegebenerforderlich
  • allOf 1object

    Keine zusätzlichen Eigenschaften

  • namestringerforderlich

    minLength: 1 · maxLength: 200

  • descriptionstring

    maxLength: 2000

  • mailbox_idstring

    Vorhandener Absender. Weglassen, um zuerst den Einrichtungsabsender, dann ein aktives eigenes Postfach und dann ein gehostetes zu wählen. Gespeicherte und explizite Absender bleiben unverändert.

    format: "uuid"

  • from_local_partstring

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

  • triggerobjecterforderlich
  • kindstringerforderlich

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

  • connection_idstring

    format: "uuid"

  • configobject
  • eventstring
  • once_per_personboolean

    Jede Person tritt einmal ein. Setze false, um nach Abschluss einen erneuten Eintritt zu erlauben.

    default: true

  • reentry_daysinteger

    Bei once_per_person false: Tage seit dem letzten Eintritt einer Person bis zum erneuten Eintritt.

    minimum: 1 · maximum: 365

  • Zusätzliche EigenschaftBeliebiger Wert
  • conditionsarray
  • Jedes Elementobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • audienceobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • goalobject

    Keine zusätzlichen Eigenschaften

  • kindstringerforderlich

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

  • connection_idstring

    format: "uuid"

  • configobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • exitobject

    Keine zusätzlichen Eigenschaften

  • 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

    Abkürzung nur zur Erstellung: Speichert atomar einen E-Mail-Entwurf mit verwalteter Quelle und eine Journey, deren E-Mail-Schritt darauf verweist. Fehlende Zielsprachen werden zur kostenlosen Übersetzung eingereiht; dies veröffentlicht oder aktiviert die Journey nicht.

    Keine zusätzlichen Eigenschaften

  • source_localestring

    Kanonische BCP-47-Quell-Locale; übernimmt bei Auslassung die Produkteinstellungen.

  • configured_localesarray

    Quell- und Ziel-Locales; eine ausgelassene Quelle wird vom Server hinzugefügt.

    maxItems: 100 · uniqueItems: true

  • Jedes Elementstring
  • fallback_localestring
  • layout_idstring

    Gewähltes wiederverwendbares Layout; der Server übernimmt einen Snapshot seiner veröffentlichten Revision in diese Inhaltsrevision.

    format: "uuid"

  • localization_policyobject

    Eine Journey-E-Mail geht nur in der Sprache der Person heraus: Sie wartet auf ihre Übersetzung, etwa eine Minute bei Belegen, Codes und Sicherheitshinweisen und bis zu einen Tag bei anderen E-Mails, und wird nicht gesendet, wenn die Übersetzung dann nicht bereit ist.

    Keine zusätzlichen Eigenschaften

  • manual_reviewboolean

    default: false

  • sourceobjecterforderlich

    Keine zusätzlichen Eigenschaften

  • subjectstringerforderlich

    minLength: 1 · maxLength: 100000

  • preheaderstring

    maxLength: 100000

  • body_textstring

    Für Quellkompatibilität akzeptiert; gerenderter Klartext wird aus dem endgültigen HTML abgeleitet.

    maxLength: 100000

  • body_htmlstringerforderlich

    minLength: 1 · maxLength: 100000

  • layoutstring

    Muss einen {{ content }}-Slot enthalten.

    maxLength: 100000

  • variantsobject

    Optionale Quellversionen. Jede Version wird automatisch in derselben Revision übersetzt.

  • Zusätzliche Eigenschaftobject

    Keine zusätzlichen Eigenschaften

    Weitere Verschachtelung ausgelassen

  • variablesobjecterforderlich
  • Zusätzliche Eigenschaftnicht angegeben

    Rekursive typisierte Variable. Geldwerte verwenden {amount_cents: integer, currency: ISO 4217 code}; date-Werte sind ISO-Kalenderdaten und datetime-Werte ISO-Zeitstempel mit Offsets.

    Weitere Verschachtelung ausgelassen

  • samplesobject

    Benannte Beispielwertsätze für Vorschau und Quellvalidierung.

  • Zusätzliche Eigenschaftobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • translationsobject

    ICU-Quellnachrichtenkatalog und optional bereitgestellte Zielkataloge. Fehlende konfigurierte Ziele werden zur asynchronen Übersetzung eingereiht; zum Speichern sind sie nicht erforderlich.

  • Zusätzliche Eigenschaftobject
  • Zusätzliche Eigenschaftstring

    Weitere Verschachtelung ausgelassen

  • stepsarrayerforderlich

    maxItems: 100

  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

  • idstring

    format: "uuid"

  • positioninteger

    minimum: 1 · maximum: 100

  • kindstringerforderlich

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

  • namestringerforderlich

    minLength: 1 · maxLength: 200

  • managed_contentobject

    Typisierter Quellvertrag und Entwurfs-/Veröffentlichungsrevisionsidentität eines E-Mail-Schritts.

  • idstring

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • versioninteger

    Weitere Verschachtelung ausgelassen

  • draft_revision_idstring | null

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • published_revision_idstring | null

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • published_publication_idstring | null

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • source_revision_idstring | null

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • layout_revision_idstring | null

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • published_layout_revision_idstring | null

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • source_localestring | null

    Weitere Verschachtelung ausgelassen

  • configured_localesarray

    Weitere Verschachtelung ausgelassen

  • variablesobject

    Weitere Verschachtelung ausgelassen

  • published_variablesobject

    Weitere Verschachtelung ausgelassen

  • configobjecterforderlich

    Warteschritte akzeptieren optional until mit name, path, operator (equals, not_equals, contains oder exists) und value sowie das erforderliche on_met (continue oder end_journey). continue überspringt die folgende Erinnerungsmail; end_journey beendet die Journey. Eine Erinnerungsmail muss unmittelbar im selben Zweig folgen. Die Wartephase prüft aktuelle Kundendaten jede Minute bis amount/unit. Fehlende Felder sind unbekannt und halten die Erinnerung zurück. Normale Wartephasen und eigenständige Bedingungen behalten ihr Verhalten. Benenne Prüfungen nach verifizierten Kundenmeilensteinen. Verwaltete E-Mail-Schritte referenzieren veröffentlichte Inhalte über managed_content_id; die Aktivierung lehnt unveröffentlichte Referenzen ab. E-Mail-Schritte können expires_after_seconds (1-604800) setzen, um eine verzögerte Sendung nach diesem Intervall ab ihrem ursprünglichen Start zu verwerfen; Standard sind sieben Tage.

  • Zusätzliche EigenschaftBeliebiger Wert
  • armsarray

    minItems: 2 · maxItems: 4

  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

    Weitere Verschachtelung ausgelassen

  • allOf 2object
  • idstringerforderlich

    format: "uuid"

  • statusstringerforderlich

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

  • api_keystring | null
  • content_modestring | null

    enum: "code", "managed", null

  • identitystring | null
  • identity_aliasesarray
  • Jedes Elementstring
  • samplesarray
  • Jedes Elementobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • versionintegererforderlich

    minimum: 1

  • statsobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • stepStatsarray
  • Jedes Elementobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • armStatsarray
  • Jedes Elementobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • healthobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • indicatorobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • sparklinearrayerforderlich
  • Jedes Elementnumber
  • activated_atstring | null

    format: "date-time"

  • updated_atstring

    format: "date-time"

  • last_activity_atstring | null

    format: "date-time"

curl-Beispiel

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

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

journeyId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Vorschau von Journey-Zielgruppe und Bereitschaft.

application/json

  • valueobject
  • dataobjecterforderlich
  • sequence_idstringerforderlich

    format: "uuid"

  • recipient_countintegererforderlich
  • sample_recipientsarrayerforderlich
  • Jedes Elementobject
  • idstringerforderlich

    format: "uuid"

  • emailstringerforderlich
  • display_namestring | nullerforderlich
  • stepsarrayerforderlich
  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

  • idstring

    format: "uuid"

  • positioninteger

    minimum: 1 · maximum: 100

  • kindstringerforderlich

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

  • namestringerforderlich

    minLength: 1 · maxLength: 200

  • managed_contentobject

    Typisierter Quellvertrag und Entwurfs-/Veröffentlichungsrevisionsidentität eines E-Mail-Schritts.

  • 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
  • Jedes Elementstring

    Weitere Verschachtelung ausgelassen

  • variablesobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • published_variablesobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • configobjecterforderlich

    Warteschritte akzeptieren optional until mit name, path, operator (equals, not_equals, contains oder exists) und value sowie das erforderliche on_met (continue oder end_journey). continue überspringt die folgende Erinnerungsmail; end_journey beendet die Journey. Eine Erinnerungsmail muss unmittelbar im selben Zweig folgen. Die Wartephase prüft aktuelle Kundendaten jede Minute bis amount/unit. Fehlende Felder sind unbekannt und halten die Erinnerung zurück. Normale Wartephasen und eigenständige Bedingungen behalten ihr Verhalten. Benenne Prüfungen nach verifizierten Kundenmeilensteinen. Verwaltete E-Mail-Schritte referenzieren veröffentlichte Inhalte über managed_content_id; die Aktivierung lehnt unveröffentlichte Referenzen ab. E-Mail-Schritte können expires_after_seconds (1-604800) setzen, um eine verzögerte Sendung nach diesem Intervall ab ihrem ursprünglichen Start zu verwerfen; Standard sind sieben Tage.

  • Zusätzliche EigenschaftBeliebiger Wert
  • armsarray

    minItems: 2 · maxItems: 4

  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

  • keystringerforderlich

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

    Weitere Verschachtelung ausgelassen

  • labelstringerforderlich

    maxLength: 120

    Weitere Verschachtelung ausgelassen

  • allocationnumbererforderlich

    minimum: 0 · maximum: 100

    Weitere Verschachtelung ausgelassen

  • stepsarrayerforderlich

    Weitere Verschachtelung ausgelassen

  • readybooleanerforderlich
  • exit_configobjecterforderlich

    Keine zusätzlichen Eigenschaften

  • on_replyboolean

    default: true

  • on_unsubscribeboolean

    default: true

  • on_suppressionboolean

    default: true

  • eventstring

    maxLength: 200

  • emailsarrayerforderlich
  • Jedes Elementobject
  • step_idstring | nullerforderlich

    format: "uuid"

  • namestringerforderlich
  • armobject
  • split_step_idstring

    format: "uuid"

  • keystringerforderlich
  • labelstringerforderlich
  • sourcestringerforderlich

    enum: "managed", "design", "inline", "empty"

  • template_idstring

    format: "uuid"

  • managed_content_idstring

    format: "uuid"

  • subjectstringerforderlich
  • previewstringerforderlich
  • blockersarrayerforderlich
  • Jedes Elementobject
  • codestringerforderlich

    Weitere Verschachtelung ausgelassen

  • messagestringerforderlich

    Weitere Verschachtelung ausgelassen

  • blockersarrayerforderlich
  • Jedes Elementobject
  • codestringerforderlich
  • messagestringerforderlich
  • step_idstring | nullerforderlich

    format: "uuid"

  • step_namestringerforderlich
  • armstring

curl-Beispiel

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

Explizite Kontakte über eine regelgebundene Freigabe in eine Journey aufnehmen.

Alias von POST /approvals mit action_kind sequence.enroll und payload {sequence_id, contact_ids, sequence_version?, sequence_definition_sha256?}. Verwendet denselben Idempotency-Key; derselbe Schlüssel liefert über beide Routen dieselbe Freigabe. Erfordert campaigns:send und ein Produkt.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

journeyId
path · erforderlich
  • valuestring

    format: "uuid"

Idempotency-Key
header · erforderlich
  • valuestring

    minLength: 16 · maxLength: 128

Anfrage-Body erforderlich

application/json

  • valueobject

    Keine zusätzlichen Eigenschaften

  • contact_idsarrayerforderlich

    minItems: 1 · maxItems: 2000

  • Jedes Elementstring

    format: "uuid"

  • sequence_versioninteger

    minimum: 1

  • sequence_definition_sha256string

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

Erfolgsantwort 200

Derselbe Idempotency-Key hat eine bestehende Freigabe erneut geliefert.

application/json

  • valueobject
  • dataobjecterforderlich
  • idstringerforderlich

    format: "uuid"

  • requested_by_actor_idstringerforderlich
  • action_kindstringerforderlich
  • summarystringerforderlich
  • capability_scopesarrayerforderlich
  • Jedes Elementstring
  • resource_scopeobjecterforderlich
  • Zusätzliche Eigenschaftarray
  • Jedes Elementstring
  • payloadobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • payload_sha256stringerforderlich

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

  • statusstringerforderlich

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

  • missedbooleanerforderlich
  • expires_atstringerforderlich

    format: "date-time"

  • decided_by_actor_idstring | null
  • decision_reasonstring | null
  • created_atstringerforderlich

    format: "date-time"

  • updated_atstringerforderlich

    format: "date-time"

  • decided_atstring | null

    format: "date-time"

  • execution_job_idstring

    format: "uuid"

  • reviewobject

    Keine zusätzlichen Eigenschaften

  • dispositionstringerforderlich

    enum: "automatic", "human_required"

  • recipient_countinteger | nullerforderlich

    minimum: 0

  • reasonsarrayerforderlich
  • Jedes Elementstring
  • checksarrayerforderlich
  • Jedes Elementstring

curl-Beispiel

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

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

journeyId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Journey-Schrittausführungen.

application/json

  • valueobject
  • dataarrayerforderlich
  • Jedes Elementobject
  • enrollment_idstringerforderlich

    format: "uuid"

  • step_idstringerforderlich

    format: "uuid"

  • positionintegererforderlich
  • kindstringerforderlich
  • namestringerforderlich
  • statusstringerforderlich
  • attempt_countintegererforderlich
  • send_intent_idstring | nullerforderlich

    format: "uuid"

  • error_codestring | nullerforderlich
  • started_atstring | nullerforderlich

    format: "date-time"

  • completed_atstring | nullerforderlich

    format: "date-time"

  • updated_atstringerforderlich

    format: "date-time"

curl-Beispiel

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

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

journeyId
path · erforderlich
  • 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"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Personen in der Journey, neuester Eintritt zuerst, mit Ergebnis jedes E-Mail-Schritts.

application/json

  • valueobject
  • dataobjecterforderlich
  • stepsobjecterforderlich

    Nach Schritt-ID indiziert, für jeden von jemandem erreichten Schritt.

  • Zusätzliche Eigenschaftobject
  • receivedintegererforderlich
  • skippedintegererforderlich
  • failedintegererforderlich
  • nowintegererforderlich
  • emailsarrayerforderlich
  • Jedes Elementobject
  • step_idstringerforderlich

    format: "uuid"

  • namestringerforderlich
  • subjectstringerforderlich
  • split_step_idstring

    format: "uuid"

  • arm_keystring
  • countsobjecterforderlich
  • allintegererforderlich
  • in_progressintegererforderlich
  • finishedintegererforderlich
  • goal_reachedintegererforderlich
  • exitedintegererforderlich
  • failedintegererforderlich
  • peoplearrayerforderlich
  • Jedes Elementobject
  • enrollment_idstringerforderlich

    format: "uuid"

  • contact_idstringerforderlich

    format: "uuid"

  • emailstringerforderlich
  • display_namestringerforderlich
  • statestringerforderlich

    enum: "in_progress", "finished", "goal_reached", "exited", "failed"

  • stop_reasonstring
  • error_codestring
  • current_stepobject
  • idstringerforderlich

    format: "uuid"

  • namestringerforderlich
  • kindstringerforderlich
  • next_action_atstring

    format: "date-time"

  • enrolled_atstringerforderlich

    format: "date-time"

  • completed_atstring

    format: "date-time"

  • pathsobjecterforderlich
  • Zusätzliche Eigenschaftstring
  • emailsobjecterforderlich

    Nach E-Mail-Schritt-ID indiziert. Ein Schritt ohne Eintrag wurde nicht erreicht.

  • Zusätzliche Eigenschaftobject
  • statestringerforderlich

    translating bedeutet, dass die E-Mail auf die Übersetzung der Person wartet. skipped trägt error_code translation_failed, translation_awaiting_review oder translation_still_preparing (Grund der verspäteten Übersetzung) und none, wenn zuerst der Meilenstein erreicht wurde.

    enum: "pending", "translating", "skipped", "failed", "queued", "sent", "delivered", "opened", "clicked", "replied", "bounced", "complained"

    Weitere Verschachtelung ausgelassen

  • atstringerforderlich

    format: "date-time"

    Weitere Verschachtelung ausgelassen

  • send_intent_idstring

    Lies die genaue Nachricht, die diese Person erhielt, mit GET /transactional-sends/{send_intent_id}.

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • error_codestring

    Weitere Verschachtelung ausgelassen

  • languagenicht angegeben

    Sprache, in der die Person diese E-Mail erhielt, oder während translating die erwartete Sprache.

    Weitere Verschachtelung ausgelassen

  • variant_keystring

    Experimentvariante dieser E-Mail, die die Person erhielt, wenn der Schritt ein Experiment ausführt.

    Weitere Verschachtelung ausgelassen

  • pageobjecterforderlich
  • has_morebooleanerforderlich
  • next_cursorstring

curl-Beispiel

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

Sendet eine E-Mail über die Journey. reply_to verwendet standardmäßig das Journey-Postfach; auch eine leere Liste bedeutet den Standard. Eine Ablehnung (4xx) friert nichts für den Empfänger ein, sodass ein korrigierter Aufruf mit neuem Idempotenzschlüssel sendet.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

journeyKey
path · erforderlich
  • valuestring

    minLength: 1 · maxLength: 100

Idempotency-Key
header · erforderlich
  • valuestring

    minLength: 16 · maxLength: 128

Anfrage-Body erforderlich

application/json

  • valueobject
  • tonicht angegeben

    Empfänger für to, cc, bcc und reply_to: eine Adresse ("a@example.com" oder "Pat <a@example.com>"), ein { email, name }-Objekt oder eine Liste mit beiden Formen. Banger speichert sie als { email, name }-Objekte mit kleingeschriebener E-Mail-Adresse. Der Idempotenzhash umfasst den Body wie gesendet; wiederhole deshalb mit derselben Form.

  • oneOf 1string

    minLength: 3 · maxLength: 1000

  • oneOf 2object
  • namestring
  • emailstringerforderlich

    format: "email"

  • oneOf 3array

    maxItems: 500

  • Jedes Elementnicht angegeben
  • oneOf 1string

    minLength: 3 · maxLength: 1000

  • oneOf 2object
  • namestring
  • emailstringerforderlich

    format: "email"

  • reply_tonicht angegeben

    Empfänger für to, cc, bcc und reply_to: eine Adresse ("a@example.com" oder "Pat <a@example.com>"), ein { email, name }-Objekt oder eine Liste mit beiden Formen. Banger speichert sie als { email, name }-Objekte mit kleingeschriebener E-Mail-Adresse. Der Idempotenzhash umfasst den Body wie gesendet; wiederhole deshalb mit derselben Form.

  • oneOf 1string

    minLength: 3 · maxLength: 1000

  • oneOf 2object
  • namestring
  • emailstringerforderlich

    format: "email"

  • oneOf 3array

    maxItems: 500

  • Jedes Elementnicht angegeben
  • oneOf 1string

    minLength: 3 · maxLength: 1000

  • oneOf 2object
  • namestring
  • emailstringerforderlich

    format: "email"

  • expires_atstring

    format: "date-time"

  • expires_after_secondsinteger

    minimum: 1 · maximum: 604800

  • Zusätzliche EigenschaftBeliebiger Wert

Erfolgsantwort 202

Journey-E-Mail angenommen.

application/json

  • valueobject
  • dataobjecterforderlich
  • action_kindstringerforderlich

    enum: "transactional.send"

  • idstring

    format: "uuid"

  • send_intent_idstring

    format: "uuid"

  • provider_attempt_idstring

    format: "uuid"

  • statusstringerforderlich

    sent/queued-Zustände der Zustellung oder bei eingefrorenen Anfragen: deferred (durch Richtlinie geplant oder auf Übersetzung wartend), processing (wird gesendet), discarded.

  • replayedboolean
  • journeynicht angegebenerforderlich
  • anyOf 1object
  • journey_idstringerforderlich

    format: "uuid"

  • enrollment_idstringerforderlich

    format: "uuid"

  • step_idstringerforderlich

    format: "uuid"

  • step_positionintegererforderlich
  • originstring

    enum: "journey"

  • journey_identitystring
  • anyOf 2null
  • ignored_variablesarrayerforderlich
  • Jedes Elementstring
  • scheduled_atstring

    format: "date-time"

  • reasonstring
  • communication_reservation_idstring

    format: "uuid"

curl-Beispiel

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

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

journeyId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body erforderlich

application/json

  • valueobject
  • namestringerforderlich

    minLength: 1 · maxLength: 200

  • mailbox_idstringerforderlich

    format: "uuid"

  • delivery_classstringerforderlich

    enum: "product", "broadcast"

  • content_modestringerforderlich

    enum: "code", "managed"

  • template_idstring

    format: "uuid"

  • from_sampleboolean
  • variablesarray

    maxItems: 50

  • Jedes Elementobject
  • literalstringerforderlich

    minLength: 1 · maxLength: 10000

  • namestringerforderlich

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

  • activateboolean

Erfolgsantwort 200

Entdeckte Journey übernommen.

application/json

  • valueobject
  • datanicht angegebenerforderlich
  • allOf 1object

    Keine zusätzlichen Eigenschaften

  • namestringerforderlich

    minLength: 1 · maxLength: 200

  • descriptionstring

    maxLength: 2000

  • mailbox_idstring

    Vorhandener Absender. Weglassen, um zuerst den Einrichtungsabsender, dann ein aktives eigenes Postfach und dann ein gehostetes zu wählen. Gespeicherte und explizite Absender bleiben unverändert.

    format: "uuid"

  • from_local_partstring

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

  • triggerobjecterforderlich
  • kindstringerforderlich

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

  • connection_idstring

    format: "uuid"

  • configobject
  • eventstring
  • once_per_personboolean

    Jede Person tritt einmal ein. Setze false, um nach Abschluss einen erneuten Eintritt zu erlauben.

    default: true

  • reentry_daysinteger

    Bei once_per_person false: Tage seit dem letzten Eintritt einer Person bis zum erneuten Eintritt.

    minimum: 1 · maximum: 365

  • Zusätzliche EigenschaftBeliebiger Wert
  • conditionsarray
  • Jedes Elementobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • audienceobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • goalobject

    Keine zusätzlichen Eigenschaften

  • kindstringerforderlich

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

  • connection_idstring

    format: "uuid"

  • configobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • exitobject

    Keine zusätzlichen Eigenschaften

  • 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

    Abkürzung nur zur Erstellung: Speichert atomar einen E-Mail-Entwurf mit verwalteter Quelle und eine Journey, deren E-Mail-Schritt darauf verweist. Fehlende Zielsprachen werden zur kostenlosen Übersetzung eingereiht; dies veröffentlicht oder aktiviert die Journey nicht.

    Keine zusätzlichen Eigenschaften

  • source_localestring

    Kanonische BCP-47-Quell-Locale; übernimmt bei Auslassung die Produkteinstellungen.

  • configured_localesarray

    Quell- und Ziel-Locales; eine ausgelassene Quelle wird vom Server hinzugefügt.

    maxItems: 100 · uniqueItems: true

  • Jedes Elementstring
  • fallback_localestring
  • layout_idstring

    Gewähltes wiederverwendbares Layout; der Server übernimmt einen Snapshot seiner veröffentlichten Revision in diese Inhaltsrevision.

    format: "uuid"

  • localization_policyobject

    Eine Journey-E-Mail geht nur in der Sprache der Person heraus: Sie wartet auf ihre Übersetzung, etwa eine Minute bei Belegen, Codes und Sicherheitshinweisen und bis zu einen Tag bei anderen E-Mails, und wird nicht gesendet, wenn die Übersetzung dann nicht bereit ist.

    Keine zusätzlichen Eigenschaften

  • manual_reviewboolean

    default: false

  • sourceobjecterforderlich

    Keine zusätzlichen Eigenschaften

  • subjectstringerforderlich

    minLength: 1 · maxLength: 100000

  • preheaderstring

    maxLength: 100000

  • body_textstring

    Für Quellkompatibilität akzeptiert; gerenderter Klartext wird aus dem endgültigen HTML abgeleitet.

    maxLength: 100000

  • body_htmlstringerforderlich

    minLength: 1 · maxLength: 100000

  • layoutstring

    Muss einen {{ content }}-Slot enthalten.

    maxLength: 100000

  • variantsobject

    Optionale Quellversionen. Jede Version wird automatisch in derselben Revision übersetzt.

  • Zusätzliche Eigenschaftobject

    Keine zusätzlichen Eigenschaften

    Weitere Verschachtelung ausgelassen

  • variablesobjecterforderlich
  • Zusätzliche Eigenschaftnicht angegeben

    Rekursive typisierte Variable. Geldwerte verwenden {amount_cents: integer, currency: ISO 4217 code}; date-Werte sind ISO-Kalenderdaten und datetime-Werte ISO-Zeitstempel mit Offsets.

    Weitere Verschachtelung ausgelassen

  • samplesobject

    Benannte Beispielwertsätze für Vorschau und Quellvalidierung.

  • Zusätzliche Eigenschaftobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • translationsobject

    ICU-Quellnachrichtenkatalog und optional bereitgestellte Zielkataloge. Fehlende konfigurierte Ziele werden zur asynchronen Übersetzung eingereiht; zum Speichern sind sie nicht erforderlich.

  • Zusätzliche Eigenschaftobject
  • Zusätzliche Eigenschaftstring

    Weitere Verschachtelung ausgelassen

  • stepsarrayerforderlich

    maxItems: 100

  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

  • idstring

    format: "uuid"

  • positioninteger

    minimum: 1 · maximum: 100

  • kindstringerforderlich

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

  • namestringerforderlich

    minLength: 1 · maxLength: 200

  • managed_contentobject

    Typisierter Quellvertrag und Entwurfs-/Veröffentlichungsrevisionsidentität eines E-Mail-Schritts.

  • idstring

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • versioninteger

    Weitere Verschachtelung ausgelassen

  • draft_revision_idstring | null

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • published_revision_idstring | null

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • published_publication_idstring | null

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • source_revision_idstring | null

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • layout_revision_idstring | null

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • published_layout_revision_idstring | null

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • source_localestring | null

    Weitere Verschachtelung ausgelassen

  • configured_localesarray

    Weitere Verschachtelung ausgelassen

  • variablesobject

    Weitere Verschachtelung ausgelassen

  • published_variablesobject

    Weitere Verschachtelung ausgelassen

  • configobjecterforderlich

    Warteschritte akzeptieren optional until mit name, path, operator (equals, not_equals, contains oder exists) und value sowie das erforderliche on_met (continue oder end_journey). continue überspringt die folgende Erinnerungsmail; end_journey beendet die Journey. Eine Erinnerungsmail muss unmittelbar im selben Zweig folgen. Die Wartephase prüft aktuelle Kundendaten jede Minute bis amount/unit. Fehlende Felder sind unbekannt und halten die Erinnerung zurück. Normale Wartephasen und eigenständige Bedingungen behalten ihr Verhalten. Benenne Prüfungen nach verifizierten Kundenmeilensteinen. Verwaltete E-Mail-Schritte referenzieren veröffentlichte Inhalte über managed_content_id; die Aktivierung lehnt unveröffentlichte Referenzen ab. E-Mail-Schritte können expires_after_seconds (1-604800) setzen, um eine verzögerte Sendung nach diesem Intervall ab ihrem ursprünglichen Start zu verwerfen; Standard sind sieben Tage.

  • Zusätzliche EigenschaftBeliebiger Wert
  • armsarray

    minItems: 2 · maxItems: 4

  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

    Weitere Verschachtelung ausgelassen

  • allOf 2object
  • idstringerforderlich

    format: "uuid"

  • statusstringerforderlich

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

  • api_keystring | null
  • content_modestring | null

    enum: "code", "managed", null

  • identitystring | null
  • identity_aliasesarray
  • Jedes Elementstring
  • samplesarray
  • Jedes Elementobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • versionintegererforderlich

    minimum: 1

  • statsobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • stepStatsarray
  • Jedes Elementobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • armStatsarray
  • Jedes Elementobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • healthobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • indicatorobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • sparklinearrayerforderlich
  • Jedes Elementnumber
  • activated_atstring | null

    format: "date-time"

  • updated_atstring

    format: "date-time"

  • last_activity_atstring | null

    format: "date-time"

curl-Beispiel

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

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

journeyId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body erforderlich

application/json

  • valueobject
  • loser_idstringerforderlich

    format: "uuid"

Erfolgsantwort 200

Journeys zusammengeführt.

application/json

  • valueobject
  • datanicht angegebenerforderlich
  • allOf 1object

    Keine zusätzlichen Eigenschaften

  • namestringerforderlich

    minLength: 1 · maxLength: 200

  • descriptionstring

    maxLength: 2000

  • mailbox_idstring

    Vorhandener Absender. Weglassen, um zuerst den Einrichtungsabsender, dann ein aktives eigenes Postfach und dann ein gehostetes zu wählen. Gespeicherte und explizite Absender bleiben unverändert.

    format: "uuid"

  • from_local_partstring

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

  • triggerobjecterforderlich
  • kindstringerforderlich

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

  • connection_idstring

    format: "uuid"

  • configobject
  • eventstring
  • once_per_personboolean

    Jede Person tritt einmal ein. Setze false, um nach Abschluss einen erneuten Eintritt zu erlauben.

    default: true

  • reentry_daysinteger

    Bei once_per_person false: Tage seit dem letzten Eintritt einer Person bis zum erneuten Eintritt.

    minimum: 1 · maximum: 365

  • Zusätzliche EigenschaftBeliebiger Wert
  • conditionsarray
  • Jedes Elementobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • audienceobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • goalobject

    Keine zusätzlichen Eigenschaften

  • kindstringerforderlich

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

  • connection_idstring

    format: "uuid"

  • configobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • exitobject

    Keine zusätzlichen Eigenschaften

  • 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

    Abkürzung nur zur Erstellung: Speichert atomar einen E-Mail-Entwurf mit verwalteter Quelle und eine Journey, deren E-Mail-Schritt darauf verweist. Fehlende Zielsprachen werden zur kostenlosen Übersetzung eingereiht; dies veröffentlicht oder aktiviert die Journey nicht.

    Keine zusätzlichen Eigenschaften

  • source_localestring

    Kanonische BCP-47-Quell-Locale; übernimmt bei Auslassung die Produkteinstellungen.

  • configured_localesarray

    Quell- und Ziel-Locales; eine ausgelassene Quelle wird vom Server hinzugefügt.

    maxItems: 100 · uniqueItems: true

  • Jedes Elementstring
  • fallback_localestring
  • layout_idstring

    Gewähltes wiederverwendbares Layout; der Server übernimmt einen Snapshot seiner veröffentlichten Revision in diese Inhaltsrevision.

    format: "uuid"

  • localization_policyobject

    Eine Journey-E-Mail geht nur in der Sprache der Person heraus: Sie wartet auf ihre Übersetzung, etwa eine Minute bei Belegen, Codes und Sicherheitshinweisen und bis zu einen Tag bei anderen E-Mails, und wird nicht gesendet, wenn die Übersetzung dann nicht bereit ist.

    Keine zusätzlichen Eigenschaften

  • manual_reviewboolean

    default: false

  • sourceobjecterforderlich

    Keine zusätzlichen Eigenschaften

  • subjectstringerforderlich

    minLength: 1 · maxLength: 100000

  • preheaderstring

    maxLength: 100000

  • body_textstring

    Für Quellkompatibilität akzeptiert; gerenderter Klartext wird aus dem endgültigen HTML abgeleitet.

    maxLength: 100000

  • body_htmlstringerforderlich

    minLength: 1 · maxLength: 100000

  • layoutstring

    Muss einen {{ content }}-Slot enthalten.

    maxLength: 100000

  • variantsobject

    Optionale Quellversionen. Jede Version wird automatisch in derselben Revision übersetzt.

  • Zusätzliche Eigenschaftobject

    Keine zusätzlichen Eigenschaften

    Weitere Verschachtelung ausgelassen

  • variablesobjecterforderlich
  • Zusätzliche Eigenschaftnicht angegeben

    Rekursive typisierte Variable. Geldwerte verwenden {amount_cents: integer, currency: ISO 4217 code}; date-Werte sind ISO-Kalenderdaten und datetime-Werte ISO-Zeitstempel mit Offsets.

    Weitere Verschachtelung ausgelassen

  • samplesobject

    Benannte Beispielwertsätze für Vorschau und Quellvalidierung.

  • Zusätzliche Eigenschaftobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • translationsobject

    ICU-Quellnachrichtenkatalog und optional bereitgestellte Zielkataloge. Fehlende konfigurierte Ziele werden zur asynchronen Übersetzung eingereiht; zum Speichern sind sie nicht erforderlich.

  • Zusätzliche Eigenschaftobject
  • Zusätzliche Eigenschaftstring

    Weitere Verschachtelung ausgelassen

  • stepsarrayerforderlich

    maxItems: 100

  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

  • idstring

    format: "uuid"

  • positioninteger

    minimum: 1 · maximum: 100

  • kindstringerforderlich

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

  • namestringerforderlich

    minLength: 1 · maxLength: 200

  • managed_contentobject

    Typisierter Quellvertrag und Entwurfs-/Veröffentlichungsrevisionsidentität eines E-Mail-Schritts.

  • idstring

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • versioninteger

    Weitere Verschachtelung ausgelassen

  • draft_revision_idstring | null

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • published_revision_idstring | null

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • published_publication_idstring | null

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • source_revision_idstring | null

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • layout_revision_idstring | null

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • published_layout_revision_idstring | null

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • source_localestring | null

    Weitere Verschachtelung ausgelassen

  • configured_localesarray

    Weitere Verschachtelung ausgelassen

  • variablesobject

    Weitere Verschachtelung ausgelassen

  • published_variablesobject

    Weitere Verschachtelung ausgelassen

  • configobjecterforderlich

    Warteschritte akzeptieren optional until mit name, path, operator (equals, not_equals, contains oder exists) und value sowie das erforderliche on_met (continue oder end_journey). continue überspringt die folgende Erinnerungsmail; end_journey beendet die Journey. Eine Erinnerungsmail muss unmittelbar im selben Zweig folgen. Die Wartephase prüft aktuelle Kundendaten jede Minute bis amount/unit. Fehlende Felder sind unbekannt und halten die Erinnerung zurück. Normale Wartephasen und eigenständige Bedingungen behalten ihr Verhalten. Benenne Prüfungen nach verifizierten Kundenmeilensteinen. Verwaltete E-Mail-Schritte referenzieren veröffentlichte Inhalte über managed_content_id; die Aktivierung lehnt unveröffentlichte Referenzen ab. E-Mail-Schritte können expires_after_seconds (1-604800) setzen, um eine verzögerte Sendung nach diesem Intervall ab ihrem ursprünglichen Start zu verwerfen; Standard sind sieben Tage.

  • Zusätzliche EigenschaftBeliebiger Wert
  • armsarray

    minItems: 2 · maxItems: 4

  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

    Weitere Verschachtelung ausgelassen

  • allOf 2object
  • idstringerforderlich

    format: "uuid"

  • statusstringerforderlich

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

  • api_keystring | null
  • content_modestring | null

    enum: "code", "managed", null

  • identitystring | null
  • identity_aliasesarray
  • Jedes Elementstring
  • samplesarray
  • Jedes Elementobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • versionintegererforderlich

    minimum: 1

  • statsobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • stepStatsarray
  • Jedes Elementobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • armStatsarray
  • Jedes Elementobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • healthobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • indicatorobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • sparklinearrayerforderlich
  • Jedes Elementnumber
  • activated_atstring | null

    format: "date-time"

  • updated_atstring

    format: "date-time"

  • last_activity_atstring | null

    format: "date-time"

curl-Beispiel

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

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

journeyId
path · erforderlich
  • valuestring

    format: "uuid"

stepId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body erforderlich

application/json

  • valueobject
  • arm_keystringerforderlich

Erfolgsantwort 200

Gewinnender Zweig hochgestuft.

application/json

  • valueobject
  • datanicht angegebenerforderlich
  • allOf 1object

    Keine zusätzlichen Eigenschaften

  • namestringerforderlich

    minLength: 1 · maxLength: 200

  • descriptionstring

    maxLength: 2000

  • mailbox_idstring

    Vorhandener Absender. Weglassen, um zuerst den Einrichtungsabsender, dann ein aktives eigenes Postfach und dann ein gehostetes zu wählen. Gespeicherte und explizite Absender bleiben unverändert.

    format: "uuid"

  • from_local_partstring

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

  • triggerobjecterforderlich
  • kindstringerforderlich

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

  • connection_idstring

    format: "uuid"

  • configobject
  • eventstring
  • once_per_personboolean

    Jede Person tritt einmal ein. Setze false, um nach Abschluss einen erneuten Eintritt zu erlauben.

    default: true

  • reentry_daysinteger

    Bei once_per_person false: Tage seit dem letzten Eintritt einer Person bis zum erneuten Eintritt.

    minimum: 1 · maximum: 365

  • Zusätzliche EigenschaftBeliebiger Wert
  • conditionsarray
  • Jedes Elementobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • audienceobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • goalobject

    Keine zusätzlichen Eigenschaften

  • kindstringerforderlich

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

  • connection_idstring

    format: "uuid"

  • configobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • exitobject

    Keine zusätzlichen Eigenschaften

  • 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

    Abkürzung nur zur Erstellung: Speichert atomar einen E-Mail-Entwurf mit verwalteter Quelle und eine Journey, deren E-Mail-Schritt darauf verweist. Fehlende Zielsprachen werden zur kostenlosen Übersetzung eingereiht; dies veröffentlicht oder aktiviert die Journey nicht.

    Keine zusätzlichen Eigenschaften

  • source_localestring

    Kanonische BCP-47-Quell-Locale; übernimmt bei Auslassung die Produkteinstellungen.

  • configured_localesarray

    Quell- und Ziel-Locales; eine ausgelassene Quelle wird vom Server hinzugefügt.

    maxItems: 100 · uniqueItems: true

  • Jedes Elementstring
  • fallback_localestring
  • layout_idstring

    Gewähltes wiederverwendbares Layout; der Server übernimmt einen Snapshot seiner veröffentlichten Revision in diese Inhaltsrevision.

    format: "uuid"

  • localization_policyobject

    Eine Journey-E-Mail geht nur in der Sprache der Person heraus: Sie wartet auf ihre Übersetzung, etwa eine Minute bei Belegen, Codes und Sicherheitshinweisen und bis zu einen Tag bei anderen E-Mails, und wird nicht gesendet, wenn die Übersetzung dann nicht bereit ist.

    Keine zusätzlichen Eigenschaften

  • manual_reviewboolean

    default: false

  • sourceobjecterforderlich

    Keine zusätzlichen Eigenschaften

  • subjectstringerforderlich

    minLength: 1 · maxLength: 100000

  • preheaderstring

    maxLength: 100000

  • body_textstring

    Für Quellkompatibilität akzeptiert; gerenderter Klartext wird aus dem endgültigen HTML abgeleitet.

    maxLength: 100000

  • body_htmlstringerforderlich

    minLength: 1 · maxLength: 100000

  • layoutstring

    Muss einen {{ content }}-Slot enthalten.

    maxLength: 100000

  • variantsobject

    Optionale Quellversionen. Jede Version wird automatisch in derselben Revision übersetzt.

  • Zusätzliche Eigenschaftobject

    Keine zusätzlichen Eigenschaften

    Weitere Verschachtelung ausgelassen

  • variablesobjecterforderlich
  • Zusätzliche Eigenschaftnicht angegeben

    Rekursive typisierte Variable. Geldwerte verwenden {amount_cents: integer, currency: ISO 4217 code}; date-Werte sind ISO-Kalenderdaten und datetime-Werte ISO-Zeitstempel mit Offsets.

    Weitere Verschachtelung ausgelassen

  • samplesobject

    Benannte Beispielwertsätze für Vorschau und Quellvalidierung.

  • Zusätzliche Eigenschaftobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • translationsobject

    ICU-Quellnachrichtenkatalog und optional bereitgestellte Zielkataloge. Fehlende konfigurierte Ziele werden zur asynchronen Übersetzung eingereiht; zum Speichern sind sie nicht erforderlich.

  • Zusätzliche Eigenschaftobject
  • Zusätzliche Eigenschaftstring

    Weitere Verschachtelung ausgelassen

  • stepsarrayerforderlich

    maxItems: 100

  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

  • idstring

    format: "uuid"

  • positioninteger

    minimum: 1 · maximum: 100

  • kindstringerforderlich

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

  • namestringerforderlich

    minLength: 1 · maxLength: 200

  • managed_contentobject

    Typisierter Quellvertrag und Entwurfs-/Veröffentlichungsrevisionsidentität eines E-Mail-Schritts.

  • idstring

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • versioninteger

    Weitere Verschachtelung ausgelassen

  • draft_revision_idstring | null

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • published_revision_idstring | null

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • published_publication_idstring | null

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • source_revision_idstring | null

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • layout_revision_idstring | null

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • published_layout_revision_idstring | null

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • source_localestring | null

    Weitere Verschachtelung ausgelassen

  • configured_localesarray

    Weitere Verschachtelung ausgelassen

  • variablesobject

    Weitere Verschachtelung ausgelassen

  • published_variablesobject

    Weitere Verschachtelung ausgelassen

  • configobjecterforderlich

    Warteschritte akzeptieren optional until mit name, path, operator (equals, not_equals, contains oder exists) und value sowie das erforderliche on_met (continue oder end_journey). continue überspringt die folgende Erinnerungsmail; end_journey beendet die Journey. Eine Erinnerungsmail muss unmittelbar im selben Zweig folgen. Die Wartephase prüft aktuelle Kundendaten jede Minute bis amount/unit. Fehlende Felder sind unbekannt und halten die Erinnerung zurück. Normale Wartephasen und eigenständige Bedingungen behalten ihr Verhalten. Benenne Prüfungen nach verifizierten Kundenmeilensteinen. Verwaltete E-Mail-Schritte referenzieren veröffentlichte Inhalte über managed_content_id; die Aktivierung lehnt unveröffentlichte Referenzen ab. E-Mail-Schritte können expires_after_seconds (1-604800) setzen, um eine verzögerte Sendung nach diesem Intervall ab ihrem ursprünglichen Start zu verwerfen; Standard sind sieben Tage.

  • Zusätzliche EigenschaftBeliebiger Wert
  • armsarray

    minItems: 2 · maxItems: 4

  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

    Weitere Verschachtelung ausgelassen

  • allOf 2object
  • idstringerforderlich

    format: "uuid"

  • statusstringerforderlich

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

  • api_keystring | null
  • content_modestring | null

    enum: "code", "managed", null

  • identitystring | null
  • identity_aliasesarray
  • Jedes Elementstring
  • samplesarray
  • Jedes Elementobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • versionintegererforderlich

    minimum: 1

  • statsobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • stepStatsarray
  • Jedes Elementobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • armStatsarray
  • Jedes Elementobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • healthobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • indicatorobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • sparklinearrayerforderlich
  • Jedes Elementnumber
  • activated_atstring | null

    format: "date-time"

  • updated_atstring

    format: "date-time"

  • last_activity_atstring | null

    format: "date-time"

curl-Beispiel

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

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

journeyId
path · erforderlich
  • valuestring

    format: "uuid"

position
query
  • valueinteger

    minimum: 1 · maximum: 100

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Empfohlene Anzahl von Testzweigen und Entscheidungszeitpunkt.

application/json

  • valueobject
  • dataobjecterforderlich
  • arms_maxintegererforderlich
  • weekly_arrivalsintegererforderlich
  • per_arm_eta_daysobjecterforderlich
  • Zusätzliche Eigenschaftnumber

curl-Beispiel

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/journeys/{journeyId}/splits/recommend?position=1' \
  --header "Authorization: Bearer $BANGER_API_KEY"

Freigaben

GET/v1/workspaces/{workspaceId}/approvals/{approvalId}/managed-layout-preview/{contentId}

Vollständige Vorher-/Nachher-Renderings in der Quell-Locale für Inhalte einer Layoutfreigabe lesen.

Erstellt aus unveränderlichen Revisionen neu und prüft beide Quellhashes gegen den Freigabe-Snapshot. Kein Locale-Override wird akzeptiert.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

X-Banger-Product-Id
header · erforderlich

Explizites Betriebsprodukt; muss zu den produktgebundenen OAuth-Zugangsdaten passen.

  • valuestring

    format: "uuid"

approvalId
path · erforderlich
  • valuestring

    format: "uuid"

contentId
path · erforderlich
  • valuestring

    format: "uuid"

sample
query
  • valuestring

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Vollständiger hashgeprüfter Betreff, HTML und Klartext vorher und nachher.

application/json

  • valueobject
  • dataobjecterforderlich
  • content_idstringerforderlich

    format: "uuid"

  • sample_namestring | nullerforderlich
  • localestringerforderlich
  • old_source_hashstringerforderlich
  • new_source_hashstringerforderlich
  • beforeobjecterforderlich
  • subjectstringerforderlich
  • htmlstringerforderlich
  • textstringerforderlich
  • afterobjecterforderlich
  • subjectstringerforderlich
  • htmlstringerforderlich
  • textstringerforderlich

curl-Beispiel

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

Jede E-Mail einer Journey-Aktivierungs- oder Anmeldefreigabe aus ihrem gebundenen Prüf-Snapshot rendern.

E-Mails werden mit Beispielpersonalisierung aus der genau geprüften Definition gerendert (gespeicherte Designs über unveränderlichen HTML-Schlüssel, fixierte verwaltete Revisionen), nie aus der aktuellen Journey. Nennt auch die Zielgruppenlisten, Segmente und Auslöser-/Zielverbindungen des Snapshots.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

X-Banger-Product-Id
header · erforderlich

Explizites Betriebsprodukt; muss zu den produktgebundenen OAuth-Zugangsdaten passen.

  • valuestring

    format: "uuid"

approvalId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Gerenderte E-Mails nach Schrittposition indiziert (Zweigschritte als parent.arm.position), dazu Zielgruppen- und Verbindungsnamen.

application/json

  • valueobject
  • dataobjecterforderlich
  • approval_idstringerforderlich

    format: "uuid"

  • sequence_idstring | null

    format: "uuid"

  • emailsarrayerforderlich
  • Jedes Elementobject
  • keystringerforderlich
  • positionintegererforderlich
  • parent_positioninteger | nullerforderlich
  • arm_keystring | nullerforderlich
  • sourcestringerforderlich

    enum: "managed", "design", "inline", "empty"

  • subjectstringerforderlich
  • preview_textstringerforderlich
  • body_htmlstring
  • body_textstringerforderlich
  • publishedboolean
  • errorstring
  • listsarrayerforderlich
  • Jedes Elementobject
  • idstringerforderlich
  • namestringerforderlich
  • member_countintegererforderlich
  • segmentsarrayerforderlich
  • Jedes Elementobject
  • idstringerforderlich
  • namestringerforderlich
  • connectionsarrayerforderlich
  • Jedes Elementobject
  • idstringerforderlich
  • namestringerforderlich
  • image_assetsobjecterforderlich
  • Zusätzliche Eigenschaftstring
  • sample_valuesbooleanerforderlich

curl-Beispiel

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

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

status
query
  • valuestring

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

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Audit-Posteingang für automatische und menschliche Prüfungen des Workspace.

application/json

  • valueobject
  • dataarrayerforderlich
  • Jedes Elementobject
  • idstringerforderlich

    format: "uuid"

  • requested_by_actor_idstringerforderlich
  • action_kindstringerforderlich
  • summarystringerforderlich
  • capability_scopesarrayerforderlich
  • Jedes Elementstring
  • resource_scopeobjecterforderlich
  • Zusätzliche Eigenschaftarray
  • Jedes Elementstring
  • payloadobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • payload_sha256stringerforderlich

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

  • statusstringerforderlich

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

  • missedbooleanerforderlich
  • expires_atstringerforderlich

    format: "date-time"

  • decided_by_actor_idstring | null
  • decision_reasonstring | null
  • created_atstringerforderlich

    format: "date-time"

  • updated_atstringerforderlich

    format: "date-time"

  • decided_atstring | null

    format: "date-time"

  • execution_job_idstring

    format: "uuid"

  • reviewobject

    Keine zusätzlichen Eigenschaften

  • dispositionstringerforderlich

    enum: "automatic", "human_required"

  • recipient_countinteger | nullerforderlich

    minimum: 0

  • reasonsarrayerforderlich
  • Jedes Elementstring
  • checksarrayerforderlich
  • Jedes Elementstring

curl-Beispiel

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

Für kanonische Banger-Aktionen leitet Banger die genauen Berechtigungen ab, wendet die Workspace-Prüfrichtlinie an, erfasst eine unveränderliche Audit-Anfrage und reiht Aktionen innerhalb des konfigurierten Limits automatisch ein. Zum Veröffentlichen verwalteter E-Mail-Quellen nutze action_kind managed_email.publish und payload {content_id, expected_version}; Banger bindet Quellrevision/-hash und erzwingt bei Bedarf menschliche Prüfung. Generische Freigabearten bleiben immer ausstehend und müssen summary, capabilities und resources angeben. In mail.draft- und transactional.send-Payloads akzeptieren to, cc, bcc und reply_to jede RecipientInput-Form und werden als { email, name }-Objekte gespeichert.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

Idempotency-Key
header

Für erkannte Banger-Aktionen erforderlich; individuelle Freigabeanfragen verwenden diesen Header nicht.

  • valuestring

    minLength: 16 · maxLength: 128

Anfrage-Body erforderlich

application/json

  • valueobject

    Keine zusätzlichen Eigenschaften

  • action_kindstringerforderlich

    minLength: 1 · maxLength: 100

  • summarystring

    minLength: 1 · maxLength: 500

  • capabilitiesarray

    minItems: 1 · maxItems: 50

  • Jedes Elementstring

    maxLength: 100

  • resourcesobject
  • Zusätzliche Eigenschaftarray

    maxItems: 500

  • Jedes Elementstring

    maxLength: 200

  • payloadobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • expires_in_secondsinteger

    minimum: 60 · maximum: 86400 · default: 3600

  • approve_as_launcherboolean

    Für sequence.activate: Eine Person, die auf Aktivieren klickt, genehmigt genau diese Anfrage, wenn die Prüfrichtlinie eine Person verlangt. Bei API-Schlüsseln und Agenten ignoriert; diese warten in Freigaben.

Erfolgsantwort 201

Regelgebundene Anfrage erstellt; sie kann bereits automatisch genehmigt und eingereiht sein.

application/json

  • valueobject
  • dataobjecterforderlich
  • idstringerforderlich

    format: "uuid"

  • requested_by_actor_idstringerforderlich
  • action_kindstringerforderlich
  • summarystringerforderlich
  • capability_scopesarrayerforderlich
  • Jedes Elementstring
  • resource_scopeobjecterforderlich
  • Zusätzliche Eigenschaftarray
  • Jedes Elementstring
  • payloadobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • payload_sha256stringerforderlich

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

  • statusstringerforderlich

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

  • missedbooleanerforderlich
  • expires_atstringerforderlich

    format: "date-time"

  • decided_by_actor_idstring | null
  • decision_reasonstring | null
  • created_atstringerforderlich

    format: "date-time"

  • updated_atstringerforderlich

    format: "date-time"

  • decided_atstring | null

    format: "date-time"

  • execution_job_idstring

    format: "uuid"

  • reviewobject

    Keine zusätzlichen Eigenschaften

  • dispositionstringerforderlich

    enum: "automatic", "human_required"

  • recipient_countinteger | nullerforderlich

    minimum: 0

  • reasonsarrayerforderlich
  • Jedes Elementstring
  • checksarrayerforderlich
  • Jedes Elementstring

curl-Beispiel

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

Ausstehende oder vor einer Entscheidung verpasste Freigaben zählen.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Produktbezogene Anzahl unentschiedener Freigaben.

application/json

  • valueobject
  • dataobjecterforderlich

    Keine zusätzlichen Eigenschaften

  • pendingintegererforderlich

    minimum: 0

  • missedintegererforderlich

    minimum: 0

  • totalintegererforderlich

    minimum: 0

curl-Beispiel

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

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

approvalId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Genaue Freigabeanfrage und gebundener Aktions-Payload.

application/json

  • valueobject
  • dataobjecterforderlich
  • idstringerforderlich

    format: "uuid"

  • requested_by_actor_idstringerforderlich
  • action_kindstringerforderlich
  • summarystringerforderlich
  • capability_scopesarrayerforderlich
  • Jedes Elementstring
  • resource_scopeobjecterforderlich
  • Zusätzliche Eigenschaftarray
  • Jedes Elementstring
  • payloadobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • payload_sha256stringerforderlich

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

  • statusstringerforderlich

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

  • missedbooleanerforderlich
  • expires_atstringerforderlich

    format: "date-time"

  • decided_by_actor_idstring | null
  • decision_reasonstring | null
  • created_atstringerforderlich

    format: "date-time"

  • updated_atstringerforderlich

    format: "date-time"

  • decided_atstring | null

    format: "date-time"

  • execution_job_idstring

    format: "uuid"

  • reviewobject

    Keine zusätzlichen Eigenschaften

  • dispositionstringerforderlich

    enum: "automatic", "human_required"

  • recipient_countinteger | nullerforderlich

    minimum: 0

  • reasonsarrayerforderlich
  • Jedes Elementstring
  • checksarrayerforderlich
  • Jedes Elementstring

curl-Beispiel

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

Nur menschliche Browsersitzungen. Workspace-API-Schlüssel können keine Freigaben entscheiden.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

approvalId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body erforderlich

application/json

  • valueobject

    Keine zusätzlichen Eigenschaften

  • decisionstringerforderlich

    enum: "approved", "rejected"

  • reasonstring

    maxLength: 500

  • expected_payload_sha256string

    Hash des genauen Freigabe-Payloads, der dem Prüfer angezeigt wurde; Abweichung liefert 409.

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

Erfolgsantwort 200

Freigabeentscheidung erfasst.

application/json

  • valueobject
  • dataobjecterforderlich
  • idstringerforderlich

    format: "uuid"

  • requested_by_actor_idstringerforderlich
  • action_kindstringerforderlich
  • summarystringerforderlich
  • capability_scopesarrayerforderlich
  • Jedes Elementstring
  • resource_scopeobjecterforderlich
  • Zusätzliche Eigenschaftarray
  • Jedes Elementstring
  • payloadobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • payload_sha256stringerforderlich

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

  • statusstringerforderlich

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

  • missedbooleanerforderlich
  • expires_atstringerforderlich

    format: "date-time"

  • decided_by_actor_idstring | null
  • decision_reasonstring | null
  • created_atstringerforderlich

    format: "date-time"

  • updated_atstringerforderlich

    format: "date-time"

  • decided_atstring | null

    format: "date-time"

  • execution_job_idstring

    format: "uuid"

  • reviewobject

    Keine zusätzlichen Eigenschaften

  • dispositionstringerforderlich

    enum: "automatic", "human_required"

  • recipient_countinteger | nullerforderlich

    minimum: 0

  • reasonsarrayerforderlich
  • Jedes Elementstring
  • checksarrayerforderlich
  • Jedes Elementstring

curl-Beispiel

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

Eine noch ausstehende Freigabe ohne Ausführung abbrechen. Nur menschliche Browsersitzungen.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

approvalId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body erforderlich

application/json

  • valueobject

    Keine zusätzlichen Eigenschaften

  • reasonstring

    maxLength: 500

Erfolgsantwort 200

Freigabe abgebrochen und wartende Agentenausführung ohne die Aktion fortgesetzt.

application/json

  • valueobject
  • dataobjecterforderlich
  • idstringerforderlich

    format: "uuid"

  • requested_by_actor_idstringerforderlich
  • action_kindstringerforderlich
  • summarystringerforderlich
  • capability_scopesarrayerforderlich
  • Jedes Elementstring
  • resource_scopeobjecterforderlich
  • Zusätzliche Eigenschaftarray
  • Jedes Elementstring
  • payloadobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • payload_sha256stringerforderlich

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

  • statusstringerforderlich

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

  • missedbooleanerforderlich
  • expires_atstringerforderlich

    format: "date-time"

  • decided_by_actor_idstring | null
  • decision_reasonstring | null
  • created_atstringerforderlich

    format: "date-time"

  • updated_atstringerforderlich

    format: "date-time"

  • decided_atstring | null

    format: "date-time"

  • execution_job_idstring

    format: "uuid"

  • reviewobject

    Keine zusätzlichen Eigenschaften

  • dispositionstringerforderlich

    enum: "automatic", "human_required"

  • recipient_countinteger | nullerforderlich

    minimum: 0

  • reasonsarrayerforderlich
  • Jedes Elementstring
  • checksarrayerforderlich
  • Jedes Elementstring

curl-Beispiel

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

Eine Freigabe mit verpasstem Entscheidungszeitraum verwerfen. Nur menschliche Browsersitzungen.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

approvalId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Verpasste Freigabe verworfen und als abgebrochen erfasst.

application/json

  • valueobject
  • dataobjecterforderlich
  • idstringerforderlich

    format: "uuid"

  • requested_by_actor_idstringerforderlich
  • action_kindstringerforderlich
  • summarystringerforderlich
  • capability_scopesarrayerforderlich
  • Jedes Elementstring
  • resource_scopeobjecterforderlich
  • Zusätzliche Eigenschaftarray
  • Jedes Elementstring
  • payloadobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • payload_sha256stringerforderlich

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

  • statusstringerforderlich

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

  • missedbooleanerforderlich
  • expires_atstringerforderlich

    format: "date-time"

  • decided_by_actor_idstring | null
  • decision_reasonstring | null
  • created_atstringerforderlich

    format: "date-time"

  • updated_atstringerforderlich

    format: "date-time"

  • decided_atstring | null

    format: "date-time"

  • execution_job_idstring

    format: "uuid"

  • reviewobject

    Keine zusätzlichen Eigenschaften

  • dispositionstringerforderlich

    enum: "automatic", "human_required"

  • recipient_countinteger | nullerforderlich

    minimum: 0

  • reasonsarrayerforderlich
  • Jedes Elementstring
  • checksarrayerforderlich
  • Jedes Elementstring

curl-Beispiel

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

Eine verpasste Freigabe mit neuem Entscheidungszeitraum klonen und die alte Anfrage abbrechen. Nur menschliche Browsersitzungen.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

approvalId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 201

Neue Freigabeanfrage erstellt.

application/json

  • valueobject
  • dataobjecterforderlich
  • idstringerforderlich

    format: "uuid"

  • requested_by_actor_idstringerforderlich
  • action_kindstringerforderlich
  • summarystringerforderlich
  • capability_scopesarrayerforderlich
  • Jedes Elementstring
  • resource_scopeobjecterforderlich
  • Zusätzliche Eigenschaftarray
  • Jedes Elementstring
  • payloadobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • payload_sha256stringerforderlich

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

  • statusstringerforderlich

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

  • missedbooleanerforderlich
  • expires_atstringerforderlich

    format: "date-time"

  • decided_by_actor_idstring | null
  • decision_reasonstring | null
  • created_atstringerforderlich

    format: "date-time"

  • updated_atstringerforderlich

    format: "date-time"

  • decided_atstring | null

    format: "date-time"

  • execution_job_idstring

    format: "uuid"

  • reviewobject

    Keine zusätzlichen Eigenschaften

  • dispositionstringerforderlich

    enum: "automatic", "human_required"

  • recipient_countinteger | nullerforderlich

    minimum: 0

  • reasonsarrayerforderlich
  • Jedes Elementstring
  • checksarrayerforderlich
  • Jedes Elementstring

curl-Beispiel

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

Eine ausstehende regelgebundene Banger-Aktion durch eine neu kanonisierte Freigabe ersetzen. Die vorherige Anfrage bleibt als abgebrochen in der Historie.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

approvalId
path · erforderlich
  • valuestring

    format: "uuid"

Idempotency-Key
header · erforderlich
  • valuestring

    minLength: 16 · maxLength: 128

Anfrage-Body erforderlich

application/json

  • valueobject

    Keine zusätzlichen Eigenschaften

  • payloadobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert

Erfolgsantwort 201

Ersatzfreigabe zur menschlichen Prüfung erstellt.

application/json

  • valueobject
  • dataobjecterforderlich
  • idstringerforderlich

    format: "uuid"

  • requested_by_actor_idstringerforderlich
  • action_kindstringerforderlich
  • summarystringerforderlich
  • capability_scopesarrayerforderlich
  • Jedes Elementstring
  • resource_scopeobjecterforderlich
  • Zusätzliche Eigenschaftarray
  • Jedes Elementstring
  • payloadobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • payload_sha256stringerforderlich

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

  • statusstringerforderlich

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

  • missedbooleanerforderlich
  • expires_atstringerforderlich

    format: "date-time"

  • decided_by_actor_idstring | null
  • decision_reasonstring | null
  • created_atstringerforderlich

    format: "date-time"

  • updated_atstringerforderlich

    format: "date-time"

  • decided_atstring | null

    format: "date-time"

  • execution_job_idstring

    format: "uuid"

  • reviewobject

    Keine zusätzlichen Eigenschaften

  • dispositionstringerforderlich

    enum: "automatic", "human_required"

  • recipient_countinteger | nullerforderlich

    minimum: 0

  • reasonsarrayerforderlich
  • Jedes Elementstring
  • checksarrayerforderlich
  • Jedes Elementstring

curl-Beispiel

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

Agentenausführungen

GET/v1/workspaces/{workspaceId}/agent-runs

Aktuelle interne Agentenausführungen des Workspace auflisten.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

limit
query
  • valueinteger

    minimum: 1 · maximum: 100 · default: 50

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Aktuelle Ausführungen in umgekehrter zeitlicher Reihenfolge.

application/json

  • valueobject
  • dataarrayerforderlich
  • Jedes Elementobject
  • idstringerforderlich

    format: "uuid"

  • execution_job_idstring

    format: "uuid"

  • requested_by_actor_idstringerforderlich
  • taskstringerforderlich
  • modelstringerforderlich
  • capability_scopesarrayerforderlich
  • Jedes Elementstring
  • resource_scopeobjecterforderlich
  • Zusätzliche Eigenschaftarray
  • Jedes Elementstring
  • statusstringerforderlich

    enum: "queued", "running", "waiting_approval", "waiting_external", "succeeded", "failed", "cancelled"

  • max_stepsintegererforderlich
  • max_runtime_secondsintegererforderlich
  • current_generationintegererforderlich
  • latest_checkpointobject | null
  • Zusätzliche EigenschaftBeliebiger Wert
  • latest_checkpoint_sequenceintegererforderlich
  • resultobject | null
  • Zusätzliche EigenschaftBeliebiger Wert
  • error_codestring | null
  • created_atstringerforderlich

    format: "date-time"

  • updated_atstringerforderlich

    format: "date-time"

  • started_atstring | null

    format: "date-time"

  • completed_atstring | null

    format: "date-time"

  • replayedbooleanerforderlich
  • stepsarray
  • Jedes Elementobject
  • sequenceintegererforderlich

    minimum: 1

  • attempt_generationintegererforderlich

    minimum: 1

  • kindstringerforderlich

    enum: "model", "tool", "checkpoint", "approval", "output", "system"

  • statusstringerforderlich

    enum: "started", "succeeded", "failed", "waiting_approval", "waiting_external"

  • namestring | null
  • inputnicht angegeben
  • outputnicht angegeben
  • error_codestring | null
  • input_tokensinteger | null

    minimum: 0

  • output_tokensinteger | null

    minimum: 0

  • created_atstringerforderlich

    format: "date-time"

  • completed_atstring | null

    format: "date-time"

curl-Beispiel

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

Eine isolierte interne Banger-Agentenausführung starten.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

Idempotency-Key
header · erforderlich
  • valuestring

    minLength: 16 · maxLength: 128

Anfrage-Body erforderlich

application/json

  • valueobject

    Keine zusätzlichen Eigenschaften

  • taskstringerforderlich

    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

  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

  • connection_idstringerforderlich

    format: "uuid"

  • adapter_keystringerforderlich

    minLength: 1 · maxLength: 63

  • operationsarrayerforderlich

    minItems: 1 · maxItems: 20 · uniqueItems: true

  • Jedes Elementstring

    minLength: 1 · maxLength: 100

  • action_toolsarray

    maxItems: 6 · uniqueItems: true

  • Jedes Elementstring

    enum: "mailbox.create", "mail.draft", "transactional.send", "template.update", "campaign.draft", "campaign.schedule"

Erfolgsantwort 200

Idempotente Wiederholung der bestehenden Ausführung.

application/json

  • valueobject
  • dataobjecterforderlich
  • idstringerforderlich

    format: "uuid"

  • execution_job_idstring

    format: "uuid"

  • requested_by_actor_idstringerforderlich
  • taskstringerforderlich
  • modelstringerforderlich
  • capability_scopesarrayerforderlich
  • Jedes Elementstring
  • resource_scopeobjecterforderlich
  • Zusätzliche Eigenschaftarray
  • Jedes Elementstring
  • statusstringerforderlich

    enum: "queued", "running", "waiting_approval", "waiting_external", "succeeded", "failed", "cancelled"

  • max_stepsintegererforderlich
  • max_runtime_secondsintegererforderlich
  • current_generationintegererforderlich
  • latest_checkpointobject | null
  • Zusätzliche EigenschaftBeliebiger Wert
  • latest_checkpoint_sequenceintegererforderlich
  • resultobject | null
  • Zusätzliche EigenschaftBeliebiger Wert
  • error_codestring | null
  • created_atstringerforderlich

    format: "date-time"

  • updated_atstringerforderlich

    format: "date-time"

  • started_atstring | null

    format: "date-time"

  • completed_atstring | null

    format: "date-time"

  • replayedbooleanerforderlich
  • stepsarray
  • Jedes Elementobject
  • sequenceintegererforderlich

    minimum: 1

  • attempt_generationintegererforderlich

    minimum: 1

  • kindstringerforderlich

    enum: "model", "tool", "checkpoint", "approval", "output", "system"

  • statusstringerforderlich

    enum: "started", "succeeded", "failed", "waiting_approval", "waiting_external"

  • namestring | null
  • inputnicht angegeben
  • outputnicht angegeben
  • error_codestring | null
  • input_tokensinteger | null

    minimum: 0

  • output_tokensinteger | null

    minimum: 0

  • created_atstringerforderlich

    format: "date-time"

  • completed_atstring | null

    format: "date-time"

curl-Beispiel

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

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

runId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Kanonische Ausführung, Checkpoint, Endergebnis und geordnete Schritte.

application/json

  • valueobject
  • dataobjecterforderlich
  • idstringerforderlich

    format: "uuid"

  • execution_job_idstring

    format: "uuid"

  • requested_by_actor_idstringerforderlich
  • taskstringerforderlich
  • modelstringerforderlich
  • capability_scopesarrayerforderlich
  • Jedes Elementstring
  • resource_scopeobjecterforderlich
  • Zusätzliche Eigenschaftarray
  • Jedes Elementstring
  • statusstringerforderlich

    enum: "queued", "running", "waiting_approval", "waiting_external", "succeeded", "failed", "cancelled"

  • max_stepsintegererforderlich
  • max_runtime_secondsintegererforderlich
  • current_generationintegererforderlich
  • latest_checkpointobject | null
  • Zusätzliche EigenschaftBeliebiger Wert
  • latest_checkpoint_sequenceintegererforderlich
  • resultobject | null
  • Zusätzliche EigenschaftBeliebiger Wert
  • error_codestring | null
  • created_atstringerforderlich

    format: "date-time"

  • updated_atstringerforderlich

    format: "date-time"

  • started_atstring | null

    format: "date-time"

  • completed_atstring | null

    format: "date-time"

  • replayedbooleanerforderlich
  • stepsarray
  • Jedes Elementobject
  • sequenceintegererforderlich

    minimum: 1

  • attempt_generationintegererforderlich

    minimum: 1

  • kindstringerforderlich

    enum: "model", "tool", "checkpoint", "approval", "output", "system"

  • statusstringerforderlich

    enum: "started", "succeeded", "failed", "waiting_approval", "waiting_external"

  • namestring | null
  • inputnicht angegeben
  • outputnicht angegeben
  • error_codestring | null
  • input_tokensinteger | null

    minimum: 0

  • output_tokensinteger | null

    minimum: 0

  • created_atstringerforderlich

    format: "date-time"

  • completed_atstring | null

    format: "date-time"

curl-Beispiel

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

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

runId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Agentenausführung abgebrochen.

application/json

  • valueobject
  • dataobjecterforderlich
  • idstringerforderlich

    format: "uuid"

  • execution_job_idstring

    format: "uuid"

  • requested_by_actor_idstringerforderlich
  • taskstringerforderlich
  • modelstringerforderlich
  • capability_scopesarrayerforderlich
  • Jedes Elementstring
  • resource_scopeobjecterforderlich
  • Zusätzliche Eigenschaftarray
  • Jedes Elementstring
  • statusstringerforderlich

    enum: "queued", "running", "waiting_approval", "waiting_external", "succeeded", "failed", "cancelled"

  • max_stepsintegererforderlich
  • max_runtime_secondsintegererforderlich
  • current_generationintegererforderlich
  • latest_checkpointobject | null
  • Zusätzliche EigenschaftBeliebiger Wert
  • latest_checkpoint_sequenceintegererforderlich
  • resultobject | null
  • Zusätzliche EigenschaftBeliebiger Wert
  • error_codestring | null
  • created_atstringerforderlich

    format: "date-time"

  • updated_atstringerforderlich

    format: "date-time"

  • started_atstring | null

    format: "date-time"

  • completed_atstring | null

    format: "date-time"

  • replayedbooleanerforderlich
  • stepsarray
  • Jedes Elementobject
  • sequenceintegererforderlich

    minimum: 1

  • attempt_generationintegererforderlich

    minimum: 1

  • kindstringerforderlich

    enum: "model", "tool", "checkpoint", "approval", "output", "system"

  • statusstringerforderlich

    enum: "started", "succeeded", "failed", "waiting_approval", "waiting_external"

  • namestring | null
  • inputnicht angegeben
  • outputnicht angegeben
  • error_codestring | null
  • input_tokensinteger | null

    minimum: 0

  • output_tokensinteger | null

    minimum: 0

  • created_atstringerforderlich

    format: "date-time"

  • completed_atstring | null

    format: "date-time"

curl-Beispiel

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

Agenten

GET/v1/workspaces/{workspaceId}/agents

KI-Agenten (MCP-Clients) auflisten, die für diesen Workspace handeln können.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Aktive Agentenverbindungen, neueste zuerst.

application/json

  • valueobject
  • dataarrayerforderlich
  • Jedes Elementobject
  • idstringerforderlich

    format: "uuid"

  • client_namestringerforderlich
  • client_surfacestringerforderlich

    Agentenplattform einer OAuth-Verbindung, anhand von Clientname und Weiterleitungs-URIs.

    enum: "codex", "chatgpt", "claude", "grok", "gemini", "other_agent"

  • scopesarrayerforderlich
  • Jedes Elementstring
  • connected_atstringerforderlich

    format: "date-time"

  • last_active_atstringerforderlich

    format: "date-time"

  • connected_by_youbooleanerforderlich

curl-Beispiel

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

Zugriff eines Agenten widerrufen. Er funktioniert innerhalb von etwa 30 Sekunden nicht mehr.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

agentId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Agentenzugriff widerrufen.

application/json

  • valueobject
  • dataobjecterforderlich
  • idstringerforderlich

    format: "uuid"

  • revokedbooleanerforderlich

    const: true

curl-Beispiel

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

KI-Befehle

POST/v1/workspaces/{workspaceId}/ai/command-runs

E-Mail-Assistentenbefehl mit Lesezugriffen und bestätigungspflichtigen Vorschlägen starten

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

Idempotency-Key
header · erforderlich
  • valuestring

    minLength: 1 · maxLength: 256

X-Banger-Product-Id
header
  • valuestring

    format: "uuid"

Anfrage-Body erforderlich

application/json

  • valueobject
  • commandTextstringerforderlich

    minLength: 1 · maxLength: 8000

Erfolgsantwort 200

Leseanfragen, eine Antwort oder bestätigungspflichtige Aktionen

application/json

  • valueobject
  • runIdstringerforderlich

    format: "uuid"

  • statusstringerforderlich

    enum: "requires_tool_results", "completed", "requires_confirmation"

  • assistantMessagestringerforderlich
  • toolCallsarrayerforderlich
  • Jedes Elementobject
  • idstringerforderlich

    format: "uuid"

  • toolNamestringerforderlich
  • argumentsobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • reasonstringerforderlich
  • proposedActionsarrayerforderlich
  • Jedes Elementnicht angegeben
  • allOf 1object
  • idstringerforderlich

    format: "uuid"

  • toolNamestringerforderlich
  • argumentsobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • reasonstringerforderlich
  • allOf 2object
  • confirmationRequiredbooleanerforderlich

    const: true

curl-Beispiel

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

Einen akteureigenen Befehl im ursprünglichen Produktumfang fortsetzen

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

runId
path · erforderlich
  • valuestring

    format: "uuid"

X-Banger-Product-Id
header
  • valuestring

    format: "uuid"

Anfrage-Body erforderlich

application/json

  • valueobject
  • toolResultsarrayerforderlich

    minItems: 1 · maxItems: 8

  • Jedes Elementobject
  • toolCallIdstringerforderlich

    format: "uuid"

  • toolNamestringerforderlich

    enum: "list_mailboxes", "search_mail", "list_unread", "list_work_items", "get_thread"

  • okbooleanerforderlich
  • resultnicht angegeben
  • errorstring

Erfolgsantwort 200

Nächste Befehlsantwort; wiederholte Ergebnisse werden ohne weiteren Inferenzaufruf erneut geliefert

application/json

  • valueobject
  • runIdstringerforderlich

    format: "uuid"

  • statusstringerforderlich

    enum: "requires_tool_results", "completed", "requires_confirmation"

  • assistantMessagestringerforderlich
  • toolCallsarrayerforderlich
  • Jedes Elementobject
  • idstringerforderlich

    format: "uuid"

  • toolNamestringerforderlich
  • argumentsobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • reasonstringerforderlich
  • proposedActionsarrayerforderlich
  • Jedes Elementnicht angegeben
  • allOf 1object
  • idstringerforderlich

    format: "uuid"

  • toolNamestringerforderlich
  • argumentsobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • reasonstringerforderlich
  • allOf 2object
  • confirmationRequiredbooleanerforderlich

    const: true

curl-Beispiel

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

Eine prüfbare E-Mail-Revision erzeugen, ohne sie zu speichern oder zu senden.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

Idempotency-Key
header · erforderlich
  • valuestring

    minLength: 16 · maxLength: 128

Anfrage-Body erforderlich

application/json

  • valueobject

    Keine zusätzlichen Eigenschaften

  • connection_idstringerforderlich

    format: "uuid"

  • providerstringerforderlich

    enum: "openai", "anthropic"

  • modelstring

    maxLength: 200

  • instructionstringerforderlich

    minLength: 1 · maxLength: 40000

  • currentobjecterforderlich

    Keine zusätzlichen Eigenschaften

  • subjectstringerforderlich

    maxLength: 998

  • body_textstringerforderlich

    maxLength: 100000

  • body_htmlstringerforderlich

    maxLength: 200000

Erfolgsantwort 200

Strukturierter Revisionsvorschlag aus der ausgewählten kundeneigenen KI-Verbindung.

application/json

  • valueobject
  • dataobjecterforderlich

    Keine zusätzlichen Eigenschaften

  • dataobjecterforderlich

    Keine zusätzlichen Eigenschaften

  • subjectstringerforderlich
  • subject_optionsarrayerforderlich
  • Jedes Elementstring
  • body_textstringerforderlich
  • body_htmlstringerforderlich
  • change_summarystringerforderlich
  • provider_response_idstring
  • modelstringerforderlich
  • usageobject
  • Zusätzliche EigenschaftBeliebiger Wert

curl-Beispiel

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

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Erfolgreiche Antwort.

application/json

  • valueobject
  • dataobjecterforderlich
  • categorizationobjecterforderlich
  • availablebooleanerforderlich

    const: false

  • enabledbooleanerforderlich

    const: false

  • reasonstringerforderlich

    enum: "not_configured"

  • managednicht angegebenerforderlich
  • oneOf 1object
  • availablebooleanerforderlich

    const: false

  • oneOf 2object
  • availablebooleanerforderlich

    const: true

  • providerstringerforderlich

    enum: "openai", "anthropic"

  • modelstringerforderlich

curl-Beispiel

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

Ein vollständiges markengerechtes E-Mail-Design aus einem Briefing erzeugen. Nur Vorschlag.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

Idempotency-Key
header · erforderlich
  • valuestring

    minLength: 16 · maxLength: 128

Anfrage-Body erforderlich

application/json

  • valueobject
  • briefstringerforderlich

    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

Erfolgsantwort 200

Erfolgreiche Antwort.

application/json

  • valueobject
  • dataobjecterforderlich
  • dataobjecterforderlich
  • subjectstringerforderlich
  • subject_optionsarrayerforderlich
  • Jedes Elementstring
  • body_textstringerforderlich
  • body_htmlstringerforderlich
  • change_summarystringerforderlich
  • provider_response_idstring
  • modelstringerforderlich
  • usageobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • managedbooleanerforderlich

curl-Beispiel

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

Analysen

POST/v1/workspaces/{workspaceId}/analytics/visitor

Websitebesuch mit der angemeldeten Person verknüpfen

Erfordert eine angemeldete menschliche Sitzung; API-Schlüssel werden abgelehnt.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body erforderlich

application/json

  • valueobject
  • visitor_idstringerforderlich

    pattern: "^[A-Za-z0-9-]{8,64}$"

Erfolgsantwort 204

Erfolgreiche Antwort.

Kein Antwort-Body.

curl-Beispiel

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

Antwortagenten

GET/v1/workspaces/{workspaceId}/answer-agents

listAnswerAgents

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Antwortagenten des Workspace.

application/json

  • valueobject
  • dataarrayerforderlich
  • Jedes Elementobject
  • idstringerforderlich

    format: "uuid"

  • identityIdstringerforderlich

    format: "uuid"

  • workspaceIdstringerforderlich

    format: "uuid"

  • originstringerforderlich

    const: "internal"

  • namestringerforderlich
  • systemPromptstring
  • enabledbooleanerforderlich
  • sendPolicystringerforderlich

    enum: "draft_only", "reviewed_send", "direct_send"

  • mailboxIdsarrayerforderlich
  • Jedes Elementstring

    format: "uuid"

  • createdAtstringerforderlich

    format: "date-time"

  • updatedAtstringerforderlich

    format: "date-time"

curl-Beispiel

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

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body erforderlich

application/json

  • valueobject

    Keine zusätzlichen Eigenschaften

  • namestringerforderlich

    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

  • Jedes Elementstring

    format: "uuid"

Erfolgsantwort 201

Antwortagent erstellt.

application/json

  • valueobject
  • dataobjecterforderlich
  • idstringerforderlich

    format: "uuid"

  • identityIdstringerforderlich

    format: "uuid"

  • workspaceIdstringerforderlich

    format: "uuid"

  • originstringerforderlich

    const: "internal"

  • namestringerforderlich
  • systemPromptstring
  • enabledbooleanerforderlich
  • sendPolicystringerforderlich

    enum: "draft_only", "reviewed_send", "direct_send"

  • mailboxIdsarrayerforderlich
  • Jedes Elementstring

    format: "uuid"

  • createdAtstringerforderlich

    format: "date-time"

  • updatedAtstringerforderlich

    format: "date-time"

curl-Beispiel

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

Medienressourcen

GET/v1/workspaces/{workspaceId}/assets

Produkt-E-Mail-Bilder und ihre unveränderlichen öffentlichen URLs auflisten.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

X-Banger-Product-Id
header · erforderlich

Explizites Betriebsprodukt; muss zu den produktgebundenen OAuth-Zugangsdaten passen.

  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Bis zu 100 neueste Produkt-E-Mail-Bilder.

application/json

  • valueobject
  • dataarrayerforderlich
  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

  • idstringerforderlich

    format: "uuid"

  • product_idstringerforderlich

    format: "uuid"

  • filenamestringerforderlich
  • mime_typestringerforderlich

    enum: "image/png", "image/jpeg", "image/gif", "image/webp"

  • size_bytesintegererforderlich

    minimum: 1 · maximum: 2097152

  • sha256stringerforderlich

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

  • created_atstringerforderlich

    format: "date-time"

  • public_urlstringerforderlich

    format: "uri"

curl-Beispiel

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

Ein unveränderliches Bild für verwaltete E-Mail-Inhalte speichern.

Sende rohe PNG-, JPEG-, GIF- oder WebP-Bytes mit passendem Content-Type und optionalem X-File-Name oder JSON mit base64, mime_type und filename. Beide Formen erlauben bis zu 2 MiB dekodierte Bildbytes. Die Antwort-URL kann direkt in HTML verwendet werden; es wird kein lokalisiertes Zielregister erstellt.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

X-Banger-Product-Id
header · erforderlich

Explizites Betriebsprodukt; muss zu den produktgebundenen OAuth-Zugangsdaten passen.

  • valuestring

    format: "uuid"

Anfrage-Body erforderlich

image/png

  • valuestring

    format: "binary"

image/jpeg

  • valuestring

    format: "binary"

image/gif

  • valuestring

    format: "binary"

image/webp

  • valuestring

    format: "binary"

application/json

  • valueobject

    Keine zusätzlichen Eigenschaften

  • base64stringerforderlich

    Bildbytes

  • mime_typestringerforderlich

    enum: "image/png", "image/jpeg", "image/gif", "image/webp"

  • filenamestring

    maxLength: 200

Erfolgsantwort 201

Registriertes Bild mit unveränderlicher öffentlicher URL.

application/json

  • valueobject
  • dataobjecterforderlich

    Keine zusätzlichen Eigenschaften

  • idstringerforderlich

    format: "uuid"

  • product_idstringerforderlich

    format: "uuid"

  • filenamestringerforderlich
  • mime_typestringerforderlich

    enum: "image/png", "image/jpeg", "image/gif", "image/webp"

  • size_bytesintegererforderlich

    minimum: 1 · maximum: 2097152

  • sha256stringerforderlich

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

  • created_atstringerforderlich

    format: "date-time"

  • public_urlstringerforderlich

    format: "uri"

curl-Beispiel

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}

Metadaten und öffentliche URL eines Produkt-E-Mail-Bildes lesen.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

X-Banger-Product-Id
header · erforderlich

Explizites Betriebsprodukt; muss zu den produktgebundenen OAuth-Zugangsdaten passen.

  • valuestring

    format: "uuid"

assetId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Produktbild-Metadaten.

application/json

  • valueobject
  • dataobjecterforderlich

    Keine zusätzlichen Eigenschaften

  • idstringerforderlich

    format: "uuid"

  • product_idstringerforderlich

    format: "uuid"

  • filenamestringerforderlich
  • mime_typestringerforderlich

    enum: "image/png", "image/jpeg", "image/gif", "image/webp"

  • size_bytesintegererforderlich

    minimum: 1 · maximum: 2097152

  • sha256stringerforderlich

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

  • created_atstringerforderlich

    format: "date-time"

  • public_urlstringerforderlich

    format: "uri"

curl-Beispiel

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'

Automatisierung

POST/v1/workspaces/{workspaceId}/automation/jobs

createExecutionJob

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

Idempotency-Key
header · erforderlich
  • valuestring

    minLength: 16 · maxLength: 128

Anfrage-Body erforderlich

application/json

  • valueobject

    Keine zusätzlichen Eigenschaften

  • kindstringerforderlich

    minLength: 1 · maxLength: 100

  • approval_idstring

    format: "uuid"

  • capabilitiesarrayerforderlich

    API-Schlüssel können nur bereits auf diesem Schlüssel vorhandene Fähigkeiten delegieren.

    minItems: 1 · maxItems: 50

  • Jedes Elementstring

    maxLength: 100

  • resourcesobjecterforderlich
  • Zusätzliche Eigenschaftarray

    maxItems: 500

  • Jedes Elementstring

    maxLength: 200

  • inputobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert

Erfolgsantwort 200

Idempotente Wiederholung eines bestehenden isolierten Ausführungsjobs.

application/json

  • valueobject
  • dataobjecterforderlich
  • idstringerforderlich

    format: "uuid"

  • placement_idstringerforderlich

    format: "uuid"

  • placement_generationintegererforderlich

    format: "int64"

  • kindstringerforderlich
  • requested_by_actor_idstringerforderlich
  • approval_idstring | null

    format: "uuid"

  • capability_scopesarrayerforderlich
  • Jedes Elementstring
  • resource_scopeobjecterforderlich
  • Zusätzliche Eigenschaftarray
  • Jedes Elementstring
  • statusstringerforderlich

    enum: "queued", "leased", "succeeded", "failed", "cancelled"

  • attempt_countintegererforderlich
  • resultnicht angegeben
  • error_codestring | null
  • created_atstringerforderlich

    format: "date-time"

  • updated_atstringerforderlich

    format: "date-time"

  • completed_atstring | null

    format: "date-time"

  • replayedbooleanerforderlich

curl-Beispiel

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

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

jobId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Aktueller kanonischer Ausführungsstatus.

application/json

  • valueobject
  • dataobjecterforderlich
  • idstringerforderlich

    format: "uuid"

  • placement_idstringerforderlich

    format: "uuid"

  • placement_generationintegererforderlich

    format: "int64"

  • kindstringerforderlich
  • requested_by_actor_idstringerforderlich
  • approval_idstring | null

    format: "uuid"

  • capability_scopesarrayerforderlich
  • Jedes Elementstring
  • resource_scopeobjecterforderlich
  • Zusätzliche Eigenschaftarray
  • Jedes Elementstring
  • statusstringerforderlich

    enum: "queued", "leased", "succeeded", "failed", "cancelled"

  • attempt_countintegererforderlich
  • resultnicht angegeben
  • error_codestring | null
  • created_atstringerforderlich

    format: "date-time"

  • updated_atstringerforderlich

    format: "date-time"

  • completed_atstring | null

    format: "date-time"

  • replayedbooleanerforderlich

curl-Beispiel

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

Marke

POST/v1/workspaces/{workspaceId}/brand/discover

discoverProductBrand

Produktwebsite lesen und entdeckte Markenvorschläge speichern, ohne explizite Markenwerte zu überschreiben. Erfordert Kampagnen-Schreibberechtigung.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

product_id
query · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Erfolgreiche Antwort.

application/json

  • valueobject
  • dataobjecterforderlich
  • brandobjecterforderlich
  • company_namestring

    maxLength: 160

  • logo_urlstring

    Das Symbol: die Bildmarke allein, klein verwendet (E-Mail-Fußzeile, eingeblendete Formulare) und als Kopfzeile, wenn keine Wortmarke vorhanden ist.

    maxLength: 2000

  • wordmark_urlstring

    Die Wortmarke: der gestaltete Firmenname, allein oben in jeder E-Mail angezeigt.

    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

  • sourcesobjecterforderlich
  • Zusätzliche Eigenschaftstring

    enum: "product", "discovery", "default"

  • discovery_domainstring | nullerforderlich
  • missingarrayerforderlich
  • Jedes Elementstring
  • product_kindstringerforderlich

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

  • discovery_statusstring | null
  • product_idstringerforderlich

    format: "uuid"

  • product_domainstring | nullerforderlich
  • reviewed_atstring | null

    format: "date-time"

  • discovery_attempted_atstring | null

    format: "date-time"

  • logo_candidatesarray

    Auf der Produktwebsite entdeckte Logobilder (Kopfzeile, Fußzeile, deklarierte Logos) für Wechsel per Klick.

  • Jedes Elementstring
  • mediaobjecterforderlich
  • art_base_urlstringerforderlich
  • hero_image_urlstring
  • email_fontsobjecterforderlich
  • headingobjecterforderlich
  • stackstringerforderlich
  • fontstringerforderlich
  • web_fontbooleanerforderlich
  • clientsarrayerforderlich
  • Jedes Elementobject
  • clientstringerforderlich

    Weitere Verschachtelung ausgelassen

  • labelstringerforderlich

    Weitere Verschachtelung ausgelassen

  • fontstringerforderlich

    Weitere Verschachtelung ausgelassen

  • web_fontbooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • fallbackbooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • bodyobjecterforderlich
  • stackstringerforderlich
  • fontstringerforderlich
  • web_fontbooleanerforderlich
  • clientsarrayerforderlich
  • Jedes Elementobject
  • clientstringerforderlich

    Weitere Verschachtelung ausgelassen

  • labelstringerforderlich

    Weitere Verschachtelung ausgelassen

  • fontstringerforderlich

    Weitere Verschachtelung ausgelassen

  • web_fontbooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • fallbackbooleanerforderlich

    Weitere Verschachtelung ausgelassen

curl-Beispiel

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

Aufgelöstes Produkt-Markenset mit Quellen pro Feld.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Erfolgreiche Antwort.

application/json

  • valueobject
  • dataobjecterforderlich
  • brandobjecterforderlich
  • company_namestring

    maxLength: 160

  • logo_urlstring

    Das Symbol: die Bildmarke allein, klein verwendet (E-Mail-Fußzeile, eingeblendete Formulare) und als Kopfzeile, wenn keine Wortmarke vorhanden ist.

    maxLength: 2000

  • wordmark_urlstring

    Die Wortmarke: der gestaltete Firmenname, allein oben in jeder E-Mail angezeigt.

    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

  • sourcesobjecterforderlich
  • Zusätzliche Eigenschaftstring

    enum: "product", "discovery", "default"

  • discovery_domainstring | nullerforderlich
  • missingarrayerforderlich
  • Jedes Elementstring
  • product_kindstringerforderlich

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

  • discovery_statusstring | null
  • product_idstringerforderlich

    format: "uuid"

  • product_domainstring | nullerforderlich
  • reviewed_atstring | null

    format: "date-time"

  • discovery_attempted_atstring | null

    format: "date-time"

  • logo_candidatesarray

    Auf der Produktwebsite entdeckte Logobilder (Kopfzeile, Fußzeile, deklarierte Logos) für Wechsel per Klick.

  • Jedes Elementstring
  • mediaobjecterforderlich
  • art_base_urlstringerforderlich
  • hero_image_urlstring
  • email_fontsobjecterforderlich
  • headingobjecterforderlich
  • stackstringerforderlich
  • fontstringerforderlich
  • web_fontbooleanerforderlich
  • clientsarrayerforderlich
  • Jedes Elementobject
  • clientstringerforderlich

    Weitere Verschachtelung ausgelassen

  • labelstringerforderlich

    Weitere Verschachtelung ausgelassen

  • fontstringerforderlich

    Weitere Verschachtelung ausgelassen

  • web_fontbooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • fallbackbooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • bodyobjecterforderlich
  • stackstringerforderlich
  • fontstringerforderlich
  • web_fontbooleanerforderlich
  • clientsarrayerforderlich
  • Jedes Elementobject
  • clientstringerforderlich

    Weitere Verschachtelung ausgelassen

  • labelstringerforderlich

    Weitere Verschachtelung ausgelassen

  • fontstringerforderlich

    Weitere Verschachtelung ausgelassen

  • web_fontbooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • fallbackbooleanerforderlich

    Weitere Verschachtelung ausgelassen

curl-Beispiel

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

updateBrand

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body erforderlich

application/json

  • valuenicht angegeben
  • anyOf 1object
  • company_namestring

    maxLength: 160

  • logo_urlstring

    Das Symbol: die Bildmarke allein, klein verwendet (E-Mail-Fußzeile, eingeblendete Formulare) und als Kopfzeile, wenn keine Wortmarke vorhanden ist.

    maxLength: 2000

  • wordmark_urlstring

    Die Wortmarke: der gestaltete Firmenname, allein oben in jeder E-Mail angezeigt.

    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
  • brandobjecterforderlich
  • company_namestring

    maxLength: 160

  • logo_urlstring

    Das Symbol: die Bildmarke allein, klein verwendet (E-Mail-Fußzeile, eingeblendete Formulare) und als Kopfzeile, wenn keine Wortmarke vorhanden ist.

    maxLength: 2000

  • wordmark_urlstring

    Die Wortmarke: der gestaltete Firmenname, allein oben in jeder E-Mail angezeigt.

    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

Erfolgsantwort 200

Erfolgreiche Antwort.

application/json

  • valueobject
  • dataobjecterforderlich
  • brandobjecterforderlich
  • company_namestring

    maxLength: 160

  • logo_urlstring

    Das Symbol: die Bildmarke allein, klein verwendet (E-Mail-Fußzeile, eingeblendete Formulare) und als Kopfzeile, wenn keine Wortmarke vorhanden ist.

    maxLength: 2000

  • wordmark_urlstring

    Die Wortmarke: der gestaltete Firmenname, allein oben in jeder E-Mail angezeigt.

    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

  • sourcesobjecterforderlich
  • Zusätzliche Eigenschaftstring

    enum: "product", "discovery", "default"

  • discovery_domainstring | nullerforderlich
  • missingarrayerforderlich
  • Jedes Elementstring
  • product_kindstringerforderlich

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

  • discovery_statusstring | null
  • product_idstringerforderlich

    format: "uuid"

  • product_domainstring | nullerforderlich
  • reviewed_atstring | null

    format: "date-time"

  • discovery_attempted_atstring | null

    format: "date-time"

  • logo_candidatesarray

    Auf der Produktwebsite entdeckte Logobilder (Kopfzeile, Fußzeile, deklarierte Logos) für Wechsel per Klick.

  • Jedes Elementstring
  • mediaobjecterforderlich
  • art_base_urlstringerforderlich
  • hero_image_urlstring
  • email_fontsobjecterforderlich
  • headingobjecterforderlich
  • stackstringerforderlich
  • fontstringerforderlich
  • web_fontbooleanerforderlich
  • clientsarrayerforderlich
  • Jedes Elementobject
  • clientstringerforderlich

    Weitere Verschachtelung ausgelassen

  • labelstringerforderlich

    Weitere Verschachtelung ausgelassen

  • fontstringerforderlich

    Weitere Verschachtelung ausgelassen

  • web_fontbooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • fallbackbooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • bodyobjecterforderlich
  • stackstringerforderlich
  • fontstringerforderlich
  • web_fontbooleanerforderlich
  • clientsarrayerforderlich
  • Jedes Elementobject
  • clientstringerforderlich

    Weitere Verschachtelung ausgelassen

  • labelstringerforderlich

    Weitere Verschachtelung ausgelassen

  • fontstringerforderlich

    Weitere Verschachtelung ausgelassen

  • web_fontbooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • fallbackbooleanerforderlich

    Weitere Verschachtelung ausgelassen

curl-Beispiel

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

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

X-Banger-Product-Id
header · erforderlich

Explizites Betriebsprodukt; muss zu den produktgebundenen OAuth-Zugangsdaten passen.

  • valuestring

    format: "uuid"

Idempotency-Key
header · erforderlich
  • valuestring

    minLength: 1 · maxLength: 256

Anfrage-Body erforderlich

application/json

  • valueobject

    Keine zusätzlichen Eigenschaften

  • brandobjecterforderlich

    Keine zusätzlichen Eigenschaften

  • 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

Erfolgsantwort 200

Kanonischer Rücklesewert oder idempotente Bestätigung. Anbieterannahme ist sent; delivered benötigt ein Zustellereignis und belegt keine Platzierung im Posteingang.

application/json

  • valueobject
  • dataobjecterforderlich
  • brandobjecterforderlich
  • company_namestring

    maxLength: 160

  • logo_urlstring

    Das Symbol: die Bildmarke allein, klein verwendet (E-Mail-Fußzeile, eingeblendete Formulare) und als Kopfzeile, wenn keine Wortmarke vorhanden ist.

    maxLength: 2000

  • wordmark_urlstring

    Die Wortmarke: der gestaltete Firmenname, allein oben in jeder E-Mail angezeigt.

    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

  • sourcesobjecterforderlich
  • Zusätzliche Eigenschaftstring

    enum: "product", "discovery", "default"

  • discovery_domainstring | nullerforderlich
  • missingarrayerforderlich
  • Jedes Elementstring
  • product_kindstring

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

  • discovery_statusstring | null
  • product_idstringerforderlich

    format: "uuid"

  • product_domainstring | null
  • reviewed_atstring | null

    format: "date-time"

  • discovery_attempted_atstring | null

    format: "date-time"

  • hero_image_urlstring | null
  • replayedbooleanerforderlich

curl-Beispiel

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

Änderungen

GET/v1/workspaces/{workspaceId}/changes

listChanges

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

after_revision
query · erforderlich
  • valueinteger

    format: "int64" · minimum: 0

limit
query
  • valueinteger

    minimum: 1 · maximum: 500 · default: 200

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Geordnete Invalidierungen nach einer Clientrevision.

application/json

  • valueobject
  • dataobjecterforderlich
  • current_revisionintegererforderlich

    format: "int64"

  • changesarrayerforderlich
  • Jedes Elementobject
  • revisionintegererforderlich

    format: "int64"

  • topicsarrayerforderlich
  • Jedes Elementstring

    enum: "mailboxes", "threads", "messages", "work", "drafts", "contacts", "campaigns", "deliverability"

  • mailbox_idsarray
  • Jedes Elementstring

    format: "uuid"

  • created_atstringerforderlich

    format: "date-time"

  • has_morebooleanerforderlich

curl-Beispiel

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

Befehle

POST/v1/workspaces/{workspaceId}/commands

createCommand

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

Idempotency-Key
header · erforderlich
  • valuestring

    minLength: 16 · maxLength: 128

Anfrage-Body erforderlich

application/json

  • valueobject
  • typestringerforderlich

    enum: "mark_read", "mark_unread", "archive", "unarchive", "trash", "restore", "spam", "not_spam", "star", "unstar", "add_label", "remove_label", "move", "assign", "set_work_status"

  • targetobjecterforderlich
  • thread_idstringerforderlich

    format: "uuid"

  • parametersobject
  • Zusätzliche EigenschaftBeliebiger Wert

Erfolgsantwort 202

Befehl bestätigt und zur Anbieterausführung eingereiht.

application/json

  • valueobject
  • dataobjecterforderlich
  • idstringerforderlich

    format: "uuid"

  • typestringerforderlich
  • statusstringerforderlich

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

  • workspace_revisionintegererforderlich

    format: "int64"

  • created_atstringerforderlich

    format: "date-time"

curl-Beispiel

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

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

commandId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Dauerhafter Anbieterbefehlsstatus.

application/json

  • valueobject
  • dataobjecterforderlich
  • idstringerforderlich

    format: "uuid"

  • typestringerforderlich
  • statusstringerforderlich

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

  • workspace_revisionintegererforderlich

    format: "int64"

  • created_atstringerforderlich

    format: "date-time"

curl-Beispiel

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

Kommunikationsrichtlinie

GET/v1/workspaces/{workspaceId}/communication-policy

Produktweite Richtlinie für Empfängerkonflikte, Häufigkeit und Zustellfenster lesen.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

X-Banger-Product-Id
header · erforderlich

Explizites Betriebsprodukt; muss zu den produktgebundenen OAuth-Zugangsdaten passen.

  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Versionierte Kommunikationsrichtlinie.

application/json

  • valueobject
  • dataobjecterforderlich
  • versionintegererforderlich
  • policyobjecterforderlich

    Keine zusätzlichen Eigenschaften

  • conflictstringerforderlich

    enum: "defer", "discard"

  • minimumIntervalSecondsinteger

    minimum: 0 · maximum: 604800

  • capsarray

    maxItems: 8

  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

  • countintegererforderlich

    minimum: 1

  • windowSecondsintegererforderlich

    minimum: 1 · maximum: 2592000

  • windowobject

    Keine zusätzlichen Eigenschaften

  • startstringerforderlich

    pattern: "^([01][0-9]|2[0-3]):[0-5][0-9]$"

  • endstringerforderlich

    pattern: "^([01][0-9]|2[0-3]):[0-5][0-9]$"

  • timeZonestringerforderlich
  • weekdaysarray

    maxItems: 7

  • Jedes Elementinteger

    minimum: 0 · maximum: 6

curl-Beispiel

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

Produkt-Kommunikationsrichtlinie mit optimistischer Versionsprüfung speichern.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

X-Banger-Product-Id
header · erforderlich

Explizites Betriebsprodukt; muss zu den produktgebundenen OAuth-Zugangsdaten passen.

  • valuestring

    format: "uuid"

Anfrage-Body erforderlich

application/json

  • valueobject

    Keine zusätzlichen Eigenschaften

  • expected_versionintegererforderlich

    minimum: 1

  • policyobjecterforderlich

    Keine zusätzlichen Eigenschaften

  • conflictstringerforderlich

    enum: "defer", "discard"

  • minimumIntervalSecondsinteger

    minimum: 0 · maximum: 604800

  • capsarray

    maxItems: 8

  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

  • countintegererforderlich

    minimum: 1

  • windowSecondsintegererforderlich

    minimum: 1 · maximum: 2592000

  • windowobject

    Keine zusätzlichen Eigenschaften

  • startstringerforderlich

    pattern: "^([01][0-9]|2[0-3]):[0-5][0-9]$"

  • endstringerforderlich

    pattern: "^([01][0-9]|2[0-3]):[0-5][0-9]$"

  • timeZonestringerforderlich
  • weekdaysarray

    maxItems: 7

  • Jedes Elementinteger

    minimum: 0 · maximum: 6

Erfolgsantwort 200

Versionierte Richtlinie aktualisiert.

application/json

  • valueobject
  • dataobjecterforderlich
  • versionintegererforderlich
  • policyobjecterforderlich

    Keine zusätzlichen Eigenschaften

  • conflictstringerforderlich

    enum: "defer", "discard"

  • minimumIntervalSecondsinteger

    minimum: 0 · maximum: 604800

  • capsarray

    maxItems: 8

  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

  • countintegererforderlich

    minimum: 1

  • windowSecondsintegererforderlich

    minimum: 1 · maximum: 2592000

  • windowobject

    Keine zusätzlichen Eigenschaften

  • startstringerforderlich

    pattern: "^([01][0-9]|2[0-3]):[0-5][0-9]$"

  • endstringerforderlich

    pattern: "^([01][0-9]|2[0-3]):[0-5][0-9]$"

  • timeZonestringerforderlich
  • weekdaysarray

    maxItems: 7

  • Jedes Elementinteger

    minimum: 0 · maximum: 6

curl-Beispiel

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

Richtliniensimulation mit reinem Lesezugriff für feste Versandanfragen an einen Empfänger.

Ändert keine Reservierungen und verschiebt keine abhängigen Journey-Schritte.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

X-Banger-Product-Id
header · erforderlich

Explizites Betriebsprodukt; muss zu den produktgebundenen OAuth-Zugangsdaten passen.

  • valuestring

    format: "uuid"

Anfrage-Body erforderlich

application/json

  • valueobject

    Keine zusätzlichen Eigenschaften

  • policyobject

    Keine zusätzlichen Eigenschaften

  • conflictstringerforderlich

    enum: "defer", "discard"

  • minimumIntervalSecondsinteger

    minimum: 0 · maximum: 604800

  • capsarray

    maxItems: 8

  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

  • countintegererforderlich

    minimum: 1

  • windowSecondsintegererforderlich

    minimum: 1 · maximum: 2592000

  • windowobject

    Keine zusätzlichen Eigenschaften

  • startstringerforderlich

    pattern: "^([01][0-9]|2[0-3]):[0-5][0-9]$"

  • endstringerforderlich

    pattern: "^([01][0-9]|2[0-3]):[0-5][0-9]$"

  • timeZonestringerforderlich
  • weekdaysarray

    maxItems: 7

  • Jedes Elementinteger

    minimum: 0 · maximum: 6

  • historyarray

    maxItems: 10000

  • Jedes Elementstring

    format: "date-time"

  • requestsarrayerforderlich

    maxItems: 1000

  • Jedes Elementobject
  • idstringerforderlich
  • atstringerforderlich

    format: "date-time"

  • categorystringerforderlich

    enum: "urgent", "product", "promotional"

  • source_kindstringerforderlich

    enum: "journey", "broadcast"

  • expiresAtstring

    format: "date-time"

  • deliveryBlockedboolean

Erfolgsantwort 200

Zeitleiste der Sende-, Verschiebe- oder Verwerfentscheidungen pro Anfrage mit Gründen.

application/json

  • valueobject
  • dataobjecterforderlich
  • policyobjecterforderlich

    Keine zusätzlichen Eigenschaften

  • conflictstringerforderlich

    enum: "defer", "discard"

  • minimumIntervalSecondsinteger

    minimum: 0 · maximum: 604800

  • capsarray

    maxItems: 8

  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

  • countintegererforderlich

    minimum: 1

  • windowSecondsintegererforderlich

    minimum: 1 · maximum: 2592000

  • windowobject

    Keine zusätzlichen Eigenschaften

  • startstringerforderlich

    pattern: "^([01][0-9]|2[0-3]):[0-5][0-9]$"

  • endstringerforderlich

    pattern: "^([01][0-9]|2[0-3]):[0-5][0-9]$"

  • timeZonestringerforderlich
  • weekdaysarray

    maxItems: 7

  • Jedes Elementinteger

    minimum: 0 · maximum: 6

  • policy_versioninteger | nullerforderlich
  • timelinearrayerforderlich
  • Jedes Elementobject
  • idstringerforderlich
  • source_kindstringerforderlich

    enum: "journey", "broadcast"

  • requested_atstringerforderlich

    format: "date-time"

  • actionstringerforderlich

    enum: "send", "defer", "discard"

  • atstringerforderlich

    format: "date-time"

  • reasonstringerforderlich
  • scopestringerforderlich

    enum: "one_recipient_fixed_send_requests"

  • warningsarrayerforderlich
  • Jedes Elementstring

curl-Beispiel

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
    }
  ]
}'

Inhaltseinstellungen

GET/v1/workspaces/{workspaceId}/content-settings

Produktbezogene Locale-, Fallback-, Zeitzonen-, Glossar- und Prüfeinstellungen lesen.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

X-Banger-Product-Id
header · erforderlich

Explizites Betriebsprodukt; muss zu den produktgebundenen OAuth-Zugangsdaten passen.

  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Aktuelle Inhaltseinstellungen.

application/json

  • valueobject
  • dataobjecterforderlich
  • source_localestringerforderlich
  • configured_localesarrayerforderlich
  • Jedes Elementstring
  • fallback_chainarrayerforderlich
  • Jedes Elementstring
  • timezonestringerforderlich
  • glossaryobjecterforderlich
  • Zusätzliche Eigenschaftstring
  • manual_translation_reviewbooleanerforderlich
  • versionintegererforderlich

curl-Beispiel

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

Produktbezogene Inhaltseinstellungen mit optimistischer Versionsprüfung speichern.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

X-Banger-Product-Id
header · erforderlich

Explizites Betriebsprodukt; muss zu den produktgebundenen OAuth-Zugangsdaten passen.

  • valuestring

    format: "uuid"

Anfrage-Body erforderlich

application/json

  • valueobject

    Keine zusätzlichen Eigenschaften

  • source_localestringerforderlich
  • configured_localesarrayerforderlich
  • Jedes Elementstring
  • fallback_chainarrayerforderlich
  • Jedes Elementstring
  • timezonestringerforderlich
  • glossaryobjecterforderlich
  • Zusätzliche Eigenschaftstring
  • manual_translation_reviewbooleanerforderlich
  • expected_versionintegererforderlich

    minimum: 0

Erfolgsantwort 200

Inhaltseinstellungen gespeichert.

application/json

  • valueobject
  • dataobjecterforderlich
  • source_localestringerforderlich
  • configured_localesarrayerforderlich
  • Jedes Elementstring
  • fallback_chainarrayerforderlich
  • Jedes Elementstring
  • timezonestringerforderlich
  • glossaryobjecterforderlich
  • Zusätzliche Eigenschaftstring
  • manual_translation_reviewbooleanerforderlich
  • versionintegererforderlich

curl-Beispiel

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
}'

Zustellbarkeit

GET/v1/workspaces/{workspaceId}/deliverability

getDeliverabilitySummary

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

since
query
  • valuestring

    format: "date-time"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Erfolgreiche Antwort.

application/json

  • valueobject
  • dataobjecterforderlich
  • counting_basisstring

    enum: "recipients", "events"

  • simulator_eventsinteger
  • sincestringerforderlich

    format: "date-time"

  • generated_atstringerforderlich

    format: "date-time"

  • totalsobjecterforderlich
  • 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"

  • Zusätzliche EigenschaftBeliebiger Wert
  • time_seriesarrayerforderlich
  • Jedes Elementnicht angegeben
  • 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"

  • Zusätzliche EigenschaftBeliebiger Wert
  • allOf 2object
  • bucketstringerforderlich

    format: "date"

  • providersarrayerforderlich
  • Jedes Elementnicht angegeben
  • 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"

  • Zusätzliche EigenschaftBeliebiger Wert
  • allOf 2object
  • provider_connection_idstring | null

    format: "uuid"

  • providerstringerforderlich
  • display_namestringerforderlich
  • ownershipstringerforderlich
  • statusstringerforderlich
  • recipient_domainsarrayerforderlich
  • Jedes Elementnicht angegeben
  • 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"

  • Zusätzliche EigenschaftBeliebiger Wert
  • allOf 2object
  • recipient_domainstringerforderlich
  • sending_streamsarrayerforderlich
  • Jedes Elementobject
  • idstringerforderlich

    format: "uuid"

  • domainstringerforderlich
  • stream_kindstringerforderlich
  • display_namestringerforderlich
  • statusstringerforderlich
  • status_reasonstring | null
  • provider_statusstring | null
  • required_recordsintegererforderlich

    format: "int64"

  • verified_recordsintegererforderlich

    format: "int64"

  • pending_recordsintegererforderlich

    format: "int64"

  • error_recordsintegererforderlich

    format: "int64"

  • last_checked_atstring | null

    format: "date-time"

  • feedback_pipelineobjecterforderlich

    Keine zusätzlichen Eigenschaften

  • statusstringerforderlich

    enum: "healthy", "degraded", "unproven"

  • eligible_attemptsintegererforderlich

    format: "int64"

  • unmatched_attemptsintegererforderlich

    format: "int64"

  • last_receipt_atstring | null

    format: "date-time"

  • issuesarrayerforderlich
  • Jedes Elementobject
  • severitystringerforderlich

    enum: "warning", "critical"

  • codestringerforderlich
  • titlestringerforderlich
  • detailstringerforderlich
  • resource_kindstringerforderlich
  • resource_idstringerforderlich

curl-Beispiel

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

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

since
query
  • valuestring

    format: "date-time"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Erfolgreiche Antwort.

application/json

  • valueobject
  • dataarrayerforderlich
  • Jedes Elementobject
  • idstringerforderlich
  • reasonstringerforderlich

    enum: "complaint", "hard_bounce"

  • countintegererforderlich
  • domainsarrayerforderlich
  • Jedes Elementstring
  • statusstringerforderlich
  • decidedAtstring | null

    format: "date-time"

  • titlestringerforderlich
  • explanationstringerforderlich
  • impactstringerforderlich

curl-Beispiel

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

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

since
query
  • valuestring

    format: "date-time"

Anfrage-Body erforderlich

application/json

  • valueobject
  • idstringerforderlich

    minLength: 64 · maxLength: 64

  • decisionstringerforderlich

    enum: "approved", "rejected"

Erfolgsantwort 200

Erfolgreiche Antwort.

application/json

  • valueobject
  • dataobjecterforderlich
  • statusstringerforderlich

    enum: "approved", "rejected"

  • approvalIdstringerforderlich

    format: "uuid"

  • replayedboolean
  • countinteger

curl-Beispiel

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

Dokumente

GET/v1/workspaces/{workspaceId}/documents

listDocuments

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • 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

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Erfolgreiche Antwort.

application/json

  • valueobject
  • dataarrayerforderlich
  • Jedes Elementobject
  • idstringerforderlich

    format: "uuid"

  • message_idstringerforderlich

    format: "uuid"

  • mailbox_idstringerforderlich

    format: "uuid"

  • thread_idstringerforderlich

    format: "uuid"

  • filenamestringerforderlich
  • content_typestringerforderlich
  • size_bytesintegererforderlich
  • sent_atstringerforderlich

    format: "date-time"

  • subjectstringerforderlich
  • pageobjecterforderlich
  • next_cursorstring
  • has_morebooleanerforderlich

curl-Beispiel

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"

E-Mail-Vorschau

GET/v1/workspaces/{workspaceId}/email-preview

Gespeicherte E-Mails für visuelle Überarbeitung ohne Versand rendern

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

kind
query · erforderlich
  • valuestring

    enum: "template", "broadcast", "journey"

id
query · erforderlich
  • valuestring

    format: "uuid"

locale
query

Optionale BCP-47-Locale für die Vorschau einer verwalteten Kampagne.

  • valuestring

    maxLength: 64

variant
query

Optionaler Experimentvariantenschlüssel einer verwalteten Kampagne.

  • valuestring

    maxLength: 40

x-banger-product-id
header · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Gespeicherte E-Mail-Inhalte und Journey-Sequenz

application/json

  • valueobject
  • dataobjecterforderlich
  • resource_kindstringerforderlich

    enum: "template", "broadcast", "journey"

  • resource_idstringerforderlich

    format: "uuid"

  • product_idstringerforderlich

    format: "uuid"

  • namestringerforderlich
  • statusstringerforderlich
  • selected_email_keystring
  • itemsarrayerforderlich
  • Jedes Elementobject
  • keystringerforderlich
  • step_idstring

    Der von diesem Element gezeigte Journey-Schritt, als steps[].id in der gespeicherten Journey.

    format: "uuid"

  • kindstringerforderlich
  • namestringerforderlich
  • subjectstring
  • preview_textstring
  • body_htmlstring
  • body_textstring
  • detailstring
  • revision_idstring

    Genau gerenderte Quellrevision der verwalteten Kampagne.

    format: "uuid"

  • revision_statusstring

    Ob die gerenderte Revision unveröffentlichter gespeicherter oder veröffentlichter Inhalt ist.

    enum: "draft", "published"

  • sample_valuesbooleanerforderlich
  • image_assetsobject
  • Zusätzliche Eigenschaftstring

curl-Beispiel

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'

Ereignisse

POST/v1/workspaces/{workspaceId}/events

Ein benutzerdefiniertes Ereignis an die Journeys des Produkts senden.

Erfordert automation:execute. Das Ereignis trifft am impliziten eingehenden "Banger API events"-Webhook des Produkts ein, der beim ersten Ereignis erstellt und neben anderen Webhooks aufgeführt wird, damit Journeys seine connection_id nennen können, oder an connection_id, einem anderen aktiven eingehenden Webhook desselben Produkts. Dort wird es genau wie ein an die Webhook-URL gesendetes Ereignis verarbeitet: Aktive Journeys, deren Auslöser Ereignistyp und Verbindung nennt, nehmen die Person bei email (oder ihre konfigurierte Zielgruppe) auf; Journeys, deren Ziel es nennt, stoppen die Ausführungen dieser Person. Ereignisse können bereits genehmigte Journeys starten, die E-Mails senden. Die Ereignis-ID macht den Aufruf idempotent: Wiederholung mit gleichem Body liefert duplicate true; Wiederverwendung für einen anderen Body liefert 409 webhook_event_id_reused.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

x-banger-product-id
header

Bei mehreren aktiven Produkten im Workspace erforderlich, sofern der API-Schlüssel nicht bereits das Produkt bindet.

  • valuestring

    format: "uuid"

Idempotency-Key
header

Ereignis-ID, wenn der Body keine id hat. Eines von beiden ist erforderlich.

  • valuestring

    minLength: 1 · maxLength: 500

Anfrage-Body erforderlich

application/json

  • valueobject

    Keine zusätzlichen Eigenschaften

  • typestringerforderlich

    Ereignisname, den Journey-Auslöser und -Ziele abgleichen, etwa signup.

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

  • idnicht angegeben

    Stabile Ereigniskennung im aufrufenden System. Ohne sie ist der Idempotency-Key-Header die id.

  • oneOf 1string

    minLength: 1 · maxLength: 500

  • oneOf 2number
  • emailstring

    Die Person, auf die sich das Ereignis bezieht.

    format: "email" · maxLength: 320

  • namestring

    Anzeigename der Person.

    maxLength: 200

  • occurred_atstring

    Zeitpunkt des Ereignisses. Standardmäßig der Empfang bei Banger.

    format: "date-time"

  • attributesobject

    Werte, die Journey-Bedingungen und E-Mail-Inhalte lesen können. Textwerte enthalten höchstens 500 Zeichen.

  • Zusätzliche Eigenschaftnicht angegeben
  • oneOf 1string

    maxLength: 500

  • oneOf 2number
  • oneOf 3boolean
  • connection_idstring

    Aktive eingehende Webhook-Verbindung desselben Produkts. Standard ist der Banger API events-Webhook.

    format: "uuid"

Erfolgsantwort 202

Ereignis angenommen oder unter dieser id bereits angenommen.

application/json

  • valueobject
  • dataobjecterforderlich
  • acceptedbooleanerforderlich

    const: true

  • duplicatebooleanerforderlich

    True, wenn diese id bereits angenommen wurde; nichts wurde erneut ausgeführt.

  • connection_idstringerforderlich

    Die Verbindung, über die das Ereignis eintraf.

    format: "uuid"

  • sequence_enrollments_createdintegererforderlich

    minimum: 0

  • sequence_enrollments_stoppedintegererforderlich

    Durch ein Journey-Ziel gestoppte Ausführungen.

    minimum: 0

  • sequence_matches_ignoredintegererforderlich

    Passende Journeys, die das Ereignis nicht nutzen konnten, etwa eine mit Personenanmeldung, wenn das Ereignis keine E-Mail nennt.

    minimum: 0

  • sequence_goals_predating_enrollmentintegererforderlich

    Ziele, die vor Beginn der Ausführung auftraten, die sie stoppen würden.

    minimum: 0

  • sequence_enrollments_rejectedarray

    Journeys, die diese Person nicht aufnahmen, weil die Ereignisdaten ihre E-Mails nicht füllen können.

  • Jedes Elementobject
  • journey_idstringerforderlich

    format: "uuid"

  • journey_namestringerforderlich
  • fieldsarrayerforderlich
  • Jedes Elementobject
  • namestringerforderlich

    Das von der E-Mail benötigte Kontaktfeld.

    Weitere Verschachtelung ausgelassen

  • problemstringerforderlich

    enum: "missing", "not_https"

    Weitere Verschachtelung ausgelassen

curl-Beispiel

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

Experimente

GET/v1/workspaces/{workspaceId}/experiments

listExperiments

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Erfolgreiche Antwort.

application/json

  • valueobject
  • dataarrayerforderlich
  • Jedes Elementobject
  • namestringerforderlich

    minLength: 1 · maxLength: 200

  • subject_kindstringerforderlich

    enum: "campaign", "sequence_step", "automation_rule"

  • subject_idstringerforderlich

    minLength: 1 · maxLength: 200

  • dimensionstringerforderlich

    enum: "subject", "design", "content", "from_name"

  • variantsarrayerforderlich

    minItems: 2 · maxItems: 4

  • Jedes Elementobject
  • keystring

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

  • labelstring

    maxLength: 120

  • subjectstring

    minLength: 1 · maxLength: 998

  • template_idstring

    format: "uuid"

  • contentobject
  • Zusätzliche Eigenschaftstring

    Weitere Verschachtelung ausgelassen

  • from_namestring

    minLength: 1 · maxLength: 200

  • allocationarray
  • Jedes Elementinteger

    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

  • idstringerforderlich

    format: "uuid"

  • product_idstring

    format: "uuid"

  • statusstringerforderlich

    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"

curl-Beispiel

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

createExperiment

Einen A/B-Test für eine Kampagne, einen Journey-Schritt oder eine Automatisierungsregel starten.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body erforderlich

application/json

  • valueobject

    Der Varianten-Payload muss zu dimension passen: subject, template_id (Design), content oder from_name. Schlüssel müssen eindeutig sein und dürfen nicht holdback sein. Allocation muss einen Prozentsatz pro Variante enthalten und 100 ergeben; ohne Angabe wird gleichmäßig aufgeteilt.

  • namestringerforderlich

    minLength: 1 · maxLength: 200

  • subject_kindstringerforderlich

    enum: "campaign", "sequence_step", "automation_rule"

  • subject_idstringerforderlich

    minLength: 1 · maxLength: 200

  • dimensionstringerforderlich

    enum: "subject", "design", "content", "from_name"

  • variantsarrayerforderlich

    minItems: 2 · maxItems: 4

  • Jedes Elementobject
  • keystring

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

  • labelstring

    maxLength: 120

  • subjectstring

    minLength: 1 · maxLength: 998

  • template_idstring

    format: "uuid"

  • contentobject
  • Zusätzliche Eigenschaftstring
  • from_namestring

    minLength: 1 · maxLength: 200

  • allocationarray
  • Jedes Elementinteger

    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

Erfolgsantwort 201

Erfolgreiche Antwort.

application/json

  • valueobject
  • dataobjecterforderlich
  • namestringerforderlich

    minLength: 1 · maxLength: 200

  • subject_kindstringerforderlich

    enum: "campaign", "sequence_step", "automation_rule"

  • subject_idstringerforderlich

    minLength: 1 · maxLength: 200

  • dimensionstringerforderlich

    enum: "subject", "design", "content", "from_name"

  • variantsarrayerforderlich

    minItems: 2 · maxItems: 4

  • Jedes Elementobject
  • keystring

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

  • labelstring

    maxLength: 120

  • subjectstring

    minLength: 1 · maxLength: 998

  • template_idstring

    format: "uuid"

  • contentobject
  • Zusätzliche Eigenschaftstring
  • from_namestring

    minLength: 1 · maxLength: 200

  • allocationarray
  • Jedes Elementinteger

    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

  • idstringerforderlich

    format: "uuid"

  • product_idstring

    format: "uuid"

  • statusstringerforderlich

    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"

curl-Beispiel

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

Das Experiment mit Ergebnissen pro Variante und vorgeschlagenem Gewinner.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

experimentId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Erfolgreiche Antwort.

application/json

  • valueobject
  • datanicht angegebenerforderlich
  • allOf 1object
  • namestringerforderlich

    minLength: 1 · maxLength: 200

  • subject_kindstringerforderlich

    enum: "campaign", "sequence_step", "automation_rule"

  • subject_idstringerforderlich

    minLength: 1 · maxLength: 200

  • dimensionstringerforderlich

    enum: "subject", "design", "content", "from_name"

  • variantsarrayerforderlich

    minItems: 2 · maxItems: 4

  • Jedes Elementobject
  • keystring

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

  • labelstring

    maxLength: 120

  • subjectstring

    minLength: 1 · maxLength: 998

  • template_idstring

    format: "uuid"

  • contentobject
  • Zusätzliche Eigenschaftstring

    Weitere Verschachtelung ausgelassen

  • from_namestring

    minLength: 1 · maxLength: 200

  • allocationarray
  • Jedes Elementinteger

    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

  • idstringerforderlich

    format: "uuid"

  • product_idstring

    format: "uuid"

  • statusstringerforderlich

    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
  • resultsarrayerforderlich
  • Jedes Elementobject
  • 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
  • keystringerforderlich
  • reasonstringerforderlich
  • basisstringerforderlich

    enum: "confident", "deadline", "guardrail"

  • confidencenumber | nullerforderlich
  • sample_okbooleanerforderlich

curl-Beispiel

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

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

experimentId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body erforderlich

application/json

  • valueobject
  • winner_keystringerforderlich

    minLength: 1 · maxLength: 40

  • reasonstring

    maxLength: 500

Erfolgsantwort 200

Erfolgreiche Antwort.

application/json

  • valueobject
  • dataobjecterforderlich
  • namestringerforderlich

    minLength: 1 · maxLength: 200

  • subject_kindstringerforderlich

    enum: "campaign", "sequence_step", "automation_rule"

  • subject_idstringerforderlich

    minLength: 1 · maxLength: 200

  • dimensionstringerforderlich

    enum: "subject", "design", "content", "from_name"

  • variantsarrayerforderlich

    minItems: 2 · maxItems: 4

  • Jedes Elementobject
  • keystring

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

  • labelstring

    maxLength: 120

  • subjectstring

    minLength: 1 · maxLength: 998

  • template_idstring

    format: "uuid"

  • contentobject
  • Zusätzliche Eigenschaftstring
  • from_namestring

    minLength: 1 · maxLength: 200

  • allocationarray
  • Jedes Elementinteger

    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

  • idstringerforderlich

    format: "uuid"

  • product_idstring

    format: "uuid"

  • statusstringerforderlich

    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"

curl-Beispiel

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

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

experimentId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Erfolgreiche Antwort.

application/json

  • valueobject
  • dataobjecterforderlich
  • namestringerforderlich

    minLength: 1 · maxLength: 200

  • subject_kindstringerforderlich

    enum: "campaign", "sequence_step", "automation_rule"

  • subject_idstringerforderlich

    minLength: 1 · maxLength: 200

  • dimensionstringerforderlich

    enum: "subject", "design", "content", "from_name"

  • variantsarrayerforderlich

    minItems: 2 · maxItems: 4

  • Jedes Elementobject
  • keystring

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

  • labelstring

    maxLength: 120

  • subjectstring

    minLength: 1 · maxLength: 998

  • template_idstring

    format: "uuid"

  • contentobject
  • Zusätzliche Eigenschaftstring
  • from_namestring

    minLength: 1 · maxLength: 200

  • allocationarray
  • Jedes Elementinteger

    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

  • idstringerforderlich

    format: "uuid"

  • product_idstring

    format: "uuid"

  • statusstringerforderlich

    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"

curl-Beispiel

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

Feedback

GET/v1/workspaces/{workspaceId}/feedback

Verfügbarkeit der Kundenfeedback-Übermittlung prüfen

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Feedback-Verfügbarkeit für den authentifizierten Workspace.

application/json

  • valueobject
  • dataobject
  • availablebooleanerforderlich

curl-Beispiel

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

Fehler melden, Feedback senden oder Funktion vorschlagen

Erstellt ein internes Linear-Issue und sendet eine Slack-Teamwarnung. Wiederhole eine unterbrochene Übermittlung mit derselben submission_id.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

x-banger-product-id
header
  • valuestring

    format: "uuid"

Anfrage-Body erforderlich

application/json

  • valueobject

    Keine zusätzlichen Eigenschaften

  • kindstringerforderlich

    enum: "bug", "feedback", "feature"

  • titlestringerforderlich

    minLength: 1 · maxLength: 160

  • descriptionstringerforderlich

    minLength: 1 · maxLength: 10000

  • submission_idstringerforderlich

    format: "uuid"

  • attachment_idsarray

    Abgeschlossene private Uploads dieses Meldenden und Workspace. Nicht übermittelte Uploads verfallen nach 24 Stunden; Dateien können nur zu einer Meldung gehören.

    maxItems: 5 · uniqueItems: true

  • Jedes Elementstring

    format: "uuid"

Erfolgsantwort 201

Linear-Issue und Slack-Warnung abgeschlossen, einschließlich idempotenter Wiederholung.

application/json

  • valueobject
  • dataobject
  • idstringerforderlich

    format: "uuid"

  • statusstringerforderlich

    enum: "submitted"

  • linearIssueIdentifierstring | null
  • linearIssueUrlstring | null

    format: "uri"

curl-Beispiel

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

Screenshot oder Video in privaten Linear-Speicher hochladen

Binäre Uploads unterstützen bis zu 25 MiB. JSON-base64-Uploads unterstützen bis zu 2 MiB. Verwende beim Wiederholen derselben Datei erneut attachment_id. Erfordert automation:execute für API-Schlüssel.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

attachment_id
query

Für binäre Uploads erforderlich; UUID pro Datei.

  • valuestring

    format: "uuid"

x-banger-filename
header

URI-codierter Dateiname, bei binären Uploads erforderlich.

  • valuestring

Anfrage-Body erforderlich

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_idstringerforderlich

    format: "uuid"

  • filenamestringerforderlich

    minLength: 1 · maxLength: 200

  • mime_typestringerforderlich

    enum: "image/png", "image/jpeg", "image/gif", "image/webp", "video/mp4", "video/webm", "video/quicktime"

  • base64stringerforderlich

    minLength: 4 · maxLength: 2796204

Erfolgsantwort 200

Vorhandener abgeschlossener Anhang.

application/json

  • valueobject
  • dataobjecterforderlich
  • attachment_idstringerforderlich

    format: "uuid"

  • statusstringerforderlich

    enum: "ready"

curl-Beispiel

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

Direkten Medienupload durch Agent oder Server vorbereiten

Liefert eine temporäre signierte PUT-URL und erforderliche Upload-Header. Sende Dateibytes mit diesen Headern ohne Banger-Zugangsdaten und schließe den Upload ab. Lade nicht direkt aus Browsern hoch; verwende den authentifizierten binären Proxy. Bis zu 30 Uploads und 250 MiB pro Meldendem und Tag.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body erforderlich

application/json

  • valueobject
  • attachment_idstringerforderlich

    format: "uuid"

  • filenamestringerforderlich

    minLength: 1 · maxLength: 200

  • mime_typestringerforderlich

    enum: "image/png", "image/jpeg", "image/gif", "image/webp", "video/mp4", "video/webm", "video/quicktime"

  • size_bytesintegererforderlich

    minimum: 1 · maximum: 26214400

Erfolgsantwort 201

data enthält attachment_id, status und upload mit signierter url, method PUT und headers beim Hochladen. Bei ready ist kein Upload nötig.

application/json

  • valueobject
  • dataobjecterforderlich
  • attachment_idstringerforderlich

    format: "uuid"

  • filenamestringerforderlich
  • mime_typestringerforderlich
  • size_bytesintegererforderlich
  • statusstringerforderlich

    enum: "ready", "uploading"

  • uploadobject
  • urlstringerforderlich
  • methodstringerforderlich

    enum: "PUT"

  • headersobjecterforderlich
  • Zusätzliche Eigenschaftstring

curl-Beispiel

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

Direkten Medienupload vor dem Anhängen an Feedback prüfen

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

attachmentId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

data enthält attachment_id und status ready. Der Abschluss ist idempotent.

application/json

  • valueobject
  • dataobjecterforderlich
  • attachment_idstringerforderlich

    format: "uuid"

  • statusstringerforderlich

    enum: "ready"

curl-Beispiel

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

Startseite

GET/v1/workspaces/{workspaceId}/home

Einrichtungs- oder Betriebsstartseite des ausgewählten Produkts laden.

Mitgliedschaft, Produktgültigkeit, Einrichtungsprojektion, Betriebsübersichten und aktuelle Aktivität werden in einer einzigen mandantenisolierten Datenbankanweisung gelesen.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Startoberfläche des ausgewählten Produkts.

application/json

  • valueobject
  • dataobjecterforderlich

    Keine zusätzlichen Eigenschaften

  • setupobjecterforderlich

    Keine zusätzlichen Eigenschaften

  • stagestringerforderlich

    enum: "domain", "mailboxes", "journeys", "broadcast", "complete"

  • domainobjecterforderlich

    Keine zusätzlichen Eigenschaften

  • statusstringerforderlich

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

  • detailstringerforderlich
  • mailboxesobjecterforderlich

    Keine zusätzlichen Eigenschaften

  • statusstringerforderlich

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

  • detailstringerforderlich
  • journeysobjecterforderlich

    Keine zusätzlichen Eigenschaften

  • statusstringerforderlich

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

  • detailstringerforderlich
  • broadcastobjecterforderlich

    Keine zusätzlichen Eigenschaften

  • statusstringerforderlich

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

  • detailstringerforderlich
  • needsYouobjecterforderlich

    Keine zusätzlichen Eigenschaften

  • undecidedApprovalsintegererforderlich

    minimum: 0

  • oldestApprovalsarrayerforderlich
  • Jedes Elementobject
  • idstringerforderlich

    format: "uuid"

  • summarystringerforderlich
  • actionKindstringerforderlich
  • createdAtstringerforderlich

    format: "date-time"

  • failedSteps24harrayerforderlich
  • Jedes Elementobject
  • journeyIdstringerforderlich

    format: "uuid"

  • journeyNamestringerforderlich
  • countintegererforderlich

    minimum: 0

  • deliverabilityAlertsarrayerforderlich
  • Jedes Elementobject
  • kindstringerforderlich

    enum: "bounce_rate", "complaint_rate", "dns_drift", "lane_paused"

  • detailstringerforderlich
  • destinationstringerforderlich

    enum: "deliverability", "domains"

  • unreadInboundarrayerforderlich
  • Jedes Elementobject
  • mailboxIdstringerforderlich

    format: "uuid"

  • addressstringerforderlich
  • countintegererforderlich

    minimum: 0

  • splitsReadyToDecidearrayerforderlich
  • Jedes Elementobject
  • journeyIdstringerforderlich

    format: "uuid"

  • journeyNamestringerforderlich
  • unclaimedJourneysintegererforderlich

    minimum: 0

  • journeysobjecterforderlich

    Keine zusätzlichen Eigenschaften

  • activeintegererforderlich

    minimum: 0

  • entered30dintegererforderlich

    minimum: 0

  • sent30dintegererforderlich

    minimum: 0

  • toparrayerforderlich
  • Jedes Elementnicht angegeben
  • allOf 1object

    Keine zusätzlichen Eigenschaften

  • namestringerforderlich

    minLength: 1 · maxLength: 200

    Weitere Verschachtelung ausgelassen

  • descriptionstring

    maxLength: 2000

    Weitere Verschachtelung ausgelassen

  • mailbox_idstring

    Vorhandener Absender. Weglassen, um zuerst den Einrichtungsabsender, dann ein aktives eigenes Postfach und dann ein gehostetes zu wählen. Gespeicherte und explizite Absender bleiben unverändert.

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • from_local_partstring

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

    Weitere Verschachtelung ausgelassen

  • triggerobjecterforderlich

    Weitere Verschachtelung ausgelassen

  • audienceobject

    Weitere Verschachtelung ausgelassen

  • goalobject

    Keine zusätzlichen Eigenschaften

    Weitere Verschachtelung ausgelassen

  • exitobject

    Keine zusätzlichen Eigenschaften

    Weitere Verschachtelung ausgelassen

  • approval_modestring

    enum: "policy", "required"

    Weitere Verschachtelung ausgelassen

  • apiobject

    Weitere Verschachtelung ausgelassen

  • managed_contentobject

    Abkürzung nur zur Erstellung: Speichert atomar einen E-Mail-Entwurf mit verwalteter Quelle und eine Journey, deren E-Mail-Schritt darauf verweist. Fehlende Zielsprachen werden zur kostenlosen Übersetzung eingereiht; dies veröffentlicht oder aktiviert die Journey nicht.

    Keine zusätzlichen Eigenschaften

    Weitere Verschachtelung ausgelassen

  • stepsarrayerforderlich

    maxItems: 100

    Weitere Verschachtelung ausgelassen

  • allOf 2object
  • idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • statusstringerforderlich

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

    Weitere Verschachtelung ausgelassen

  • api_keystring | null

    Weitere Verschachtelung ausgelassen

  • content_modestring | null

    enum: "code", "managed", null

    Weitere Verschachtelung ausgelassen

  • identitystring | null

    Weitere Verschachtelung ausgelassen

  • identity_aliasesarray

    Weitere Verschachtelung ausgelassen

  • samplesarray

    Weitere Verschachtelung ausgelassen

  • versionintegererforderlich

    minimum: 1

    Weitere Verschachtelung ausgelassen

  • statsobjecterforderlich

    Weitere Verschachtelung ausgelassen

  • stepStatsarray

    Weitere Verschachtelung ausgelassen

  • armStatsarray

    Weitere Verschachtelung ausgelassen

  • healthobjecterforderlich

    Weitere Verschachtelung ausgelassen

  • indicatorobjecterforderlich

    Weitere Verschachtelung ausgelassen

  • sparklinearrayerforderlich

    Weitere Verschachtelung ausgelassen

  • activated_atstring | null

    format: "date-time"

    Weitere Verschachtelung ausgelassen

  • updated_atstring

    format: "date-time"

    Weitere Verschachtelung ausgelassen

  • last_activity_atstring | null

    format: "date-time"

    Weitere Verschachtelung ausgelassen

  • broadcastobjecterforderlich

    Keine zusätzlichen Eigenschaften

  • nextobject
  • idstringerforderlich

    format: "uuid"

  • namestringerforderlich
  • scheduledAtstringerforderlich

    format: "date-time"

  • recipientsintegererforderlich

    minimum: 0

  • lastobject
  • idstringerforderlich

    format: "uuid"

  • namestringerforderlich
  • sentAtstringerforderlich

    format: "date-time"

  • deliveredintegererforderlich

    minimum: 0

  • humanOpenedintegererforderlich

    minimum: 0

  • repliedintegererforderlich

    minimum: 0

  • recentLogsarrayerforderlich
  • Jedes Elementobject
  • idstringerforderlich

    format: "uuid"

  • directionstringerforderlich

    enum: "out", "in"

  • atstringerforderlich

    format: "date-time"

  • mailbox_idstring | nullerforderlich

    Null bei Sendungen ohne Postfach, etwa über API und SMTP.

    format: "uuid"

  • thread_idstring

    format: "uuid"

  • send_intent_idstring

    format: "uuid"

  • traffic_classstring

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

  • fromstringerforderlich
  • toarrayerforderlich
  • Jedes Elementstring
  • recipient_countintegererforderlich

    minimum: 0

  • subjectstringerforderlich
  • originobjecterforderlich

    Keine zusätzlichen Eigenschaften

  • kindstringerforderlich

    enum: "journey", "broadcast", "mailbox", "api", "agent", "smtp"

  • idstring
  • namestring
  • statusstringerforderlich

    enum: "queued", "sent", "delivered", "bounced", "complained", "opened", "clicked", "replied", "received", "failed", "rejected"

  • rejectionobject

    Warum Banger einen SMTP-Versuch ablehnte und welche Antwort der Client erhielt.

  • refstringerforderlich

    pattern: "^smtp_[0-9a-z]{16}$"

  • kindstringerforderlich

    enum: "login_failed", "recipient_refused", "message_rejected"

  • replystringerforderlich

    Die vollständige SMTP-Antwort, z. B. `550 5.7.1 ...`.

  • reply_codeintegererforderlich

    minimum: 400 · maximum: 599

  • enhanced_codestringerforderlich
  • reasonstringerforderlich
  • messagestringerforderlich
  • key_prefixstringerforderlich

    Das öffentliche `bgr_`-Präfix des vom Client verwendeten API-Schlüssels.

  • client_ipstring
  • portinteger
  • tlsstring
  • attemptsintegererforderlich

    Fehlgeschlagene Anmeldungen mit einem Schlüssel werden zu einer Zeile pro zehn Minuten zusammengefasst.

    minimum: 1

  • last_atstringerforderlich

    format: "date-time"

  • detailobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • volumeobjecterforderlich
  • sentPeriodintegererforderlich

    minimum: 0

  • limitintegererforderlich

    minimum: 0

  • deliveredRatenumber

    minimum: 0 · maximum: 1

  • mailboxesintegererforderlich

    minimum: 0

  • verifiedDomainsintegererforderlich

    minimum: 0

  • Zusätzliche EigenschaftBeliebiger Wert
  • agentobjecterforderlich

    Keine zusätzlichen Eigenschaften

  • connectedbooleanerforderlich
  • clientNamestring

curl-Beispiel

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

Labelvorschläge

GET/v1/workspaces/{workspaceId}/label-suggestions

listLabelSuggestions

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

mailbox_id
query · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Erfolgreiche Antwort.

application/json

  • valueobject
  • dataarrayerforderlich
  • Jedes Elementobject
  • idstringerforderlich
  • namestringerforderlich
  • emojistringerforderlich
  • colorstringerforderlich
  • descriptionstringerforderlich
  • already_addedbooleanerforderlich

curl-Beispiel

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"

Labels

GET/v1/workspaces/{workspaceId}/labels

listLabels

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

mailbox_id
query
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Erfolgreiche Antwort.

application/json

  • valueobject
  • dataarrayerforderlich
  • Jedes Elementobject
  • idstringerforderlich

    format: "uuid"

  • mailbox_idstringerforderlich

    format: "uuid"

  • namestringerforderlich
  • colorstring | nullerforderlich
  • kindstringerforderlich
  • emojistring | nullerforderlich
  • descriptionstring | nullerforderlich
  • suggestion_idstring | nullerforderlich
  • sourcestringerforderlich

    enum: "banger", "provider"

  • updated_atstringerforderlich

    format: "date-time"

  • auto_setnicht angegebenerforderlich
  • anyOf 1object
  • rule_idstringerforderlich

    format: "uuid"

  • enabledbooleanerforderlich
  • descriptionstring | nullerforderlich
  • exact_conditionsobjecterforderlich

    Keine zusätzlichen Eigenschaften

  • fromarray

    maxItems: 50

    Weitere Verschachtelung ausgelassen

  • toarray

    maxItems: 50

    Weitere Verschachtelung ausgelassen

  • subject_containsarray

    maxItems: 50

    Weitere Verschachtelung ausgelassen

  • has_wordsarray

    maxItems: 50

    Weitere Verschachtelung ausgelassen

  • excludes_wordsarray

    maxItems: 50

    Weitere Verschachtelung ausgelassen

  • has_attachmentboolean

    Weitere Verschachtelung ausgelassen

  • anyOf 2null
  • applied_by_rule_countintegererforderlich

curl-Beispiel

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

Erstelle ein Banger-Label in einem Postfach. Übergib suggestion_id für ein vorgeschlagenes Label; ein vorhandener Name liefert das vorhandene Label (200). Banger-Labels werden nie mit Gmail synchronisiert.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

Idempotency-Key
header

Optionaler Wiederholungsschlüssel, angewendet bei ausgewähltem Produkt.

  • valuestring

    minLength: 1 · maxLength: 256

Anfrage-Body erforderlich

application/json

  • valueobject
  • mailbox_idstringerforderlich

    format: "uuid"

  • namestring

    maxLength: 120

  • colorstring

    maxLength: 32

  • emojistring

    Ein vor dem Namen angezeigtes Emoji.

    maxLength: 16

  • descriptionstring

    maxLength: 2000

  • suggestion_idstring

    maxLength: 64

  • auto_setobject
  • enabledbooleanerforderlich
  • descriptionstring | null

    maxLength: 2000

  • exact_conditionsobject

    Keine zusätzlichen Eigenschaften

  • fromarray

    maxItems: 50

  • Jedes Elementstring

    maxLength: 320

  • toarray

    maxItems: 50

  • Jedes Elementstring

    maxLength: 320

  • subject_containsarray

    maxItems: 50

  • Jedes Elementstring

    maxLength: 320

  • has_wordsarray

    maxItems: 50

  • Jedes Elementstring

    maxLength: 320

  • excludes_wordsarray

    maxItems: 50

  • Jedes Elementstring

    maxLength: 320

  • has_attachmentboolean

Erfolgsantwort 200

Erfolgreiche Antwort.

application/json

  • valueobject
  • dataobjecterforderlich
  • idstringerforderlich

    format: "uuid"

  • mailbox_idstringerforderlich

    format: "uuid"

  • namestringerforderlich
  • colorstring | nullerforderlich
  • kindstringerforderlich
  • emojistring | nullerforderlich
  • descriptionstring | nullerforderlich
  • suggestion_idstring | nullerforderlich
  • sourcestringerforderlich

    enum: "banger", "provider"

  • updated_atstringerforderlich

    format: "date-time"

  • auto_setnicht angegebenerforderlich
  • anyOf 1object
  • rule_idstringerforderlich

    format: "uuid"

  • enabledbooleanerforderlich
  • descriptionstring | nullerforderlich
  • exact_conditionsobjecterforderlich

    Keine zusätzlichen Eigenschaften

  • fromarray

    maxItems: 50

  • Jedes Elementstring

    maxLength: 320

    Weitere Verschachtelung ausgelassen

  • toarray

    maxItems: 50

  • Jedes Elementstring

    maxLength: 320

    Weitere Verschachtelung ausgelassen

  • subject_containsarray

    maxItems: 50

  • Jedes Elementstring

    maxLength: 320

    Weitere Verschachtelung ausgelassen

  • has_wordsarray

    maxItems: 50

  • Jedes Elementstring

    maxLength: 320

    Weitere Verschachtelung ausgelassen

  • excludes_wordsarray

    maxItems: 50

  • Jedes Elementstring

    maxLength: 320

    Weitere Verschachtelung ausgelassen

  • has_attachmentboolean
  • anyOf 2null
  • applied_by_rule_countintegererforderlich

curl-Beispiel

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

Banger-Label umbenennen, Farbe, Emoji oder Beschreibung ändern oder seine automatische Regel ein-/ausschalten. Gmail- und Systemlabels sind schreibgeschützt.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

labelId
path · erforderlich
  • valuestring

    format: "uuid"

Idempotency-Key
header

Optionaler Wiederholungsschlüssel, angewendet bei ausgewähltem Produkt.

  • valuestring

    minLength: 1 · maxLength: 256

Anfrage-Body erforderlich

application/json

  • valueobject
  • namestring

    maxLength: 120

  • colorstring | null

    maxLength: 32

  • emojistring | null

    maxLength: 16

  • descriptionstring | null

    maxLength: 2000

  • auto_setobject
  • enabledbooleanerforderlich
  • descriptionstring | null

    maxLength: 2000

  • exact_conditionsobject

    Keine zusätzlichen Eigenschaften

  • fromarray

    maxItems: 50

  • Jedes Elementstring

    maxLength: 320

  • toarray

    maxItems: 50

  • Jedes Elementstring

    maxLength: 320

  • subject_containsarray

    maxItems: 50

  • Jedes Elementstring

    maxLength: 320

  • has_wordsarray

    maxItems: 50

  • Jedes Elementstring

    maxLength: 320

  • excludes_wordsarray

    maxItems: 50

  • Jedes Elementstring

    maxLength: 320

  • has_attachmentboolean

Erfolgsantwort 200

Erfolgreiche Antwort.

application/json

  • valueobject
  • dataobjecterforderlich
  • idstringerforderlich

    format: "uuid"

  • mailbox_idstringerforderlich

    format: "uuid"

  • namestringerforderlich
  • colorstring | nullerforderlich
  • kindstringerforderlich
  • emojistring | nullerforderlich
  • descriptionstring | nullerforderlich
  • suggestion_idstring | nullerforderlich
  • sourcestringerforderlich

    enum: "banger", "provider"

  • updated_atstringerforderlich

    format: "date-time"

  • auto_setnicht angegebenerforderlich
  • anyOf 1object
  • rule_idstringerforderlich

    format: "uuid"

  • enabledbooleanerforderlich
  • descriptionstring | nullerforderlich
  • exact_conditionsobjecterforderlich

    Keine zusätzlichen Eigenschaften

  • fromarray

    maxItems: 50

  • Jedes Elementstring

    maxLength: 320

    Weitere Verschachtelung ausgelassen

  • toarray

    maxItems: 50

  • Jedes Elementstring

    maxLength: 320

    Weitere Verschachtelung ausgelassen

  • subject_containsarray

    maxItems: 50

  • Jedes Elementstring

    maxLength: 320

    Weitere Verschachtelung ausgelassen

  • has_wordsarray

    maxItems: 50

  • Jedes Elementstring

    maxLength: 320

    Weitere Verschachtelung ausgelassen

  • excludes_wordsarray

    maxItems: 50

  • Jedes Elementstring

    maxLength: 320

    Weitere Verschachtelung ausgelassen

  • has_attachmentboolean
  • anyOf 2null
  • applied_by_rule_countintegererforderlich

curl-Beispiel

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

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

labelId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 204

Label gelöscht.

Kein Antwort-Body.

curl-Beispiel

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

Protokolle

GET/v1/workspaces/{workspaceId}/logs

listLogs

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • 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

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Cursorseite der zusammengeführten Sende- und Empfangszeitleiste mit von Banger abgelehnten SMTP-Versuchen als `rejected`-Zeilen. `query` findet Ablehnungen auch über ihre `smtp_`-Referenz oder das verwendete `bgr_`-Schlüsselpräfix.

application/json

  • valueobject
  • dataarrayerforderlich
  • Jedes Elementobject
  • idstringerforderlich

    format: "uuid"

  • directionstringerforderlich

    enum: "out", "in"

  • atstringerforderlich

    format: "date-time"

  • mailbox_idstring | nullerforderlich

    Null bei Sendungen ohne Postfach, etwa über API und SMTP.

    format: "uuid"

  • thread_idstring

    format: "uuid"

  • send_intent_idstring

    format: "uuid"

  • traffic_classstring

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

  • fromstringerforderlich
  • toarrayerforderlich
  • Jedes Elementstring
  • recipient_countintegererforderlich

    minimum: 0

  • subjectstringerforderlich
  • originobjecterforderlich

    Keine zusätzlichen Eigenschaften

  • kindstringerforderlich

    enum: "journey", "broadcast", "mailbox", "api", "agent", "smtp"

  • idstring
  • namestring
  • statusstringerforderlich

    enum: "queued", "sent", "delivered", "bounced", "complained", "opened", "clicked", "replied", "received", "failed", "rejected"

  • rejectionobject

    Warum Banger einen SMTP-Versuch ablehnte und welche Antwort der Client erhielt.

  • refstringerforderlich

    pattern: "^smtp_[0-9a-z]{16}$"

  • kindstringerforderlich

    enum: "login_failed", "recipient_refused", "message_rejected"

  • replystringerforderlich

    Die vollständige SMTP-Antwort, z. B. `550 5.7.1 ...`.

  • reply_codeintegererforderlich

    minimum: 400 · maximum: 599

  • enhanced_codestringerforderlich
  • reasonstringerforderlich
  • messagestringerforderlich
  • key_prefixstringerforderlich

    Das öffentliche `bgr_`-Präfix des vom Client verwendeten API-Schlüssels.

  • client_ipstring
  • portinteger
  • tlsstring
  • attemptsintegererforderlich

    Fehlgeschlagene Anmeldungen mit einem Schlüssel werden zu einer Zeile pro zehn Minuten zusammengefasst.

    minimum: 1

  • last_atstringerforderlich

    format: "date-time"

  • detailobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • pageobjecterforderlich

    Keine zusätzlichen Eigenschaften

  • has_morebooleanerforderlich
  • next_cursorstring

curl-Beispiel

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

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

entryId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Erfolgreiche Antwort.

application/json

  • valueobject
  • datanicht angegebenerforderlich
  • allOf 1object
  • idstringerforderlich

    format: "uuid"

  • directionstringerforderlich

    enum: "out", "in"

  • atstringerforderlich

    format: "date-time"

  • mailbox_idstring | nullerforderlich

    Null bei Sendungen ohne Postfach, etwa über API und SMTP.

    format: "uuid"

  • thread_idstring

    format: "uuid"

  • send_intent_idstring

    format: "uuid"

  • traffic_classstring

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

  • fromstringerforderlich
  • toarrayerforderlich
  • Jedes Elementstring
  • recipient_countintegererforderlich

    minimum: 0

  • subjectstringerforderlich
  • originobjecterforderlich

    Keine zusätzlichen Eigenschaften

  • kindstringerforderlich

    enum: "journey", "broadcast", "mailbox", "api", "agent", "smtp"

  • idstring
  • namestring
  • statusstringerforderlich

    enum: "queued", "sent", "delivered", "bounced", "complained", "opened", "clicked", "replied", "received", "failed", "rejected"

  • rejectionobject

    Warum Banger einen SMTP-Versuch ablehnte und welche Antwort der Client erhielt.

  • refstringerforderlich

    pattern: "^smtp_[0-9a-z]{16}$"

  • kindstringerforderlich

    enum: "login_failed", "recipient_refused", "message_rejected"

  • replystringerforderlich

    Die vollständige SMTP-Antwort, z. B. `550 5.7.1 ...`.

  • reply_codeintegererforderlich

    minimum: 400 · maximum: 599

  • enhanced_codestringerforderlich
  • reasonstringerforderlich
  • messagestringerforderlich
  • key_prefixstringerforderlich

    Das öffentliche `bgr_`-Präfix des vom Client verwendeten API-Schlüssels.

  • client_ipstring
  • portinteger
  • tlsstring
  • attemptsintegererforderlich

    Fehlgeschlagene Anmeldungen mit einem Schlüssel werden zu einer Zeile pro zehn Minuten zusammengefasst.

    minimum: 1

  • last_atstringerforderlich

    format: "date-time"

  • detailobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • allOf 2object
  • detailnicht angegebenerforderlich
  • oneOf 1object
  • kindstringerforderlich

    enum: "inbound"

  • threadnicht angegebenerforderlich
  • allOf 1object

    Weitere Verschachtelung ausgelassen

  • allOf 2object

    Weitere Verschachtelung ausgelassen

  • oneOf 2object
  • kindstringerforderlich

    enum: "broadcast", "outbound"

  • sendobjecterforderlich
  • idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • mailbox_idstring | nullerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • command_idstring | nullerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • statusstringerforderlich

    Weitere Verschachtelung ausgelassen

  • command_statusstring | nullerforderlich

    Weitere Verschachtelung ausgelassen

  • subjectstring

    Weitere Verschachtelung ausgelassen

  • recipientsarray

    Weitere Verschachtelung ausgelassen

  • recipient_countintegererforderlich

    Weitere Verschachtelung ausgelassen

  • error_codestring | null

    Weitere Verschachtelung ausgelassen

  • send_intent_idstring

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • providerstring | null

    Weitere Verschachtelung ausgelassen

  • route_kindstring | null

    Weitere Verschachtelung ausgelassen

  • sourcestring

    Weitere Verschachtelung ausgelassen

  • from_addressstring

    Weitere Verschachtelung ausgelassen

  • recipient_statesobject

    Weitere Verschachtelung ausgelassen

  • provider_message_idstring | null

    Weitere Verschachtelung ausgelassen

  • languagenicht angegeben

    Sprache, in der diese E-Mail gesendet wurde; null, wenn sie nicht übersetzt wurde.

    Weitere Verschachtelung ausgelassen

  • journeyobject | null

    Journey-Schritt und Anmeldung, die diese E-Mail gesendet haben; null bei anderen Sendungen.

    Weitere Verschachtelung ausgelassen

  • experimentobject | null

    Experimentvariante dieser E-Mail; null, wenn keine zutraf.

    Weitere Verschachtelung ausgelassen

  • created_atstringerforderlich

    format: "date-time"

    Weitere Verschachtelung ausgelassen

  • updated_atstringerforderlich

    format: "date-time"

    Weitere Verschachtelung ausgelassen

  • completed_atstring | nullerforderlich

    format: "date-time"

    Weitere Verschachtelung ausgelassen

  • template_idstring | null

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • template_versioninteger | null

    Weitere Verschachtelung ausgelassen

  • workspace_revisioninteger | null

    Weitere Verschachtelung ausgelassen

  • command_resultobject

    Weitere Verschachtelung ausgelassen

  • command_started_atstring | null

    format: "date-time"

    Weitere Verschachtelung ausgelassen

  • command_completed_atstring | null

    format: "date-time"

    Weitere Verschachtelung ausgelassen

  • body_textstring

    Weitere Verschachtelung ausgelassen

  • body_htmlstring

    Weitere Verschachtelung ausgelassen

  • reply_toarray

    Weitere Verschachtelung ausgelassen

  • headersobject

    Weitere Verschachtelung ausgelassen

  • tagsarray

    Weitere Verschachtelung ausgelassen

  • timelinearrayerforderlich
  • Jedes Elementobject

    Weitere Verschachtelung ausgelassen

curl-Beispiel

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

E-Mail-Seite

GET/v1/workspaces/{workspaceId}/mail-page

getMailPage

Liefert alle E-Mail-Daten für die erste Anzeige in einer Anfrage: sichtbare Postfächer, ausgewähltes Postfach, Labels, Postfachzahlen, Workspace-Revision und erste Unterhaltungsseite des ausgewählten Postfachs.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

limit
query
  • valueinteger

    minimum: 1 · maximum: 100 · default: 50

mailbox_id
query

Bevorzugtes Postfach. Fällt auf das erste sichtbare Postfach zurück.

  • valuestring

    format: "uuid"

label_id
query

Nur Unterhaltungen des ausgewählten Postfachs mit diesem Label zurückgeben.

  • valuestring

    format: "uuid"

view
query
  • valuestring

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

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

E-Mail-Daten für die erste Anzeige des Workspace.

application/json

  • valueobject
  • dataobjecterforderlich
  • mailboxesarrayerforderlich
  • Jedes Elementobject
  • idstringerforderlich

    format: "uuid"

  • workspace_idstringerforderlich

    format: "uuid"

  • product_idstring | null

    Das Produkt (Projekt), zu dem das Postfach gehört. Clients gruppieren damit Postfächer und erstellen Web-App-Links.

    format: "uuid"

  • domain_idstring | null

    format: "uuid"

  • addressstringerforderlich

    format: "email"

  • display_namestringerforderlich
  • providerstringerforderlich

    enum: "gmail", "smtp"

  • statusstringerforderlich

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

  • status_reasonstring | null
  • suspended_atstring | null
  • mailbox_kindstringerforderlich

    enum: "domain", "starter"

  • domainsarrayerforderlich
  • Jedes Elementobject
  • idstringerforderlich

    format: "uuid"

  • product_idstringerforderlich

    format: "uuid"

  • namestringerforderlich
  • statusstringerforderlich

    enum: "pending", "verified", "failed", "disabled", "deleting", "deleted"

  • selected_mailbox_idstring

    format: "uuid"

  • labelsarrayerforderlich
  • Jedes Elementobject
  • idstringerforderlich

    format: "uuid"

  • mailbox_idstringerforderlich

    format: "uuid"

  • namestringerforderlich
  • colorstring | null
  • kindstringerforderlich
  • updated_atstringerforderlich

    format: "date-time"

  • threadsarrayerforderlich
  • Jedes Elementobject
  • idstringerforderlich

    format: "uuid"

  • mailbox_idstringerforderlich

    format: "uuid"

  • subjectstringerforderlich
  • snippetstringerforderlich
  • last_message_atstringerforderlich

    format: "date-time"

  • message_countintegererforderlich
  • unread_countintegererforderlich
  • is_archivedbooleanerforderlich
  • is_trashbooleanerforderlich
  • is_spambooleanerforderlich
  • is_starredbooleanerforderlich
  • is_sentbooleanerforderlich
  • has_attachmentsbooleanerforderlich
  • labelsarrayerforderlich
  • Jedes Elementstring
  • participantsarray
  • Jedes Elementobject
  • namestring

    Weitere Verschachtelung ausgelassen

  • emailstringerforderlich

    format: "email"

    Weitere Verschachtelung ausgelassen

  • pageobjecterforderlich
  • next_cursorstring
  • has_morebooleanerforderlich
  • mailbox_thread_countsobjecterforderlich
  • Zusätzliche Eigenschaftinteger
  • revisionintegererforderlich

    format: "int64"

curl-Beispiel

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"

Mailchimp-Migration

GET/v1/workspaces/{workspaceId}/mailchimp-migration

Fortschritt und Bericht des Umzugs von Mailchimp lesen.

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.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

connection_id
query
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Aktueller Umzugsbericht.

application/json

  • valueobject
  • dataobjecterforderlich

    Der Umzug von einer Mailchimp-Verbindung in ein Produkt. Frage GET /mailchimp-migration für den aktuellen Fortschritt ab: `phase` nennt den Stand; `counts`, `audiences`, `segments`, `templates` und `campaigns` wachsen im Verlauf.

  • migration_idstringerforderlich

    format: "uuid"

  • connection_idstringerforderlich

    format: "uuid"

  • product_idstringerforderlich

    format: "uuid"

  • statusstringerforderlich

    enum: "importing", "completed"

  • phasestringerforderlich

    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_atstringerforderlich

    format: "date-time"

  • completed_atstring | nullerforderlich

    format: "date-time"

  • connectionobjecterforderlich
  • display_namestringerforderlich
  • account_namestring | nullerforderlich
  • statusstringerforderlich

    enum: "pending_validation", "active", "error", "disabled"

  • last_error_codestring | nullerforderlich
  • needs_new_keybooleanerforderlich
  • messagestring

    Present when needs_new_key or disconnected, ready to show.

  • progressobjecterforderlich
  • import_streamsintegererforderlich
  • import_streams_doneintegererforderlich
  • failing_streamsarrayerforderlich
  • Jedes Elementobject
  • streamstringerforderlich
  • refstringerforderlich
  • error_codestring | nullerforderlich
  • designs_waitingintegererforderlich
  • notestringerforderlich
  • countsobjecterforderlich
  • contactsintegererforderlich
  • subscribedintegererforderlich
  • unsubscribedintegererforderlich
  • bouncedintegererforderlich
  • contact_listsintegererforderlich
  • contact_fieldsintegererforderlich
  • segments_convertedintegererforderlich
  • segments_kept_as_listsintegererforderlich
  • templates_importedintegererforderlich
  • templates_to_rebuildintegererforderlich
  • campaigns_imported_as_designsintegererforderlich
  • automations_importedintegererforderlich
  • audiencesarrayerforderlich
  • Jedes Elementobject
  • mailchimp_idstringerforderlich
  • namestringerforderlich
  • list_idstring | nullerforderlich

    format: "uuid"

  • list_namestring | nullerforderlich
  • members_in_bangerintegererforderlich
  • subscribedintegererforderlich
  • unsubscribedintegererforderlich
  • bouncedintegererforderlich
  • members_in_mailchimpintegererforderlich
  • contact_fieldsarrayerforderlich
  • Jedes Elementobject
  • mailchimp_tagstringerforderlich
  • namestringerforderlich
  • field_keystringerforderlich
  • typestringerforderlich

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

  • consentstringerforderlich
  • segmentsarrayerforderlich
  • Jedes Elementobject

    Was aus einem Mailchimp-Segment, einer Vorlage oder Kampagne wurde.

  • mailchimp_idstringerforderlich

    Segmente: <audience id>:<segment id>. Vorlagen und Kampagnen: ihre Mailchimp-ID.

  • becamestringerforderlich

    enum: "segment", "contact_list", "template", "needs_rebuild"

  • idstring

    Das Banger-Segment

    format: "uuid"

  • namestringerforderlich
  • reasonstring

    Warum ein Segment eine statische Liste blieb

  • dropped_merge_tagsarray

    Mailchimp-Merge-Tags ohne Banger-Entsprechung, aus dem Design entfernt (Bedingungen auf Merge-Feldern behalten ihren ersten Zweig und sind hier aufgeführt).

  • Jedes Elementstring
  • replaced_footerboolean

    Die Mailchimp-Fußzeile (Browseransicht, Einstellungen, Adresse, Badge) wurde zur Markenfußzeile des Produkts.

  • removed_linksarray

    Entfernte Links zu Mailchimp-eigenen Seiten außerhalb der Fußzeile (etwa Browseransicht), nach ihrem Wortlaut.

  • Jedes Elementstring
  • links_to_fillarray

    In Mailchimp leer gelassene Links; jeder ist nun ein vor dem Versand auszufüllender URL-Slot des Designs.

  • Jedes Elementobject
  • keystringerforderlich

    Weitere Verschachtelung ausgelassen

  • labelstringerforderlich

    Weitere Verschachtelung ausgelassen

  • kept_editsboolean

    Ein erneuter Lauf fand das in Banger bearbeitete Design und ließ es unverändert.

  • templatesarrayerforderlich
  • Jedes Elementobject

    Was aus einem Mailchimp-Segment, einer Vorlage oder Kampagne wurde.

  • mailchimp_idstringerforderlich

    Segmente: <audience id>:<segment id>. Vorlagen und Kampagnen: ihre Mailchimp-ID.

  • becamestringerforderlich

    enum: "segment", "contact_list", "template", "needs_rebuild"

  • idstring

    Das Banger-Segment

    format: "uuid"

  • namestringerforderlich
  • reasonstring

    Warum ein Segment eine statische Liste blieb

  • dropped_merge_tagsarray

    Mailchimp-Merge-Tags ohne Banger-Entsprechung, aus dem Design entfernt (Bedingungen auf Merge-Feldern behalten ihren ersten Zweig und sind hier aufgeführt).

  • Jedes Elementstring
  • replaced_footerboolean

    Die Mailchimp-Fußzeile (Browseransicht, Einstellungen, Adresse, Badge) wurde zur Markenfußzeile des Produkts.

  • removed_linksarray

    Entfernte Links zu Mailchimp-eigenen Seiten außerhalb der Fußzeile (etwa Browseransicht), nach ihrem Wortlaut.

  • Jedes Elementstring
  • links_to_fillarray

    In Mailchimp leer gelassene Links; jeder ist nun ein vor dem Versand auszufüllender URL-Slot des Designs.

  • Jedes Elementobject
  • keystringerforderlich

    Weitere Verschachtelung ausgelassen

  • labelstringerforderlich

    Weitere Verschachtelung ausgelassen

  • kept_editsboolean

    Ein erneuter Lauf fand das in Banger bearbeitete Design und ließ es unverändert.

  • campaignsarrayerforderlich
  • Jedes Elementobject

    Was aus einem Mailchimp-Segment, einer Vorlage oder Kampagne wurde.

  • mailchimp_idstringerforderlich

    Segmente: <audience id>:<segment id>. Vorlagen und Kampagnen: ihre Mailchimp-ID.

  • becamestringerforderlich

    enum: "segment", "contact_list", "template", "needs_rebuild"

  • idstring

    Das Banger-Segment

    format: "uuid"

  • namestringerforderlich
  • reasonstring

    Warum ein Segment eine statische Liste blieb

  • dropped_merge_tagsarray

    Mailchimp-Merge-Tags ohne Banger-Entsprechung, aus dem Design entfernt (Bedingungen auf Merge-Feldern behalten ihren ersten Zweig und sind hier aufgeführt).

  • Jedes Elementstring
  • replaced_footerboolean

    Die Mailchimp-Fußzeile (Browseransicht, Einstellungen, Adresse, Badge) wurde zur Markenfußzeile des Produkts.

  • removed_linksarray

    Entfernte Links zu Mailchimp-eigenen Seiten außerhalb der Fußzeile (etwa Browseransicht), nach ihrem Wortlaut.

  • Jedes Elementstring
  • links_to_fillarray

    In Mailchimp leer gelassene Links; jeder ist nun ein vor dem Versand auszufüllender URL-Slot des Designs.

  • Jedes Elementobject
  • keystringerforderlich

    Weitere Verschachtelung ausgelassen

  • labelstringerforderlich

    Weitere Verschachtelung ausgelassen

  • kept_editsboolean

    Ein erneuter Lauf fand das in Banger bearbeitete Design und ließ es unverändert.

  • automationsobjecterforderlich
  • importedbooleanerforderlich

    const: false

  • whystringerforderlich
  • next_stepsarrayerforderlich
  • Jedes Elementstring
  • help_call_urlstringerforderlich

    format: "uri"

curl-Beispiel

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

Umzug von Mailchimp in dieses Produkt starten oder erneut ausführen.

Das Verbinden von Mailchimp startet sie bereits; erneutes Ausführen synchronisiert erneut und ergänzt nur Neues. Benötigt contacts:write und campaigns:write; eine angemeldete Person muss Eigentümer oder Administrator sein. Keine Verbindungsberechtigung erforderlich.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body erforderlich

application/json

  • valueobject

    Keine zusätzlichen Eigenschaften

  • connection_idstring

    format: "uuid"

  • recent_campaignsinteger

    minimum: 0 · maximum: 50 · default: 10

Erfolgsantwort 202

Der Umzug läuft im Hintergrund.

application/json

  • valueobject
  • datanicht angegebenerforderlich
  • allOf 1object

    Der Umzug von einer Mailchimp-Verbindung in ein Produkt. Frage GET /mailchimp-migration für den aktuellen Fortschritt ab: `phase` nennt den Stand; `counts`, `audiences`, `segments`, `templates` und `campaigns` wachsen im Verlauf.

  • migration_idstringerforderlich

    format: "uuid"

  • connection_idstringerforderlich

    format: "uuid"

  • product_idstringerforderlich

    format: "uuid"

  • statusstringerforderlich

    enum: "importing", "completed"

  • phasestringerforderlich

    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_atstringerforderlich

    format: "date-time"

  • completed_atstring | nullerforderlich

    format: "date-time"

  • connectionobjecterforderlich
  • display_namestringerforderlich
  • account_namestring | nullerforderlich
  • statusstringerforderlich

    enum: "pending_validation", "active", "error", "disabled"

  • last_error_codestring | nullerforderlich
  • needs_new_keybooleanerforderlich
  • messagestring

    Present when needs_new_key or disconnected, ready to show.

  • progressobjecterforderlich
  • import_streamsintegererforderlich
  • import_streams_doneintegererforderlich
  • failing_streamsarrayerforderlich
  • Jedes Elementobject
  • streamstringerforderlich

    Weitere Verschachtelung ausgelassen

  • refstringerforderlich

    Weitere Verschachtelung ausgelassen

  • error_codestring | nullerforderlich

    Weitere Verschachtelung ausgelassen

  • designs_waitingintegererforderlich
  • notestringerforderlich
  • countsobjecterforderlich
  • contactsintegererforderlich
  • subscribedintegererforderlich
  • unsubscribedintegererforderlich
  • bouncedintegererforderlich
  • contact_listsintegererforderlich
  • contact_fieldsintegererforderlich
  • segments_convertedintegererforderlich
  • segments_kept_as_listsintegererforderlich
  • templates_importedintegererforderlich
  • templates_to_rebuildintegererforderlich
  • campaigns_imported_as_designsintegererforderlich
  • automations_importedintegererforderlich
  • audiencesarrayerforderlich
  • Jedes Elementobject
  • mailchimp_idstringerforderlich
  • namestringerforderlich
  • list_idstring | nullerforderlich

    format: "uuid"

  • list_namestring | nullerforderlich
  • members_in_bangerintegererforderlich
  • subscribedintegererforderlich
  • unsubscribedintegererforderlich
  • bouncedintegererforderlich
  • members_in_mailchimpintegererforderlich
  • contact_fieldsarrayerforderlich
  • Jedes Elementobject
  • mailchimp_tagstringerforderlich
  • namestringerforderlich
  • field_keystringerforderlich
  • typestringerforderlich

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

  • consentstringerforderlich
  • segmentsarrayerforderlich
  • Jedes Elementobject

    Was aus einem Mailchimp-Segment, einer Vorlage oder Kampagne wurde.

  • mailchimp_idstringerforderlich

    Segmente: <audience id>:<segment id>. Vorlagen und Kampagnen: ihre Mailchimp-ID.

  • becamestringerforderlich

    enum: "segment", "contact_list", "template", "needs_rebuild"

  • idstring

    Das Banger-Segment

    format: "uuid"

  • namestringerforderlich
  • reasonstring

    Warum ein Segment eine statische Liste blieb

  • dropped_merge_tagsarray

    Mailchimp-Merge-Tags ohne Banger-Entsprechung, aus dem Design entfernt (Bedingungen auf Merge-Feldern behalten ihren ersten Zweig und sind hier aufgeführt).

  • Jedes Elementstring

    Weitere Verschachtelung ausgelassen

  • replaced_footerboolean

    Die Mailchimp-Fußzeile (Browseransicht, Einstellungen, Adresse, Badge) wurde zur Markenfußzeile des Produkts.

  • removed_linksarray

    Entfernte Links zu Mailchimp-eigenen Seiten außerhalb der Fußzeile (etwa Browseransicht), nach ihrem Wortlaut.

  • Jedes Elementstring

    Weitere Verschachtelung ausgelassen

  • links_to_fillarray

    In Mailchimp leer gelassene Links; jeder ist nun ein vor dem Versand auszufüllender URL-Slot des Designs.

  • Jedes Elementobject

    Weitere Verschachtelung ausgelassen

  • kept_editsboolean

    Ein erneuter Lauf fand das in Banger bearbeitete Design und ließ es unverändert.

  • templatesarrayerforderlich
  • Jedes Elementobject

    Was aus einem Mailchimp-Segment, einer Vorlage oder Kampagne wurde.

  • mailchimp_idstringerforderlich

    Segmente: <audience id>:<segment id>. Vorlagen und Kampagnen: ihre Mailchimp-ID.

  • becamestringerforderlich

    enum: "segment", "contact_list", "template", "needs_rebuild"

  • idstring

    Das Banger-Segment

    format: "uuid"

  • namestringerforderlich
  • reasonstring

    Warum ein Segment eine statische Liste blieb

  • dropped_merge_tagsarray

    Mailchimp-Merge-Tags ohne Banger-Entsprechung, aus dem Design entfernt (Bedingungen auf Merge-Feldern behalten ihren ersten Zweig und sind hier aufgeführt).

  • Jedes Elementstring

    Weitere Verschachtelung ausgelassen

  • replaced_footerboolean

    Die Mailchimp-Fußzeile (Browseransicht, Einstellungen, Adresse, Badge) wurde zur Markenfußzeile des Produkts.

  • removed_linksarray

    Entfernte Links zu Mailchimp-eigenen Seiten außerhalb der Fußzeile (etwa Browseransicht), nach ihrem Wortlaut.

  • Jedes Elementstring

    Weitere Verschachtelung ausgelassen

  • links_to_fillarray

    In Mailchimp leer gelassene Links; jeder ist nun ein vor dem Versand auszufüllender URL-Slot des Designs.

  • Jedes Elementobject

    Weitere Verschachtelung ausgelassen

  • kept_editsboolean

    Ein erneuter Lauf fand das in Banger bearbeitete Design und ließ es unverändert.

  • campaignsarrayerforderlich
  • Jedes Elementobject

    Was aus einem Mailchimp-Segment, einer Vorlage oder Kampagne wurde.

  • mailchimp_idstringerforderlich

    Segmente: <audience id>:<segment id>. Vorlagen und Kampagnen: ihre Mailchimp-ID.

  • becamestringerforderlich

    enum: "segment", "contact_list", "template", "needs_rebuild"

  • idstring

    Das Banger-Segment

    format: "uuid"

  • namestringerforderlich
  • reasonstring

    Warum ein Segment eine statische Liste blieb

  • dropped_merge_tagsarray

    Mailchimp-Merge-Tags ohne Banger-Entsprechung, aus dem Design entfernt (Bedingungen auf Merge-Feldern behalten ihren ersten Zweig und sind hier aufgeführt).

  • Jedes Elementstring

    Weitere Verschachtelung ausgelassen

  • replaced_footerboolean

    Die Mailchimp-Fußzeile (Browseransicht, Einstellungen, Adresse, Badge) wurde zur Markenfußzeile des Produkts.

  • removed_linksarray

    Entfernte Links zu Mailchimp-eigenen Seiten außerhalb der Fußzeile (etwa Browseransicht), nach ihrem Wortlaut.

  • Jedes Elementstring

    Weitere Verschachtelung ausgelassen

  • links_to_fillarray

    In Mailchimp leer gelassene Links; jeder ist nun ein vor dem Versand auszufüllender URL-Slot des Designs.

  • Jedes Elementobject

    Weitere Verschachtelung ausgelassen

  • kept_editsboolean

    Ein erneuter Lauf fand das in Banger bearbeitete Design und ließ es unverändert.

  • automationsobjecterforderlich
  • importedbooleanerforderlich

    const: false

  • whystringerforderlich
  • next_stepsarrayerforderlich
  • Jedes Elementstring
  • help_call_urlstringerforderlich

    format: "uri"

  • allOf 2object
  • messagestring

curl-Beispiel

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
}'

Verwaltete Inhalte

GET/v1/workspaces/{workspaceId}/managed-content

Verwaltete Produkt-E-Mail-Inhalte in stabiler Reihenfolge mit neuester ID zuerst auflisten.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

X-Banger-Product-Id
header · erforderlich

Explizites Betriebsprodukt; muss zu den produktgebundenen OAuth-Zugangsdaten passen.

  • valuestring

    format: "uuid"

limit
query
  • valueinteger

    minimum: 1 · maximum: 100 · default: 50

cursor
query
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Produkt-Inhaltsbestand und optionaler nächster Cursor.

application/json

  • valueobject
  • dataobjecterforderlich
  • itemsarrayerforderlich
  • Jedes Elementobject
  • idstringerforderlich

    format: "uuid"

  • namestringerforderlich
  • versionintegererforderlich

    minimum: 1

  • review_requiredbooleanerforderlich
  • 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
  • Zusätzliche EigenschaftBeliebiger Wert
  • translationsarray
  • Jedes Elementobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • translation_jobsarray
  • Jedes Elementobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • next_cursorstring | nullerforderlich

    format: "uuid"

curl-Beispiel

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

E-Mail-Entwurf in Quell-Locale speichern und fehlende Zielübersetzungen einreihen.

Sendet oder veröffentlicht nicht. Die Übersetzungsvorbereitung kostet nicht pro Sprache.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

X-Banger-Product-Id
header · erforderlich

Explizites Betriebsprodukt; muss zu den produktgebundenen OAuth-Zugangsdaten passen.

  • valuestring

    format: "uuid"

Idempotency-Key
header · erforderlich
  • valuestring

    minLength: 1 · maxLength: 256

Anfrage-Body erforderlich

application/json

  • valueobject

    Keine zusätzlichen Eigenschaften

  • namestringerforderlich

    minLength: 1 · maxLength: 200

  • contractobjecterforderlich

    Keine zusätzlichen Eigenschaften

  • source_localestring

    Kanonische BCP-47-Quell-Locale; übernimmt bei Auslassung die Produkteinstellungen.

  • configured_localesarray

    Quell- und Ziel-Locales; eine ausgelassene Quelle wird vom Server hinzugefügt.

    maxItems: 100 · uniqueItems: true

  • Jedes Elementstring
  • fallback_localestring
  • layout_idstring

    Gewähltes wiederverwendbares Layout; der Server übernimmt einen Snapshot seiner veröffentlichten Revision in diese Inhaltsrevision.

    format: "uuid"

  • localization_policyobject

    Eine Journey-E-Mail geht nur in der Sprache der Person heraus: Sie wartet auf ihre Übersetzung, etwa eine Minute bei Belegen, Codes und Sicherheitshinweisen und bis zu einen Tag bei anderen E-Mails, und wird nicht gesendet, wenn die Übersetzung dann nicht bereit ist.

    Keine zusätzlichen Eigenschaften

  • manual_reviewboolean

    default: false

  • sourceobjecterforderlich

    Keine zusätzlichen Eigenschaften

  • subjectstringerforderlich

    minLength: 1 · maxLength: 100000

  • preheaderstring

    maxLength: 100000

  • body_textstring

    Für Quellkompatibilität akzeptiert; gerenderter Klartext wird aus dem endgültigen HTML abgeleitet.

    maxLength: 100000

  • body_htmlstringerforderlich

    minLength: 1 · maxLength: 100000

  • layoutstring

    Muss einen {{ content }}-Slot enthalten.

    maxLength: 100000

  • variantsobject

    Optionale Quellversionen. Jede Version wird automatisch in derselben Revision übersetzt.

  • Zusätzliche Eigenschaftobject

    Keine zusätzlichen Eigenschaften

  • subjectstringerforderlich

    minLength: 1 · maxLength: 100000

  • preheaderstring

    maxLength: 100000

  • body_htmlstringerforderlich

    minLength: 1 · maxLength: 100000

  • body_textstring

    maxLength: 100000

  • layoutstring

    maxLength: 100000

  • variablesobjecterforderlich
  • Zusätzliche Eigenschaftnicht angegeben

    Rekursive typisierte Variable. Geldwerte verwenden {amount_cents: integer, currency: ISO 4217 code}; date-Werte sind ISO-Kalenderdaten und datetime-Werte ISO-Zeitstempel mit Offsets.

  • oneOf 1object

    Keine zusätzlichen Eigenschaften

  • typestringerforderlich

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

    Weitere Verschachtelung ausgelassen

  • requiredboolean

    Weitere Verschachtelung ausgelassen

  • descriptionstring

    maxLength: 2000

    Weitere Verschachtelung ausgelassen

  • defaultnicht angegeben

    Muss zum Feldtyp passen.

    Weitere Verschachtelung ausgelassen

  • oneOf 2object

    Keine zusätzlichen Eigenschaften

  • typenicht angegebenerforderlich

    const: "object"

    Weitere Verschachtelung ausgelassen

  • requiredboolean

    Weitere Verschachtelung ausgelassen

  • descriptionstring

    maxLength: 2000

    Weitere Verschachtelung ausgelassen

  • defaultobject

    Weitere Verschachtelung ausgelassen

  • propertiesobjecterforderlich

    Weitere Verschachtelung ausgelassen

  • oneOf 3object

    Keine zusätzlichen Eigenschaften

  • typenicht angegebenerforderlich

    const: "list"

    Weitere Verschachtelung ausgelassen

  • requiredboolean

    Weitere Verschachtelung ausgelassen

  • descriptionstring

    maxLength: 2000

    Weitere Verschachtelung ausgelassen

  • defaultarray

    Weitere Verschachtelung ausgelassen

  • itemsnicht angegebenerforderlich

    Rekursive typisierte Variable. Geldwerte verwenden {amount_cents: integer, currency: ISO 4217 code}; date-Werte sind ISO-Kalenderdaten und datetime-Werte ISO-Zeitstempel mit Offsets.

    Weitere Verschachtelung ausgelassen

  • samplesobject

    Benannte Beispielwertsätze für Vorschau und Quellvalidierung.

  • Zusätzliche Eigenschaftobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • translationsobject

    ICU-Quellnachrichtenkatalog und optional bereitgestellte Zielkataloge. Fehlende konfigurierte Ziele werden zur asynchronen Übersetzung eingereiht; zum Speichern sind sie nicht erforderlich.

  • Zusätzliche Eigenschaftobject
  • Zusätzliche Eigenschaftstring

Erfolgsantwort 201

Entwurfsquelle und eingereihte Übersetzungsjobs.

application/json

  • valueobject
  • dataobjecterforderlich
  • idstringerforderlich

    format: "uuid"

  • namestringerforderlich
  • versionintegererforderlich

    minimum: 1

  • review_requiredbooleanerforderlich
  • 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
  • Zusätzliche EigenschaftBeliebiger Wert
  • translationsarray
  • Jedes Elementobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • translation_jobsarray
  • Jedes Elementobject
  • Zusätzliche EigenschaftBeliebiger Wert

curl-Beispiel

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}

Entwurfsrevision, Übersetzungen und Vorbereitungsstatus lesen.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

X-Banger-Product-Id
header · erforderlich

Explizites Betriebsprodukt; muss zu den produktgebundenen OAuth-Zugangsdaten passen.

  • valuestring

    format: "uuid"

contentId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Aktueller Inhaltsstatus.

application/json

  • valueobject
  • datanicht angegebenerforderlich
  • allOf 1object
  • idstringerforderlich

    format: "uuid"

  • namestringerforderlich
  • versionintegererforderlich

    minimum: 1

  • review_requiredbooleanerforderlich
  • 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
  • Zusätzliche EigenschaftBeliebiger Wert
  • translationsarray
  • Jedes Elementobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • translation_jobsarray
  • Jedes Elementobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • allOf 2object
  • source_revisionobjecterforderlich
  • idstringerforderlich

    format: "uuid"

  • content_idstringerforderlich

    format: "uuid"

  • revisionintegererforderlich
  • source_localestringerforderlich
  • configured_localesarrayerforderlich
  • Jedes Elementstring
  • fallback_localestring | nullerforderlich
  • localization_policyobjecterforderlich

    Eine Journey-E-Mail geht nur in der Sprache der Person heraus: Sie wartet auf ihre Übersetzung, etwa eine Minute bei Belegen, Codes und Sicherheitshinweisen und bis zu einen Tag bei anderen E-Mails, und wird nicht gesendet, wenn die Übersetzung dann nicht bereit ist.

    Keine zusätzlichen Eigenschaften

  • manual_reviewboolean

    default: false

  • sourceobjecterforderlich

    Keine zusätzlichen Eigenschaften

  • subjectstringerforderlich

    minLength: 1 · maxLength: 100000

  • preheaderstring

    maxLength: 100000

  • body_textstring

    Für Quellkompatibilität akzeptiert; gerenderter Klartext wird aus dem endgültigen HTML abgeleitet.

    maxLength: 100000

  • body_htmlstringerforderlich

    minLength: 1 · maxLength: 100000

  • layoutstring

    Muss einen {{ content }}-Slot enthalten.

    maxLength: 100000

  • variantsobject

    Optionale Quellversionen. Jede Version wird automatisch in derselben Revision übersetzt.

  • Zusätzliche Eigenschaftobject

    Keine zusätzlichen Eigenschaften

    Weitere Verschachtelung ausgelassen

  • variablesobjecterforderlich
  • Zusätzliche Eigenschaftnicht angegeben

    Rekursive typisierte Variable. Geldwerte verwenden {amount_cents: integer, currency: ISO 4217 code}; date-Werte sind ISO-Kalenderdaten und datetime-Werte ISO-Zeitstempel mit Offsets.

    Weitere Verschachtelung ausgelassen

  • source_messagesobjecterforderlich
  • Zusätzliche Eigenschaftstring
  • layout_idstring | nullerforderlich

    format: "uuid"

  • layout_revision_idstring | nullerforderlich

    format: "uuid"

  • samplesobjecterforderlich
  • Zusätzliche Eigenschaftobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • restored_from_revision_idstring | nullerforderlich

    format: "uuid"

  • translationsarrayerforderlich
  • Jedes Elementnicht angegeben
  • allOf 1object
  • source_revision_idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • localestringerforderlich

    Weitere Verschachtelung ausgelassen

  • stringsobjecterforderlich

    Weitere Verschachtelung ausgelassen

  • provenancestringerforderlich

    enum: "supplied", "generated", "reviewed"

    Weitere Verschachtelung ausgelassen

  • statusstringerforderlich

    enum: "ready", "needs_review"

    Weitere Verschachtelung ausgelassen

  • allOf 2object
  • strings_sha256stringerforderlich

    Weitere Verschachtelung ausgelassen

  • translation_jobsarrayerforderlich
  • Jedes Elementobject
  • idstringerforderlich

    format: "uuid"

  • source_revision_idstringerforderlich

    format: "uuid"

  • localestringerforderlich
  • statusstringerforderlich
  • attempt_countintegererforderlich
  • error_codestring | nullerforderlich

curl-Beispiel

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}

Neue Quellentwurfsrevision speichern, ohne die Veröffentlichung in Produktion zu ändern.

Eine inkompatible Variablenänderung kann nicht über dieser Inhalts-ID veröffentlicht werden. Erstelle und veröffentliche neue verwaltete Inhalte, ändere jede Journey- oder Kampagnenentwurfsreferenz auf die neue ID und prüfe/aktiviere dann die Journey oder plane die Kampagne. Bereits angenommene Sendungen und geplante Kampagnenempfänger behalten ihre fixierten Revisionen.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

X-Banger-Product-Id
header · erforderlich

Explizites Betriebsprodukt; muss zu den produktgebundenen OAuth-Zugangsdaten passen.

  • valuestring

    format: "uuid"

contentId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body erforderlich

application/json

  • valueobject

    Keine zusätzlichen Eigenschaften

  • expected_versionintegererforderlich

    minimum: 1

  • contractobjecterforderlich

    Keine zusätzlichen Eigenschaften

  • source_localestring

    Kanonische BCP-47-Quell-Locale; übernimmt bei Auslassung die Produkteinstellungen.

  • configured_localesarray

    Quell- und Ziel-Locales; eine ausgelassene Quelle wird vom Server hinzugefügt.

    maxItems: 100 · uniqueItems: true

  • Jedes Elementstring
  • fallback_localestring
  • layout_idstring

    Gewähltes wiederverwendbares Layout; der Server übernimmt einen Snapshot seiner veröffentlichten Revision in diese Inhaltsrevision.

    format: "uuid"

  • localization_policyobject

    Eine Journey-E-Mail geht nur in der Sprache der Person heraus: Sie wartet auf ihre Übersetzung, etwa eine Minute bei Belegen, Codes und Sicherheitshinweisen und bis zu einen Tag bei anderen E-Mails, und wird nicht gesendet, wenn die Übersetzung dann nicht bereit ist.

    Keine zusätzlichen Eigenschaften

  • manual_reviewboolean

    default: false

  • sourceobjecterforderlich

    Keine zusätzlichen Eigenschaften

  • subjectstringerforderlich

    minLength: 1 · maxLength: 100000

  • preheaderstring

    maxLength: 100000

  • body_textstring

    Für Quellkompatibilität akzeptiert; gerenderter Klartext wird aus dem endgültigen HTML abgeleitet.

    maxLength: 100000

  • body_htmlstringerforderlich

    minLength: 1 · maxLength: 100000

  • layoutstring

    Muss einen {{ content }}-Slot enthalten.

    maxLength: 100000

  • variantsobject

    Optionale Quellversionen. Jede Version wird automatisch in derselben Revision übersetzt.

  • Zusätzliche Eigenschaftobject

    Keine zusätzlichen Eigenschaften

  • subjectstringerforderlich

    minLength: 1 · maxLength: 100000

  • preheaderstring

    maxLength: 100000

  • body_htmlstringerforderlich

    minLength: 1 · maxLength: 100000

  • body_textstring

    maxLength: 100000

  • layoutstring

    maxLength: 100000

  • variablesobjecterforderlich
  • Zusätzliche Eigenschaftnicht angegeben

    Rekursive typisierte Variable. Geldwerte verwenden {amount_cents: integer, currency: ISO 4217 code}; date-Werte sind ISO-Kalenderdaten und datetime-Werte ISO-Zeitstempel mit Offsets.

  • oneOf 1object

    Keine zusätzlichen Eigenschaften

  • typestringerforderlich

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

    Weitere Verschachtelung ausgelassen

  • requiredboolean

    Weitere Verschachtelung ausgelassen

  • descriptionstring

    maxLength: 2000

    Weitere Verschachtelung ausgelassen

  • defaultnicht angegeben

    Muss zum Feldtyp passen.

    Weitere Verschachtelung ausgelassen

  • oneOf 2object

    Keine zusätzlichen Eigenschaften

  • typenicht angegebenerforderlich

    const: "object"

    Weitere Verschachtelung ausgelassen

  • requiredboolean

    Weitere Verschachtelung ausgelassen

  • descriptionstring

    maxLength: 2000

    Weitere Verschachtelung ausgelassen

  • defaultobject

    Weitere Verschachtelung ausgelassen

  • propertiesobjecterforderlich

    Weitere Verschachtelung ausgelassen

  • oneOf 3object

    Keine zusätzlichen Eigenschaften

  • typenicht angegebenerforderlich

    const: "list"

    Weitere Verschachtelung ausgelassen

  • requiredboolean

    Weitere Verschachtelung ausgelassen

  • descriptionstring

    maxLength: 2000

    Weitere Verschachtelung ausgelassen

  • defaultarray

    Weitere Verschachtelung ausgelassen

  • itemsnicht angegebenerforderlich

    Rekursive typisierte Variable. Geldwerte verwenden {amount_cents: integer, currency: ISO 4217 code}; date-Werte sind ISO-Kalenderdaten und datetime-Werte ISO-Zeitstempel mit Offsets.

    Weitere Verschachtelung ausgelassen

  • samplesobject

    Benannte Beispielwertsätze für Vorschau und Quellvalidierung.

  • Zusätzliche Eigenschaftobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • translationsobject

    ICU-Quellnachrichtenkatalog und optional bereitgestellte Zielkataloge. Fehlende konfigurierte Ziele werden zur asynchronen Übersetzung eingereiht; zum Speichern sind sie nicht erforderlich.

  • Zusätzliche Eigenschaftobject
  • Zusätzliche Eigenschaftstring

Erfolgsantwort 200

Neue Entwurfsrevision und eingereihte Übersetzungsjobs.

application/json

  • valueobject
  • dataobjecterforderlich
  • idstringerforderlich

    format: "uuid"

  • namestringerforderlich
  • versionintegererforderlich

    minimum: 1

  • review_requiredbooleanerforderlich
  • 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
  • Zusätzliche EigenschaftBeliebiger Wert
  • translationsarray
  • Jedes Elementobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • translation_jobsarray
  • Jedes Elementobject
  • Zusätzliche EigenschaftBeliebiger Wert

curl-Beispiel

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

Gespeicherte Quellrevision und eine bereite Locale ohne Versand in der Vorschau anzeigen.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

X-Banger-Product-Id
header · erforderlich

Explizites Betriebsprodukt; muss zu den produktgebundenen OAuth-Zugangsdaten passen.

  • valuestring

    format: "uuid"

contentId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body erforderlich

application/json

  • valueobject

    Verwende entweder sample_set oder variables, nie beides. Standard ist das erste benannte Beispiel.

    Keine zusätzlichen Eigenschaften

  • source_revision_idstring

    format: "uuid"

  • variantstring

    Quell-A/B-Versionsschlüssel.

  • localestring
  • timezonestring

    IANA-Zeitzone; standardmäßig UTC.

  • sample_setstring
  • variablesobject
  • Zusätzliche EigenschaftBeliebiger Wert

Erfolgsantwort 200

Deterministischer Betreff, Preheader, HTML, abgeleiteter Klartext, Locale und Richtung.

application/json

  • valueobject
  • datanicht angegebenerforderlich
  • allOf 1object
  • subjectstringerforderlich
  • preheaderstring
  • htmlstringerforderlich
  • textstringerforderlich
  • localestringerforderlich
  • directionstringerforderlich

    enum: "ltr", "rtl"

  • warningsarray
  • Jedes Elementstring
  • Zusätzliche EigenschaftBeliebiger Wert
  • allOf 2object
  • source_revision_idstringerforderlich

    format: "uuid"

  • layout_revision_idstring | nullerforderlich

    format: "uuid"

curl-Beispiel

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

Fehlgeschlagene automatische Übersetzung des aktuellen Quellentwurfs erneut versuchen.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

X-Banger-Product-Id
header · erforderlich

Explizites Betriebsprodukt; muss zu den produktgebundenen OAuth-Zugangsdaten passen.

  • valuestring

    format: "uuid"

contentId
path · erforderlich
  • valuestring

    format: "uuid"

locale
path · erforderlich
  • valuestring

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Übersetzungswiederholung eingereiht.

application/json

  • valueobject
  • databooleanerforderlich

curl-Beispiel

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

Übersetzungskataloge und Vorbereitungsjobs der Entwurfsrevision lesen.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

X-Banger-Product-Id
header · erforderlich

Explizites Betriebsprodukt; muss zu den produktgebundenen OAuth-Zugangsdaten passen.

  • valuestring

    format: "uuid"

contentId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Aktueller Inhaltsstatus einschließlich Übersetzungen und Jobs.

application/json

  • valueobject
  • datanicht angegebenerforderlich
  • allOf 1object
  • idstringerforderlich

    format: "uuid"

  • namestringerforderlich
  • versionintegererforderlich

    minimum: 1

  • review_requiredbooleanerforderlich
  • 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
  • Zusätzliche EigenschaftBeliebiger Wert
  • translationsarray
  • Jedes Elementobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • translation_jobsarray
  • Jedes Elementobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • allOf 2object
  • source_revisionobjecterforderlich
  • idstringerforderlich

    format: "uuid"

  • content_idstringerforderlich

    format: "uuid"

  • revisionintegererforderlich
  • source_localestringerforderlich
  • configured_localesarrayerforderlich
  • Jedes Elementstring
  • fallback_localestring | nullerforderlich
  • localization_policyobjecterforderlich

    Eine Journey-E-Mail geht nur in der Sprache der Person heraus: Sie wartet auf ihre Übersetzung, etwa eine Minute bei Belegen, Codes und Sicherheitshinweisen und bis zu einen Tag bei anderen E-Mails, und wird nicht gesendet, wenn die Übersetzung dann nicht bereit ist.

    Keine zusätzlichen Eigenschaften

  • manual_reviewboolean

    default: false

  • sourceobjecterforderlich

    Keine zusätzlichen Eigenschaften

  • subjectstringerforderlich

    minLength: 1 · maxLength: 100000

  • preheaderstring

    maxLength: 100000

  • body_textstring

    Für Quellkompatibilität akzeptiert; gerenderter Klartext wird aus dem endgültigen HTML abgeleitet.

    maxLength: 100000

  • body_htmlstringerforderlich

    minLength: 1 · maxLength: 100000

  • layoutstring

    Muss einen {{ content }}-Slot enthalten.

    maxLength: 100000

  • variantsobject

    Optionale Quellversionen. Jede Version wird automatisch in derselben Revision übersetzt.

  • Zusätzliche Eigenschaftobject

    Keine zusätzlichen Eigenschaften

    Weitere Verschachtelung ausgelassen

  • variablesobjecterforderlich
  • Zusätzliche Eigenschaftnicht angegeben

    Rekursive typisierte Variable. Geldwerte verwenden {amount_cents: integer, currency: ISO 4217 code}; date-Werte sind ISO-Kalenderdaten und datetime-Werte ISO-Zeitstempel mit Offsets.

    Weitere Verschachtelung ausgelassen

  • source_messagesobjecterforderlich
  • Zusätzliche Eigenschaftstring
  • layout_idstring | nullerforderlich

    format: "uuid"

  • layout_revision_idstring | nullerforderlich

    format: "uuid"

  • samplesobjecterforderlich
  • Zusätzliche Eigenschaftobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • restored_from_revision_idstring | nullerforderlich

    format: "uuid"

  • translationsarrayerforderlich
  • Jedes Elementnicht angegeben
  • allOf 1object
  • source_revision_idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • localestringerforderlich

    Weitere Verschachtelung ausgelassen

  • stringsobjecterforderlich

    Weitere Verschachtelung ausgelassen

  • provenancestringerforderlich

    enum: "supplied", "generated", "reviewed"

    Weitere Verschachtelung ausgelassen

  • statusstringerforderlich

    enum: "ready", "needs_review"

    Weitere Verschachtelung ausgelassen

  • allOf 2object
  • strings_sha256stringerforderlich

    Weitere Verschachtelung ausgelassen

  • translation_jobsarrayerforderlich
  • Jedes Elementobject
  • idstringerforderlich

    format: "uuid"

  • source_revision_idstringerforderlich

    format: "uuid"

  • localestringerforderlich
  • statusstringerforderlich
  • attempt_countintegererforderlich
  • error_codestring | nullerforderlich

curl-Beispiel

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

Genauen ausstehenden Übersetzungskatalog einer Quellrevision prüfen.

Erfordert den Katalog-SHA-256 aus dem aktuellen Rücklesewert. Korrigierte Zeichenfolgen sind optional; diese Operation veröffentlicht die Quelle nicht.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

X-Banger-Product-Id
header · erforderlich

Explizites Betriebsprodukt; muss zu den produktgebundenen OAuth-Zugangsdaten passen.

  • valuestring

    format: "uuid"

contentId
path · erforderlich
  • valuestring

    format: "uuid"

locale
path · erforderlich
  • valuestring

Anfrage-Body erforderlich

application/json

  • valueobject

    Keine zusätzlichen Eigenschaften

  • source_revision_idstringerforderlich

    format: "uuid"

  • expected_translation_sha256stringerforderlich

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

  • stringsobject
  • Zusätzliche Eigenschaftstring

Erfolgsantwort 200

Geprüfter Katalog und sein neuer SHA-256.

application/json

  • valueobject
  • dataobjecterforderlich
  • source_revision_idstringerforderlich

    format: "uuid"

  • localestringerforderlich
  • stringsobjecterforderlich
  • Zusätzliche Eigenschaftstring
  • provenancestringerforderlich

    enum: "reviewed"

  • statusstringerforderlich

    enum: "ready"

  • strings_sha256stringerforderlich

curl-Beispiel

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

Unveränderliche Veröffentlichungshistorie auflisten.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

X-Banger-Product-Id
header · erforderlich

Explizites Betriebsprodukt; muss zu den produktgebundenen OAuth-Zugangsdaten passen.

  • valuestring

    format: "uuid"

contentId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Veröffentlichungsdatensätze.

application/json

  • valueobject
  • dataobjecterforderlich
  • versionsarrayerforderlich
  • Jedes Elementobject
  • idstringerforderlich

    format: "uuid"

  • revisionintegererforderlich
  • source_localestringerforderlich
  • configured_localesarrayerforderlich
  • Jedes Elementstring
  • sourceobjecterforderlich

    Keine zusätzlichen Eigenschaften

  • subjectstringerforderlich

    minLength: 1 · maxLength: 100000

  • preheaderstring

    maxLength: 100000

  • body_textstring

    Für Quellkompatibilität akzeptiert; gerenderter Klartext wird aus dem endgültigen HTML abgeleitet.

    maxLength: 100000

  • body_htmlstringerforderlich

    minLength: 1 · maxLength: 100000

  • layoutstring

    Muss einen {{ content }}-Slot enthalten.

    maxLength: 100000

  • variantsobject

    Optionale Quellversionen. Jede Version wird automatisch in derselben Revision übersetzt.

  • Zusätzliche Eigenschaftobject

    Keine zusätzlichen Eigenschaften

    Weitere Verschachtelung ausgelassen

  • variablesobjecterforderlich
  • Zusätzliche Eigenschaftnicht angegeben

    Rekursive typisierte Variable. Geldwerte verwenden {amount_cents: integer, currency: ISO 4217 code}; date-Werte sind ISO-Kalenderdaten und datetime-Werte ISO-Zeitstempel mit Offsets.

    Weitere Verschachtelung ausgelassen

  • source_messagesobjecterforderlich
  • Zusätzliche Eigenschaftstring
  • samplesobjecterforderlich
  • Zusätzliche Eigenschaftobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • restored_from_revision_idstring | nullerforderlich

    format: "uuid"

  • created_by_actor_idstringerforderlich
  • created_atstringerforderlich

    format: "date-time"

  • publicationsarrayerforderlich
  • Jedes Elementobject
  • idstringerforderlich

    format: "uuid"

  • source_revision_idstringerforderlich

    format: "uuid"

  • approval_idstring | nullerforderlich

    format: "uuid"

  • published_by_actor_idstringerforderlich
  • published_atstringerforderlich

    format: "date-time"

curl-Beispiel

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

Frühere Quellrevision in einen neuen Entwurf kopieren, ohne ihn zu veröffentlichen.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

X-Banger-Product-Id
header · erforderlich

Explizites Betriebsprodukt; muss zu den produktgebundenen OAuth-Zugangsdaten passen.

  • valuestring

    format: "uuid"

contentId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body erforderlich

application/json

  • valueobject

    Keine zusätzlichen Eigenschaften

  • source_revision_idstringerforderlich

    format: "uuid"

  • expected_versionintegererforderlich

    minimum: 1

Erfolgsantwort 200

Entwurfsstatus wiederhergestellt.

application/json

  • valueobject
  • dataobjecterforderlich
  • idstringerforderlich

    format: "uuid"

  • namestringerforderlich
  • versionintegererforderlich

    minimum: 1

  • review_requiredbooleanerforderlich
  • 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
  • Zusätzliche EigenschaftBeliebiger Wert
  • translationsarray
  • Jedes Elementobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • translation_jobsarray
  • Jedes Elementobject
  • Zusätzliche EigenschaftBeliebiger Wert

curl-Beispiel

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
}'

Verwaltete Layouts

GET/v1/workspaces/{workspaceId}/managed-layouts

Wiederverwendbare Produkt-E-Mail-Layouts auflisten.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

X-Banger-Product-Id
header · erforderlich

Explizites Betriebsprodukt; muss zu den produktgebundenen OAuth-Zugangsdaten passen.

  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Produktlayouts.

application/json

  • valueobject
  • dataarrayerforderlich
  • Jedes Elementobject
  • idstringerforderlich

    format: "uuid"

  • namestringerforderlich
  • versionintegererforderlich
  • draft_revision_idstring | nullerforderlich

    format: "uuid"

  • published_revision_idstring | nullerforderlich

    format: "uuid"

  • published_publication_idstring | nullerforderlich

    format: "uuid"

curl-Beispiel

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

Layoutentwurf aus validiertem HTML oder einem markenbasierten Standard erstellen.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

X-Banger-Product-Id
header · erforderlich

Explizites Betriebsprodukt; muss zu den produktgebundenen OAuth-Zugangsdaten passen.

  • valuestring

    format: "uuid"

Idempotency-Key
header · erforderlich
  • valuestring

    minLength: 1 · maxLength: 256

Anfrage-Body erforderlich

application/json

  • valueobject

    Keine zusätzlichen Eigenschaften

  • namestringerforderlich

    minLength: 1 · maxLength: 200

  • htmlstring

    Muss genau einen Inhaltsslot enthalten.

  • source_localestring
  • source_messagesobject
  • Zusätzliche Eigenschaftstring
  • translationsobject
  • Zusätzliche Eigenschaftobject
  • Zusätzliche Eigenschaftstring

Erfolgsantwort 200

Erfolgreiche Antwort.

application/json

  • valueobject
  • dataobjecterforderlich
  • idstringerforderlich

    format: "uuid"

  • namestringerforderlich
  • versionintegererforderlich
  • draft_revision_idstring | nullerforderlich

    format: "uuid"

  • published_revision_idstring | nullerforderlich

    format: "uuid"

  • published_publication_idstring | nullerforderlich

    format: "uuid"

  • replayedbooleanerforderlich

curl-Beispiel

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}

Layout und seine aktuelle Entwurfsrevision lesen.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

X-Banger-Product-Id
header · erforderlich

Explizites Betriebsprodukt; muss zu den produktgebundenen OAuth-Zugangsdaten passen.

  • valuestring

    format: "uuid"

layoutId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Layout und Entwurfsrevision.

application/json

  • valueobject
  • dataobjecterforderlich
  • idstringerforderlich

    format: "uuid"

  • namestringerforderlich
  • versionintegererforderlich
  • draft_revision_idstring | nullerforderlich

    format: "uuid"

  • published_revision_idstring | nullerforderlich

    format: "uuid"

  • published_publication_idstring | nullerforderlich

    format: "uuid"

  • draft_revisionnicht angegebenerforderlich
  • anyOf 1object
  • idstringerforderlich

    format: "uuid"

  • layout_idstring

    format: "uuid"

  • revisionintegererforderlich
  • htmlstringerforderlich
  • brand_snapshotobjecterforderlich
  • company_namestring

    maxLength: 160

  • logo_urlstring

    Das Symbol: die Bildmarke allein, klein verwendet (E-Mail-Fußzeile, eingeblendete Formulare) und als Kopfzeile, wenn keine Wortmarke vorhanden ist.

    maxLength: 2000

  • wordmark_urlstring

    Die Wortmarke: der gestaltete Firmenname, allein oben in jeder E-Mail angezeigt.

    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_localestringerforderlich
  • source_messagesobjecterforderlich
  • Zusätzliche Eigenschaftstring
  • translationsobjecterforderlich
  • Zusätzliche Eigenschaftobject
  • Zusätzliche Eigenschaftstring

    Weitere Verschachtelung ausgelassen

  • restored_from_revision_idstring | nullerforderlich

    format: "uuid"

  • created_by_actor_idstring
  • created_atstring

    format: "date-time"

  • anyOf 2null

curl-Beispiel

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}

Validierte Layoutentwurfsrevision speichern.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

X-Banger-Product-Id
header · erforderlich

Explizites Betriebsprodukt; muss zu den produktgebundenen OAuth-Zugangsdaten passen.

  • valuestring

    format: "uuid"

layoutId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body erforderlich

application/json

  • valueobject

    Keine zusätzlichen Eigenschaften

  • expected_versionintegererforderlich

    minimum: 1

  • htmlstringerforderlich

    Muss genau einen Inhaltsslot enthalten.

  • source_localestring
  • source_messagesobject
  • Zusätzliche Eigenschaftstring
  • translationsobject
  • Zusätzliche Eigenschaftobject
  • Zusätzliche Eigenschaftstring

Erfolgsantwort 200

Neue Entwurfsrevision.

application/json

  • valueobject
  • dataobjecterforderlich
  • idstringerforderlich

    format: "uuid"

  • namestringerforderlich
  • versionintegererforderlich
  • draft_revision_idstring | nullerforderlich

    format: "uuid"

  • published_revision_idstring | nullerforderlich

    format: "uuid"

  • published_publication_idstring | nullerforderlich

    format: "uuid"

curl-Beispiel

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

Unveränderliche Layoutrevisionen auflisten.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

X-Banger-Product-Id
header · erforderlich

Explizites Betriebsprodukt; muss zu den produktgebundenen OAuth-Zugangsdaten passen.

  • valuestring

    format: "uuid"

layoutId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Layoutrevisionen.

application/json

  • valueobject
  • dataarrayerforderlich
  • Jedes Elementobject
  • idstringerforderlich

    format: "uuid"

  • layout_idstring

    format: "uuid"

  • revisionintegererforderlich
  • htmlstringerforderlich
  • brand_snapshotobjecterforderlich
  • company_namestring

    maxLength: 160

  • logo_urlstring

    Das Symbol: die Bildmarke allein, klein verwendet (E-Mail-Fußzeile, eingeblendete Formulare) und als Kopfzeile, wenn keine Wortmarke vorhanden ist.

    maxLength: 2000

  • wordmark_urlstring

    Die Wortmarke: der gestaltete Firmenname, allein oben in jeder E-Mail angezeigt.

    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_localestringerforderlich
  • source_messagesobjecterforderlich
  • Zusätzliche Eigenschaftstring
  • translationsobjecterforderlich
  • Zusätzliche Eigenschaftobject
  • Zusätzliche Eigenschaftstring
  • restored_from_revision_idstring | nullerforderlich

    format: "uuid"

  • created_by_actor_idstring
  • created_atstring

    format: "date-time"

curl-Beispiel

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

Von einem Layout abhängige Inhaltsentwürfe und Veröffentlichungen beschreiben.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

X-Banger-Product-Id
header · erforderlich

Explizites Betriebsprodukt; muss zu den produktgebundenen OAuth-Zugangsdaten passen.

  • valuestring

    format: "uuid"

layoutId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Auswirkungen der Layoutabhängigkeiten.

application/json

  • valueobject
  • dataobjecterforderlich
  • layout_idstringerforderlich

    format: "uuid"

  • layout_revision_idstringerforderlich

    format: "uuid"

  • layout_versionintegererforderlich
  • affected_contentsarrayerforderlich
  • Jedes Elementobject
  • content_idstringerforderlich

    format: "uuid"

  • versionintegererforderlich
  • published_revision_idstringerforderlich

    format: "uuid"

  • active_journeysarrayerforderlich
  • Jedes Elementobject
  • journey_idstringerforderlich

    format: "uuid"

  • versionintegererforderlich
  • definition_sha256stringerforderlich
  • manifest_sha256stringerforderlich

curl-Beispiel

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

Unveränderliche Layoutrevision in einen neuen Entwurf kopieren.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

X-Banger-Product-Id
header · erforderlich

Explizites Betriebsprodukt; muss zu den produktgebundenen OAuth-Zugangsdaten passen.

  • valuestring

    format: "uuid"

layoutId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body erforderlich

application/json

  • valueobject

    Keine zusätzlichen Eigenschaften

  • layout_revision_idstringerforderlich

    format: "uuid"

  • expected_versionintegererforderlich

    minimum: 1

Erfolgsantwort 200

Entwurfsrevision wiederhergestellt.

application/json

  • valueobject
  • dataobjecterforderlich
  • idstringerforderlich

    format: "uuid"

  • namestringerforderlich
  • versionintegererforderlich
  • draft_revision_idstring | nullerforderlich

    format: "uuid"

  • published_revision_idstring | nullerforderlich

    format: "uuid"

  • published_publication_idstring | nullerforderlich

    format: "uuid"

curl-Beispiel

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
}'

Mitglieder

PATCH/v1/workspaces/{workspaceId}/members/{memberId}

Rolle eines anderen Mitglieds ändern.

Eigentümer und Administratoren setzen admin, member oder viewer für ein anderes Mitglied. Eine angemeldete Person oder ein Agent über deren OAuth-Berechtigung muss die Änderung vornehmen; ein eigenständiger API-Schlüssel kann das nicht. Niemand ändert seine eigene Rolle; die Eigentümerrolle ist unveränderlich. Die aktuelle Rolle zu setzen ändert nichts.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

memberId
path · erforderlich

Identitäts-ID des Mitglieds, als `id` im Workspace-Verzeichnis.

  • valuestring

    format: "uuid"

Anfrage-Body erforderlich

application/json

  • valueobject

    Keine zusätzlichen Eigenschaften

  • rolestringerforderlich

    enum: "admin", "member", "viewer"

Erfolgsantwort 200

Mitglied mit neuer und vorheriger Rolle.

application/json

  • valueobject
  • datanicht angegebenerforderlich
  • allOf 1object
  • idstringerforderlich

    format: "uuid"

  • userIdstringerforderlich
  • emailstring

    format: "email"

  • displayNamestring
  • kindstringerforderlich

    const: "user"

  • rolestringerforderlich

    enum: "owner", "admin", "member", "viewer"

  • statusstringerforderlich

    enum: "active", "suspended"

  • allOf 2object
  • previousRolestringerforderlich

    enum: "owner", "admin", "member", "viewer"

curl-Beispiel

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

Ticket für Agentenverbindungseinrichtung erstellen

Erfordert eine angemeldete menschliche Sitzung. API-Schlüssel und Agentenzugangsdaten können diese Operation nicht autorisieren.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body erforderlich

application/json

  • valueobject
  • entry_surfacestringerforderlich

    enum: "codex", "chatgpt", "claude", "grok", "other_agent"

  • client_namestringerforderlich

    minLength: 1 · maxLength: 100

Erfolgsantwort 201

Erfolgreiche Antwort.

application/json

  • valueobject
  • dataobjecterforderlich
  • mcp_urlstringerforderlich
  • expires_atstringerforderlich

    format: "date-time"

  • scopesarrayerforderlich
  • Jedes Elementstring

curl-Beispiel

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

Agentenverbindungscode per E-Mail senden

Erfordert eine angemeldete menschliche Sitzung. API-Schlüssel und Agentenzugangsdaten können diese Operation nicht autorisieren.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body erforderlich

application/json

  • valueobject
  • mcp_urlstringerforderlich

    minLength: 8 · maxLength: 8000

  • reuse_pendingboolean

Erfolgsantwort 201

Erfolgreiche Antwort.

application/json

  • valueobject
  • dataobjecterforderlich
  • statusstringerforderlich

    enum: "code_sent"

  • messagestring
  • expires_atstringerforderlich

    format: "date-time"

curl-Beispiel

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

Ausstehenden Agentenverbindungscode abbrechen

Erfordert eine angemeldete menschliche Sitzung. API-Schlüssel und Agentenzugangsdaten können diese Operation nicht autorisieren.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body erforderlich

application/json

  • valueobject
  • mcp_urlstringerforderlich

    minLength: 8 · maxLength: 8000

Erfolgsantwort 200

Erfolgreiche Antwort.

application/json

  • valueobject
  • dataobjecterforderlich
  • statusstringerforderlich

    enum: "cancelled"

curl-Beispiel

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

Oauth-Clients

GET/v1/workspaces/{workspaceId}/oauth-clients

OAuth-Clients des Workspace für Agentenplattformen auflisten, die sich mit Client-ID und -Secret verbinden, etwa Gemini Enterprise.

Nur Eigentümer und Administratoren. Secrets werden nie zurückgegeben.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Aktive OAuth-Clients, neueste zuerst.

application/json

  • valueobject
  • dataarrayerforderlich
  • Jedes Elementobject
  • client_idstringerforderlich
  • namestringerforderlich
  • presetstringerforderlich

    enum: "gemini_enterprise", "custom"

  • client_surfacestringerforderlich

    Agentenplattform einer OAuth-Verbindung, anhand von Clientname und Weiterleitungs-URIs.

    enum: "codex", "chatgpt", "claude", "grok", "gemini", "other_agent"

  • redirect_urisarrayerforderlich
  • Jedes Elementstring

    format: "uri"

  • connectionsintegererforderlich

    Über diesen Client hergestellte aktive Verbindungen.

    minimum: 0

  • created_atstringerforderlich

    format: "date-time"

  • created_by_youbooleanerforderlich
  • setupobjecterforderlich

    Werte für das Formular eines eigenen MCP-Servers der Agentenplattform.

  • server_urlstringerforderlich

    format: "uri"

  • authorization_urlstringerforderlich

    format: "uri"

  • token_urlstringerforderlich

    format: "uri"

  • scopesstringerforderlich

    Durch Leerzeichen getrennt. offline_access fordert ein Refresh-Token an, das jede Verbindung hat.

  • token_endpoint_auth_methodsarrayerforderlich
  • Jedes Elementstring

    enum: "client_secret_basic", "client_secret_post"

curl-Beispiel

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

Vertraulichen OAuth-Client (Client-ID und -Secret) für eine Agentenplattform erstellen.

Nur Eigentümer und Administratoren. Jedes Mitglied, das sich über den Client verbindet, meldet sich bei Banger an, genehmigt den Zugriff und handelt mit seiner eigenen Rolle in diesem Workspace.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body erforderlich

application/json

  • valueobject

    Keine zusätzlichen Eigenschaften

  • namestring

    In Verbundene Apps angezeigt. Für diese Voreinstellung standardmäßig "Gemini Enterprise".

    minLength: 1 · maxLength: 100

  • presetstring

    gemini_enterprise verwendet Googles Weiterleitungs-URI; custom benötigt redirect_uris.

    default: "gemini_enterprise" · enum: "gemini_enterprise", "custom"

  • redirect_urisarray

    Nur Voreinstellung custom. HTTPS-Weiterleitungs-URIs, bei Erstellung festgelegt.

    minItems: 1 · maxItems: 10

  • Jedes Elementstring

    format: "uri"

Erfolgsantwort 201

OAuth-Client erstellt. Das Client-Secret wird nur einmal zurückgegeben.

application/json

  • valueobject
  • datanicht angegebenerforderlich
  • allOf 1object
  • client_idstringerforderlich
  • namestringerforderlich
  • presetstringerforderlich

    enum: "gemini_enterprise", "custom"

  • client_surfacestringerforderlich

    Agentenplattform einer OAuth-Verbindung, anhand von Clientname und Weiterleitungs-URIs.

    enum: "codex", "chatgpt", "claude", "grok", "gemini", "other_agent"

  • redirect_urisarrayerforderlich
  • Jedes Elementstring

    format: "uri"

  • connectionsintegererforderlich

    Über diesen Client hergestellte aktive Verbindungen.

    minimum: 0

  • created_atstringerforderlich

    format: "date-time"

  • created_by_youbooleanerforderlich
  • setupobjecterforderlich

    Werte für das Formular eines eigenen MCP-Servers der Agentenplattform.

  • server_urlstringerforderlich

    format: "uri"

  • authorization_urlstringerforderlich

    format: "uri"

  • token_urlstringerforderlich

    format: "uri"

  • scopesstringerforderlich

    Durch Leerzeichen getrennt. offline_access fordert ein Refresh-Token an, das jede Verbindung hat.

  • token_endpoint_auth_methodsarrayerforderlich
  • Jedes Elementstring

    enum: "client_secret_basic", "client_secret_post"

  • allOf 2object
  • client_secretstringerforderlich

curl-Beispiel

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

OAuth-Client widerrufen. Sein Secret funktioniert nicht mehr und jede darüber hergestellte Verbindung verliert innerhalb von etwa 30 Sekunden den Zugriff.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

clientId
path · erforderlich
  • valuestring

    maxLength: 200

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

OAuth-Client widerrufen.

application/json

  • valueobject
  • dataobjecterforderlich
  • client_idstringerforderlich
  • revokedbooleanerforderlich

    const: true

  • revoked_connectionsintegererforderlich

    minimum: 0

curl-Beispiel

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

Echtzeit-Ticket

POST/v1/workspaces/{workspaceId}/realtime-ticket

createRealtimeTicket

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body erforderlich

application/json

  • valueobject
  • device_idstringerforderlich

    minLength: 8 · maxLength: 128

Erfolgsantwort 200

Kurzlebiges Ticket für Akteur und Workspace.

application/json

  • valueobject
  • dataobjecterforderlich
  • ticketstringerforderlich
  • websocket_urlstringerforderlich

    format: "uri"

  • expires_atstringerforderlich

    format: "date-time"

curl-Beispiel

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

Prüfrichtlinie

GET/v1/workspaces/{workspaceId}/review-policy

getActionReviewPolicy

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Automatische Prüfrichtlinie des Workspace.

application/json

  • valueobject
  • dataobjecterforderlich
  • policy_versionintegererforderlich

    enum: 1, 2

  • automatic_review_enabledbooleanerforderlich
  • manual_send_review_enabledbooleanerforderlich

    Bei direkten Anfragen standardmäßig False; gespeicherte strengere Limits bleiben aktiv.

  • manual_send_recipient_thresholdintegererforderlich

    minimum: 1 · maximum: 1000000

  • updated_by_actor_idstringerforderlich
  • created_atstring | null

    format: "date-time"

  • updated_atstring | null

    format: "date-time"

curl-Beispiel

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

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body erforderlich

application/json

  • valueobject

    Keine zusätzlichen Eigenschaften

  • automatic_review_enabledbooleanerforderlich
  • manual_send_recipient_thresholdintegererforderlich

    minimum: 1 · maximum: 1000000

  • manual_send_review_enabledboolean

    Optionale menschliche Prüfgrenze aktivieren; explizite Aktualisierungen des älteren Schwellenwerts halten sie aktiv.

Erfolgsantwort 200

Automatische Prüfrichtlinie aktualisiert.

application/json

  • valueobject
  • dataobjecterforderlich
  • policy_versionintegererforderlich

    enum: 1, 2

  • automatic_review_enabledbooleanerforderlich
  • manual_send_review_enabledbooleanerforderlich

    Bei direkten Anfragen standardmäßig False; gespeicherte strengere Limits bleiben aktiv.

  • manual_send_recipient_thresholdintegererforderlich

    minimum: 1 · maximum: 1000000

  • updated_by_actor_idstringerforderlich
  • created_atstring | null

    format: "date-time"

  • updated_atstring | null

    format: "date-time"

curl-Beispiel

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
}'

Auswählen

POST/v1/workspaces/{workspaceId}/select

Einen Workspace zum aktuellen Workspace der angemeldeten Person machen.

Nur Browsersitzungen; API-Schlüssel und OAuth-Berechtigungen sind an den autorisierten Workspace gebunden und erhalten 403 credential_workspace_pinned. Erfordert aktive Mitgliedschaft. Die App öffnet diesen Workspace mit seinen Produkten und seiner Einrichtung. Die Einrichtungs-Journey der Person wird nicht zurückgesetzt. Idempotent.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Workspace ausgewählt.

application/json

  • valueobject
  • dataobjecterforderlich

    Keine zusätzlichen Eigenschaften

  • selected_workspace_idstringerforderlich

    format: "uuid"

curl-Beispiel

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

Absenderavatar

GET/v1/workspaces/{workspaceId}/sender-avatar

getSenderAvatar

Löst zuerst einen genauen Absenderavatar auf und entdeckt und cached danach das Absenderdomain-Symbol im privaten Workspace-B2-Präfix. Ein Absender ohne Bild antwortet mit 204; 404 bedeutet, dass die Adresse kein Absender in diesem Workspace ist.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

email
query · erforderlich
  • valuestring

    format: "email" · maxLength: 320

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Authentifiziertes Absender- oder Domainavatarbild.

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"

curl-Beispiel

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/sender-avatar?email=person%40example.com' \
  --header "Authorization: Bearer $BANGER_API_KEY"

Versandstatus

GET/v1/workspaces/{workspaceId}/sending-health

Durchsetzungsstatus der Absenderreputation, Kanalraten, Pausen und geltende Schwellenwerte lesen.

Jeder Kanal (Postfach, Produkt, Kampagne) jeder Versanddomain mit Hard-Bounce- und Beschwerderaten der letzten 24 Stunden und Zustand (active, warning, paused), etwaigen Domainpausen, pausierten Postfächern und Angabe, ob der Workspace eingefroren ist. Jede Pause nennt ihre häufigsten Bounce- und Beschwerdequellen und ob ein Workspace-Administrator sie aufheben darf. Schwellenwerte sind in docs/product/sending-reputation-enforcement.md dokumentiert.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Versandstatus.

application/json

  • valueobject
  • dataobjecterforderlich
  • workspaceobjecterforderlich
  • statestringerforderlich

    enum: "active", "frozen"

  • holdnicht angegebenerforderlich
  • oneOf 1object
  • idstringerforderlich

    format: "uuid"

  • scopestringerforderlich

    enum: "mailbox", "lane", "domain", "workspace"

  • statestringerforderlich

    enum: "warning", "paused", "frozen"

  • reasonstringerforderlich

    bounce_rate, complaint_rate, core_lane_paused, multiple_lanes_paused, repeat_lane_pause, multiple_domains_paused, shared_organizational_root oder complaint_burst.

  • started_atstringerforderlich

    format: "date-time"

  • review_requiredbooleanerforderlich
  • evidenceobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • resumeobjecterforderlich
  • self_servebooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • blocked_reasonstring | nullerforderlich

    Weitere Verschachtelung ausgelassen

  • resumable_atstring | nullerforderlich

    format: "date-time"

    Weitere Verschachtelung ausgelassen

  • top_sourcesarray
  • Jedes Elementobject

    Weitere Verschachtelung ausgelassen

  • top_recipient_domainsarray
  • Jedes Elementobject

    Weitere Verschachtelung ausgelassen

  • oneOf 2null
  • domainsarrayerforderlich
  • Jedes Elementobject
  • domain_idstringerforderlich

    format: "uuid"

  • domainstringerforderlich
  • product_idstring | nullerforderlich

    format: "uuid"

  • statestringerforderlich

    enum: "active", "paused"

  • holdnicht angegebenerforderlich
  • oneOf 1object
  • idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • scopestringerforderlich

    enum: "mailbox", "lane", "domain", "workspace"

    Weitere Verschachtelung ausgelassen

  • statestringerforderlich

    enum: "warning", "paused", "frozen"

    Weitere Verschachtelung ausgelassen

  • reasonstringerforderlich

    bounce_rate, complaint_rate, core_lane_paused, multiple_lanes_paused, repeat_lane_pause, multiple_domains_paused, shared_organizational_root oder complaint_burst.

    Weitere Verschachtelung ausgelassen

  • started_atstringerforderlich

    format: "date-time"

    Weitere Verschachtelung ausgelassen

  • review_requiredbooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • evidenceobjecterforderlich

    Weitere Verschachtelung ausgelassen

  • resumeobjecterforderlich

    Weitere Verschachtelung ausgelassen

  • top_sourcesarray

    Weitere Verschachtelung ausgelassen

  • top_recipient_domainsarray

    Weitere Verschachtelung ausgelassen

  • oneOf 2null
  • lanesarrayerforderlich
  • Jedes Elementobject
  • lane_kindstringerforderlich

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

    Weitere Verschachtelung ausgelassen

  • sending_stream_idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • from_domainstringerforderlich

    Weitere Verschachtelung ausgelassen

  • statestringerforderlich

    enum: "active", "warning", "paused"

    Weitere Verschachtelung ausgelassen

  • probation_untilstring | nullerforderlich

    format: "date-time"

    Weitere Verschachtelung ausgelassen

  • ratesobjecterforderlich

    Weitere Verschachtelung ausgelassen

  • holdnicht angegebenerforderlich

    Weitere Verschachtelung ausgelassen

  • mailboxesarrayerforderlich
  • Jedes Elementobject
  • mailbox_idstringerforderlich

    format: "uuid"

  • addressstringerforderlich
  • product_idstring | nullerforderlich

    format: "uuid"

  • statestringerforderlich

    enum: "paused"

  • holdobjecterforderlich
  • idstringerforderlich

    format: "uuid"

  • scopestringerforderlich

    enum: "mailbox", "lane", "domain", "workspace"

  • statestringerforderlich

    enum: "warning", "paused", "frozen"

  • reasonstringerforderlich

    bounce_rate, complaint_rate, core_lane_paused, multiple_lanes_paused, repeat_lane_pause, multiple_domains_paused, shared_organizational_root oder complaint_burst.

  • started_atstringerforderlich

    format: "date-time"

  • review_requiredbooleanerforderlich
  • evidenceobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • resumeobjecterforderlich
  • self_servebooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • blocked_reasonstring | nullerforderlich

    Weitere Verschachtelung ausgelassen

  • resumable_atstring | nullerforderlich

    format: "date-time"

    Weitere Verschachtelung ausgelassen

  • top_sourcesarray
  • Jedes Elementobject

    Weitere Verschachtelung ausgelassen

  • top_recipient_domainsarray
  • Jedes Elementobject

    Weitere Verschachtelung ausgelassen

  • thresholdsobjecterforderlich

    Die geltenden Schwellenwerte (src/sending/reputation-policy.ts).

  • Zusätzliche EigenschaftBeliebiger Wert

curl-Beispiel

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

Kanal-, Domain- oder Postfachpause nach Prüfung ihrer Raten und Quellen aufheben.

Nur Workspace-Administrator. 24 Stunden nach einer Kanal- oder Domainpause und einmal pro 30 Tage je Domain erlaubt. Eine erneute Pause innerhalb von 30 Tagen oder ein eingefrorener Workspace benötigt Banger-Prüfung und wird mit 423 abgelehnt. Nach Wiederaufnahme sendet der Kanal 24 Stunden in kleineren Chargen; zurückgehaltene Kampagnen und Journeys laufen automatisch weiter.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body erforderlich

application/json

  • valueobject

    Keine zusätzlichen Eigenschaften

  • hold_idstringerforderlich

    Die Pause (hold.id) aus getSendingHealth.

    format: "uuid"

  • acknowledge_reputation_riskbooleanerforderlich

    const: true

  • reasonstring

    Was behoben wurde; im Auditprotokoll erfasst.

    maxLength: 500

Erfolgsantwort 200

Die Pause wurde aufgehoben.

application/json

  • valueobject
  • dataobjecterforderlich
  • resumedobjecterforderlich
  • idstringerforderlich

    format: "uuid"

  • scopestringerforderlich

    enum: "mailbox", "lane", "domain", "workspace"

  • statestringerforderlich

    enum: "warning", "paused", "frozen"

  • reasonstringerforderlich

    bounce_rate, complaint_rate, core_lane_paused, multiple_lanes_paused, repeat_lane_pause, multiple_domains_paused, shared_organizational_root oder complaint_burst.

  • started_atstringerforderlich

    format: "date-time"

  • review_requiredbooleanerforderlich
  • evidenceobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • resumeobjecterforderlich
  • self_servebooleanerforderlich
  • blocked_reasonstring | nullerforderlich
  • resumable_atstring | nullerforderlich

    format: "date-time"

  • top_sourcesarray
  • Jedes Elementobject
  • signalstringerforderlich

    enum: "hard_bounce", "complaint"

  • sourcestringerforderlich
  • source_idstring | nullerforderlich
  • countintegererforderlich
  • top_recipient_domainsarray
  • Jedes Elementobject
  • signalstringerforderlich

    enum: "hard_bounce", "complaint"

  • recipient_domainstringerforderlich
  • countintegererforderlich
  • probation_untilstring | nullerforderlich

    format: "date-time"

  • healthobjecterforderlich
  • workspaceobjecterforderlich
  • statestringerforderlich

    enum: "active", "frozen"

  • holdnicht angegebenerforderlich
  • oneOf 1object
  • idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • scopestringerforderlich

    enum: "mailbox", "lane", "domain", "workspace"

    Weitere Verschachtelung ausgelassen

  • statestringerforderlich

    enum: "warning", "paused", "frozen"

    Weitere Verschachtelung ausgelassen

  • reasonstringerforderlich

    bounce_rate, complaint_rate, core_lane_paused, multiple_lanes_paused, repeat_lane_pause, multiple_domains_paused, shared_organizational_root oder complaint_burst.

    Weitere Verschachtelung ausgelassen

  • started_atstringerforderlich

    format: "date-time"

    Weitere Verschachtelung ausgelassen

  • review_requiredbooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • evidenceobjecterforderlich

    Weitere Verschachtelung ausgelassen

  • resumeobjecterforderlich

    Weitere Verschachtelung ausgelassen

  • top_sourcesarray

    Weitere Verschachtelung ausgelassen

  • top_recipient_domainsarray

    Weitere Verschachtelung ausgelassen

  • oneOf 2null
  • domainsarrayerforderlich
  • Jedes Elementobject
  • domain_idstringerforderlich

    format: "uuid"

  • domainstringerforderlich
  • product_idstring | nullerforderlich

    format: "uuid"

  • statestringerforderlich

    enum: "active", "paused"

  • holdnicht angegebenerforderlich
  • oneOf 1object

    Weitere Verschachtelung ausgelassen

  • oneOf 2null

    Weitere Verschachtelung ausgelassen

  • lanesarrayerforderlich
  • Jedes Elementobject

    Weitere Verschachtelung ausgelassen

  • mailboxesarrayerforderlich
  • Jedes Elementobject
  • mailbox_idstringerforderlich

    format: "uuid"

  • addressstringerforderlich
  • product_idstring | nullerforderlich

    format: "uuid"

  • statestringerforderlich

    enum: "paused"

  • holdobjecterforderlich
  • idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • scopestringerforderlich

    enum: "mailbox", "lane", "domain", "workspace"

    Weitere Verschachtelung ausgelassen

  • statestringerforderlich

    enum: "warning", "paused", "frozen"

    Weitere Verschachtelung ausgelassen

  • reasonstringerforderlich

    bounce_rate, complaint_rate, core_lane_paused, multiple_lanes_paused, repeat_lane_pause, multiple_domains_paused, shared_organizational_root oder complaint_burst.

    Weitere Verschachtelung ausgelassen

  • started_atstringerforderlich

    format: "date-time"

    Weitere Verschachtelung ausgelassen

  • review_requiredbooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • evidenceobjecterforderlich

    Weitere Verschachtelung ausgelassen

  • resumeobjecterforderlich

    Weitere Verschachtelung ausgelassen

  • top_sourcesarray

    Weitere Verschachtelung ausgelassen

  • top_recipient_domainsarray

    Weitere Verschachtelung ausgelassen

  • thresholdsobjecterforderlich

    Die geltenden Schwellenwerte (src/sending/reputation-policy.ts).

  • Zusätzliche EigenschaftBeliebiger Wert

curl-Beispiel

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

Versandkanäle

GET/v1/workspaces/{workspaceId}/sending-lanes

listEmailLanes

Konfigurierte Kanäle und wirksames Routing für den Standardabsender. Produkt und Kampagne übernehmen die Standard-Mail-Verbindung, bis ein eigener Kanal aktiv ist. Ausstehende Kanäle ersetzen die funktionierende Route nicht.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

X-Banger-Product-Id
header · erforderlich

Explizites Betriebsprodukt; muss zu den produktgebundenen OAuth-Zugangsdaten passen.

  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Kanonische Kanäle, übernommene Routen und vorhandener Standardabsender.

application/json

  • valueobject
  • dataobjecterforderlich
  • domainsarrayerforderlich
  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

  • domain_idstringerforderlich

    format: "uuid"

  • product_idstringerforderlich

    format: "uuid"

  • root_domainstringerforderlich
  • parent_domainstring

    Beibehaltene Firmendomain, wenn ein Kanal eine Subdomain verwendet.

  • setup_modestring

    enum: "simple", "advanced"

  • domain_statusstringerforderlich

    enum: "pending", "verified", "failed", "disabled", "deleting", "deleted"

  • lanesarrayerforderlich

    minItems: 1 · maxItems: 3

  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

  • idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • created_atstring

    format: "date-time"

    Weitere Verschachtelung ausgelassen

  • kindstringerforderlich

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

    Weitere Verschachtelung ausgelassen

  • display_namestringerforderlich

    Weitere Verschachtelung ausgelassen

  • from_domainstringerforderlich

    Weitere Verschachtelung ausgelassen

  • mail_from_domainstring | nullerforderlich

    Weitere Verschachtelung ausgelassen

  • inbound_domainstring | nullerforderlich

    Weitere Verschachtelung ausgelassen

  • route_providerstringerforderlich

    enum: "banger", "resend"

    Weitere Verschachtelung ausgelassen

  • selected_provider_connection_idstring | nullerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • inbound_providerstring | nullerforderlich

    enum: "banger", null

    Weitere Verschachtelung ausgelassen

  • statusstringerforderlich

    enum: "pending", "active", "paused", "deleting", "deleted"

    Weitere Verschachtelung ausgelassen

  • status_reasonstring | nullerforderlich

    Weitere Verschachtelung ausgelassen

  • desired_revisionintegererforderlich

    minimum: 1

    Weitere Verschachtelung ausgelassen

  • observed_revisionintegererforderlich

    minimum: 0

    Weitere Verschachtelung ausgelassen

  • dns_readybooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • provider_readybooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • inbound_readybooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • outbound_readybooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • banger_transport_readybooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • banger_mail_from_domainstring | nullerforderlich

    Weitere Verschachtelung ausgelassen

  • provisioning_job_idstring | nullerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • provisioning_statusstringerforderlich

    enum: "pending", "provisioning", "waiting_dns", "active", "failed", "deleting", "deleted", "not_required"

    Weitere Verschachtelung ausgelassen

  • provisioning_error_codestring | null

    Weitere Verschachtelung ausgelassen

  • provisioning_next_attempt_atstring | null

    Weitere Verschachtelung ausgelassen

  • provisioning_last_checked_atstring | null

    Weitere Verschachtelung ausgelassen

  • provider_identity_statusstring | null

    Weitere Verschachtelung ausgelassen

  • provider_dkim_statusstring | null

    Weitere Verschachtelung ausgelassen

  • dns_recordsarrayerforderlich

    Weitere Verschachtelung ausgelassen

  • dns_recordsarrayerforderlich
  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

  • idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • lane_idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • providerstringerforderlich

    enum: "banger", "resend"

    Weitere Verschachtelung ausgelassen

  • purposestringerforderlich

    Weitere Verschachtelung ausgelassen

  • typestringerforderlich

    enum: "TXT", "MX", "CNAME"

    Weitere Verschachtelung ausgelassen

  • namestringerforderlich

    Weitere Verschachtelung ausgelassen

  • valuestringerforderlich

    Weitere Verschachtelung ausgelassen

  • priorityinteger | nullerforderlich

    Weitere Verschachtelung ausgelassen

  • requiredbooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • statusstringerforderlich

    enum: "pending", "verified", "error"

    Weitere Verschachtelung ausgelassen

  • provider_statusstringerforderlich

    enum: "pending", "verified", "error", "not_applicable"

    Weitere Verschachtelung ausgelassen

  • first_observed_atstring | nullerforderlich

    format: "date-time"

    Weitere Verschachtelung ausgelassen

  • last_checked_atstring | nullerforderlich

    format: "date-time"

    Weitere Verschachtelung ausgelassen

  • errorobjecterforderlich

    Weitere Verschachtelung ausgelassen

  • provider_referencestring | nullerforderlich

    Weitere Verschachtelung ausgelassen

  • deletionobject | nullerforderlich

    Keine zusätzlichen Eigenschaften

  • job_idstringerforderlich

    format: "uuid"

  • statusstringerforderlich

    enum: "pending", "processing", "waiting_provider", "completed", "failed"

  • last_error_codestring | nullerforderlich
  • cleanup_recordsarrayerforderlich

    Genaue DNS-Einträge, die der Nutzer nach abgeschlossenem Abbau entfernen darf.

  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

    Weitere Verschachtelung ausgelassen

  • routingobjecterforderlich
  • mailboxobjecterforderlich
  • kindstringerforderlich

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

  • lane_idstring | nullerforderlich
  • domain_idstring | nullerforderlich
  • from_domainstring | nullerforderlich
  • sourcestringerforderlich

    enum: "dedicated", "default_mail", "unavailable"

  • readybooleanerforderlich
  • pending_lanesarrayerforderlich
  • Jedes Elementobject
  • idstringerforderlich

    Weitere Verschachtelung ausgelassen

  • from_domainstringerforderlich

    Weitere Verschachtelung ausgelassen

  • statusstringerforderlich

    Weitere Verschachtelung ausgelassen

  • productobjecterforderlich
  • kindstringerforderlich

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

  • lane_idstring | nullerforderlich
  • domain_idstring | nullerforderlich
  • from_domainstring | nullerforderlich
  • sourcestringerforderlich

    enum: "dedicated", "default_mail", "unavailable"

  • readybooleanerforderlich
  • pending_lanesarrayerforderlich
  • Jedes Elementobject
  • idstringerforderlich

    Weitere Verschachtelung ausgelassen

  • from_domainstringerforderlich

    Weitere Verschachtelung ausgelassen

  • statusstringerforderlich

    Weitere Verschachtelung ausgelassen

  • broadcastobjecterforderlich
  • kindstringerforderlich

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

  • lane_idstring | nullerforderlich
  • domain_idstring | nullerforderlich
  • from_domainstring | nullerforderlich
  • sourcestringerforderlich

    enum: "dedicated", "default_mail", "unavailable"

  • readybooleanerforderlich
  • pending_lanesarrayerforderlich
  • Jedes Elementobject
  • idstringerforderlich

    Weitere Verschachtelung ausgelassen

  • from_domainstringerforderlich

    Weitere Verschachtelung ausgelassen

  • statusstringerforderlich

    Weitere Verschachtelung ausgelassen

  • default_sendernicht angegebenerforderlich
  • oneOf 1object
  • idstringerforderlich

    format: "uuid"

  • workspace_idstringerforderlich

    format: "uuid"

  • product_idstring | null

    Das Produkt (Projekt), zu dem das Postfach gehört. Clients gruppieren damit Postfächer und erstellen Web-App-Links.

    format: "uuid"

  • domain_idstring | null

    format: "uuid"

  • addressstringerforderlich

    format: "email"

  • display_namestringerforderlich
  • providerstringerforderlich

    enum: "gmail", "smtp"

  • statusstringerforderlich

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

  • status_reasonstring | null
  • suspended_atstring | null
  • mailbox_kindstringerforderlich

    enum: "domain", "starter"

  • oneOf 2null

curl-Beispiel

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

Nur den angeforderten Kanal an seinem genauen Hostnamen vorbereiten. Prüft DNS-Konflikte unter Infrastruktursperre erneut. Vorhandene identische Kanäle werden wiederverwendet; belegte Hostnamen werden nie überschrieben. Keine DNS-Änderungen oder zusätzlichen Kanäle werden erstellt.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

X-Banger-Product-Id
header · erforderlich

Explizites Betriebsprodukt; muss zu den produktgebundenen OAuth-Zugangsdaten passen.

  • valuestring

    format: "uuid"

Idempotency-Key
header · erforderlich
  • valuestring

    minLength: 16 · maxLength: 128

Anfrage-Body erforderlich

application/json

  • valueobject

    Keine zusätzlichen Eigenschaften

  • domainstringerforderlich

    Übergeordnete Firmendomain, etwa example.com.

    minLength: 3 · maxLength: 253

  • from_domainstringerforderlich

    Genauer einzurichtender Stamm- oder Subdomainname, etwa example.com oder news.example.com.

    minLength: 3 · maxLength: 253

  • lanestringerforderlich

    Mail ist das Postfach. Es sendet und empfängt; Produkt und Kampagne sind optionale eigene Versandkanäle.

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

  • root_dmarc_confirmedboolean

    Älteres Kompatibilitätsfeld; die Einrichtung behält bestehende E-Mail-Richtlinien bei und benötigt keine Bestätigung.

  • route_providersobject
  • productstring

    enum: "banger", "resend"

  • broadcaststring

    enum: "banger", "resend"

  • route_domainsobject
  • productstring
  • broadcaststring

Erfolgsantwort 200

Derselbe konfigurierte Kanal idempotent zurückgegeben.

application/json

  • valueobject
  • dataobjecterforderlich

    Keine zusätzlichen Eigenschaften

  • domain_idstringerforderlich

    format: "uuid"

  • product_idstringerforderlich

    format: "uuid"

  • root_domainstringerforderlich
  • parent_domainstring

    Beibehaltene Firmendomain, wenn ein Kanal eine Subdomain verwendet.

  • setup_modestring

    enum: "simple", "advanced"

  • domain_statusstringerforderlich

    enum: "pending", "verified", "failed", "disabled", "deleting", "deleted"

  • lanesarrayerforderlich

    minItems: 1 · maxItems: 3

  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

  • idstringerforderlich

    format: "uuid"

  • created_atstring

    format: "date-time"

  • kindstringerforderlich

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

  • display_namestringerforderlich
  • from_domainstringerforderlich
  • mail_from_domainstring | nullerforderlich
  • inbound_domainstring | nullerforderlich
  • route_providerstringerforderlich

    enum: "banger", "resend"

  • selected_provider_connection_idstring | nullerforderlich

    format: "uuid"

  • inbound_providerstring | nullerforderlich

    enum: "banger", null

  • statusstringerforderlich

    enum: "pending", "active", "paused", "deleting", "deleted"

  • status_reasonstring | nullerforderlich
  • desired_revisionintegererforderlich

    minimum: 1

  • observed_revisionintegererforderlich

    minimum: 0

  • dns_readybooleanerforderlich
  • provider_readybooleanerforderlich
  • inbound_readybooleanerforderlich
  • outbound_readybooleanerforderlich
  • banger_transport_readybooleanerforderlich
  • banger_mail_from_domainstring | nullerforderlich
  • provisioning_job_idstring | nullerforderlich

    format: "uuid"

  • provisioning_statusstringerforderlich

    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_recordsarrayerforderlich
  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

  • idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • lane_idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • providerstringerforderlich

    enum: "banger", "resend"

    Weitere Verschachtelung ausgelassen

  • purposestringerforderlich

    Weitere Verschachtelung ausgelassen

  • typestringerforderlich

    enum: "TXT", "MX", "CNAME"

    Weitere Verschachtelung ausgelassen

  • namestringerforderlich

    Weitere Verschachtelung ausgelassen

  • valuestringerforderlich

    Weitere Verschachtelung ausgelassen

  • priorityinteger | nullerforderlich

    Weitere Verschachtelung ausgelassen

  • requiredbooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • statusstringerforderlich

    enum: "pending", "verified", "error"

    Weitere Verschachtelung ausgelassen

  • provider_statusstringerforderlich

    enum: "pending", "verified", "error", "not_applicable"

    Weitere Verschachtelung ausgelassen

  • first_observed_atstring | nullerforderlich

    format: "date-time"

    Weitere Verschachtelung ausgelassen

  • last_checked_atstring | nullerforderlich

    format: "date-time"

    Weitere Verschachtelung ausgelassen

  • errorobjecterforderlich

    Weitere Verschachtelung ausgelassen

  • provider_referencestring | nullerforderlich

    Weitere Verschachtelung ausgelassen

  • dns_recordsarrayerforderlich
  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

  • idstringerforderlich

    format: "uuid"

  • lane_idstringerforderlich

    format: "uuid"

  • providerstringerforderlich

    enum: "banger", "resend"

  • purposestringerforderlich
  • typestringerforderlich

    enum: "TXT", "MX", "CNAME"

  • namestringerforderlich
  • valuestringerforderlich
  • priorityinteger | nullerforderlich
  • requiredbooleanerforderlich
  • statusstringerforderlich

    enum: "pending", "verified", "error"

  • provider_statusstringerforderlich

    enum: "pending", "verified", "error", "not_applicable"

  • first_observed_atstring | nullerforderlich

    format: "date-time"

  • last_checked_atstring | nullerforderlich

    format: "date-time"

  • errorobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • provider_referencestring | nullerforderlich
  • deletionobject | nullerforderlich

    Keine zusätzlichen Eigenschaften

  • job_idstringerforderlich

    format: "uuid"

  • statusstringerforderlich

    enum: "pending", "processing", "waiting_provider", "completed", "failed"

  • last_error_codestring | nullerforderlich
  • cleanup_recordsarrayerforderlich

    Genaue DNS-Einträge, die der Nutzer nach abgeschlossenem Abbau entfernen darf.

  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

  • idstringerforderlich

    format: "uuid"

  • lane_idstringerforderlich

    format: "uuid"

  • providerstringerforderlich

    enum: "banger", "resend"

  • purposestringerforderlich
  • typestringerforderlich

    enum: "TXT", "MX", "CNAME"

  • namestringerforderlich
  • valuestringerforderlich
  • priorityinteger | nullerforderlich
  • requiredbooleanerforderlich
  • statusstringerforderlich

    enum: "pending", "verified", "error"

  • provider_statusstringerforderlich

    enum: "pending", "verified", "error", "not_applicable"

  • first_observed_atstring | nullerforderlich

    format: "date-time"

  • last_checked_atstring | nullerforderlich

    format: "date-time"

  • errorobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • provider_referencestring | nullerforderlich

curl-Beispiel

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

Verfügbarkeits- und DNS-Vorabprüfung mit reinem Lesezugriff. Erstellt keine Ressourcen. Website-Einträge allein belegen keinen E-Mail-Hostnamen. Liefert bestehende Einrichtung und Konflikte an Namen, die Banger ändern muss. Bestehende Versandauthentifizierung und DMARC-Richtlinien bleiben erhalten.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

X-Banger-Product-Id
header · erforderlich

Explizites Betriebsprodukt; muss zu den produktgebundenen OAuth-Zugangsdaten passen.

  • valuestring

    format: "uuid"

Anfrage-Body erforderlich

application/json

  • valueobject

    Keine zusätzlichen Eigenschaften

  • domainstringerforderlich

    Übergeordnete Firmendomain, etwa example.com.

    minLength: 3 · maxLength: 253

  • from_domainstringerforderlich

    Genauer einzurichtender Stamm- oder Subdomainname, etwa example.com oder news.example.com.

    minLength: 3 · maxLength: 253

  • lanestringerforderlich

    Mail ist das Postfach. Es sendet und empfängt; Produkt und Kampagne sind optionale eigene Versandkanäle.

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

  • root_dmarc_confirmedboolean

    Älteres Kompatibilitätsfeld; die Einrichtung behält bestehende E-Mail-Richtlinien bei und benötigt keine Bestätigung.

  • route_providersobject
  • productstring

    enum: "banger", "resend"

  • broadcaststring

    enum: "banger", "resend"

  • route_domainsobject
  • productstring
  • broadcaststring

Erfolgsantwort 200

Kanaleinrichtungsplan.

application/json

  • valueobject
  • dataobjecterforderlich
  • statusstringerforderlich

    enum: "available", "existing", "occupied", "migration_required"

  • from_domainstringerforderlich
  • lanestringerforderlich

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

  • domain_idstring | nullerforderlich
  • lane_idstring | nullerforderlich
  • messagestringerforderlich
  • requires_root_confirmationbooleanerforderlich

    Immer false; bestehende E-Mail-Richtlinien bleiben erhalten.

  • existing_dnsarrayerforderlich
  • Jedes Elementobject
  • namestringerforderlich
  • typestringerforderlich
  • valuestringerforderlich

curl-Beispiel

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

Bestehende menschliche Migrationsprüfung nur für diesen Kanal anfordern. Nur ein angemeldeter Administrator kann sie in Freigaben autorisieren.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

X-Banger-Product-Id
header · erforderlich

Explizites Betriebsprodukt; muss zu den produktgebundenen OAuth-Zugangsdaten passen.

  • valuestring

    format: "uuid"

Idempotency-Key
header · erforderlich
  • valuestring

    minLength: 16 · maxLength: 128

Anfrage-Body erforderlich

application/json

  • valueobject

    Keine zusätzlichen Eigenschaften

  • domainstringerforderlich

    Übergeordnete Firmendomain, etwa example.com.

    minLength: 3 · maxLength: 253

  • from_domainstringerforderlich

    Genauer einzurichtender Stamm- oder Subdomainname, etwa example.com oder news.example.com.

    minLength: 3 · maxLength: 253

  • lanestringerforderlich

    Mail ist das Postfach. Es sendet und empfängt; Produkt und Kampagne sind optionale eigene Versandkanäle.

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

  • root_dmarc_confirmedboolean

    Älteres Kompatibilitätsfeld; die Einrichtung behält bestehende E-Mail-Richtlinien bei und benötigt keine Bestätigung.

  • route_providersobject
  • productstring

    enum: "banger", "resend"

  • broadcaststring

    enum: "banger", "resend"

  • route_domainsobject
  • productstring
  • broadcaststring

Erfolgsantwort 200

Bestehende Migrationsprüfung zurückgegeben.

application/json

  • valueobject
  • dataobjecterforderlich
  • idstringerforderlich

    format: "uuid"

  • requested_by_actor_idstringerforderlich
  • action_kindstringerforderlich
  • summarystringerforderlich
  • capability_scopesarrayerforderlich
  • Jedes Elementstring
  • resource_scopeobjecterforderlich
  • Zusätzliche Eigenschaftarray
  • Jedes Elementstring
  • payloadobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • payload_sha256stringerforderlich

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

  • statusstringerforderlich

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

  • missedbooleanerforderlich
  • expires_atstringerforderlich

    format: "date-time"

  • decided_by_actor_idstring | null
  • decision_reasonstring | null
  • created_atstringerforderlich

    format: "date-time"

  • updated_atstringerforderlich

    format: "date-time"

  • decided_atstring | null

    format: "date-time"

  • execution_job_idstring

    format: "uuid"

  • reviewobject

    Keine zusätzlichen Eigenschaften

  • dispositionstringerforderlich

    enum: "automatic", "human_required"

  • recipient_countinteger | nullerforderlich

    minimum: 0

  • reasonsarrayerforderlich
  • Jedes Elementstring
  • checksarrayerforderlich
  • Jedes Elementstring

curl-Beispiel

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

Startvorlagen

GET/v1/workspaces/{workspaceId}/starters

listStarters

Startlayouts im Produktmarkenstil, jeweils mit Briefing (Aufgabe, Versandzeitpunkt, Kennzahl, Mechanismus, zu testende Betreffzeilen), Slots und Standardinhalt. Listen sind kompakt und verwenden standardmäßig die Geschäftsart des Produkts; fordere eine Startvorlage per id für ihr body_html an.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

id
query

Eine Startvorlage; enthält 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

Visueller Stil; standardmäßig email_style der Marke.

  • valuestring

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

locale
query

Sprache für integrierte Texte und Galeriebeschriftungen; standardmäßig en-US.

  • valuestring

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Erfolgreiche Antwort.

application/json

  • valueobject
  • dataarrayerforderlich
  • Jedes Elementobject
  • idstringerforderlich
  • versionintegererforderlich
  • categorystringerforderlich
  • message_kindstringerforderlich
  • familystringerforderlich
  • stagestringerforderlich
  • businessesarrayerforderlich
  • Jedes Elementstring
  • namestringerforderlich
  • descriptionstringerforderlich
  • subjectstringerforderlich
  • body_textstringerforderlich
  • briefobjecterforderlich
  • jobstringerforderlich
  • send_whenstringerforderlich
  • metricstringerforderlich
  • mechanicstringerforderlich
  • subject_variantsarrayerforderlich
  • Jedes Elementstring
  • keeparray
  • Jedes Elementstring
  • avoidarray
  • Jedes Elementstring
  • imageryobject
  • defaultstringerforderlich
  • slotstring
  • photo_ideastring
  • slotsarrayerforderlich
  • Jedes Elementobject
  • keystringerforderlich

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

  • labelstring

    maxLength: 120

  • typestring

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

  • helpstring

    maxLength: 300

  • contentobjecterforderlich
  • Zusätzliche Eigenschaftstring
  • body_htmlstring
  • businessstringerforderlich
  • stylestringerforderlich
  • businessesarrayerforderlich
  • Jedes Elementobject
  • keystring
  • labelstring
  • hintstring
  • stagesarrayerforderlich
  • Jedes Elementobject
  • keystring
  • labelstring
  • stylesarrayerforderlich
  • Jedes Elementobject
  • keystringerforderlich
  • labelstringerforderlich
  • descriptionstringerforderlich

curl-Beispiel

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"

Support

POST/v1/workspaces/{workspaceId}/support/messages

Nachricht an Banger-Support senden

Sendet die Nachricht an support@team.bangermail.com mit Reply-To auf die verifizierte Adresse der angemeldeten Person (Person einer OAuth-Berechtigung oder Workspace-Eigentümer bei statischem API-Schlüssel). Workspace, Rolle und Tarif werden angehängt. Zehn Nachrichten pro Tag und Person.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body erforderlich

application/json

  • valueobject
  • messagestringerforderlich

    minLength: 1 · maxLength: 5000

  • contextobject

    Was der Client über den Aufenthaltsort der Person weiß. Jedes Feld ist optional und wird an den Rändern von Leerzeichen bereinigt.

  • surfacestring

    maxLength: 120

  • app_releasestring

    maxLength: 64

  • browserstring

    maxLength: 300

  • localestring

    maxLength: 35

  • recent_errorsarray

    maxItems: 5

  • Jedes Elementstring

    maxLength: 300

Erfolgsantwort 201

Nachricht an Support gesendet.

application/json

  • valueobject
  • dataobject
  • statusstringerforderlich

    enum: "sent"

  • reply_tostringerforderlich

    format: "email"

curl-Beispiel

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

Sperren

GET/v1/workspaces/{workspaceId}/suppressions

listSuppressions

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Erfolgreiche Antwort.

application/json

  • valueobject
  • dataarrayerforderlich
  • Jedes Elementobject
  • email_hashstringerforderlich
  • reasonstringerforderlich

    enum: "unsubscribe", "hard_bounce", "complaint", "manual"

  • source_idstring | nullerforderlich
  • created_atstringerforderlich

    format: "date-time"

curl-Beispiel

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

createSuppression

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body erforderlich

application/json

  • valueobject
  • emailstringerforderlich

    minLength: 3 · maxLength: 320

  • reasonstring

    default: "manual" · enum: "unsubscribe", "hard_bounce", "complaint", "manual"

  • source_idstring

    maxLength: 500

Erfolgsantwort 201

Erfolgreiche Antwort.

application/json

  • valueobject
  • dataobjecterforderlich
  • email_hashstringerforderlich
  • reasonstringerforderlich

    enum: "unsubscribe", "hard_bounce", "complaint", "manual"

  • source_idstring | nullerforderlich
  • created_atstringerforderlich

    format: "date-time"

curl-Beispiel

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

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

emailHash
path · erforderlich
  • valuestring

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

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 204

Sperre entfernt.

Kein Antwort-Body.

curl-Beispiel

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

Oberflächendaten

GET/v1/workspaces/{workspaceId}/surface-data/{surface}

Produktbildschirm über eine autorisierte Datenbanktransaktion laden.

Liefert begrenzte Daten für die erste Anzeige eines produktbezogenen Bildschirms. Die Anfrage prüft Workspace-Mitgliedschaft und ausgewähltes Produkt in derselben mandantenisolierten Transaktion wie die Endpunktabfragen. Der Webhook-Bildschirm enthält event_definitions (Journey-Auslöser- und Zielnamen einschließlich Entwürfen), event_stats (Zahlen gespeicherter eingehender Bestätigungen) und receipts (neueste zuerst, bis zu 51 Zeilen). Clients zeigen 50 Bestätigungen und erkennen über die zusätzliche Zeile eine weitere Seite. Eingehende Webhooks enthalten public_url; Zugangsdaten werden separat abgerufen. Bestätigungsmetadaten enthalten weder rohe Payloads noch historische Test-/Live-Kennzeichnung. outgoing_event_types enthält den festen Katalog automatischer Banger-Ereignisse und das manuelle webhook.test-Ereignis, unabhängig von konfigurierten Endpunkten.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

surface
path · erforderlich
  • 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

Im Webhook-Bildschirm Bestätigungshistorie und ausgehende Zustellungen auf diesen Endpunkt beschränken.

  • valuestring

    format: "uuid"

event_type
query

Im Webhook-Bildschirm eingehende Bestätigungen nach genauem Ereignisnamen filtern. Katalogdefinitionen und Summen bleiben produktweit.

  • valuestring

    maxLength: 120

receipt_before
query

Cursor eingehender Bestätigungen, ein JSON-Objekt mit receivedAt, endpointId und eventId der letzten angezeigten Zeile. Behalte receivedAt unverändert für Genauigkeit unter einer Millisekunde. Kodiere den JSON-Wert für URLs.

  • 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"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Produktbezogene Bildschirmdaten für die erste Anzeige.

application/json

  • valueobject
  • dataobjecterforderlich

    Bildschirmspezifisches Aggregat, ausgewählt über surface und Abfrageparameter. Schlüssel und verschachtelte Ressourcenprojektionen variieren je Oberfläche (home, product, broadcasts, audience, domains, mailboxes, journeys, deliverability, api_keys, webhooks, approvals, connections, logs).

  • Zusätzliche EigenschaftBeliebiger Wert

curl-Beispiel

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"

Triage-Aktionen

GET/v1/workspaces/{workspaceId}/triage-actions

listTriageActions

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • 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

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Erfolgreiche Antwort.

application/json

  • valueobject
  • dataarrayerforderlich
  • Jedes Elementobject
  • idstringerforderlich

    format: "uuid"

  • mailbox_idstringerforderlich

    format: "uuid"

  • thread_idstringerforderlich

    format: "uuid"

  • rule_idstringerforderlich

    format: "uuid"

  • rule_namestringerforderlich
  • auto_set_for_label_idstring | nullerforderlich

    format: "uuid"

  • actionstringerforderlich
  • label_idstring | nullerforderlich

    format: "uuid"

  • label_namestring | nullerforderlich
  • label_emojistring | nullerforderlich
  • thread_subjectstringerforderlich
  • created_atstringerforderlich

    format: "date-time"

  • undone_atstring | nullerforderlich

    format: "date-time"

curl-Beispiel

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

Eine Triage-Aktion rückgängig machen. Standardmäßig lernt ihre Regel auch, dass die E-Mail nicht passt; setze teach_rule auf false für normales Rückgängigmachen.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

actionId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body erforderlich

application/json

  • valueobject
  • teach_ruleboolean

    Bringt der Regel auch bei, dass diese E-Mail nicht passt. False macht die Aktion ohne Feedback rückgängig.

    default: true

Erfolgsantwort 200

Erfolgreiche Antwort.

application/json

  • valueobject
  • dataobjecterforderlich
  • undonebooleanerforderlich

    const: true

  • command_idstring | nullerforderlich

    format: "uuid"

curl-Beispiel

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
}'

Triage-Regeln

GET/v1/workspaces/{workspaceId}/triage-rules

listTriageRules

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

mailbox_id
query
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Erfolgreiche Antwort.

application/json

  • valueobject
  • dataarrayerforderlich
  • Jedes Elementobject
  • idstringerforderlich

    format: "uuid"

  • mailbox_idstringerforderlich

    format: "uuid"

  • namestringerforderlich
  • auto_set_for_label_idstring | nullerforderlich

    format: "uuid"

  • descriptionstring | nullerforderlich
  • exact_conditionsobjecterforderlich

    Keine zusätzlichen Eigenschaften

  • fromarray

    maxItems: 50

  • Jedes Elementstring

    maxLength: 320

  • toarray

    maxItems: 50

  • Jedes Elementstring

    maxLength: 320

  • subject_containsarray

    maxItems: 50

  • Jedes Elementstring

    maxLength: 320

  • has_wordsarray

    maxItems: 50

  • Jedes Elementstring

    maxLength: 320

  • excludes_wordsarray

    maxItems: 50

  • Jedes Elementstring

    maxLength: 320

  • has_attachmentboolean
  • has_label_idsarrayerforderlich
  • Jedes Elementstring

    format: "uuid"

  • actionsarrayerforderlich
  • Jedes Elementobject
  • typestringerforderlich

    enum: "apply_label", "archive", "mark_read", "star"

  • label_idstring

    format: "uuid"

  • enabledbooleanerforderlich
  • versionintegererforderlich
  • error_codestring | nullerforderlich
  • example_countintegererforderlich
  • created_atstringerforderlich

    format: "date-time"

  • updated_atstringerforderlich

    format: "date-time"

curl-Beispiel

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

Triage-Regel für eingehende E-Mails erstellen (jeder Tarif; aktivierte Regeln zählen zum Tarifkontingent). When = description (von Jev beurteilt) und/oder exact_conditions und/oder has_label_ids; Then = actions.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

Idempotency-Key
header

Optionaler Wiederholungsschlüssel, angewendet bei ausgewähltem Produkt.

  • valuestring

    minLength: 1 · maxLength: 256

Anfrage-Body erforderlich

application/json

  • valuenicht angegeben
  • allOf 1object
  • namestring

    maxLength: 120

  • descriptionstring | null

    maxLength: 2000

  • exact_conditionsobject

    Keine zusätzlichen Eigenschaften

  • fromarray

    maxItems: 50

  • Jedes Elementstring

    maxLength: 320

  • toarray

    maxItems: 50

  • Jedes Elementstring

    maxLength: 320

  • subject_containsarray

    maxItems: 50

  • Jedes Elementstring

    maxLength: 320

  • has_wordsarray

    maxItems: 50

  • Jedes Elementstring

    maxLength: 320

  • excludes_wordsarray

    maxItems: 50

  • Jedes Elementstring

    maxLength: 320

  • has_attachmentboolean
  • has_label_idsarray

    maxItems: 50

  • Jedes Elementstring

    format: "uuid"

  • actionsarray

    minItems: 1 · maxItems: 8

  • Jedes Elementobject
  • typestringerforderlich

    enum: "apply_label", "archive", "mark_read", "star"

  • label_idstring

    format: "uuid"

  • enabledboolean
  • allOf 2object
  • mailbox_idstringerforderlich

    format: "uuid"

Erfolgsantwort 201

Erfolgreiche Antwort.

application/json

  • valueobject
  • dataobjecterforderlich
  • idstringerforderlich

    format: "uuid"

  • mailbox_idstringerforderlich

    format: "uuid"

  • namestringerforderlich
  • auto_set_for_label_idstring | nullerforderlich

    format: "uuid"

  • descriptionstring | nullerforderlich
  • exact_conditionsobjecterforderlich

    Keine zusätzlichen Eigenschaften

  • fromarray

    maxItems: 50

  • Jedes Elementstring

    maxLength: 320

  • toarray

    maxItems: 50

  • Jedes Elementstring

    maxLength: 320

  • subject_containsarray

    maxItems: 50

  • Jedes Elementstring

    maxLength: 320

  • has_wordsarray

    maxItems: 50

  • Jedes Elementstring

    maxLength: 320

  • excludes_wordsarray

    maxItems: 50

  • Jedes Elementstring

    maxLength: 320

  • has_attachmentboolean
  • has_label_idsarrayerforderlich
  • Jedes Elementstring

    format: "uuid"

  • actionsarrayerforderlich
  • Jedes Elementobject
  • typestringerforderlich

    enum: "apply_label", "archive", "mark_read", "star"

  • label_idstring

    format: "uuid"

  • enabledbooleanerforderlich
  • versionintegererforderlich
  • error_codestring | nullerforderlich
  • example_countintegererforderlich
  • created_atstringerforderlich

    format: "date-time"

  • updated_atstringerforderlich

    format: "date-time"

curl-Beispiel

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

Welche aktuellen Unterhaltungen zu einem When passen würden. Nur Lesezugriff; liefert keine Bewertungen.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body erforderlich

application/json

  • valueobject
  • mailbox_idstringerforderlich

    format: "uuid"

  • rule_idstring

    format: "uuid"

  • descriptionstring

    maxLength: 2000

  • exact_conditionsobject

    Keine zusätzlichen Eigenschaften

  • fromarray

    maxItems: 50

  • Jedes Elementstring

    maxLength: 320

  • toarray

    maxItems: 50

  • Jedes Elementstring

    maxLength: 320

  • subject_containsarray

    maxItems: 50

  • Jedes Elementstring

    maxLength: 320

  • has_wordsarray

    maxItems: 50

  • Jedes Elementstring

    maxLength: 320

  • excludes_wordsarray

    maxItems: 50

  • Jedes Elementstring

    maxLength: 320

  • has_attachmentboolean
  • has_label_idsarray

    maxItems: 50

  • Jedes Elementstring

    format: "uuid"

  • limitinteger

    minimum: 1 · maximum: 200

Erfolgsantwort 200

Erfolgreiche Antwort.

application/json

  • valueobject
  • dataobjecterforderlich
  • scannedintegererforderlich
  • matchesarrayerforderlich
  • Jedes Elementobject
  • thread_idstringerforderlich

    format: "uuid"

  • subjectstringerforderlich
  • fromstring
  • received_atstring

    format: "date-time"

curl-Beispiel

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

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body erforderlich

application/json

  • valueobject
  • mailbox_idstringerforderlich

    format: "uuid"

  • rule_idsarray

    maxItems: 50

  • Jedes Elementstring

    format: "uuid"

  • daysinteger

    minimum: 1 · maximum: 90

  • include_other_actionsboolean

    Auch archivieren

Erfolgsantwort 202

Erfolgreiche Antwort.

application/json

  • valueobject
  • dataobjecterforderlich
  • queued_threadsintegererforderlich
  • daysintegererforderlich
  • labels_onlybooleanerforderlich

curl-Beispiel

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

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

ruleId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Erfolgreiche Antwort.

application/json

  • valueobject
  • dataobjecterforderlich
  • idstringerforderlich

    format: "uuid"

  • mailbox_idstringerforderlich

    format: "uuid"

  • namestringerforderlich
  • auto_set_for_label_idstring | nullerforderlich

    format: "uuid"

  • descriptionstring | nullerforderlich
  • exact_conditionsobjecterforderlich

    Keine zusätzlichen Eigenschaften

  • fromarray

    maxItems: 50

  • Jedes Elementstring

    maxLength: 320

  • toarray

    maxItems: 50

  • Jedes Elementstring

    maxLength: 320

  • subject_containsarray

    maxItems: 50

  • Jedes Elementstring

    maxLength: 320

  • has_wordsarray

    maxItems: 50

  • Jedes Elementstring

    maxLength: 320

  • excludes_wordsarray

    maxItems: 50

  • Jedes Elementstring

    maxLength: 320

  • has_attachmentboolean
  • has_label_idsarrayerforderlich
  • Jedes Elementstring

    format: "uuid"

  • actionsarrayerforderlich
  • Jedes Elementobject
  • typestringerforderlich

    enum: "apply_label", "archive", "mark_read", "star"

  • label_idstring

    format: "uuid"

  • enabledbooleanerforderlich
  • versionintegererforderlich
  • error_codestring | nullerforderlich
  • example_countintegererforderlich
  • created_atstringerforderlich

    format: "date-time"

  • updated_atstringerforderlich

    format: "date-time"

curl-Beispiel

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

Die automatische Regel eines Labels kann nur über updateLabel bearbeitet werden.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

ruleId
path · erforderlich
  • valuestring

    format: "uuid"

Idempotency-Key
header

Optionaler Wiederholungsschlüssel, angewendet bei ausgewähltem Produkt.

  • valuestring

    minLength: 1 · maxLength: 256

Anfrage-Body erforderlich

application/json

  • valueobject
  • namestring

    maxLength: 120

  • descriptionstring | null

    maxLength: 2000

  • exact_conditionsobject

    Keine zusätzlichen Eigenschaften

  • fromarray

    maxItems: 50

  • Jedes Elementstring

    maxLength: 320

  • toarray

    maxItems: 50

  • Jedes Elementstring

    maxLength: 320

  • subject_containsarray

    maxItems: 50

  • Jedes Elementstring

    maxLength: 320

  • has_wordsarray

    maxItems: 50

  • Jedes Elementstring

    maxLength: 320

  • excludes_wordsarray

    maxItems: 50

  • Jedes Elementstring

    maxLength: 320

  • has_attachmentboolean
  • has_label_idsarray

    maxItems: 50

  • Jedes Elementstring

    format: "uuid"

  • actionsarray

    minItems: 1 · maxItems: 8

  • Jedes Elementobject
  • typestringerforderlich

    enum: "apply_label", "archive", "mark_read", "star"

  • label_idstring

    format: "uuid"

  • enabledboolean

Erfolgsantwort 200

Erfolgreiche Antwort.

application/json

  • valueobject
  • dataobjecterforderlich
  • idstringerforderlich

    format: "uuid"

  • mailbox_idstringerforderlich

    format: "uuid"

  • namestringerforderlich
  • auto_set_for_label_idstring | nullerforderlich

    format: "uuid"

  • descriptionstring | nullerforderlich
  • exact_conditionsobjecterforderlich

    Keine zusätzlichen Eigenschaften

  • fromarray

    maxItems: 50

  • Jedes Elementstring

    maxLength: 320

  • toarray

    maxItems: 50

  • Jedes Elementstring

    maxLength: 320

  • subject_containsarray

    maxItems: 50

  • Jedes Elementstring

    maxLength: 320

  • has_wordsarray

    maxItems: 50

  • Jedes Elementstring

    maxLength: 320

  • excludes_wordsarray

    maxItems: 50

  • Jedes Elementstring

    maxLength: 320

  • has_attachmentboolean
  • has_label_idsarrayerforderlich
  • Jedes Elementstring

    format: "uuid"

  • actionsarrayerforderlich
  • Jedes Elementobject
  • typestringerforderlich

    enum: "apply_label", "archive", "mark_read", "star"

  • label_idstring

    format: "uuid"

  • enabledbooleanerforderlich
  • versionintegererforderlich
  • error_codestring | nullerforderlich
  • example_countintegererforderlich
  • created_atstringerforderlich

    format: "date-time"

  • updated_atstringerforderlich

    format: "date-time"

curl-Beispiel

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

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

ruleId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 204

Triage-Regel gelöscht.

Kein Antwort-Body.

curl-Beispiel

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

Triage-Nutzung

GET/v1/workspaces/{workspaceId}/triage-usage

getTriageUsage

Triage-Nutzung des Workspace in diesem UTC-Kalendermonat gegenüber Tarifkontingenten, Zeitpunkt der Rücksetzung und günstigster Tarif, der mehr E-Mails prüft. Nach dem monatlichen Kontingent bleiben neue E-Mails bis zur Rücksetzung unsortiert.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Erfolgreiche Antwort.

application/json

  • valueobject
  • dataobjecterforderlich
  • unlimitedbooleanerforderlich

    Beide Kontingentgrenzen sind für diesen Workspace aufgehoben.

  • rule_limitintegererforderlich

    Gleichzeitig erlaubte aktive Triage- und automatische Regeln.

  • rules_enabledintegererforderlich
  • run_limitintegererforderlich

    Von Triage pro UTC-Kalendermonat geprüfte E-Mails.

  • runs_this_monthintegererforderlich
  • resets_atstringerforderlich

    Erster Zeitpunkt des nächsten UTC-Kalendermonats.

    format: "date-time"

  • plan_keystringerforderlich

    Aktueller Workspace-Tarif; kostenlos, wenn keiner vorhanden ist.

  • next_plannicht angegebenerforderlich

    Günstigster höherer Tarif, der monatlich mehr E-Mails prüft; null, wenn keiner vorhanden oder unbegrenzt.

  • oneOf 1null
  • oneOf 2object
  • plan_keystringerforderlich
  • labelstringerforderlich
  • monthly_price_usdnumbererforderlich

    Angegebener Monatspreis (jährliche Abrechnung / 12).

  • triage_run_limitintegererforderlich

curl-Beispiel

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

Arbeit

GET/v1/workspaces/{workspaceId}/work

listWork

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • 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"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Workspace-weite Arbeitselemente.

application/json

  • valueobject
  • dataarrayerforderlich
  • Jedes Elementobject
  • idstringerforderlich

    format: "uuid"

  • threadobjecterforderlich
  • idstringerforderlich

    format: "uuid"

  • mailbox_idstringerforderlich

    format: "uuid"

  • subjectstringerforderlich
  • snippetstringerforderlich
  • last_message_atstringerforderlich

    format: "date-time"

  • message_countintegererforderlich
  • unread_countintegererforderlich
  • is_archivedbooleanerforderlich
  • is_trashbooleanerforderlich
  • is_spambooleanerforderlich
  • is_starredbooleanerforderlich
  • is_sentbooleanerforderlich
  • has_attachmentsbooleanerforderlich
  • labelsarrayerforderlich
  • Jedes Elementstring
  • participantsarray
  • Jedes Elementobject
  • namestring

    Weitere Verschachtelung ausgelassen

  • emailstringerforderlich

    format: "email"

    Weitere Verschachtelung ausgelassen

  • statusstringerforderlich

    enum: "open", "waiting", "done"

  • priorityintegererforderlich
  • assignee_identity_idstring
  • updated_atstringerforderlich

    format: "date-time"

  • pageobjecterforderlich
  • next_cursorstring
  • has_morebooleanerforderlich

curl-Beispiel

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

Verbindungen

GET/v1/workspaces/{workspaceId}/connections

Von Banger verwaltete Produkt- und Geschäftsdatenverbindungen auflisten.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Verbindungsmetadaten und Fähigkeiten. Zugangsdaten werden nie zurückgegeben.

application/json

  • valueobject
  • dataarrayerforderlich
  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

  • idstringerforderlich

    format: "uuid"

  • adapter_keystringerforderlich
  • categorystringerforderlich

    enum: "email", "customer", "product", "work", "data"

  • display_namestringerforderlich
  • statusstringerforderlich

    enum: "pending_validation", "active", "error", "disabled"

  • auth_kindstringerforderlich

    enum: "api_key", "oauth2", "service_account", "none"

  • freshness_modestringerforderlich

    enum: "webhook", "poll", "on_demand", "hybrid"

  • capabilitiesarrayerforderlich
  • Jedes Elementstring
  • resource_scopeobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • configobjecterforderlich

    Nicht geheime Adapterkonfiguration, etwa Cloudhost und Projekt-ID.

  • Zusätzliche EigenschaftBeliebiger Wert
  • 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_atstringerforderlich

    format: "date-time"

  • updated_atstringerforderlich

    format: "date-time"

curl-Beispiel

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}

Von Banger verwaltete Quellverbindung validieren und verschlüsseln.

Das Verbinden von Mailchimp startet den Umzug sofort (wie startMailchimpMigration), und die Antwort enthält den ersten Bericht in `mailchimp_migration`. Ohne display_name wird eine Mailchimp-Verbindung nach dem Konto benannt, etwa "Mailchimp (Acme Inc)". Das Verbinden eines bereits verbundenen Mailchimp-Kontos antwortet mit 409 `mailchimp_account_already_connected` und `error.details.connection_id`.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

adapterKey
path · erforderlich
  • valuestring

    enum: "anthropic", "figma", "github", "google-analytics", "google-calendar", "hubspot", "linear", "mailchimp", "notion", "openai", "slack", "snowflake", "zendesk"

Idempotency-Key
header · erforderlich
  • valuestring

    minLength: 16 · maxLength: 128

Anfrage-Body erforderlich

application/json

  • valueobject

    Keine zusätzlichen Eigenschaften

  • api_keystringerforderlich

    API-Schlüssel oder Anbieter-Dienstkonto-JSON.

    minLength: 12 · maxLength: 10000

  • display_namestring

    maxLength: 100

  • configobject
  • Zusätzliche EigenschaftBeliebiger Wert

Erfolgsantwort 200

Idempotente Wiederholung einer bestehenden Verbindungsanfrage.

application/json

  • valueobject
  • dataobjecterforderlich

    Keine zusätzlichen Eigenschaften

  • idstringerforderlich

    format: "uuid"

  • adapter_keystringerforderlich
  • categorystringerforderlich

    enum: "email", "customer", "product", "work", "data"

  • display_namestringerforderlich
  • statusstringerforderlich

    enum: "pending_validation", "active", "error", "disabled"

  • auth_kindstringerforderlich

    enum: "api_key", "oauth2", "service_account", "none"

  • freshness_modestringerforderlich

    enum: "webhook", "poll", "on_demand", "hybrid"

  • capabilitiesarrayerforderlich
  • Jedes Elementstring
  • resource_scopeobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • configobjecterforderlich

    Nicht geheime Adapterkonfiguration, etwa Cloudhost und Projekt-ID.

  • Zusätzliche EigenschaftBeliebiger Wert
  • 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_atstringerforderlich

    format: "date-time"

  • updated_atstringerforderlich

    format: "date-time"

  • mailchimp_migrationobject

    Der Umzug von einer Mailchimp-Verbindung in ein Produkt. Frage GET /mailchimp-migration für den aktuellen Fortschritt ab: `phase` nennt den Stand; `counts`, `audiences`, `segments`, `templates` und `campaigns` wachsen im Verlauf.

  • migration_idstringerforderlich

    format: "uuid"

  • connection_idstringerforderlich

    format: "uuid"

  • product_idstringerforderlich

    format: "uuid"

  • statusstringerforderlich

    enum: "importing", "completed"

  • phasestringerforderlich

    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_atstringerforderlich

    format: "date-time"

  • completed_atstring | nullerforderlich

    format: "date-time"

  • connectionobjecterforderlich
  • display_namestringerforderlich
  • account_namestring | nullerforderlich
  • statusstringerforderlich

    enum: "pending_validation", "active", "error", "disabled"

  • last_error_codestring | nullerforderlich
  • needs_new_keybooleanerforderlich
  • messagestring

    Present when needs_new_key or disconnected, ready to show.

  • progressobjecterforderlich
  • import_streamsintegererforderlich
  • import_streams_doneintegererforderlich
  • failing_streamsarrayerforderlich
  • Jedes Elementobject
  • streamstringerforderlich
  • refstringerforderlich
  • error_codestring | nullerforderlich
  • designs_waitingintegererforderlich
  • notestringerforderlich
  • countsobjecterforderlich
  • contactsintegererforderlich
  • subscribedintegererforderlich
  • unsubscribedintegererforderlich
  • bouncedintegererforderlich
  • contact_listsintegererforderlich
  • contact_fieldsintegererforderlich
  • segments_convertedintegererforderlich
  • segments_kept_as_listsintegererforderlich
  • templates_importedintegererforderlich
  • templates_to_rebuildintegererforderlich
  • campaigns_imported_as_designsintegererforderlich
  • automations_importedintegererforderlich
  • audiencesarrayerforderlich
  • Jedes Elementobject
  • mailchimp_idstringerforderlich
  • namestringerforderlich
  • list_idstring | nullerforderlich

    format: "uuid"

  • list_namestring | nullerforderlich
  • members_in_bangerintegererforderlich
  • subscribedintegererforderlich
  • unsubscribedintegererforderlich
  • bouncedintegererforderlich
  • members_in_mailchimpintegererforderlich
  • contact_fieldsarrayerforderlich
  • Jedes Elementobject
  • mailchimp_tagstringerforderlich
  • namestringerforderlich
  • field_keystringerforderlich
  • typestringerforderlich

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

  • consentstringerforderlich
  • segmentsarrayerforderlich
  • Jedes Elementobject

    Was aus einem Mailchimp-Segment, einer Vorlage oder Kampagne wurde.

  • mailchimp_idstringerforderlich

    Segmente: <audience id>:<segment id>. Vorlagen und Kampagnen: ihre Mailchimp-ID.

  • becamestringerforderlich

    enum: "segment", "contact_list", "template", "needs_rebuild"

  • idstring

    Das Banger-Segment

    format: "uuid"

  • namestringerforderlich
  • reasonstring

    Warum ein Segment eine statische Liste blieb

  • dropped_merge_tagsarray

    Mailchimp-Merge-Tags ohne Banger-Entsprechung, aus dem Design entfernt (Bedingungen auf Merge-Feldern behalten ihren ersten Zweig und sind hier aufgeführt).

  • Jedes Elementstring
  • replaced_footerboolean

    Die Mailchimp-Fußzeile (Browseransicht, Einstellungen, Adresse, Badge) wurde zur Markenfußzeile des Produkts.

  • removed_linksarray

    Entfernte Links zu Mailchimp-eigenen Seiten außerhalb der Fußzeile (etwa Browseransicht), nach ihrem Wortlaut.

  • Jedes Elementstring
  • links_to_fillarray

    In Mailchimp leer gelassene Links; jeder ist nun ein vor dem Versand auszufüllender URL-Slot des Designs.

  • Jedes Elementobject
  • keystringerforderlich

    Weitere Verschachtelung ausgelassen

  • labelstringerforderlich

    Weitere Verschachtelung ausgelassen

  • kept_editsboolean

    Ein erneuter Lauf fand das in Banger bearbeitete Design und ließ es unverändert.

  • templatesarrayerforderlich
  • Jedes Elementobject

    Was aus einem Mailchimp-Segment, einer Vorlage oder Kampagne wurde.

  • mailchimp_idstringerforderlich

    Segmente: <audience id>:<segment id>. Vorlagen und Kampagnen: ihre Mailchimp-ID.

  • becamestringerforderlich

    enum: "segment", "contact_list", "template", "needs_rebuild"

  • idstring

    Das Banger-Segment

    format: "uuid"

  • namestringerforderlich
  • reasonstring

    Warum ein Segment eine statische Liste blieb

  • dropped_merge_tagsarray

    Mailchimp-Merge-Tags ohne Banger-Entsprechung, aus dem Design entfernt (Bedingungen auf Merge-Feldern behalten ihren ersten Zweig und sind hier aufgeführt).

  • Jedes Elementstring
  • replaced_footerboolean

    Die Mailchimp-Fußzeile (Browseransicht, Einstellungen, Adresse, Badge) wurde zur Markenfußzeile des Produkts.

  • removed_linksarray

    Entfernte Links zu Mailchimp-eigenen Seiten außerhalb der Fußzeile (etwa Browseransicht), nach ihrem Wortlaut.

  • Jedes Elementstring
  • links_to_fillarray

    In Mailchimp leer gelassene Links; jeder ist nun ein vor dem Versand auszufüllender URL-Slot des Designs.

  • Jedes Elementobject
  • keystringerforderlich

    Weitere Verschachtelung ausgelassen

  • labelstringerforderlich

    Weitere Verschachtelung ausgelassen

  • kept_editsboolean

    Ein erneuter Lauf fand das in Banger bearbeitete Design und ließ es unverändert.

  • campaignsarrayerforderlich
  • Jedes Elementobject

    Was aus einem Mailchimp-Segment, einer Vorlage oder Kampagne wurde.

  • mailchimp_idstringerforderlich

    Segmente: <audience id>:<segment id>. Vorlagen und Kampagnen: ihre Mailchimp-ID.

  • becamestringerforderlich

    enum: "segment", "contact_list", "template", "needs_rebuild"

  • idstring

    Das Banger-Segment

    format: "uuid"

  • namestringerforderlich
  • reasonstring

    Warum ein Segment eine statische Liste blieb

  • dropped_merge_tagsarray

    Mailchimp-Merge-Tags ohne Banger-Entsprechung, aus dem Design entfernt (Bedingungen auf Merge-Feldern behalten ihren ersten Zweig und sind hier aufgeführt).

  • Jedes Elementstring
  • replaced_footerboolean

    Die Mailchimp-Fußzeile (Browseransicht, Einstellungen, Adresse, Badge) wurde zur Markenfußzeile des Produkts.

  • removed_linksarray

    Entfernte Links zu Mailchimp-eigenen Seiten außerhalb der Fußzeile (etwa Browseransicht), nach ihrem Wortlaut.

  • Jedes Elementstring
  • links_to_fillarray

    In Mailchimp leer gelassene Links; jeder ist nun ein vor dem Versand auszufüllender URL-Slot des Designs.

  • Jedes Elementobject
  • keystringerforderlich

    Weitere Verschachtelung ausgelassen

  • labelstringerforderlich

    Weitere Verschachtelung ausgelassen

  • kept_editsboolean

    Ein erneuter Lauf fand das in Banger bearbeitete Design und ließ es unverändert.

  • automationsobjecterforderlich
  • importedbooleanerforderlich

    const: false

  • whystringerforderlich
  • next_stepsarrayerforderlich
  • Jedes Elementstring
  • help_call_urlstringerforderlich

    format: "uri"

curl-Beispiel

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

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

connectionId
path · erforderlich
  • valuestring

    format: "uuid"

Idempotency-Key
header · erforderlich
  • valuestring

    minLength: 16 · maxLength: 128

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 204

Verbindung, Zugangsdaten, Synchronisierungsstatus und Berechtigungen widerrufen.

Kein Antwort-Body.

curl-Beispiel

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

Aktive Zugangsdaten erneut validieren und Kontometadaten aktualisieren.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

connectionId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Verbindungszugangsdaten sind gültig.

application/json

  • valueobject
  • dataobjecterforderlich

    Keine zusätzlichen Eigenschaften

  • idstringerforderlich

    format: "uuid"

  • adapter_keystringerforderlich
  • categorystringerforderlich

    enum: "email", "customer", "product", "work", "data"

  • display_namestringerforderlich
  • statusstringerforderlich

    enum: "pending_validation", "active", "error", "disabled"

  • auth_kindstringerforderlich

    enum: "api_key", "oauth2", "service_account", "none"

  • freshness_modestringerforderlich

    enum: "webhook", "poll", "on_demand", "hybrid"

  • capabilitiesarrayerforderlich
  • Jedes Elementstring
  • resource_scopeobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • configobjecterforderlich

    Nicht geheime Adapterkonfiguration, etwa Cloudhost und Projekt-ID.

  • Zusätzliche EigenschaftBeliebiger Wert
  • 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_atstringerforderlich

    format: "date-time"

  • updated_atstringerforderlich

    format: "date-time"

curl-Beispiel

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

Verwaltete Verbindungszugangsdaten validieren und atomar rotieren.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

connectionId
path · erforderlich
  • valuestring

    format: "uuid"

Idempotency-Key
header · erforderlich
  • valuestring

    minLength: 16 · maxLength: 128

Anfrage-Body erforderlich

application/json

  • valueobject

    Keine zusätzlichen Eigenschaften

  • api_keystringerforderlich

    API-Schlüssel oder Anbieter-Dienstkonto-JSON.

    minLength: 12 · maxLength: 10000

  • display_namestring

    maxLength: 100

  • configobject
  • Zusätzliche EigenschaftBeliebiger Wert

Erfolgsantwort 200

Idempotente Wiederholung einer früheren Rotation.

application/json

  • valueobject
  • dataobjecterforderlich

    Keine zusätzlichen Eigenschaften

  • idstringerforderlich

    format: "uuid"

  • adapter_keystringerforderlich
  • categorystringerforderlich

    enum: "email", "customer", "product", "work", "data"

  • display_namestringerforderlich
  • statusstringerforderlich

    enum: "pending_validation", "active", "error", "disabled"

  • auth_kindstringerforderlich

    enum: "api_key", "oauth2", "service_account", "none"

  • freshness_modestringerforderlich

    enum: "webhook", "poll", "on_demand", "hybrid"

  • capabilitiesarrayerforderlich
  • Jedes Elementstring
  • resource_scopeobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • configobjecterforderlich

    Nicht geheime Adapterkonfiguration, etwa Cloudhost und Projekt-ID.

  • Zusätzliche EigenschaftBeliebiger Wert
  • 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_atstringerforderlich

    format: "date-time"

  • updated_atstringerforderlich

    format: "date-time"

curl-Beispiel

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

Typisierte begrenzte Leseabfrage einer von Banger verwalteten Verbindung ausführen.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

connectionId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body erforderlich

application/json

  • valueobject

    Keine zusätzlichen Eigenschaften

  • adapter_keystringerforderlich

    enum: "figma", "github", "google-analytics", "google-calendar", "hubspot", "linear", "mailchimp", "notion", "slack", "snowflake", "zendesk"

  • operationstringerforderlich

    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
  • Zusätzliche EigenschaftBeliebiger Wert

Erfolgsantwort 200

Authentifizierte typisierte Antwort der verbundenen Quelle.

application/json

  • valueobject
  • dataobjecterforderlich

    Keine zusätzlichen Eigenschaften

  • adapter_keystringerforderlich

    enum: "figma", "github", "google-analytics", "google-calendar", "hubspot", "linear", "mailchimp", "notion", "slack", "snowflake", "zendesk"

  • operationstringerforderlich
  • capabilitystringerforderlich
  • sourceobjecterforderlich

    Keine zusätzlichen Eigenschaften

  • external_account_idstringerforderlich
  • external_account_namestringerforderlich
  • fetched_atstringerforderlich

    format: "date-time"

  • freshnessstringerforderlich

    const: "live"

  • dataobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert

curl-Beispiel

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

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

connectionId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Aktive Berechtigungen der Verbindung.

application/json

  • valueobject
  • dataarrayerforderlich
  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

  • connection_idstringerforderlich

    format: "uuid"

  • principal_kindstringerforderlich

    enum: "agent", "automation", "api_key"

  • principal_idstringerforderlich
  • capabilitiesarrayerforderlich
  • Jedes Elementstring
  • resource_scopeobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • created_by_actor_idstringerforderlich
  • created_atstringerforderlich

    format: "date-time"

  • updated_atstringerforderlich

    format: "date-time"

  • expires_atstring | null

    format: "date-time"

  • revoked_atstring | null

    format: "date-time"

curl-Beispiel

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

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

connectionId
path · erforderlich
  • valuestring

    format: "uuid"

principalKind
path · erforderlich
  • valuestring

    enum: "agent", "automation", "api_key"

principalId
path · erforderlich
  • valuestring

    minLength: 1 · maxLength: 200

Anfrage-Body erforderlich

application/json

  • valueobject

    Keine zusätzlichen Eigenschaften

  • capabilitiesarrayerforderlich

    minItems: 1 · uniqueItems: true

  • Jedes Elementstring
  • resource_scopeobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • expires_atstring

    format: "date-time"

Erfolgsantwort 200

Verbindungszugriff gewährt oder ersetzt.

application/json

  • valueobject
  • dataobjecterforderlich

    Keine zusätzlichen Eigenschaften

  • connection_idstringerforderlich

    format: "uuid"

  • principal_kindstringerforderlich

    enum: "agent", "automation", "api_key"

  • principal_idstringerforderlich
  • capabilitiesarrayerforderlich
  • Jedes Elementstring
  • resource_scopeobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • created_by_actor_idstringerforderlich
  • created_atstringerforderlich

    format: "date-time"

  • updated_atstringerforderlich

    format: "date-time"

  • expires_atstring | null

    format: "date-time"

  • revoked_atstring | null

    format: "date-time"

curl-Beispiel

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

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

connectionId
path · erforderlich
  • valuestring

    format: "uuid"

principalKind
path · erforderlich
  • valuestring

    enum: "agent", "automation", "api_key"

principalId
path · erforderlich
  • valuestring

    minLength: 1 · maxLength: 200

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 204

Verbindungsberechtigung widerrufen.

Kein Antwort-Body.

curl-Beispiel

curl --request DELETE --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/connections/{connectionId}/grants/{principalKind}/{principalId}' \
  --header "Authorization: Bearer $BANGER_API_KEY"

Anbieter

POST/v1/workspaces/{workspaceId}/providers/google/oauth/session

PKCE-geschützte Gmail-Postfachverbindung für diesen Workspace starten.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Gmail-Autorisierungs-URL und Polling-Vertrag.

application/json

  • valueobject
  • sessionobjecterforderlich

    Keine zusätzlichen Eigenschaften

  • sessionIdstringerforderlich

    format: "uuid"

  • authUrlstringerforderlich

    format: "uri"

  • expiresAtintegererforderlich

    format: "int64"

  • pollIntervalMsintegererforderlich

    minimum: 250

curl-Beispiel

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}

Gmail-Autorisierungssitzung innerhalb ihrer Workspace-Grenze abfragen.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

sessionId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Aktueller Gmail-Autorisierungsstatus.

application/json

  • valueobject
  • sessionobjecterforderlich

    Keine zusätzlichen Eigenschaften

  • statusstringerforderlich

    enum: "pending", "complete", "error", "expired"

  • mailboxIdstring | nullerforderlich

    format: "uuid"

  • emailstring | nullerforderlich

    format: "email"

  • errorstring | nullerforderlich
  • expiresAtintegererforderlich

    format: "int64"

curl-Beispiel

curl --request GET --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/providers/google/oauth/sessions/{sessionId}' \
  --header "Authorization: Bearer $BANGER_API_KEY"

Anbieterverbindungen

GET/v1/workspaces/{workspaceId}/provider-connections

listProviderConnections

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Anbieterverbindungsmetadaten. Zugangsdaten werden nie zurückgegeben.

application/json

  • valueobject
  • dataarrayerforderlich
  • Jedes Elementobject
  • idstringerforderlich

    format: "uuid"

  • kindstringerforderlich
  • ownershipstringerforderlich

    enum: "customer", "banger"

  • statusstringerforderlich

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

  • display_namestringerforderlich
  • capabilitiesarrayerforderlich
  • Jedes Elementstring
  • active_credential_versioninteger | null
  • credential_rotation_requiredbooleanerforderlich
  • last_validated_atstring | null

    format: "date-time"

  • last_error_codestring | null
  • disabled_atstring | null

    format: "date-time"

  • created_atstringerforderlich

    format: "date-time"

  • updated_atstringerforderlich

    format: "date-time"

  • verified_domainsarray
  • Jedes Elementstring

curl-Beispiel

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

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

Idempotency-Key
header · erforderlich
  • valuestring

    minLength: 16 · maxLength: 128

Anfrage-Body erforderlich

application/json

  • valueobject

    Keine zusätzlichen Eigenschaften

  • api_keystringerforderlich

    minLength: 16 · maxLength: 500

  • display_namestring

    maxLength: 100

Erfolgsantwort 200

Idempotente Wiederholung der erstellten Resend-Verbindung.

application/json

  • valueobject
  • dataobjecterforderlich
  • idstringerforderlich

    format: "uuid"

  • kindstringerforderlich
  • ownershipstringerforderlich

    enum: "customer", "banger"

  • statusstringerforderlich

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

  • display_namestringerforderlich
  • capabilitiesarrayerforderlich
  • Jedes Elementstring
  • active_credential_versioninteger | null
  • credential_rotation_requiredbooleanerforderlich
  • last_validated_atstring | null

    format: "date-time"

  • last_error_codestring | null
  • disabled_atstring | null

    format: "date-time"

  • created_atstringerforderlich

    format: "date-time"

  • updated_atstringerforderlich

    format: "date-time"

  • verified_domainsarray
  • Jedes Elementstring

curl-Beispiel

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

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

providerConnectionId
path · erforderlich
  • valuestring

    format: "uuid"

Idempotency-Key
header · erforderlich
  • valuestring

    minLength: 16 · maxLength: 128

Anfrage-Body erforderlich

application/json

  • valueobject

    Keine zusätzlichen Eigenschaften

  • api_keystringerforderlich

    minLength: 16 · maxLength: 500

  • display_namestring

    maxLength: 100

Erfolgsantwort 200

Resend-Zugangsdaten rotiert.

application/json

  • valueobject
  • dataobjecterforderlich
  • idstringerforderlich

    format: "uuid"

  • kindstringerforderlich
  • ownershipstringerforderlich

    enum: "customer", "banger"

  • statusstringerforderlich

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

  • display_namestringerforderlich
  • capabilitiesarrayerforderlich
  • Jedes Elementstring
  • active_credential_versioninteger | null
  • credential_rotation_requiredbooleanerforderlich
  • last_validated_atstring | null

    format: "date-time"

  • last_error_codestring | null
  • disabled_atstring | null

    format: "date-time"

  • created_atstringerforderlich

    format: "date-time"

  • updated_atstringerforderlich

    format: "date-time"

  • verified_domainsarray
  • Jedes Elementstring

curl-Beispiel

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

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

providerConnectionId
path · erforderlich
  • valuestring

    format: "uuid"

Idempotency-Key
header · erforderlich
  • valuestring

    minLength: 16 · maxLength: 128

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 204

Anbieterverbindung und aktive Zugangsdaten widerrufen.

Kein Antwort-Body.

curl-Beispiel

curl --request DELETE --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/provider-connections/{providerConnectionId}' \
  --header "Authorization: Bearer $BANGER_API_KEY" \
  --header 'Idempotency-Key: examplexxxxxxxxx'

Versanddomains

GET/v1/workspaces/{workspaceId}/sending-domains

listNativeSendingDomains

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Banger-eigene Versanddomains des Workspace.

application/json

  • valueobject
  • dataarrayerforderlich
  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

  • domain_idstringerforderlich

    format: "uuid"

  • product_idstringerforderlich

    format: "uuid"

  • root_domainstringerforderlich
  • parent_domainstring

    Beibehaltene Firmendomain, wenn ein Kanal eine Subdomain verwendet.

  • setup_modestring

    enum: "simple", "advanced"

  • domain_statusstringerforderlich

    enum: "pending", "verified", "failed", "disabled", "deleting", "deleted"

  • lanesarrayerforderlich

    minItems: 1 · maxItems: 3

  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

  • idstringerforderlich

    format: "uuid"

  • created_atstring

    format: "date-time"

  • kindstringerforderlich

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

  • display_namestringerforderlich
  • from_domainstringerforderlich
  • mail_from_domainstring | nullerforderlich
  • inbound_domainstring | nullerforderlich
  • route_providerstringerforderlich

    enum: "banger", "resend"

  • selected_provider_connection_idstring | nullerforderlich

    format: "uuid"

  • inbound_providerstring | nullerforderlich

    enum: "banger", null

  • statusstringerforderlich

    enum: "pending", "active", "paused", "deleting", "deleted"

  • status_reasonstring | nullerforderlich
  • desired_revisionintegererforderlich

    minimum: 1

  • observed_revisionintegererforderlich

    minimum: 0

  • dns_readybooleanerforderlich
  • provider_readybooleanerforderlich
  • inbound_readybooleanerforderlich
  • outbound_readybooleanerforderlich
  • banger_transport_readybooleanerforderlich
  • banger_mail_from_domainstring | nullerforderlich
  • provisioning_job_idstring | nullerforderlich

    format: "uuid"

  • provisioning_statusstringerforderlich

    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_recordsarrayerforderlich
  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

    Weitere Verschachtelung ausgelassen

  • dns_recordsarrayerforderlich
  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

  • idstringerforderlich

    format: "uuid"

  • lane_idstringerforderlich

    format: "uuid"

  • providerstringerforderlich

    enum: "banger", "resend"

  • purposestringerforderlich
  • typestringerforderlich

    enum: "TXT", "MX", "CNAME"

  • namestringerforderlich
  • valuestringerforderlich
  • priorityinteger | nullerforderlich
  • requiredbooleanerforderlich
  • statusstringerforderlich

    enum: "pending", "verified", "error"

  • provider_statusstringerforderlich

    enum: "pending", "verified", "error", "not_applicable"

  • first_observed_atstring | nullerforderlich

    format: "date-time"

  • last_checked_atstring | nullerforderlich

    format: "date-time"

  • errorobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • provider_referencestring | nullerforderlich
  • deletionobject | nullerforderlich

    Keine zusätzlichen Eigenschaften

  • job_idstringerforderlich

    format: "uuid"

  • statusstringerforderlich

    enum: "pending", "processing", "waiting_provider", "completed", "failed"

  • last_error_codestring | nullerforderlich
  • cleanup_recordsarrayerforderlich

    Genaue DNS-Einträge, die der Nutzer nach abgeschlossenem Abbau entfernen darf.

  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

  • idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • lane_idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • providerstringerforderlich

    enum: "banger", "resend"

    Weitere Verschachtelung ausgelassen

  • purposestringerforderlich

    Weitere Verschachtelung ausgelassen

  • typestringerforderlich

    enum: "TXT", "MX", "CNAME"

    Weitere Verschachtelung ausgelassen

  • namestringerforderlich

    Weitere Verschachtelung ausgelassen

  • valuestringerforderlich

    Weitere Verschachtelung ausgelassen

  • priorityinteger | nullerforderlich

    Weitere Verschachtelung ausgelassen

  • requiredbooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • statusstringerforderlich

    enum: "pending", "verified", "error"

    Weitere Verschachtelung ausgelassen

  • provider_statusstringerforderlich

    enum: "pending", "verified", "error", "not_applicable"

    Weitere Verschachtelung ausgelassen

  • first_observed_atstring | nullerforderlich

    format: "date-time"

    Weitere Verschachtelung ausgelassen

  • last_checked_atstring | nullerforderlich

    format: "date-time"

    Weitere Verschachtelung ausgelassen

  • errorobjecterforderlich

    Weitere Verschachtelung ausgelassen

  • provider_referencestring | nullerforderlich

    Weitere Verschachtelung ausgelassen

curl-Beispiel

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

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

Idempotency-Key
header · erforderlich
  • valuestring

    minLength: 16 · maxLength: 128

Anfrage-Body erforderlich

application/json

  • valueobject

    Keine zusätzlichen Eigenschaften

  • domainstringerforderlich

    Genaue Domain oder Subdomain des Produkts. Standardmäßig leitet Banger drei getrennte Kanalsubdomains ab.

    minLength: 3 · maxLength: 253

  • setup_modestring

    Simple richtet einen Postfachtransport für Empfang und Versand von ausgewählten Postfachadressen ein, einschließlich Kampagnen und Journeys. Advanced richtet getrennte Versandkanäle ein.

    default: "advanced" · enum: "simple", "advanced"

  • mailbox_modestring

    Simple-Einrichtung verwendet ohne Postfachpräfix standardmäßig die Stammdomain; advanced eine Subdomain. Subdomain bewahrt bestehende Domain-E-Mails. Migrate fordert Postfächer an der genauen Domain an. Eine belegte genaue Domain oder ein Kanal erfordert eine Anfrage über sending-domain-migrations mit anschließender Autorisierung im angemeldeten Banger-Freigabenbereich. Agentenzugangsdaten können keine Migration autorisieren. Alte Nachrichten werden nicht importiert und DNS wird nie automatisch geändert.

    enum: "subdomain", "migrate"

  • root_dmarc_confirmedboolean

    Älteres Kompatibilitätsfeld; bestehende Richtlinien bleiben erhalten und die Einrichtung benötigt keine Bestätigung.

  • lane_prefixesobject

    Keine zusätzlichen Eigenschaften

  • mailboxstring

    minLength: 1 · maxLength: 63 · default: "mail"

  • productstring

    minLength: 1 · maxLength: 63 · default: "tx"

  • broadcaststring

    minLength: 1 · maxLength: 63 · default: "broadcast"

  • route_providersobject

    Resend wird nur akzeptiert, wenn Banger es bereits im DNS dieser Domain erkannt hat und das ausgewählte Produkt eine aktive Verbindung hat. Clients dürfen es sonst niemals anbieten.

    Keine zusätzlichen Eigenschaften

  • productstring

    default: "banger" · enum: "banger", "resend"

  • broadcaststring

    default: "banger" · enum: "banger", "resend"

  • route_domainsobject

    Genaue verifizierte Domains, aus Resend synchronisiert. Für jeden Kanal erforderlich, der Resend behält.

    Keine zusätzlichen Eigenschaften

  • productstring

    minLength: 3 · maxLength: 253

  • broadcaststring

    minLength: 3 · maxLength: 253

Erfolgsantwort 200

Idempotente Wiederholung einer Banger-eigenen Versanddomainanfrage.

application/json

  • valueobject
  • dataobjecterforderlich

    Keine zusätzlichen Eigenschaften

  • domain_idstringerforderlich

    format: "uuid"

  • product_idstringerforderlich

    format: "uuid"

  • root_domainstringerforderlich
  • parent_domainstring

    Beibehaltene Firmendomain, wenn ein Kanal eine Subdomain verwendet.

  • setup_modestring

    enum: "simple", "advanced"

  • domain_statusstringerforderlich

    enum: "pending", "verified", "failed", "disabled", "deleting", "deleted"

  • lanesarrayerforderlich

    minItems: 1 · maxItems: 3

  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

  • idstringerforderlich

    format: "uuid"

  • created_atstring

    format: "date-time"

  • kindstringerforderlich

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

  • display_namestringerforderlich
  • from_domainstringerforderlich
  • mail_from_domainstring | nullerforderlich
  • inbound_domainstring | nullerforderlich
  • route_providerstringerforderlich

    enum: "banger", "resend"

  • selected_provider_connection_idstring | nullerforderlich

    format: "uuid"

  • inbound_providerstring | nullerforderlich

    enum: "banger", null

  • statusstringerforderlich

    enum: "pending", "active", "paused", "deleting", "deleted"

  • status_reasonstring | nullerforderlich
  • desired_revisionintegererforderlich

    minimum: 1

  • observed_revisionintegererforderlich

    minimum: 0

  • dns_readybooleanerforderlich
  • provider_readybooleanerforderlich
  • inbound_readybooleanerforderlich
  • outbound_readybooleanerforderlich
  • banger_transport_readybooleanerforderlich
  • banger_mail_from_domainstring | nullerforderlich
  • provisioning_job_idstring | nullerforderlich

    format: "uuid"

  • provisioning_statusstringerforderlich

    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_recordsarrayerforderlich
  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

  • idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • lane_idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • providerstringerforderlich

    enum: "banger", "resend"

    Weitere Verschachtelung ausgelassen

  • purposestringerforderlich

    Weitere Verschachtelung ausgelassen

  • typestringerforderlich

    enum: "TXT", "MX", "CNAME"

    Weitere Verschachtelung ausgelassen

  • namestringerforderlich

    Weitere Verschachtelung ausgelassen

  • valuestringerforderlich

    Weitere Verschachtelung ausgelassen

  • priorityinteger | nullerforderlich

    Weitere Verschachtelung ausgelassen

  • requiredbooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • statusstringerforderlich

    enum: "pending", "verified", "error"

    Weitere Verschachtelung ausgelassen

  • provider_statusstringerforderlich

    enum: "pending", "verified", "error", "not_applicable"

    Weitere Verschachtelung ausgelassen

  • first_observed_atstring | nullerforderlich

    format: "date-time"

    Weitere Verschachtelung ausgelassen

  • last_checked_atstring | nullerforderlich

    format: "date-time"

    Weitere Verschachtelung ausgelassen

  • errorobjecterforderlich

    Weitere Verschachtelung ausgelassen

  • provider_referencestring | nullerforderlich

    Weitere Verschachtelung ausgelassen

  • dns_recordsarrayerforderlich
  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

  • idstringerforderlich

    format: "uuid"

  • lane_idstringerforderlich

    format: "uuid"

  • providerstringerforderlich

    enum: "banger", "resend"

  • purposestringerforderlich
  • typestringerforderlich

    enum: "TXT", "MX", "CNAME"

  • namestringerforderlich
  • valuestringerforderlich
  • priorityinteger | nullerforderlich
  • requiredbooleanerforderlich
  • statusstringerforderlich

    enum: "pending", "verified", "error"

  • provider_statusstringerforderlich

    enum: "pending", "verified", "error", "not_applicable"

  • first_observed_atstring | nullerforderlich

    format: "date-time"

  • last_checked_atstring | nullerforderlich

    format: "date-time"

  • errorobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • provider_referencestring | nullerforderlich
  • deletionobject | nullerforderlich

    Keine zusätzlichen Eigenschaften

  • job_idstringerforderlich

    format: "uuid"

  • statusstringerforderlich

    enum: "pending", "processing", "waiting_provider", "completed", "failed"

  • last_error_codestring | nullerforderlich
  • cleanup_recordsarrayerforderlich

    Genaue DNS-Einträge, die der Nutzer nach abgeschlossenem Abbau entfernen darf.

  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

  • idstringerforderlich

    format: "uuid"

  • lane_idstringerforderlich

    format: "uuid"

  • providerstringerforderlich

    enum: "banger", "resend"

  • purposestringerforderlich
  • typestringerforderlich

    enum: "TXT", "MX", "CNAME"

  • namestringerforderlich
  • valuestringerforderlich
  • priorityinteger | nullerforderlich
  • requiredbooleanerforderlich
  • statusstringerforderlich

    enum: "pending", "verified", "error"

  • provider_statusstringerforderlich

    enum: "pending", "verified", "error", "not_applicable"

  • first_observed_atstring | nullerforderlich

    format: "date-time"

  • last_checked_atstring | nullerforderlich

    format: "date-time"

  • errorobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • provider_referencestring | nullerforderlich

curl-Beispiel

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

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

sendingDomainId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Aktueller Domain-, Stream-, Bereitstellungs- und erforderlicher DNS-Status.

application/json

  • valueobject
  • dataobjecterforderlich

    Keine zusätzlichen Eigenschaften

  • domain_idstringerforderlich

    format: "uuid"

  • product_idstringerforderlich

    format: "uuid"

  • root_domainstringerforderlich
  • parent_domainstring

    Beibehaltene Firmendomain, wenn ein Kanal eine Subdomain verwendet.

  • setup_modestring

    enum: "simple", "advanced"

  • domain_statusstringerforderlich

    enum: "pending", "verified", "failed", "disabled", "deleting", "deleted"

  • lanesarrayerforderlich

    minItems: 1 · maxItems: 3

  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

  • idstringerforderlich

    format: "uuid"

  • created_atstring

    format: "date-time"

  • kindstringerforderlich

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

  • display_namestringerforderlich
  • from_domainstringerforderlich
  • mail_from_domainstring | nullerforderlich
  • inbound_domainstring | nullerforderlich
  • route_providerstringerforderlich

    enum: "banger", "resend"

  • selected_provider_connection_idstring | nullerforderlich

    format: "uuid"

  • inbound_providerstring | nullerforderlich

    enum: "banger", null

  • statusstringerforderlich

    enum: "pending", "active", "paused", "deleting", "deleted"

  • status_reasonstring | nullerforderlich
  • desired_revisionintegererforderlich

    minimum: 1

  • observed_revisionintegererforderlich

    minimum: 0

  • dns_readybooleanerforderlich
  • provider_readybooleanerforderlich
  • inbound_readybooleanerforderlich
  • outbound_readybooleanerforderlich
  • banger_transport_readybooleanerforderlich
  • banger_mail_from_domainstring | nullerforderlich
  • provisioning_job_idstring | nullerforderlich

    format: "uuid"

  • provisioning_statusstringerforderlich

    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_recordsarrayerforderlich
  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

  • idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • lane_idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • providerstringerforderlich

    enum: "banger", "resend"

    Weitere Verschachtelung ausgelassen

  • purposestringerforderlich

    Weitere Verschachtelung ausgelassen

  • typestringerforderlich

    enum: "TXT", "MX", "CNAME"

    Weitere Verschachtelung ausgelassen

  • namestringerforderlich

    Weitere Verschachtelung ausgelassen

  • valuestringerforderlich

    Weitere Verschachtelung ausgelassen

  • priorityinteger | nullerforderlich

    Weitere Verschachtelung ausgelassen

  • requiredbooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • statusstringerforderlich

    enum: "pending", "verified", "error"

    Weitere Verschachtelung ausgelassen

  • provider_statusstringerforderlich

    enum: "pending", "verified", "error", "not_applicable"

    Weitere Verschachtelung ausgelassen

  • first_observed_atstring | nullerforderlich

    format: "date-time"

    Weitere Verschachtelung ausgelassen

  • last_checked_atstring | nullerforderlich

    format: "date-time"

    Weitere Verschachtelung ausgelassen

  • errorobjecterforderlich

    Weitere Verschachtelung ausgelassen

  • provider_referencestring | nullerforderlich

    Weitere Verschachtelung ausgelassen

  • dns_recordsarrayerforderlich
  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

  • idstringerforderlich

    format: "uuid"

  • lane_idstringerforderlich

    format: "uuid"

  • providerstringerforderlich

    enum: "banger", "resend"

  • purposestringerforderlich
  • typestringerforderlich

    enum: "TXT", "MX", "CNAME"

  • namestringerforderlich
  • valuestringerforderlich
  • priorityinteger | nullerforderlich
  • requiredbooleanerforderlich
  • statusstringerforderlich

    enum: "pending", "verified", "error"

  • provider_statusstringerforderlich

    enum: "pending", "verified", "error", "not_applicable"

  • first_observed_atstring | nullerforderlich

    format: "date-time"

  • last_checked_atstring | nullerforderlich

    format: "date-time"

  • errorobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • provider_referencestring | nullerforderlich
  • deletionobject | nullerforderlich

    Keine zusätzlichen Eigenschaften

  • job_idstringerforderlich

    format: "uuid"

  • statusstringerforderlich

    enum: "pending", "processing", "waiting_provider", "completed", "failed"

  • last_error_codestring | nullerforderlich
  • cleanup_recordsarrayerforderlich

    Genaue DNS-Einträge, die der Nutzer nach abgeschlossenem Abbau entfernen darf.

  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

  • idstringerforderlich

    format: "uuid"

  • lane_idstringerforderlich

    format: "uuid"

  • providerstringerforderlich

    enum: "banger", "resend"

  • purposestringerforderlich
  • typestringerforderlich

    enum: "TXT", "MX", "CNAME"

  • namestringerforderlich
  • valuestringerforderlich
  • priorityinteger | nullerforderlich
  • requiredbooleanerforderlich
  • statusstringerforderlich

    enum: "pending", "verified", "error"

  • provider_statusstringerforderlich

    enum: "pending", "verified", "error", "not_applicable"

  • first_observed_atstring | nullerforderlich

    format: "date-time"

  • last_checked_atstring | nullerforderlich

    format: "date-time"

  • errorobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • provider_referencestring | nullerforderlich

curl-Beispiel

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

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

sendingDomainId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body erforderlich

application/json

  • valueobject

    Keine zusätzlichen Eigenschaften

  • confirm_domainstringerforderlich

    Muss genau mit der zu löschenden Stammdomain übereinstimmen.

    minLength: 3 · maxLength: 253

Erfolgsantwort 202

Versand und Empfang werden gestoppt und idempotenter Anbieterabbau eingereiht. E-Mail-Historie und Auditdatensätze bleiben erhalten.

application/json

  • valueobject
  • dataobjecterforderlich

    Keine zusätzlichen Eigenschaften

  • domain_idstringerforderlich

    format: "uuid"

  • product_idstringerforderlich

    format: "uuid"

  • root_domainstringerforderlich
  • parent_domainstring

    Beibehaltene Firmendomain, wenn ein Kanal eine Subdomain verwendet.

  • setup_modestring

    enum: "simple", "advanced"

  • domain_statusstringerforderlich

    enum: "pending", "verified", "failed", "disabled", "deleting", "deleted"

  • lanesarrayerforderlich

    minItems: 1 · maxItems: 3

  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

  • idstringerforderlich

    format: "uuid"

  • created_atstring

    format: "date-time"

  • kindstringerforderlich

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

  • display_namestringerforderlich
  • from_domainstringerforderlich
  • mail_from_domainstring | nullerforderlich
  • inbound_domainstring | nullerforderlich
  • route_providerstringerforderlich

    enum: "banger", "resend"

  • selected_provider_connection_idstring | nullerforderlich

    format: "uuid"

  • inbound_providerstring | nullerforderlich

    enum: "banger", null

  • statusstringerforderlich

    enum: "pending", "active", "paused", "deleting", "deleted"

  • status_reasonstring | nullerforderlich
  • desired_revisionintegererforderlich

    minimum: 1

  • observed_revisionintegererforderlich

    minimum: 0

  • dns_readybooleanerforderlich
  • provider_readybooleanerforderlich
  • inbound_readybooleanerforderlich
  • outbound_readybooleanerforderlich
  • banger_transport_readybooleanerforderlich
  • banger_mail_from_domainstring | nullerforderlich
  • provisioning_job_idstring | nullerforderlich

    format: "uuid"

  • provisioning_statusstringerforderlich

    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_recordsarrayerforderlich
  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

  • idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • lane_idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • providerstringerforderlich

    enum: "banger", "resend"

    Weitere Verschachtelung ausgelassen

  • purposestringerforderlich

    Weitere Verschachtelung ausgelassen

  • typestringerforderlich

    enum: "TXT", "MX", "CNAME"

    Weitere Verschachtelung ausgelassen

  • namestringerforderlich

    Weitere Verschachtelung ausgelassen

  • valuestringerforderlich

    Weitere Verschachtelung ausgelassen

  • priorityinteger | nullerforderlich

    Weitere Verschachtelung ausgelassen

  • requiredbooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • statusstringerforderlich

    enum: "pending", "verified", "error"

    Weitere Verschachtelung ausgelassen

  • provider_statusstringerforderlich

    enum: "pending", "verified", "error", "not_applicable"

    Weitere Verschachtelung ausgelassen

  • first_observed_atstring | nullerforderlich

    format: "date-time"

    Weitere Verschachtelung ausgelassen

  • last_checked_atstring | nullerforderlich

    format: "date-time"

    Weitere Verschachtelung ausgelassen

  • errorobjecterforderlich

    Weitere Verschachtelung ausgelassen

  • provider_referencestring | nullerforderlich

    Weitere Verschachtelung ausgelassen

  • dns_recordsarrayerforderlich
  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

  • idstringerforderlich

    format: "uuid"

  • lane_idstringerforderlich

    format: "uuid"

  • providerstringerforderlich

    enum: "banger", "resend"

  • purposestringerforderlich
  • typestringerforderlich

    enum: "TXT", "MX", "CNAME"

  • namestringerforderlich
  • valuestringerforderlich
  • priorityinteger | nullerforderlich
  • requiredbooleanerforderlich
  • statusstringerforderlich

    enum: "pending", "verified", "error"

  • provider_statusstringerforderlich

    enum: "pending", "verified", "error", "not_applicable"

  • first_observed_atstring | nullerforderlich

    format: "date-time"

  • last_checked_atstring | nullerforderlich

    format: "date-time"

  • errorobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • provider_referencestring | nullerforderlich
  • deletionobject | nullerforderlich

    Keine zusätzlichen Eigenschaften

  • job_idstringerforderlich

    format: "uuid"

  • statusstringerforderlich

    enum: "pending", "processing", "waiting_provider", "completed", "failed"

  • last_error_codestring | nullerforderlich
  • cleanup_recordsarrayerforderlich

    Genaue DNS-Einträge, die der Nutzer nach abgeschlossenem Abbau entfernen darf.

  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

  • idstringerforderlich

    format: "uuid"

  • lane_idstringerforderlich

    format: "uuid"

  • providerstringerforderlich

    enum: "banger", "resend"

  • purposestringerforderlich
  • typestringerforderlich

    enum: "TXT", "MX", "CNAME"

  • namestringerforderlich
  • valuestringerforderlich
  • priorityinteger | nullerforderlich
  • requiredbooleanerforderlich
  • statusstringerforderlich

    enum: "pending", "verified", "error"

  • provider_statusstringerforderlich

    enum: "pending", "verified", "error", "not_applicable"

  • first_observed_atstring | nullerforderlich

    format: "date-time"

  • last_checked_atstring | nullerforderlich

    format: "date-time"

  • errorobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • provider_referencestring | nullerforderlich

curl-Beispiel

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

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

sendingDomainId
path · erforderlich
  • valuestring

    format: "uuid"

laneKind
path · erforderlich
  • valuestring

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

Anfrage-Body erforderlich

application/json

  • valueobject

    Keine zusätzlichen Eigenschaften

  • confirm_domainstringerforderlich

    Genaue Subdomain des ausgewählten Kanals.

Erfolgsantwort 202

Nur der ausgewählte Kanal wird gestoppt und zur Entfernung eingereiht. Andere Kanäle und Nachrichtenhistorie bleiben erhalten.

application/json

  • valueobject
  • dataobjecterforderlich

    Keine zusätzlichen Eigenschaften

  • domain_idstringerforderlich

    format: "uuid"

  • product_idstringerforderlich

    format: "uuid"

  • root_domainstringerforderlich
  • parent_domainstring

    Beibehaltene Firmendomain, wenn ein Kanal eine Subdomain verwendet.

  • setup_modestring

    enum: "simple", "advanced"

  • domain_statusstringerforderlich

    enum: "pending", "verified", "failed", "disabled", "deleting", "deleted"

  • lanesarrayerforderlich

    minItems: 1 · maxItems: 3

  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

  • idstringerforderlich

    format: "uuid"

  • created_atstring

    format: "date-time"

  • kindstringerforderlich

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

  • display_namestringerforderlich
  • from_domainstringerforderlich
  • mail_from_domainstring | nullerforderlich
  • inbound_domainstring | nullerforderlich
  • route_providerstringerforderlich

    enum: "banger", "resend"

  • selected_provider_connection_idstring | nullerforderlich

    format: "uuid"

  • inbound_providerstring | nullerforderlich

    enum: "banger", null

  • statusstringerforderlich

    enum: "pending", "active", "paused", "deleting", "deleted"

  • status_reasonstring | nullerforderlich
  • desired_revisionintegererforderlich

    minimum: 1

  • observed_revisionintegererforderlich

    minimum: 0

  • dns_readybooleanerforderlich
  • provider_readybooleanerforderlich
  • inbound_readybooleanerforderlich
  • outbound_readybooleanerforderlich
  • banger_transport_readybooleanerforderlich
  • banger_mail_from_domainstring | nullerforderlich
  • provisioning_job_idstring | nullerforderlich

    format: "uuid"

  • provisioning_statusstringerforderlich

    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_recordsarrayerforderlich
  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

  • idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • lane_idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • providerstringerforderlich

    enum: "banger", "resend"

    Weitere Verschachtelung ausgelassen

  • purposestringerforderlich

    Weitere Verschachtelung ausgelassen

  • typestringerforderlich

    enum: "TXT", "MX", "CNAME"

    Weitere Verschachtelung ausgelassen

  • namestringerforderlich

    Weitere Verschachtelung ausgelassen

  • valuestringerforderlich

    Weitere Verschachtelung ausgelassen

  • priorityinteger | nullerforderlich

    Weitere Verschachtelung ausgelassen

  • requiredbooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • statusstringerforderlich

    enum: "pending", "verified", "error"

    Weitere Verschachtelung ausgelassen

  • provider_statusstringerforderlich

    enum: "pending", "verified", "error", "not_applicable"

    Weitere Verschachtelung ausgelassen

  • first_observed_atstring | nullerforderlich

    format: "date-time"

    Weitere Verschachtelung ausgelassen

  • last_checked_atstring | nullerforderlich

    format: "date-time"

    Weitere Verschachtelung ausgelassen

  • errorobjecterforderlich

    Weitere Verschachtelung ausgelassen

  • provider_referencestring | nullerforderlich

    Weitere Verschachtelung ausgelassen

  • dns_recordsarrayerforderlich
  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

  • idstringerforderlich

    format: "uuid"

  • lane_idstringerforderlich

    format: "uuid"

  • providerstringerforderlich

    enum: "banger", "resend"

  • purposestringerforderlich
  • typestringerforderlich

    enum: "TXT", "MX", "CNAME"

  • namestringerforderlich
  • valuestringerforderlich
  • priorityinteger | nullerforderlich
  • requiredbooleanerforderlich
  • statusstringerforderlich

    enum: "pending", "verified", "error"

  • provider_statusstringerforderlich

    enum: "pending", "verified", "error", "not_applicable"

  • first_observed_atstring | nullerforderlich

    format: "date-time"

  • last_checked_atstring | nullerforderlich

    format: "date-time"

  • errorobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • provider_referencestring | nullerforderlich
  • deletionobject | nullerforderlich

    Keine zusätzlichen Eigenschaften

  • job_idstringerforderlich

    format: "uuid"

  • statusstringerforderlich

    enum: "pending", "processing", "waiting_provider", "completed", "failed"

  • last_error_codestring | nullerforderlich
  • cleanup_recordsarrayerforderlich

    Genaue DNS-Einträge, die der Nutzer nach abgeschlossenem Abbau entfernen darf.

  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

  • idstringerforderlich

    format: "uuid"

  • lane_idstringerforderlich

    format: "uuid"

  • providerstringerforderlich

    enum: "banger", "resend"

  • purposestringerforderlich
  • typestringerforderlich

    enum: "TXT", "MX", "CNAME"

  • namestringerforderlich
  • valuestringerforderlich
  • priorityinteger | nullerforderlich
  • requiredbooleanerforderlich
  • statusstringerforderlich

    enum: "pending", "verified", "error"

  • provider_statusstringerforderlich

    enum: "pending", "verified", "error", "not_applicable"

  • first_observed_atstring | nullerforderlich

    format: "date-time"

  • last_checked_atstring | nullerforderlich

    format: "date-time"

  • errorobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • provider_referencestring | nullerforderlich

curl-Beispiel

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

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

sendingDomainId
path · erforderlich
  • valuestring

    format: "uuid"

laneKind
path · erforderlich
  • valuestring

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

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Der ausgewählte Kanal wird pausiert, ohne sein DNS oder einen anderen Kanal zu ändern.

application/json

  • valueobject
  • dataobjecterforderlich

    Keine zusätzlichen Eigenschaften

  • domain_idstringerforderlich

    format: "uuid"

  • product_idstringerforderlich

    format: "uuid"

  • root_domainstringerforderlich
  • parent_domainstring

    Beibehaltene Firmendomain, wenn ein Kanal eine Subdomain verwendet.

  • setup_modestring

    enum: "simple", "advanced"

  • domain_statusstringerforderlich

    enum: "pending", "verified", "failed", "disabled", "deleting", "deleted"

  • lanesarrayerforderlich

    minItems: 1 · maxItems: 3

  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

  • idstringerforderlich

    format: "uuid"

  • created_atstring

    format: "date-time"

  • kindstringerforderlich

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

  • display_namestringerforderlich
  • from_domainstringerforderlich
  • mail_from_domainstring | nullerforderlich
  • inbound_domainstring | nullerforderlich
  • route_providerstringerforderlich

    enum: "banger", "resend"

  • selected_provider_connection_idstring | nullerforderlich

    format: "uuid"

  • inbound_providerstring | nullerforderlich

    enum: "banger", null

  • statusstringerforderlich

    enum: "pending", "active", "paused", "deleting", "deleted"

  • status_reasonstring | nullerforderlich
  • desired_revisionintegererforderlich

    minimum: 1

  • observed_revisionintegererforderlich

    minimum: 0

  • dns_readybooleanerforderlich
  • provider_readybooleanerforderlich
  • inbound_readybooleanerforderlich
  • outbound_readybooleanerforderlich
  • banger_transport_readybooleanerforderlich
  • banger_mail_from_domainstring | nullerforderlich
  • provisioning_job_idstring | nullerforderlich

    format: "uuid"

  • provisioning_statusstringerforderlich

    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_recordsarrayerforderlich
  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

  • idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • lane_idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • providerstringerforderlich

    enum: "banger", "resend"

    Weitere Verschachtelung ausgelassen

  • purposestringerforderlich

    Weitere Verschachtelung ausgelassen

  • typestringerforderlich

    enum: "TXT", "MX", "CNAME"

    Weitere Verschachtelung ausgelassen

  • namestringerforderlich

    Weitere Verschachtelung ausgelassen

  • valuestringerforderlich

    Weitere Verschachtelung ausgelassen

  • priorityinteger | nullerforderlich

    Weitere Verschachtelung ausgelassen

  • requiredbooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • statusstringerforderlich

    enum: "pending", "verified", "error"

    Weitere Verschachtelung ausgelassen

  • provider_statusstringerforderlich

    enum: "pending", "verified", "error", "not_applicable"

    Weitere Verschachtelung ausgelassen

  • first_observed_atstring | nullerforderlich

    format: "date-time"

    Weitere Verschachtelung ausgelassen

  • last_checked_atstring | nullerforderlich

    format: "date-time"

    Weitere Verschachtelung ausgelassen

  • errorobjecterforderlich

    Weitere Verschachtelung ausgelassen

  • provider_referencestring | nullerforderlich

    Weitere Verschachtelung ausgelassen

  • dns_recordsarrayerforderlich
  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

  • idstringerforderlich

    format: "uuid"

  • lane_idstringerforderlich

    format: "uuid"

  • providerstringerforderlich

    enum: "banger", "resend"

  • purposestringerforderlich
  • typestringerforderlich

    enum: "TXT", "MX", "CNAME"

  • namestringerforderlich
  • valuestringerforderlich
  • priorityinteger | nullerforderlich
  • requiredbooleanerforderlich
  • statusstringerforderlich

    enum: "pending", "verified", "error"

  • provider_statusstringerforderlich

    enum: "pending", "verified", "error", "not_applicable"

  • first_observed_atstring | nullerforderlich

    format: "date-time"

  • last_checked_atstring | nullerforderlich

    format: "date-time"

  • errorobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • provider_referencestring | nullerforderlich
  • deletionobject | nullerforderlich

    Keine zusätzlichen Eigenschaften

  • job_idstringerforderlich

    format: "uuid"

  • statusstringerforderlich

    enum: "pending", "processing", "waiting_provider", "completed", "failed"

  • last_error_codestring | nullerforderlich
  • cleanup_recordsarrayerforderlich

    Genaue DNS-Einträge, die der Nutzer nach abgeschlossenem Abbau entfernen darf.

  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

  • idstringerforderlich

    format: "uuid"

  • lane_idstringerforderlich

    format: "uuid"

  • providerstringerforderlich

    enum: "banger", "resend"

  • purposestringerforderlich
  • typestringerforderlich

    enum: "TXT", "MX", "CNAME"

  • namestringerforderlich
  • valuestringerforderlich
  • priorityinteger | nullerforderlich
  • requiredbooleanerforderlich
  • statusstringerforderlich

    enum: "pending", "verified", "error"

  • provider_statusstringerforderlich

    enum: "pending", "verified", "error", "not_applicable"

  • first_observed_atstring | nullerforderlich

    format: "date-time"

  • last_checked_atstring | nullerforderlich

    format: "date-time"

  • errorobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • provider_referencestring | nullerforderlich

curl-Beispiel

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

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

sendingDomainId
path · erforderlich
  • valuestring

    format: "uuid"

laneKind
path · erforderlich
  • valuestring

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

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Der ausgewählte Kanal läuft weiter, wenn sein gespeichertes DNS und Anbieterstatus bereit sind.

application/json

  • valueobject
  • dataobjecterforderlich

    Keine zusätzlichen Eigenschaften

  • domain_idstringerforderlich

    format: "uuid"

  • product_idstringerforderlich

    format: "uuid"

  • root_domainstringerforderlich
  • parent_domainstring

    Beibehaltene Firmendomain, wenn ein Kanal eine Subdomain verwendet.

  • setup_modestring

    enum: "simple", "advanced"

  • domain_statusstringerforderlich

    enum: "pending", "verified", "failed", "disabled", "deleting", "deleted"

  • lanesarrayerforderlich

    minItems: 1 · maxItems: 3

  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

  • idstringerforderlich

    format: "uuid"

  • created_atstring

    format: "date-time"

  • kindstringerforderlich

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

  • display_namestringerforderlich
  • from_domainstringerforderlich
  • mail_from_domainstring | nullerforderlich
  • inbound_domainstring | nullerforderlich
  • route_providerstringerforderlich

    enum: "banger", "resend"

  • selected_provider_connection_idstring | nullerforderlich

    format: "uuid"

  • inbound_providerstring | nullerforderlich

    enum: "banger", null

  • statusstringerforderlich

    enum: "pending", "active", "paused", "deleting", "deleted"

  • status_reasonstring | nullerforderlich
  • desired_revisionintegererforderlich

    minimum: 1

  • observed_revisionintegererforderlich

    minimum: 0

  • dns_readybooleanerforderlich
  • provider_readybooleanerforderlich
  • inbound_readybooleanerforderlich
  • outbound_readybooleanerforderlich
  • banger_transport_readybooleanerforderlich
  • banger_mail_from_domainstring | nullerforderlich
  • provisioning_job_idstring | nullerforderlich

    format: "uuid"

  • provisioning_statusstringerforderlich

    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_recordsarrayerforderlich
  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

  • idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • lane_idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • providerstringerforderlich

    enum: "banger", "resend"

    Weitere Verschachtelung ausgelassen

  • purposestringerforderlich

    Weitere Verschachtelung ausgelassen

  • typestringerforderlich

    enum: "TXT", "MX", "CNAME"

    Weitere Verschachtelung ausgelassen

  • namestringerforderlich

    Weitere Verschachtelung ausgelassen

  • valuestringerforderlich

    Weitere Verschachtelung ausgelassen

  • priorityinteger | nullerforderlich

    Weitere Verschachtelung ausgelassen

  • requiredbooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • statusstringerforderlich

    enum: "pending", "verified", "error"

    Weitere Verschachtelung ausgelassen

  • provider_statusstringerforderlich

    enum: "pending", "verified", "error", "not_applicable"

    Weitere Verschachtelung ausgelassen

  • first_observed_atstring | nullerforderlich

    format: "date-time"

    Weitere Verschachtelung ausgelassen

  • last_checked_atstring | nullerforderlich

    format: "date-time"

    Weitere Verschachtelung ausgelassen

  • errorobjecterforderlich

    Weitere Verschachtelung ausgelassen

  • provider_referencestring | nullerforderlich

    Weitere Verschachtelung ausgelassen

  • dns_recordsarrayerforderlich
  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

  • idstringerforderlich

    format: "uuid"

  • lane_idstringerforderlich

    format: "uuid"

  • providerstringerforderlich

    enum: "banger", "resend"

  • purposestringerforderlich
  • typestringerforderlich

    enum: "TXT", "MX", "CNAME"

  • namestringerforderlich
  • valuestringerforderlich
  • priorityinteger | nullerforderlich
  • requiredbooleanerforderlich
  • statusstringerforderlich

    enum: "pending", "verified", "error"

  • provider_statusstringerforderlich

    enum: "pending", "verified", "error", "not_applicable"

  • first_observed_atstring | nullerforderlich

    format: "date-time"

  • last_checked_atstring | nullerforderlich

    format: "date-time"

  • errorobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • provider_referencestring | nullerforderlich
  • deletionobject | nullerforderlich

    Keine zusätzlichen Eigenschaften

  • job_idstringerforderlich

    format: "uuid"

  • statusstringerforderlich

    enum: "pending", "processing", "waiting_provider", "completed", "failed"

  • last_error_codestring | nullerforderlich
  • cleanup_recordsarrayerforderlich

    Genaue DNS-Einträge, die der Nutzer nach abgeschlossenem Abbau entfernen darf.

  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

  • idstringerforderlich

    format: "uuid"

  • lane_idstringerforderlich

    format: "uuid"

  • providerstringerforderlich

    enum: "banger", "resend"

  • purposestringerforderlich
  • typestringerforderlich

    enum: "TXT", "MX", "CNAME"

  • namestringerforderlich
  • valuestringerforderlich
  • priorityinteger | nullerforderlich
  • requiredbooleanerforderlich
  • statusstringerforderlich

    enum: "pending", "verified", "error"

  • provider_statusstringerforderlich

    enum: "pending", "verified", "error", "not_applicable"

  • first_observed_atstring | nullerforderlich

    format: "date-time"

  • last_checked_atstring | nullerforderlich

    format: "date-time"

  • errorobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • provider_referencestring | nullerforderlich

curl-Beispiel

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

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

sendingDomainId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Banger-Identität und DNS-Verifizierung wurden sicher erneut geprüft.

application/json

  • valueobject
  • dataobjecterforderlich

    Keine zusätzlichen Eigenschaften

  • domain_idstringerforderlich

    format: "uuid"

  • product_idstringerforderlich

    format: "uuid"

  • root_domainstringerforderlich
  • parent_domainstring

    Beibehaltene Firmendomain, wenn ein Kanal eine Subdomain verwendet.

  • setup_modestring

    enum: "simple", "advanced"

  • domain_statusstringerforderlich

    enum: "pending", "verified", "failed", "disabled", "deleting", "deleted"

  • lanesarrayerforderlich

    minItems: 1 · maxItems: 3

  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

  • idstringerforderlich

    format: "uuid"

  • created_atstring

    format: "date-time"

  • kindstringerforderlich

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

  • display_namestringerforderlich
  • from_domainstringerforderlich
  • mail_from_domainstring | nullerforderlich
  • inbound_domainstring | nullerforderlich
  • route_providerstringerforderlich

    enum: "banger", "resend"

  • selected_provider_connection_idstring | nullerforderlich

    format: "uuid"

  • inbound_providerstring | nullerforderlich

    enum: "banger", null

  • statusstringerforderlich

    enum: "pending", "active", "paused", "deleting", "deleted"

  • status_reasonstring | nullerforderlich
  • desired_revisionintegererforderlich

    minimum: 1

  • observed_revisionintegererforderlich

    minimum: 0

  • dns_readybooleanerforderlich
  • provider_readybooleanerforderlich
  • inbound_readybooleanerforderlich
  • outbound_readybooleanerforderlich
  • banger_transport_readybooleanerforderlich
  • banger_mail_from_domainstring | nullerforderlich
  • provisioning_job_idstring | nullerforderlich

    format: "uuid"

  • provisioning_statusstringerforderlich

    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_recordsarrayerforderlich
  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

  • idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • lane_idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • providerstringerforderlich

    enum: "banger", "resend"

    Weitere Verschachtelung ausgelassen

  • purposestringerforderlich

    Weitere Verschachtelung ausgelassen

  • typestringerforderlich

    enum: "TXT", "MX", "CNAME"

    Weitere Verschachtelung ausgelassen

  • namestringerforderlich

    Weitere Verschachtelung ausgelassen

  • valuestringerforderlich

    Weitere Verschachtelung ausgelassen

  • priorityinteger | nullerforderlich

    Weitere Verschachtelung ausgelassen

  • requiredbooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • statusstringerforderlich

    enum: "pending", "verified", "error"

    Weitere Verschachtelung ausgelassen

  • provider_statusstringerforderlich

    enum: "pending", "verified", "error", "not_applicable"

    Weitere Verschachtelung ausgelassen

  • first_observed_atstring | nullerforderlich

    format: "date-time"

    Weitere Verschachtelung ausgelassen

  • last_checked_atstring | nullerforderlich

    format: "date-time"

    Weitere Verschachtelung ausgelassen

  • errorobjecterforderlich

    Weitere Verschachtelung ausgelassen

  • provider_referencestring | nullerforderlich

    Weitere Verschachtelung ausgelassen

  • dns_recordsarrayerforderlich
  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

  • idstringerforderlich

    format: "uuid"

  • lane_idstringerforderlich

    format: "uuid"

  • providerstringerforderlich

    enum: "banger", "resend"

  • purposestringerforderlich
  • typestringerforderlich

    enum: "TXT", "MX", "CNAME"

  • namestringerforderlich
  • valuestringerforderlich
  • priorityinteger | nullerforderlich
  • requiredbooleanerforderlich
  • statusstringerforderlich

    enum: "pending", "verified", "error"

  • provider_statusstringerforderlich

    enum: "pending", "verified", "error", "not_applicable"

  • first_observed_atstring | nullerforderlich

    format: "date-time"

  • last_checked_atstring | nullerforderlich

    format: "date-time"

  • errorobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • provider_referencestring | nullerforderlich
  • deletionobject | nullerforderlich

    Keine zusätzlichen Eigenschaften

  • job_idstringerforderlich

    format: "uuid"

  • statusstringerforderlich

    enum: "pending", "processing", "waiting_provider", "completed", "failed"

  • last_error_codestring | nullerforderlich
  • cleanup_recordsarrayerforderlich

    Genaue DNS-Einträge, die der Nutzer nach abgeschlossenem Abbau entfernen darf.

  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

  • idstringerforderlich

    format: "uuid"

  • lane_idstringerforderlich

    format: "uuid"

  • providerstringerforderlich

    enum: "banger", "resend"

  • purposestringerforderlich
  • typestringerforderlich

    enum: "TXT", "MX", "CNAME"

  • namestringerforderlich
  • valuestringerforderlich
  • priorityinteger | nullerforderlich
  • requiredbooleanerforderlich
  • statusstringerforderlich

    enum: "pending", "verified", "error"

  • provider_statusstringerforderlich

    enum: "pending", "verified", "error", "not_applicable"

  • first_observed_atstring | nullerforderlich

    format: "date-time"

  • last_checked_atstring | nullerforderlich

    format: "date-time"

  • errorobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • provider_referencestring | nullerforderlich

curl-Beispiel

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

Versanddomain-Migrationen

POST/v1/workspaces/{workspaceId}/sending-domain-migrations

requestNativeDomainMigration

Genaue Einrichtung und beobachtetes DNS in einer ausstehenden domain.migrate-Freigabe einfrieren. Stellt keine Ressourcen bereit. Nur ein angemeldeter Administrator darf sie im Freigabenbereich autorisieren; Agentenzugangsdaten und automatische Prüfung werden abgelehnt. Die Autorisierung prüft den DNS-Snapshot atomar erneut und bereitet die genehmigte Domain vor.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

Idempotency-Key
header · erforderlich
  • valuestring

    minLength: 16 · maxLength: 128

Anfrage-Body erforderlich

application/json

  • valueobject

    Keine zusätzlichen Eigenschaften

  • domainstringerforderlich

    Genaue Domain oder Subdomain des Produkts. Standardmäßig leitet Banger drei getrennte Kanalsubdomains ab.

    minLength: 3 · maxLength: 253

  • setup_modestring

    Simple richtet einen Postfachtransport für Empfang und Versand von ausgewählten Postfachadressen ein, einschließlich Kampagnen und Journeys. Advanced richtet getrennte Versandkanäle ein.

    default: "advanced" · enum: "simple", "advanced"

  • mailbox_modestring

    Simple-Einrichtung verwendet ohne Postfachpräfix standardmäßig die Stammdomain; advanced eine Subdomain. Subdomain bewahrt bestehende Domain-E-Mails. Migrate fordert Postfächer an der genauen Domain an. Eine belegte genaue Domain oder ein Kanal erfordert eine Anfrage über sending-domain-migrations mit anschließender Autorisierung im angemeldeten Banger-Freigabenbereich. Agentenzugangsdaten können keine Migration autorisieren. Alte Nachrichten werden nicht importiert und DNS wird nie automatisch geändert.

    enum: "subdomain", "migrate"

  • root_dmarc_confirmedboolean

    Älteres Kompatibilitätsfeld; bestehende Richtlinien bleiben erhalten und die Einrichtung benötigt keine Bestätigung.

  • lane_prefixesobject

    Keine zusätzlichen Eigenschaften

  • mailboxstring

    minLength: 1 · maxLength: 63 · default: "mail"

  • productstring

    minLength: 1 · maxLength: 63 · default: "tx"

  • broadcaststring

    minLength: 1 · maxLength: 63 · default: "broadcast"

  • route_providersobject

    Resend wird nur akzeptiert, wenn Banger es bereits im DNS dieser Domain erkannt hat und das ausgewählte Produkt eine aktive Verbindung hat. Clients dürfen es sonst niemals anbieten.

    Keine zusätzlichen Eigenschaften

  • productstring

    default: "banger" · enum: "banger", "resend"

  • broadcaststring

    default: "banger" · enum: "banger", "resend"

  • route_domainsobject

    Genaue verifizierte Domains, aus Resend synchronisiert. Für jeden Kanal erforderlich, der Resend behält.

    Keine zusätzlichen Eigenschaften

  • productstring

    minLength: 3 · maxLength: 253

  • broadcaststring

    minLength: 3 · maxLength: 253

Erfolgsantwort 200

Bestehende Migrationsanfrage idempotent zurückgegeben.

application/json

  • valueobject
  • dataobjecterforderlich
  • idstringerforderlich

    format: "uuid"

  • requested_by_actor_idstringerforderlich
  • action_kindstringerforderlich
  • summarystringerforderlich
  • capability_scopesarrayerforderlich
  • Jedes Elementstring
  • resource_scopeobjecterforderlich
  • Zusätzliche Eigenschaftarray
  • Jedes Elementstring
  • payloadobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • payload_sha256stringerforderlich

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

  • statusstringerforderlich

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

  • missedbooleanerforderlich
  • expires_atstringerforderlich

    format: "date-time"

  • decided_by_actor_idstring | null
  • decision_reasonstring | null
  • created_atstringerforderlich

    format: "date-time"

  • updated_atstringerforderlich

    format: "date-time"

  • decided_atstring | null

    format: "date-time"

  • execution_job_idstring

    format: "uuid"

  • reviewobject

    Keine zusätzlichen Eigenschaften

  • dispositionstringerforderlich

    enum: "automatic", "human_required"

  • recipient_countinteger | nullerforderlich

    minimum: 0

  • reasonsarrayerforderlich
  • Jedes Elementstring
  • checksarrayerforderlich
  • Jedes Elementstring

curl-Beispiel

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

Webhooks

GET/v1/workspaces/{workspaceId}/webhooks

Eingehende Ereignisquellen und ausgehende Ereignisziele auflisten.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Workspace-Webhook-Endpunkte.

application/json

  • valueobject
  • dataarrayerforderlich
  • Jedes Elementobject
  • idstringerforderlich

    format: "uuid"

  • kindstringerforderlich

    enum: "outbound", "inbound"

  • source_keystringerforderlich

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

  • namestringerforderlich
  • endpoint_urlstring | null

    format: "uri"

  • statusstringerforderlich

    enum: "active", "disabled", "error"

  • event_typesarrayerforderlich
  • Jedes Elementstring
  • connection_idstring | null

    format: "uuid"

  • delivered_countintegererforderlich

    minimum: 0

  • failed_countintegererforderlich

    minimum: 0

  • last_delivered_atstring | null

    format: "date-time"

  • last_received_atstring | null

    format: "date-time"

  • last_error_codestring | null
  • created_atstringerforderlich

    format: "date-time"

  • updated_atstringerforderlich

    format: "date-time"

curl-Beispiel

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

Signiertes Ziel mit Wiederholungen oder idempotente eingehende Ereignisquelle erstellen.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body erforderlich

application/json

  • valueobject

    Keine zusätzlichen Eigenschaften

  • kindstringerforderlich

    enum: "outbound", "inbound"

  • namestringerforderlich

    minLength: 1 · maxLength: 120

  • source_keystring

    banger_api ist für den von POST /events erstellten Webhook reserviert.

    pattern: "^[a-z0-9][a-z0-9_-]{0,62}$" · default: "custom"

  • source_configobject

    Quellspezifische deterministische Ereignisauswertung und Zustellzuordnung. Unterstützt für Zendesk und Supabase Auth.

    Keine zusätzlichen Eigenschaften

  • vip_tagsarray

    minItems: 1 · maxItems: 20 · uniqueItems: true

  • Jedes Elementstring

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

  • sla_warning_minutesinteger

    minimum: 1 · maximum: 10080

  • project_urlstring

    Supabase-Projekt-URL.

    format: "uri"

  • mailbox_idstring

    Aktive Banger-Absenderadresse für Supabase Auth-E-Mails.

    format: "uuid"

  • template_idsobject

    Für jede Supabase Auth-E-Mail-Aktion gewählte Banger-Vorlage.

    Keine zusätzlichen Eigenschaften

  • signupstringerforderlich

    format: "uuid"

  • invitestringerforderlich

    format: "uuid"

  • magiclinkstringerforderlich

    format: "uuid"

  • recoverystringerforderlich

    format: "uuid"

  • email_changestringerforderlich

    format: "uuid"

  • reauthenticationstringerforderlich

    format: "uuid"

  • password_changed_notificationstringerforderlich

    format: "uuid"

  • email_changed_notificationstringerforderlich

    format: "uuid"

  • phone_changed_notificationstringerforderlich

    format: "uuid"

  • identity_linked_notificationstringerforderlich

    format: "uuid"

  • identity_unlinked_notificationstringerforderlich

    format: "uuid"

  • mfa_factor_enrolled_notificationstringerforderlich

    format: "uuid"

  • mfa_factor_unenrolled_notificationstringerforderlich

    format: "uuid"

  • signing_secretstring

    Supabase Send Email Hook-Secret. Nur für eine eingehende Supabase-Quelle akzeptiert und im Ruhezustand verschlüsselt.

    minLength: 20 · maxLength: 500

  • endpoint_urlstring

    Nur für ausgehende Ziele erforderlich.

    format: "uri"

  • event_typesarray

    Zu sendende Ereignisse. Ohne Angabe erhält ein ausgehender Endpunkt die Standardaktivitätsereignisse; spezifische Ereignisse (mail.received, mail.sent, send.*, journey.*) werden nur gesendet, wenn aufgeführt. * sendet alles, einschließlich des häufigen send.delivered.

    minItems: 1 · maxItems: 100 · uniqueItems: true

  • Jedes Elementstring

    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"

Erfolgsantwort 201

Webhook erstellt. Ausgehende Signatur-Secrets werden einmal angezeigt; autorisierte Aufrufer können eingehende Zugangsdatenoptionen erneut öffnen.

application/json

  • valueobject
  • datanicht angegebenerforderlich
  • allOf 1object
  • idstringerforderlich

    format: "uuid"

  • kindstringerforderlich

    enum: "outbound", "inbound"

  • source_keystringerforderlich

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

  • namestringerforderlich
  • endpoint_urlstring | null

    format: "uri"

  • statusstringerforderlich

    enum: "active", "disabled", "error"

  • event_typesarrayerforderlich
  • Jedes Elementstring
  • connection_idstring | null

    format: "uuid"

  • delivered_countintegererforderlich

    minimum: 0

  • failed_countintegererforderlich

    minimum: 0

  • last_delivered_atstring | null

    format: "date-time"

  • last_received_atstring | null

    format: "date-time"

  • last_error_codestring | null
  • created_atstringerforderlich

    format: "date-time"

  • updated_atstringerforderlich

    format: "date-time"

  • allOf 2object
  • signing_secretstring

    Signatur-Secret ausgehender Anfragen

  • source_urlstring

    Eingehende Ereignis-URL mit ihrem nicht erratbaren Secret.

    format: "uri"

  • webhook_urlstring

    Öffentliche eingehende URL zur Verwendung mit dem Authorization-Header.

    format: "uri"

  • bearer_tokenstring

    Geheimes Endpunkt-Token, als Authorization Bearer zu senden.

curl-Beispiel

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}

Webhook deaktivieren oder einen deaktivierten oder fehlerhaften wieder aktivieren, ohne Endpunkt oder Secret zu rotieren.

Deaktivieren stoppt Zustellungen oder eingehende Automatisierungsereignisse und behält Webhook, Namen und Historie bei. Ein eingehender Webhook deaktiviert auch seine Verbindung; ausgelöste Journeys erhalten bis zur Wiederaktivierung keine Ereignisse. Um einen Webhook endgültig zu entfernen, lösche ihn.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

endpointId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body erforderlich

application/json

  • valueobject

    Keine zusätzlichen Eigenschaften

  • statusstringerforderlich

    enum: "active", "disabled"

Erfolgsantwort 200

Webhook wieder aktiviert oder deaktiviert.

application/json

  • valueobject
  • dataobjecterforderlich
  • idstringerforderlich

    format: "uuid"

  • kindstringerforderlich

    enum: "outbound", "inbound"

  • source_keystringerforderlich

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

  • namestringerforderlich
  • endpoint_urlstring | null

    format: "uri"

  • statusstringerforderlich

    enum: "active", "disabled", "error"

  • event_typesarrayerforderlich
  • Jedes Elementstring
  • connection_idstring | null

    format: "uuid"

  • delivered_countintegererforderlich

    minimum: 0

  • failed_countintegererforderlich

    minimum: 0

  • last_delivered_atstring | null

    format: "date-time"

  • last_received_atstring | null

    format: "date-time"

  • last_error_codestring | null
  • created_atstringerforderlich

    format: "date-time"

  • updated_atstringerforderlich

    format: "date-time"

curl-Beispiel

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}

Webhook endgültig löschen, damit sein Name wieder verwendet werden kann.

Ein ausgehender Endpunkt wird mit seiner Zustellhistorie gelöscht. Ein eingehender Webhook wird mit seiner Verbindung gelöscht, aber nur wenn keine Journey, einschließlich archivierter, diese Verbindung als Auslöser oder Ziel verwendet. Um einen Webhook zu stoppen und zu behalten, setze seinen status per PATCH auf disabled.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

endpointId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 204

Webhook gelöscht.

Kein Antwort-Body.

curl-Beispiel

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

Bestehende Zugangsdatenoptionen eines aktiven eingehenden Webhooks erneut öffnen.

Erfordert automation:execute. Liefert dasselbe Secret, ohne Ressourcen zu erstellen oder zu rotieren. Diese Antwort niemals cachen oder protokollieren.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

endpointId
path · erforderlich
  • valuestring

    format: "uuid"

x-banger-product-id
header

Erforderlich, sofern der authentifizierte API-Schlüssel nicht bereits das Produkt bindet.

  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Private Quell-URL, öffentliche Webhook-URL und separates Bearer-Token.

application/json

  • valueobject
  • datanicht angegeben
  • allOf 1object
  • idstringerforderlich

    format: "uuid"

  • kindstringerforderlich

    enum: "outbound", "inbound"

  • source_keystringerforderlich

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

  • namestringerforderlich
  • endpoint_urlstring | null

    format: "uri"

  • statusstringerforderlich

    enum: "active", "disabled", "error"

  • event_typesarrayerforderlich
  • Jedes Elementstring
  • connection_idstring | null

    format: "uuid"

  • delivered_countintegererforderlich

    minimum: 0

  • failed_countintegererforderlich

    minimum: 0

  • last_delivered_atstring | null

    format: "date-time"

  • last_received_atstring | null

    format: "date-time"

  • last_error_codestring | null
  • created_atstringerforderlich

    format: "date-time"

  • updated_atstringerforderlich

    format: "date-time"

  • allOf 2object
  • signing_secretstring

    Signatur-Secret ausgehender Anfragen

  • source_urlstring

    Eingehende Ereignis-URL mit ihrem nicht erratbaren Secret.

    format: "uri"

  • webhook_urlstring

    Öffentliche eingehende URL zur Verwendung mit dem Authorization-Header.

    format: "uri"

  • bearer_tokenstring

    Geheimes Endpunkt-Token, als Authorization Bearer zu senden.

curl-Beispiel

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

Aktuelle Zustellversuche und HTTP-Ergebnisse eines ausgehenden Webhooks auflisten.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

endpointId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Aktuelle Zustellversuche.

application/json

  • valueobject
  • dataarrayerforderlich
  • Jedes Elementobject
  • idstringerforderlich

    format: "uuid"

  • event_typestringerforderlich
  • statusstringerforderlich

    enum: "pending", "delivering", "delivered", "failed"

  • attempt_countintegererforderlich

    minimum: 0

  • http_statusinteger | null

    minimum: 100 · maximum: 599

  • last_error_codestring | null
  • delivered_atstring | null

    format: "date-time"

  • created_atstringerforderlich

    format: "date-time"

curl-Beispiel

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

Ein signiertes synthetisches Ereignis über den normalen Zustellweg mit Wiederholungen einreihen.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

endpointId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 202

Signiertes Testereignis eingereiht.

application/json

  • valueobject
  • dataobjecterforderlich
  • idstringerforderlich

    format: "uuid"

  • statusstringerforderlich

curl-Beispiel

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

Einrichtung

PUT/v1/workspaces/{workspaceId}/onboarding/path

selectOnboardingPath

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body erforderlich

application/json

  • valueobject

    Keine zusätzlichen Eigenschaften

  • pathstringerforderlich

    enum: "starter_identity", "company_domain", "resend_gateway", "banger_native_sending", "work_mailbox", "gmail", "native_mailbox", "existing_provider"

Erfolgsantwort 200

Der serverseitig maßgebliche Einrichtungspfad wurde ausgewählt.

application/json

  • valueobject
  • dataobjecterforderlich
  • pathstringerforderlich

    enum: "starter_identity", "company_domain", "resend_gateway", "banger_native_sending", "work_mailbox", "gmail", "native_mailbox", "existing_provider"

curl-Beispiel

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

Kanonische Einrichtung (Verbindung, Marke, Domain) lesen, ohne Ressourcen zu erstellen oder E-Mails zu senden.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

x-banger-product-id
header

Ausgewähltes Produkt. Bei mehreren aktiven Produkten erforderlich.

  • valuestring

    format: "uuid"

details
query

Bearbeitbare Entwürfe, Marke und maßgebliche DNS-Einträge einschließen.

  • valueinteger

    enum: 1

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Dauerhaft gespeicherter Fortschritt und unabhängig verifizierte Fähigkeiten.

application/json

  • valueobject
  • dataobjecterforderlich
  • product_idstringerforderlich

    format: "uuid"

  • lessonobject
  • stepstringerforderlich
  • purposestringerforderlich
  • setupstringerforderlich
  • boundarystringerforderlich
  • example_requeststringerforderlich
  • resultstringerforderlich
  • choicestringerforderlich
  • skipstring | nullerforderlich
  • guidancestring
  • current_stepstringerforderlich

    enum: "connect", "business", "identity", "sending"

  • completed_countintegererforderlich
  • total_stepsintegererforderlich

    enum: 4

  • setupobject

    Die Web-Einrichtungsschranke und das Banner zum Abschließen der Einrichtung. Jeder Teil ist abgeschlossen, in Prüfung (Domaineinträge hinzugefügt, DNS wird noch geprüft), übersprungen oder fehlend.

  • connectstringerforderlich

    enum: "complete", "skipped", "missing"

  • brandstringerforderlich

    enum: "complete", "skipped", "missing"

  • domainstringerforderlich

    enum: "complete", "verifying", "skipped", "missing"

  • gate_openbooleanerforderlich

    True, solange Marke oder Domain weder abgeschlossen noch übersprungen wurden.

  • missingarrayerforderlich

    Übersprungene oder nie abgeschlossene Teile

  • Jedes Elementstring

    enum: "connect", "brand", "domain"

  • unlock_video_dueboolean

    True nach Verifizierung einer Domain, bis der Workspace das Video "Was du jetzt tun kannst" gesehen hat.

  • agent_client_namestring | null

    Die verbundene KI-App

  • completebooleanerforderlich
  • shared_education_completeboolean
  • outcomestringerforderlich

    enum: "in_progress", "production_deferred", "production_ready"

  • recommended_actionstringerforderlich
  • readinessobjecterforderlich
  • Zusätzliche Eigenschaftboolean
  • progressobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • stepsarrayerforderlich
  • Jedes Elementobject
  • idstringerforderlich
  • titlestringerforderlich
  • explanationstring
  • statusstringerforderlich

    enum: "not_started", "in_progress", "waiting", "needs_attention", "complete", "skipped"

  • blocking_dependencystring | null
  • recommended_actionstring
  • actionsarrayerforderlich
  • Jedes Elementstring
  • resource_idsarrayerforderlich
  • Jedes Elementstring
  • evidenceobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • Zusätzliche EigenschaftBeliebiger Wert

curl-Beispiel

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

Eine explizite, sicher wiederholbare Einrichtungsaktion für das ausgewählte Produkt ausführen.

Sendungen gehen nur an die verifizierte Registrierungsadresse des autorisierenden Nutzers. Journeys bleiben inaktiv und Kampagnen ungesendet. Bestehende Grenzen der Migrationsfreigabe gelten.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

x-banger-product-id
header

Ausgewähltes Produkt. Bei mehreren aktiven Produkten erforderlich.

  • valuestring

    format: "uuid"

Anfrage-Body erforderlich

application/json

  • valueobject
  • actionstringerforderlich

    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

    Geschäftsfelder company_name, primary_goal, website_url und brand; Entwurfsfelder name, subject, preview_text, body_text und edit; Identitätsfelder domain und local_part. Empfängereingaben werden nie akzeptiert.

  • Zusätzliche EigenschaftBeliebiger Wert

Erfolgsantwort 200

Aktualisierter kanonischer Status nach der angeforderten Operation.

application/json

  • valueobject
  • dataobjecterforderlich
  • product_idstringerforderlich

    format: "uuid"

  • lessonobject
  • stepstringerforderlich
  • purposestringerforderlich
  • setupstringerforderlich
  • boundarystringerforderlich
  • example_requeststringerforderlich
  • resultstringerforderlich
  • choicestringerforderlich
  • skipstring | nullerforderlich
  • guidancestring
  • current_stepstringerforderlich

    enum: "connect", "business", "identity", "sending"

  • completed_countintegererforderlich
  • total_stepsintegererforderlich

    enum: 4

  • setupobject

    Die Web-Einrichtungsschranke und das Banner zum Abschließen der Einrichtung. Jeder Teil ist abgeschlossen, in Prüfung (Domaineinträge hinzugefügt, DNS wird noch geprüft), übersprungen oder fehlend.

  • connectstringerforderlich

    enum: "complete", "skipped", "missing"

  • brandstringerforderlich

    enum: "complete", "skipped", "missing"

  • domainstringerforderlich

    enum: "complete", "verifying", "skipped", "missing"

  • gate_openbooleanerforderlich

    True, solange Marke oder Domain weder abgeschlossen noch übersprungen wurden.

  • missingarrayerforderlich

    Übersprungene oder nie abgeschlossene Teile

  • Jedes Elementstring

    enum: "connect", "brand", "domain"

  • unlock_video_dueboolean

    True nach Verifizierung einer Domain, bis der Workspace das Video "Was du jetzt tun kannst" gesehen hat.

  • agent_client_namestring | null

    Die verbundene KI-App

  • completebooleanerforderlich
  • shared_education_completeboolean
  • outcomestringerforderlich

    enum: "in_progress", "production_deferred", "production_ready"

  • recommended_actionstringerforderlich
  • readinessobjecterforderlich
  • Zusätzliche Eigenschaftboolean
  • progressobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • stepsarrayerforderlich
  • Jedes Elementobject
  • idstringerforderlich
  • titlestringerforderlich
  • explanationstring
  • statusstringerforderlich

    enum: "not_started", "in_progress", "waiting", "needs_attention", "complete", "skipped"

  • blocking_dependencystring | null
  • recommended_actionstring
  • actionsarrayerforderlich
  • Jedes Elementstring
  • resource_idsarrayerforderlich
  • Jedes Elementstring
  • evidenceobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • Zusätzliche EigenschaftBeliebiger Wert

curl-Beispiel

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

Gemeinsame Browser- und MCP-Einrichtungs-Journey fortsetzen.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Aktueller serververwalteter Einrichtungsstatus.

application/json

  • valueobject
  • datanicht angegebenerforderlich
  • allOf 1object
  • workspace_idstringerforderlich

    format: "uuid"

  • statusstringerforderlich

    enum: "choose_agent", "discovering", "planning", "implementing", "validating", "ready", "complete"

  • entry_surfacestring | nullerforderlich

    enum: "codex", "chatgpt", "claude", "grok", "other_agent", "browser", null

  • agent_statusstringerforderlich

    enum: "not_connected", "connecting", "connected", "browser_only"

  • agent_client_namestring | nullerforderlich
  • domain_choicestringerforderlich

    enum: "undecided", "company_domain", "no_domain"

  • company_domainstring | nullerforderlich
  • domain_chosen_atstring | nullerforderlich

    format: "date-time"

  • business_contextobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • opportunity_planarrayerforderlich
  • Jedes Elementobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • implementation_summaryobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • validation_summaryobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • journey_metadataobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • context_reviewed_atstring | nullerforderlich

    format: "date-time"

  • plan_proposed_atstring | nullerforderlich

    format: "date-time"

  • plan_approved_atstring | nullerforderlich

    format: "date-time"

  • completed_atstring | nullerforderlich

    format: "date-time"

  • versionintegererforderlich

    format: "int64" · minimum: 1

  • updated_atstringerforderlich

    format: "date-time"

  • allOf 2object
  • domain_discoverynicht angegebenerforderlich
  • oneOf 1object
  • domainstringerforderlich
  • scan_statusstringerforderlich

    enum: "complete", "partial", "failed"

  • companyobjecterforderlich
  • domainstringerforderlich

    Weitere Verschachtelung ausgelassen

  • website_urlstring | nullerforderlich

    format: "uri"

    Weitere Verschachtelung ausgelassen

  • website_statusstringerforderlich

    enum: "available", "missing", "blocked", "error"

    Weitere Verschachtelung ausgelassen

  • company_namestringerforderlich

    Weitere Verschachtelung ausgelassen

  • summarystringerforderlich

    Weitere Verschachtelung ausgelassen

  • audiencestringerforderlich

    Weitere Verschachtelung ausgelassen

  • offeringsarrayerforderlich

    Weitere Verschachtelung ausgelassen

  • logo_urlstring | nullerforderlich

    format: "uri"

    Weitere Verschachtelung ausgelassen

  • favicon_urlstring | nullerforderlich

    format: "uri"

    Weitere Verschachtelung ausgelassen

  • visual_identityobjecterforderlich

    Weitere Verschachtelung ausgelassen

  • source_snapshotobjecterforderlich

    Weitere Verschachtelung ausgelassen

  • dns_signalsarrayerforderlich
  • Jedes Elementobject

    Weitere Verschachtelung ausgelassen

  • dns_providernicht angegebenerforderlich
  • oneOf 1object

    Keine zusätzlichen Eigenschaften

    Weitere Verschachtelung ausgelassen

  • oneOf 2null

    Weitere Verschachtelung ausgelassen

  • provider_detectionsarrayerforderlich
  • Jedes Elementobject

    Weitere Verschachtelung ausgelassen

  • capability_summaryarrayerforderlich
  • Jedes Elementobject

    Weitere Verschachtelung ausgelassen

  • recommended_connectionsarrayerforderlich
  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

    Weitere Verschachtelung ausgelassen

  • connection_planarrayerforderlich
  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

    Weitere Verschachtelung ausgelassen

  • limitationsarrayerforderlich
  • Jedes Elementstring

    Weitere Verschachtelung ausgelassen

  • scanned_atstringerforderlich

    format: "date-time"

  • confirmed_atstring | nullerforderlich

    format: "date-time"

  • oneOf 2null
  • recommended_connectionsarrayerforderlich
  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

  • keystringerforderlich
  • namestringerforderlich
  • categorystringerforderlich

    enum: "email", "customer", "product", "work", "data"

  • prioritystringerforderlich

    enum: "required", "recommended"

  • reasonstringerforderlich
  • sourcestringerforderlich

    enum: "dns", "business_context", "opportunity_plan", "banger_recommendation"

  • setup_modestringerforderlich

    enum: "oauth", "secure_credentials"

  • availablebooleanerforderlich
  • provider_keystring
  • evidencearrayerforderlich
  • Jedes Elementobject

    Weitere Verschachtelung ausgelassen

  • domain_bundleobject | nullerforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • growthobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • activationobjecterforderlich
  • modestringerforderlich

    enum: "hosted", "company_domain", "starter"

  • statusstringerforderlich

    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 | nullerforderlich
  • sending_domain_idstring | nullerforderlich

    format: "uuid"

  • mailbox_idstring | nullerforderlich

    format: "uuid"

  • mailbox_addressstring | nullerforderlich

    format: "email"

  • exact_dns_recordsarrayerforderlich
  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

  • idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • lane_idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • providerstringerforderlich

    enum: "banger", "resend"

    Weitere Verschachtelung ausgelassen

  • purposestringerforderlich

    Weitere Verschachtelung ausgelassen

  • typestringerforderlich

    enum: "TXT", "MX", "CNAME"

    Weitere Verschachtelung ausgelassen

  • namestringerforderlich

    Weitere Verschachtelung ausgelassen

  • valuestringerforderlich

    Weitere Verschachtelung ausgelassen

  • priorityinteger | nullerforderlich

    Weitere Verschachtelung ausgelassen

  • requiredbooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • statusstringerforderlich

    enum: "pending", "verified", "error"

    Weitere Verschachtelung ausgelassen

  • provider_statusstringerforderlich

    enum: "pending", "verified", "error", "not_applicable"

    Weitere Verschachtelung ausgelassen

  • first_observed_atstring | nullerforderlich

    format: "date-time"

    Weitere Verschachtelung ausgelassen

  • last_checked_atstring | nullerforderlich

    format: "date-time"

    Weitere Verschachtelung ausgelassen

  • errorobjecterforderlich

    Weitere Verschachtelung ausgelassen

  • provider_referencestring | nullerforderlich

    Weitere Verschachtelung ausgelassen

  • checkpointsarrayerforderlich
  • Jedes Elementobject
  • keystringerforderlich

    enum: "domain", "provider", "infrastructure", "dns", "mailbox", "product", "broadcast"

    Weitere Verschachtelung ausgelassen

  • labelstringerforderlich

    Weitere Verschachtelung ausgelassen

  • statusstringerforderlich

    enum: "pending", "working", "action_required", "verified"

    Weitere Verschachtelung ausgelassen

  • detailstringerforderlich

    Weitere Verschachtelung ausgelassen

  • lanesobjecterforderlich
  • mailboxobjecterforderlich
  • statusstringerforderlich

    enum: "pending", "working", "action_required", "verified"

    Weitere Verschachtelung ausgelassen

  • detailstringerforderlich

    Weitere Verschachtelung ausgelassen

  • transactionalobjecterforderlich
  • statusstringerforderlich

    enum: "pending", "working", "action_required", "verified"

    Weitere Verschachtelung ausgelassen

  • detailstringerforderlich

    Weitere Verschachtelung ausgelassen

  • marketingobjecterforderlich
  • statusstringerforderlich

    enum: "pending", "working", "action_required", "verified"

    Weitere Verschachtelung ausgelassen

  • detailstringerforderlich

    Weitere Verschachtelung ausgelassen

  • proofnicht angegebenerforderlich
  • oneOf 1object
  • proof_idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • mailbox_idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • mailbox_addressstringerforderlich

    format: "email"

    Weitere Verschachtelung ausgelassen

  • command_idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • phasestringerforderlich

    enum: "sending", "sent", "received", "checked", "failed"

    Weitere Verschachtelung ausgelassen

  • send_completebooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • receive_completebooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • round_trip_check_completebooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • agent_check_completebooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • completebooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • expected_subjectstringerforderlich

    Weitere Verschachtelung ausgelassen

  • expected_body_textstringerforderlich

    Weitere Verschachtelung ausgelassen

  • received_message_idstring

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • received_thread_idstring

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • received_subjectstring

    Weitere Verschachtelung ausgelassen

  • received_body_textstring

    Weitere Verschachtelung ausgelassen

  • received_atstring

    format: "date-time"

    Weitere Verschachtelung ausgelassen

  • agent_labelstring

    Weitere Verschachtelung ausgelassen

  • agent_suggested_actionstring

    Weitere Verschachtelung ausgelassen

  • error_codestring

    Weitere Verschachtelung ausgelassen

  • replayedbooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • oneOf 2object
  • proof_idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • domain_idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • native_domain_idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • mailbox_idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • mailbox_addressstringerforderlich

    format: "email"

    Weitere Verschachtelung ausgelassen

  • transactional_send_intent_idstring

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • marketing_send_intent_idstring

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • transactional_subjectstringerforderlich

    Weitere Verschachtelung ausgelassen

  • marketing_subjectstringerforderlich

    Weitere Verschachtelung ausgelassen

  • phasestringerforderlich

    enum: "sending", "receiving", "received", "checked", "failed"

    Weitere Verschachtelung ausgelassen

  • send_completebooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • transactional_receivedbooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • marketing_receivedbooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • receive_completebooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • agent_check_completebooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • completebooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • error_codestring

    Weitere Verschachtelung ausgelassen

  • replayedbooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • oneOf 3null
  • overall_readybooleanerforderlich
  • production_readybooleanerforderlich
  • completedbooleanerforderlich
  • pendingbooleanerforderlich
  • next_actionstringerforderlich

    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_requiredobjecterforderlich
  • typestringerforderlich
  • requiredbooleanerforderlich
  • actionstringerforderlich

    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 | nullerforderlich

    format: "uri"

  • instructionsstring | nullerforderlich
  • secure_urlstring | nullerforderlich

    format: "uri"

  • mcp_urlstringerforderlich

    format: "uri"

  • dashboard_urlstringerforderlich

    format: "uri"

curl-Beispiel

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

Agentengeführte Einstiegsoberfläche oder Browseralternative auswählen.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body erforderlich

application/json

  • valueobject

    Keine zusätzlichen Eigenschaften

  • entry_surfacestringerforderlich

    enum: "codex", "chatgpt", "claude", "grok", "other_agent", "browser"

  • client_namestring

    minLength: 1 · maxLength: 100

Erfolgsantwort 200

Journey gestartet oder fortgesetzt.

application/json

  • valueobject
  • datanicht angegebenerforderlich
  • allOf 1object
  • workspace_idstringerforderlich

    format: "uuid"

  • statusstringerforderlich

    enum: "choose_agent", "discovering", "planning", "implementing", "validating", "ready", "complete"

  • entry_surfacestring | nullerforderlich

    enum: "codex", "chatgpt", "claude", "grok", "other_agent", "browser", null

  • agent_statusstringerforderlich

    enum: "not_connected", "connecting", "connected", "browser_only"

  • agent_client_namestring | nullerforderlich
  • domain_choicestringerforderlich

    enum: "undecided", "company_domain", "no_domain"

  • company_domainstring | nullerforderlich
  • domain_chosen_atstring | nullerforderlich

    format: "date-time"

  • business_contextobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • opportunity_planarrayerforderlich
  • Jedes Elementobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • implementation_summaryobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • validation_summaryobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • journey_metadataobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • context_reviewed_atstring | nullerforderlich

    format: "date-time"

  • plan_proposed_atstring | nullerforderlich

    format: "date-time"

  • plan_approved_atstring | nullerforderlich

    format: "date-time"

  • completed_atstring | nullerforderlich

    format: "date-time"

  • versionintegererforderlich

    format: "int64" · minimum: 1

  • updated_atstringerforderlich

    format: "date-time"

  • allOf 2object
  • domain_discoverynicht angegebenerforderlich
  • oneOf 1object
  • domainstringerforderlich
  • scan_statusstringerforderlich

    enum: "complete", "partial", "failed"

  • companyobjecterforderlich
  • domainstringerforderlich

    Weitere Verschachtelung ausgelassen

  • website_urlstring | nullerforderlich

    format: "uri"

    Weitere Verschachtelung ausgelassen

  • website_statusstringerforderlich

    enum: "available", "missing", "blocked", "error"

    Weitere Verschachtelung ausgelassen

  • company_namestringerforderlich

    Weitere Verschachtelung ausgelassen

  • summarystringerforderlich

    Weitere Verschachtelung ausgelassen

  • audiencestringerforderlich

    Weitere Verschachtelung ausgelassen

  • offeringsarrayerforderlich

    Weitere Verschachtelung ausgelassen

  • logo_urlstring | nullerforderlich

    format: "uri"

    Weitere Verschachtelung ausgelassen

  • favicon_urlstring | nullerforderlich

    format: "uri"

    Weitere Verschachtelung ausgelassen

  • visual_identityobjecterforderlich

    Weitere Verschachtelung ausgelassen

  • source_snapshotobjecterforderlich

    Weitere Verschachtelung ausgelassen

  • dns_signalsarrayerforderlich
  • Jedes Elementobject

    Weitere Verschachtelung ausgelassen

  • dns_providernicht angegebenerforderlich
  • oneOf 1object

    Keine zusätzlichen Eigenschaften

    Weitere Verschachtelung ausgelassen

  • oneOf 2null

    Weitere Verschachtelung ausgelassen

  • provider_detectionsarrayerforderlich
  • Jedes Elementobject

    Weitere Verschachtelung ausgelassen

  • capability_summaryarrayerforderlich
  • Jedes Elementobject

    Weitere Verschachtelung ausgelassen

  • recommended_connectionsarrayerforderlich
  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

    Weitere Verschachtelung ausgelassen

  • connection_planarrayerforderlich
  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

    Weitere Verschachtelung ausgelassen

  • limitationsarrayerforderlich
  • Jedes Elementstring

    Weitere Verschachtelung ausgelassen

  • scanned_atstringerforderlich

    format: "date-time"

  • confirmed_atstring | nullerforderlich

    format: "date-time"

  • oneOf 2null
  • recommended_connectionsarrayerforderlich
  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

  • keystringerforderlich
  • namestringerforderlich
  • categorystringerforderlich

    enum: "email", "customer", "product", "work", "data"

  • prioritystringerforderlich

    enum: "required", "recommended"

  • reasonstringerforderlich
  • sourcestringerforderlich

    enum: "dns", "business_context", "opportunity_plan", "banger_recommendation"

  • setup_modestringerforderlich

    enum: "oauth", "secure_credentials"

  • availablebooleanerforderlich
  • provider_keystring
  • evidencearrayerforderlich
  • Jedes Elementobject

    Weitere Verschachtelung ausgelassen

  • domain_bundleobject | nullerforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • growthobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • activationobjecterforderlich
  • modestringerforderlich

    enum: "hosted", "company_domain", "starter"

  • statusstringerforderlich

    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 | nullerforderlich
  • sending_domain_idstring | nullerforderlich

    format: "uuid"

  • mailbox_idstring | nullerforderlich

    format: "uuid"

  • mailbox_addressstring | nullerforderlich

    format: "email"

  • exact_dns_recordsarrayerforderlich
  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

  • idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • lane_idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • providerstringerforderlich

    enum: "banger", "resend"

    Weitere Verschachtelung ausgelassen

  • purposestringerforderlich

    Weitere Verschachtelung ausgelassen

  • typestringerforderlich

    enum: "TXT", "MX", "CNAME"

    Weitere Verschachtelung ausgelassen

  • namestringerforderlich

    Weitere Verschachtelung ausgelassen

  • valuestringerforderlich

    Weitere Verschachtelung ausgelassen

  • priorityinteger | nullerforderlich

    Weitere Verschachtelung ausgelassen

  • requiredbooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • statusstringerforderlich

    enum: "pending", "verified", "error"

    Weitere Verschachtelung ausgelassen

  • provider_statusstringerforderlich

    enum: "pending", "verified", "error", "not_applicable"

    Weitere Verschachtelung ausgelassen

  • first_observed_atstring | nullerforderlich

    format: "date-time"

    Weitere Verschachtelung ausgelassen

  • last_checked_atstring | nullerforderlich

    format: "date-time"

    Weitere Verschachtelung ausgelassen

  • errorobjecterforderlich

    Weitere Verschachtelung ausgelassen

  • provider_referencestring | nullerforderlich

    Weitere Verschachtelung ausgelassen

  • checkpointsarrayerforderlich
  • Jedes Elementobject
  • keystringerforderlich

    enum: "domain", "provider", "infrastructure", "dns", "mailbox", "product", "broadcast"

    Weitere Verschachtelung ausgelassen

  • labelstringerforderlich

    Weitere Verschachtelung ausgelassen

  • statusstringerforderlich

    enum: "pending", "working", "action_required", "verified"

    Weitere Verschachtelung ausgelassen

  • detailstringerforderlich

    Weitere Verschachtelung ausgelassen

  • lanesobjecterforderlich
  • mailboxobjecterforderlich
  • statusstringerforderlich

    enum: "pending", "working", "action_required", "verified"

    Weitere Verschachtelung ausgelassen

  • detailstringerforderlich

    Weitere Verschachtelung ausgelassen

  • transactionalobjecterforderlich
  • statusstringerforderlich

    enum: "pending", "working", "action_required", "verified"

    Weitere Verschachtelung ausgelassen

  • detailstringerforderlich

    Weitere Verschachtelung ausgelassen

  • marketingobjecterforderlich
  • statusstringerforderlich

    enum: "pending", "working", "action_required", "verified"

    Weitere Verschachtelung ausgelassen

  • detailstringerforderlich

    Weitere Verschachtelung ausgelassen

  • proofnicht angegebenerforderlich
  • oneOf 1object
  • proof_idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • mailbox_idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • mailbox_addressstringerforderlich

    format: "email"

    Weitere Verschachtelung ausgelassen

  • command_idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • phasestringerforderlich

    enum: "sending", "sent", "received", "checked", "failed"

    Weitere Verschachtelung ausgelassen

  • send_completebooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • receive_completebooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • round_trip_check_completebooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • agent_check_completebooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • completebooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • expected_subjectstringerforderlich

    Weitere Verschachtelung ausgelassen

  • expected_body_textstringerforderlich

    Weitere Verschachtelung ausgelassen

  • received_message_idstring

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • received_thread_idstring

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • received_subjectstring

    Weitere Verschachtelung ausgelassen

  • received_body_textstring

    Weitere Verschachtelung ausgelassen

  • received_atstring

    format: "date-time"

    Weitere Verschachtelung ausgelassen

  • agent_labelstring

    Weitere Verschachtelung ausgelassen

  • agent_suggested_actionstring

    Weitere Verschachtelung ausgelassen

  • error_codestring

    Weitere Verschachtelung ausgelassen

  • replayedbooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • oneOf 2object
  • proof_idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • domain_idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • native_domain_idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • mailbox_idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • mailbox_addressstringerforderlich

    format: "email"

    Weitere Verschachtelung ausgelassen

  • transactional_send_intent_idstring

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • marketing_send_intent_idstring

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • transactional_subjectstringerforderlich

    Weitere Verschachtelung ausgelassen

  • marketing_subjectstringerforderlich

    Weitere Verschachtelung ausgelassen

  • phasestringerforderlich

    enum: "sending", "receiving", "received", "checked", "failed"

    Weitere Verschachtelung ausgelassen

  • send_completebooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • transactional_receivedbooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • marketing_receivedbooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • receive_completebooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • agent_check_completebooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • completebooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • error_codestring

    Weitere Verschachtelung ausgelassen

  • replayedbooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • oneOf 3null
  • overall_readybooleanerforderlich
  • production_readybooleanerforderlich
  • completedbooleanerforderlich
  • pendingbooleanerforderlich
  • next_actionstringerforderlich

    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_requiredobjecterforderlich
  • typestringerforderlich
  • requiredbooleanerforderlich
  • actionstringerforderlich

    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 | nullerforderlich

    format: "uri"

  • instructionsstring | nullerforderlich
  • secure_urlstring | nullerforderlich

    format: "uri"

  • mcp_urlstringerforderlich

    format: "uri"

  • dashboard_urlstringerforderlich

    format: "uri"

curl-Beispiel

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

Dauerhaftes gehostetes Postfach idempotent erstellen und seinen echten Willkommensnachrichten-Rundlauf starten.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Das gehostete Postfach und sein bestehender Nachweis wurden fortgesetzt.

application/json

  • valueobject
  • dataobjecterforderlich
  • proof_idstringerforderlich

    format: "uuid"

  • mailbox_idstringerforderlich

    format: "uuid"

  • mailbox_addressstringerforderlich

    format: "email"

  • command_idstringerforderlich

    format: "uuid"

  • phasestringerforderlich

    enum: "sending", "sent", "received", "checked", "failed"

  • send_completebooleanerforderlich
  • receive_completebooleanerforderlich
  • round_trip_check_completebooleanerforderlich
  • agent_check_completebooleanerforderlich
  • completebooleanerforderlich
  • expected_subjectstringerforderlich
  • expected_body_textstringerforderlich
  • 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
  • replayedbooleanerforderlich

curl-Beispiel

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

OAuth-gebundenen Agentenverbindungsnachweis an das kanonische gehostete Postfach senden.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Dieselbe OAuth-Berechtigung wiederholte den Nachweis oder hatte ihn bereits abgeschlossen.

application/json

  • valueobject
  • dataobjecterforderlich
  • statusstringerforderlich

    enum: "pending", "verified"

  • attempt_idstringerforderlich

    format: "uuid"

  • oauth_grant_idstringerforderlich
  • oauth_client_idstring | nullerforderlich
  • client_namestring | nullerforderlich
  • mailbox_idstringerforderlich

    format: "uuid"

  • mailbox_addressstringerforderlich

    format: "email"

  • expected_subjectstringerforderlich
  • initiated_atstringerforderlich

    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"

curl-Beispiel

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

Eine explizite Auswahl bei der schrittweisen Einrichtung erfassen.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body erforderlich

application/json

  • valueobject

    Keine zusätzlichen Eigenschaften

  • decisionstringerforderlich

    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
  • Zusätzliche EigenschaftBeliebiger Wert

Erfolgsantwort 200

Die Auswahl wird dauerhaft in der kanonischen Journey gespeichert.

application/json

  • valueobject
  • datanicht angegebenerforderlich
  • allOf 1object
  • workspace_idstringerforderlich

    format: "uuid"

  • statusstringerforderlich

    enum: "choose_agent", "discovering", "planning", "implementing", "validating", "ready", "complete"

  • entry_surfacestring | nullerforderlich

    enum: "codex", "chatgpt", "claude", "grok", "other_agent", "browser", null

  • agent_statusstringerforderlich

    enum: "not_connected", "connecting", "connected", "browser_only"

  • agent_client_namestring | nullerforderlich
  • domain_choicestringerforderlich

    enum: "undecided", "company_domain", "no_domain"

  • company_domainstring | nullerforderlich
  • domain_chosen_atstring | nullerforderlich

    format: "date-time"

  • business_contextobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • opportunity_planarrayerforderlich
  • Jedes Elementobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • implementation_summaryobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • validation_summaryobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • journey_metadataobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • context_reviewed_atstring | nullerforderlich

    format: "date-time"

  • plan_proposed_atstring | nullerforderlich

    format: "date-time"

  • plan_approved_atstring | nullerforderlich

    format: "date-time"

  • completed_atstring | nullerforderlich

    format: "date-time"

  • versionintegererforderlich

    format: "int64" · minimum: 1

  • updated_atstringerforderlich

    format: "date-time"

  • allOf 2object
  • domain_discoverynicht angegebenerforderlich
  • oneOf 1object
  • domainstringerforderlich
  • scan_statusstringerforderlich

    enum: "complete", "partial", "failed"

  • companyobjecterforderlich
  • domainstringerforderlich

    Weitere Verschachtelung ausgelassen

  • website_urlstring | nullerforderlich

    format: "uri"

    Weitere Verschachtelung ausgelassen

  • website_statusstringerforderlich

    enum: "available", "missing", "blocked", "error"

    Weitere Verschachtelung ausgelassen

  • company_namestringerforderlich

    Weitere Verschachtelung ausgelassen

  • summarystringerforderlich

    Weitere Verschachtelung ausgelassen

  • audiencestringerforderlich

    Weitere Verschachtelung ausgelassen

  • offeringsarrayerforderlich

    Weitere Verschachtelung ausgelassen

  • logo_urlstring | nullerforderlich

    format: "uri"

    Weitere Verschachtelung ausgelassen

  • favicon_urlstring | nullerforderlich

    format: "uri"

    Weitere Verschachtelung ausgelassen

  • visual_identityobjecterforderlich

    Weitere Verschachtelung ausgelassen

  • source_snapshotobjecterforderlich

    Weitere Verschachtelung ausgelassen

  • dns_signalsarrayerforderlich
  • Jedes Elementobject

    Weitere Verschachtelung ausgelassen

  • dns_providernicht angegebenerforderlich
  • oneOf 1object

    Keine zusätzlichen Eigenschaften

    Weitere Verschachtelung ausgelassen

  • oneOf 2null

    Weitere Verschachtelung ausgelassen

  • provider_detectionsarrayerforderlich
  • Jedes Elementobject

    Weitere Verschachtelung ausgelassen

  • capability_summaryarrayerforderlich
  • Jedes Elementobject

    Weitere Verschachtelung ausgelassen

  • recommended_connectionsarrayerforderlich
  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

    Weitere Verschachtelung ausgelassen

  • connection_planarrayerforderlich
  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

    Weitere Verschachtelung ausgelassen

  • limitationsarrayerforderlich
  • Jedes Elementstring

    Weitere Verschachtelung ausgelassen

  • scanned_atstringerforderlich

    format: "date-time"

  • confirmed_atstring | nullerforderlich

    format: "date-time"

  • oneOf 2null
  • recommended_connectionsarrayerforderlich
  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

  • keystringerforderlich
  • namestringerforderlich
  • categorystringerforderlich

    enum: "email", "customer", "product", "work", "data"

  • prioritystringerforderlich

    enum: "required", "recommended"

  • reasonstringerforderlich
  • sourcestringerforderlich

    enum: "dns", "business_context", "opportunity_plan", "banger_recommendation"

  • setup_modestringerforderlich

    enum: "oauth", "secure_credentials"

  • availablebooleanerforderlich
  • provider_keystring
  • evidencearrayerforderlich
  • Jedes Elementobject

    Weitere Verschachtelung ausgelassen

  • domain_bundleobject | nullerforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • growthobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • activationobjecterforderlich
  • modestringerforderlich

    enum: "hosted", "company_domain", "starter"

  • statusstringerforderlich

    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 | nullerforderlich
  • sending_domain_idstring | nullerforderlich

    format: "uuid"

  • mailbox_idstring | nullerforderlich

    format: "uuid"

  • mailbox_addressstring | nullerforderlich

    format: "email"

  • exact_dns_recordsarrayerforderlich
  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

  • idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • lane_idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • providerstringerforderlich

    enum: "banger", "resend"

    Weitere Verschachtelung ausgelassen

  • purposestringerforderlich

    Weitere Verschachtelung ausgelassen

  • typestringerforderlich

    enum: "TXT", "MX", "CNAME"

    Weitere Verschachtelung ausgelassen

  • namestringerforderlich

    Weitere Verschachtelung ausgelassen

  • valuestringerforderlich

    Weitere Verschachtelung ausgelassen

  • priorityinteger | nullerforderlich

    Weitere Verschachtelung ausgelassen

  • requiredbooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • statusstringerforderlich

    enum: "pending", "verified", "error"

    Weitere Verschachtelung ausgelassen

  • provider_statusstringerforderlich

    enum: "pending", "verified", "error", "not_applicable"

    Weitere Verschachtelung ausgelassen

  • first_observed_atstring | nullerforderlich

    format: "date-time"

    Weitere Verschachtelung ausgelassen

  • last_checked_atstring | nullerforderlich

    format: "date-time"

    Weitere Verschachtelung ausgelassen

  • errorobjecterforderlich

    Weitere Verschachtelung ausgelassen

  • provider_referencestring | nullerforderlich

    Weitere Verschachtelung ausgelassen

  • checkpointsarrayerforderlich
  • Jedes Elementobject
  • keystringerforderlich

    enum: "domain", "provider", "infrastructure", "dns", "mailbox", "product", "broadcast"

    Weitere Verschachtelung ausgelassen

  • labelstringerforderlich

    Weitere Verschachtelung ausgelassen

  • statusstringerforderlich

    enum: "pending", "working", "action_required", "verified"

    Weitere Verschachtelung ausgelassen

  • detailstringerforderlich

    Weitere Verschachtelung ausgelassen

  • lanesobjecterforderlich
  • mailboxobjecterforderlich
  • statusstringerforderlich

    enum: "pending", "working", "action_required", "verified"

    Weitere Verschachtelung ausgelassen

  • detailstringerforderlich

    Weitere Verschachtelung ausgelassen

  • transactionalobjecterforderlich
  • statusstringerforderlich

    enum: "pending", "working", "action_required", "verified"

    Weitere Verschachtelung ausgelassen

  • detailstringerforderlich

    Weitere Verschachtelung ausgelassen

  • marketingobjecterforderlich
  • statusstringerforderlich

    enum: "pending", "working", "action_required", "verified"

    Weitere Verschachtelung ausgelassen

  • detailstringerforderlich

    Weitere Verschachtelung ausgelassen

  • proofnicht angegebenerforderlich
  • oneOf 1object
  • proof_idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • mailbox_idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • mailbox_addressstringerforderlich

    format: "email"

    Weitere Verschachtelung ausgelassen

  • command_idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • phasestringerforderlich

    enum: "sending", "sent", "received", "checked", "failed"

    Weitere Verschachtelung ausgelassen

  • send_completebooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • receive_completebooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • round_trip_check_completebooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • agent_check_completebooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • completebooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • expected_subjectstringerforderlich

    Weitere Verschachtelung ausgelassen

  • expected_body_textstringerforderlich

    Weitere Verschachtelung ausgelassen

  • received_message_idstring

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • received_thread_idstring

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • received_subjectstring

    Weitere Verschachtelung ausgelassen

  • received_body_textstring

    Weitere Verschachtelung ausgelassen

  • received_atstring

    format: "date-time"

    Weitere Verschachtelung ausgelassen

  • agent_labelstring

    Weitere Verschachtelung ausgelassen

  • agent_suggested_actionstring

    Weitere Verschachtelung ausgelassen

  • error_codestring

    Weitere Verschachtelung ausgelassen

  • replayedbooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • oneOf 2object
  • proof_idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • domain_idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • native_domain_idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • mailbox_idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • mailbox_addressstringerforderlich

    format: "email"

    Weitere Verschachtelung ausgelassen

  • transactional_send_intent_idstring

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • marketing_send_intent_idstring

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • transactional_subjectstringerforderlich

    Weitere Verschachtelung ausgelassen

  • marketing_subjectstringerforderlich

    Weitere Verschachtelung ausgelassen

  • phasestringerforderlich

    enum: "sending", "receiving", "received", "checked", "failed"

    Weitere Verschachtelung ausgelassen

  • send_completebooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • transactional_receivedbooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • marketing_receivedbooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • receive_completebooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • agent_check_completebooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • completebooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • error_codestring

    Weitere Verschachtelung ausgelassen

  • replayedbooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • oneOf 3null
  • overall_readybooleanerforderlich
  • production_readybooleanerforderlich
  • completedbooleanerforderlich
  • pendingbooleanerforderlich
  • next_actionstringerforderlich

    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_requiredobjecterforderlich
  • typestringerforderlich
  • requiredbooleanerforderlich
  • actionstringerforderlich

    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 | nullerforderlich

    format: "uri"

  • instructionsstring | nullerforderlich
  • secure_urlstring | nullerforderlich

    format: "uri"

  • mcp_urlstringerforderlich

    format: "uri"

  • dashboard_urlstringerforderlich

    format: "uri"

curl-Beispiel

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

Einrichtungsentscheidung des Nutzers mit Firmendomain oder ohne Domain speichern und kanonische Erkennung ausführen.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body erforderlich

application/json

  • valueobject

    Keine zusätzlichen Eigenschaften

  • choicestringerforderlich

    enum: "company_domain", "no_domain"

  • domainstring

    minLength: 3 · maxLength: 253

Erfolgsantwort 200

Domainentscheidung gespeichert und Journey fortgesetzt.

application/json

  • valueobject
  • datanicht angegebenerforderlich
  • allOf 1object
  • workspace_idstringerforderlich

    format: "uuid"

  • statusstringerforderlich

    enum: "choose_agent", "discovering", "planning", "implementing", "validating", "ready", "complete"

  • entry_surfacestring | nullerforderlich

    enum: "codex", "chatgpt", "claude", "grok", "other_agent", "browser", null

  • agent_statusstringerforderlich

    enum: "not_connected", "connecting", "connected", "browser_only"

  • agent_client_namestring | nullerforderlich
  • domain_choicestringerforderlich

    enum: "undecided", "company_domain", "no_domain"

  • company_domainstring | nullerforderlich
  • domain_chosen_atstring | nullerforderlich

    format: "date-time"

  • business_contextobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • opportunity_planarrayerforderlich
  • Jedes Elementobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • implementation_summaryobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • validation_summaryobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • journey_metadataobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • context_reviewed_atstring | nullerforderlich

    format: "date-time"

  • plan_proposed_atstring | nullerforderlich

    format: "date-time"

  • plan_approved_atstring | nullerforderlich

    format: "date-time"

  • completed_atstring | nullerforderlich

    format: "date-time"

  • versionintegererforderlich

    format: "int64" · minimum: 1

  • updated_atstringerforderlich

    format: "date-time"

  • allOf 2object
  • domain_discoverynicht angegebenerforderlich
  • oneOf 1object
  • domainstringerforderlich
  • scan_statusstringerforderlich

    enum: "complete", "partial", "failed"

  • companyobjecterforderlich
  • domainstringerforderlich

    Weitere Verschachtelung ausgelassen

  • website_urlstring | nullerforderlich

    format: "uri"

    Weitere Verschachtelung ausgelassen

  • website_statusstringerforderlich

    enum: "available", "missing", "blocked", "error"

    Weitere Verschachtelung ausgelassen

  • company_namestringerforderlich

    Weitere Verschachtelung ausgelassen

  • summarystringerforderlich

    Weitere Verschachtelung ausgelassen

  • audiencestringerforderlich

    Weitere Verschachtelung ausgelassen

  • offeringsarrayerforderlich

    Weitere Verschachtelung ausgelassen

  • logo_urlstring | nullerforderlich

    format: "uri"

    Weitere Verschachtelung ausgelassen

  • favicon_urlstring | nullerforderlich

    format: "uri"

    Weitere Verschachtelung ausgelassen

  • visual_identityobjecterforderlich

    Weitere Verschachtelung ausgelassen

  • source_snapshotobjecterforderlich

    Weitere Verschachtelung ausgelassen

  • dns_signalsarrayerforderlich
  • Jedes Elementobject

    Weitere Verschachtelung ausgelassen

  • dns_providernicht angegebenerforderlich
  • oneOf 1object

    Keine zusätzlichen Eigenschaften

    Weitere Verschachtelung ausgelassen

  • oneOf 2null

    Weitere Verschachtelung ausgelassen

  • provider_detectionsarrayerforderlich
  • Jedes Elementobject

    Weitere Verschachtelung ausgelassen

  • capability_summaryarrayerforderlich
  • Jedes Elementobject

    Weitere Verschachtelung ausgelassen

  • recommended_connectionsarrayerforderlich
  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

    Weitere Verschachtelung ausgelassen

  • connection_planarrayerforderlich
  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

    Weitere Verschachtelung ausgelassen

  • limitationsarrayerforderlich
  • Jedes Elementstring

    Weitere Verschachtelung ausgelassen

  • scanned_atstringerforderlich

    format: "date-time"

  • confirmed_atstring | nullerforderlich

    format: "date-time"

  • oneOf 2null
  • recommended_connectionsarrayerforderlich
  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

  • keystringerforderlich
  • namestringerforderlich
  • categorystringerforderlich

    enum: "email", "customer", "product", "work", "data"

  • prioritystringerforderlich

    enum: "required", "recommended"

  • reasonstringerforderlich
  • sourcestringerforderlich

    enum: "dns", "business_context", "opportunity_plan", "banger_recommendation"

  • setup_modestringerforderlich

    enum: "oauth", "secure_credentials"

  • availablebooleanerforderlich
  • provider_keystring
  • evidencearrayerforderlich
  • Jedes Elementobject

    Weitere Verschachtelung ausgelassen

  • domain_bundleobject | nullerforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • growthobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • activationobjecterforderlich
  • modestringerforderlich

    enum: "hosted", "company_domain", "starter"

  • statusstringerforderlich

    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 | nullerforderlich
  • sending_domain_idstring | nullerforderlich

    format: "uuid"

  • mailbox_idstring | nullerforderlich

    format: "uuid"

  • mailbox_addressstring | nullerforderlich

    format: "email"

  • exact_dns_recordsarrayerforderlich
  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

  • idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • lane_idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • providerstringerforderlich

    enum: "banger", "resend"

    Weitere Verschachtelung ausgelassen

  • purposestringerforderlich

    Weitere Verschachtelung ausgelassen

  • typestringerforderlich

    enum: "TXT", "MX", "CNAME"

    Weitere Verschachtelung ausgelassen

  • namestringerforderlich

    Weitere Verschachtelung ausgelassen

  • valuestringerforderlich

    Weitere Verschachtelung ausgelassen

  • priorityinteger | nullerforderlich

    Weitere Verschachtelung ausgelassen

  • requiredbooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • statusstringerforderlich

    enum: "pending", "verified", "error"

    Weitere Verschachtelung ausgelassen

  • provider_statusstringerforderlich

    enum: "pending", "verified", "error", "not_applicable"

    Weitere Verschachtelung ausgelassen

  • first_observed_atstring | nullerforderlich

    format: "date-time"

    Weitere Verschachtelung ausgelassen

  • last_checked_atstring | nullerforderlich

    format: "date-time"

    Weitere Verschachtelung ausgelassen

  • errorobjecterforderlich

    Weitere Verschachtelung ausgelassen

  • provider_referencestring | nullerforderlich

    Weitere Verschachtelung ausgelassen

  • checkpointsarrayerforderlich
  • Jedes Elementobject
  • keystringerforderlich

    enum: "domain", "provider", "infrastructure", "dns", "mailbox", "product", "broadcast"

    Weitere Verschachtelung ausgelassen

  • labelstringerforderlich

    Weitere Verschachtelung ausgelassen

  • statusstringerforderlich

    enum: "pending", "working", "action_required", "verified"

    Weitere Verschachtelung ausgelassen

  • detailstringerforderlich

    Weitere Verschachtelung ausgelassen

  • lanesobjecterforderlich
  • mailboxobjecterforderlich
  • statusstringerforderlich

    enum: "pending", "working", "action_required", "verified"

    Weitere Verschachtelung ausgelassen

  • detailstringerforderlich

    Weitere Verschachtelung ausgelassen

  • transactionalobjecterforderlich
  • statusstringerforderlich

    enum: "pending", "working", "action_required", "verified"

    Weitere Verschachtelung ausgelassen

  • detailstringerforderlich

    Weitere Verschachtelung ausgelassen

  • marketingobjecterforderlich
  • statusstringerforderlich

    enum: "pending", "working", "action_required", "verified"

    Weitere Verschachtelung ausgelassen

  • detailstringerforderlich

    Weitere Verschachtelung ausgelassen

  • proofnicht angegebenerforderlich
  • oneOf 1object
  • proof_idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • mailbox_idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • mailbox_addressstringerforderlich

    format: "email"

    Weitere Verschachtelung ausgelassen

  • command_idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • phasestringerforderlich

    enum: "sending", "sent", "received", "checked", "failed"

    Weitere Verschachtelung ausgelassen

  • send_completebooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • receive_completebooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • round_trip_check_completebooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • agent_check_completebooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • completebooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • expected_subjectstringerforderlich

    Weitere Verschachtelung ausgelassen

  • expected_body_textstringerforderlich

    Weitere Verschachtelung ausgelassen

  • received_message_idstring

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • received_thread_idstring

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • received_subjectstring

    Weitere Verschachtelung ausgelassen

  • received_body_textstring

    Weitere Verschachtelung ausgelassen

  • received_atstring

    format: "date-time"

    Weitere Verschachtelung ausgelassen

  • agent_labelstring

    Weitere Verschachtelung ausgelassen

  • agent_suggested_actionstring

    Weitere Verschachtelung ausgelassen

  • error_codestring

    Weitere Verschachtelung ausgelassen

  • replayedbooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • oneOf 2object
  • proof_idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • domain_idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • native_domain_idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • mailbox_idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • mailbox_addressstringerforderlich

    format: "email"

    Weitere Verschachtelung ausgelassen

  • transactional_send_intent_idstring

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • marketing_send_intent_idstring

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • transactional_subjectstringerforderlich

    Weitere Verschachtelung ausgelassen

  • marketing_subjectstringerforderlich

    Weitere Verschachtelung ausgelassen

  • phasestringerforderlich

    enum: "sending", "receiving", "received", "checked", "failed"

    Weitere Verschachtelung ausgelassen

  • send_completebooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • transactional_receivedbooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • marketing_receivedbooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • receive_completebooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • agent_check_completebooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • completebooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • error_codestring

    Weitere Verschachtelung ausgelassen

  • replayedbooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • oneOf 3null
  • overall_readybooleanerforderlich
  • production_readybooleanerforderlich
  • completedbooleanerforderlich
  • pendingbooleanerforderlich
  • next_actionstringerforderlich

    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_requiredobjecterforderlich
  • typestringerforderlich
  • requiredbooleanerforderlich
  • actionstringerforderlich

    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 | nullerforderlich

    format: "uri"

  • instructionsstring | nullerforderlich
  • secure_urlstring | nullerforderlich

    format: "uri"

  • mcp_urlstringerforderlich

    format: "uri"

  • dashboard_urlstringerforderlich

    format: "uri"

curl-Beispiel

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

Geprüften Geschäftskontext aus Browser oder verbundenem Agenten speichern.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body erforderlich

application/json

  • valueobject

    Keine zusätzlichen Eigenschaften

  • contextobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • company_domainstring

    Kompatibilitätsbrücke für gecachte Connectors vor chooseAgentOnboardingDomain. Der Agent muss weiterhin zuerst den Nutzer fragen.

    minLength: 3 · maxLength: 253

  • client_namestring

    minLength: 1 · maxLength: 100

Erfolgsantwort 200

Kontext angenommen.

application/json

  • valueobject
  • datanicht angegebenerforderlich
  • allOf 1object
  • workspace_idstringerforderlich

    format: "uuid"

  • statusstringerforderlich

    enum: "choose_agent", "discovering", "planning", "implementing", "validating", "ready", "complete"

  • entry_surfacestring | nullerforderlich

    enum: "codex", "chatgpt", "claude", "grok", "other_agent", "browser", null

  • agent_statusstringerforderlich

    enum: "not_connected", "connecting", "connected", "browser_only"

  • agent_client_namestring | nullerforderlich
  • domain_choicestringerforderlich

    enum: "undecided", "company_domain", "no_domain"

  • company_domainstring | nullerforderlich
  • domain_chosen_atstring | nullerforderlich

    format: "date-time"

  • business_contextobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • opportunity_planarrayerforderlich
  • Jedes Elementobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • implementation_summaryobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • validation_summaryobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • journey_metadataobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • context_reviewed_atstring | nullerforderlich

    format: "date-time"

  • plan_proposed_atstring | nullerforderlich

    format: "date-time"

  • plan_approved_atstring | nullerforderlich

    format: "date-time"

  • completed_atstring | nullerforderlich

    format: "date-time"

  • versionintegererforderlich

    format: "int64" · minimum: 1

  • updated_atstringerforderlich

    format: "date-time"

  • allOf 2object
  • domain_discoverynicht angegebenerforderlich
  • oneOf 1object
  • domainstringerforderlich
  • scan_statusstringerforderlich

    enum: "complete", "partial", "failed"

  • companyobjecterforderlich
  • domainstringerforderlich

    Weitere Verschachtelung ausgelassen

  • website_urlstring | nullerforderlich

    format: "uri"

    Weitere Verschachtelung ausgelassen

  • website_statusstringerforderlich

    enum: "available", "missing", "blocked", "error"

    Weitere Verschachtelung ausgelassen

  • company_namestringerforderlich

    Weitere Verschachtelung ausgelassen

  • summarystringerforderlich

    Weitere Verschachtelung ausgelassen

  • audiencestringerforderlich

    Weitere Verschachtelung ausgelassen

  • offeringsarrayerforderlich

    Weitere Verschachtelung ausgelassen

  • logo_urlstring | nullerforderlich

    format: "uri"

    Weitere Verschachtelung ausgelassen

  • favicon_urlstring | nullerforderlich

    format: "uri"

    Weitere Verschachtelung ausgelassen

  • visual_identityobjecterforderlich

    Weitere Verschachtelung ausgelassen

  • source_snapshotobjecterforderlich

    Weitere Verschachtelung ausgelassen

  • dns_signalsarrayerforderlich
  • Jedes Elementobject

    Weitere Verschachtelung ausgelassen

  • dns_providernicht angegebenerforderlich
  • oneOf 1object

    Keine zusätzlichen Eigenschaften

    Weitere Verschachtelung ausgelassen

  • oneOf 2null

    Weitere Verschachtelung ausgelassen

  • provider_detectionsarrayerforderlich
  • Jedes Elementobject

    Weitere Verschachtelung ausgelassen

  • capability_summaryarrayerforderlich
  • Jedes Elementobject

    Weitere Verschachtelung ausgelassen

  • recommended_connectionsarrayerforderlich
  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

    Weitere Verschachtelung ausgelassen

  • connection_planarrayerforderlich
  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

    Weitere Verschachtelung ausgelassen

  • limitationsarrayerforderlich
  • Jedes Elementstring

    Weitere Verschachtelung ausgelassen

  • scanned_atstringerforderlich

    format: "date-time"

  • confirmed_atstring | nullerforderlich

    format: "date-time"

  • oneOf 2null
  • recommended_connectionsarrayerforderlich
  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

  • keystringerforderlich
  • namestringerforderlich
  • categorystringerforderlich

    enum: "email", "customer", "product", "work", "data"

  • prioritystringerforderlich

    enum: "required", "recommended"

  • reasonstringerforderlich
  • sourcestringerforderlich

    enum: "dns", "business_context", "opportunity_plan", "banger_recommendation"

  • setup_modestringerforderlich

    enum: "oauth", "secure_credentials"

  • availablebooleanerforderlich
  • provider_keystring
  • evidencearrayerforderlich
  • Jedes Elementobject

    Weitere Verschachtelung ausgelassen

  • domain_bundleobject | nullerforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • growthobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • activationobjecterforderlich
  • modestringerforderlich

    enum: "hosted", "company_domain", "starter"

  • statusstringerforderlich

    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 | nullerforderlich
  • sending_domain_idstring | nullerforderlich

    format: "uuid"

  • mailbox_idstring | nullerforderlich

    format: "uuid"

  • mailbox_addressstring | nullerforderlich

    format: "email"

  • exact_dns_recordsarrayerforderlich
  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

  • idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • lane_idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • providerstringerforderlich

    enum: "banger", "resend"

    Weitere Verschachtelung ausgelassen

  • purposestringerforderlich

    Weitere Verschachtelung ausgelassen

  • typestringerforderlich

    enum: "TXT", "MX", "CNAME"

    Weitere Verschachtelung ausgelassen

  • namestringerforderlich

    Weitere Verschachtelung ausgelassen

  • valuestringerforderlich

    Weitere Verschachtelung ausgelassen

  • priorityinteger | nullerforderlich

    Weitere Verschachtelung ausgelassen

  • requiredbooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • statusstringerforderlich

    enum: "pending", "verified", "error"

    Weitere Verschachtelung ausgelassen

  • provider_statusstringerforderlich

    enum: "pending", "verified", "error", "not_applicable"

    Weitere Verschachtelung ausgelassen

  • first_observed_atstring | nullerforderlich

    format: "date-time"

    Weitere Verschachtelung ausgelassen

  • last_checked_atstring | nullerforderlich

    format: "date-time"

    Weitere Verschachtelung ausgelassen

  • errorobjecterforderlich

    Weitere Verschachtelung ausgelassen

  • provider_referencestring | nullerforderlich

    Weitere Verschachtelung ausgelassen

  • checkpointsarrayerforderlich
  • Jedes Elementobject
  • keystringerforderlich

    enum: "domain", "provider", "infrastructure", "dns", "mailbox", "product", "broadcast"

    Weitere Verschachtelung ausgelassen

  • labelstringerforderlich

    Weitere Verschachtelung ausgelassen

  • statusstringerforderlich

    enum: "pending", "working", "action_required", "verified"

    Weitere Verschachtelung ausgelassen

  • detailstringerforderlich

    Weitere Verschachtelung ausgelassen

  • lanesobjecterforderlich
  • mailboxobjecterforderlich
  • statusstringerforderlich

    enum: "pending", "working", "action_required", "verified"

    Weitere Verschachtelung ausgelassen

  • detailstringerforderlich

    Weitere Verschachtelung ausgelassen

  • transactionalobjecterforderlich
  • statusstringerforderlich

    enum: "pending", "working", "action_required", "verified"

    Weitere Verschachtelung ausgelassen

  • detailstringerforderlich

    Weitere Verschachtelung ausgelassen

  • marketingobjecterforderlich
  • statusstringerforderlich

    enum: "pending", "working", "action_required", "verified"

    Weitere Verschachtelung ausgelassen

  • detailstringerforderlich

    Weitere Verschachtelung ausgelassen

  • proofnicht angegebenerforderlich
  • oneOf 1object
  • proof_idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • mailbox_idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • mailbox_addressstringerforderlich

    format: "email"

    Weitere Verschachtelung ausgelassen

  • command_idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • phasestringerforderlich

    enum: "sending", "sent", "received", "checked", "failed"

    Weitere Verschachtelung ausgelassen

  • send_completebooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • receive_completebooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • round_trip_check_completebooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • agent_check_completebooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • completebooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • expected_subjectstringerforderlich

    Weitere Verschachtelung ausgelassen

  • expected_body_textstringerforderlich

    Weitere Verschachtelung ausgelassen

  • received_message_idstring

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • received_thread_idstring

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • received_subjectstring

    Weitere Verschachtelung ausgelassen

  • received_body_textstring

    Weitere Verschachtelung ausgelassen

  • received_atstring

    format: "date-time"

    Weitere Verschachtelung ausgelassen

  • agent_labelstring

    Weitere Verschachtelung ausgelassen

  • agent_suggested_actionstring

    Weitere Verschachtelung ausgelassen

  • error_codestring

    Weitere Verschachtelung ausgelassen

  • replayedbooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • oneOf 2object
  • proof_idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • domain_idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • native_domain_idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • mailbox_idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • mailbox_addressstringerforderlich

    format: "email"

    Weitere Verschachtelung ausgelassen

  • transactional_send_intent_idstring

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • marketing_send_intent_idstring

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • transactional_subjectstringerforderlich

    Weitere Verschachtelung ausgelassen

  • marketing_subjectstringerforderlich

    Weitere Verschachtelung ausgelassen

  • phasestringerforderlich

    enum: "sending", "receiving", "received", "checked", "failed"

    Weitere Verschachtelung ausgelassen

  • send_completebooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • transactional_receivedbooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • marketing_receivedbooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • receive_completebooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • agent_check_completebooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • completebooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • error_codestring

    Weitere Verschachtelung ausgelassen

  • replayedbooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • oneOf 3null
  • overall_readybooleanerforderlich
  • production_readybooleanerforderlich
  • completedbooleanerforderlich
  • pendingbooleanerforderlich
  • next_actionstringerforderlich

    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_requiredobjecterforderlich
  • typestringerforderlich
  • requiredbooleanerforderlich
  • actionstringerforderlich

    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 | nullerforderlich

    format: "uri"

  • instructionsstring | nullerforderlich
  • secure_urlstring | nullerforderlich

    format: "uri"

  • mcp_urlstringerforderlich

    format: "uri"

  • dashboard_urlstringerforderlich

    format: "uri"

curl-Beispiel

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

Personalisierte nächste Schritte nach erfolgreicher Live-E-Mail-Aktivierung speichern.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body erforderlich

application/json

  • valueobject

    Keine zusätzlichen Eigenschaften

  • opportunitiesarrayerforderlich

    minItems: 1 · maxItems: 100

  • Jedes Elementobject
  • Zusätzliche EigenschaftBeliebiger Wert

Erfolgsantwort 200

Chancenplan angenommen.

application/json

  • valueobject
  • datanicht angegebenerforderlich
  • allOf 1object
  • workspace_idstringerforderlich

    format: "uuid"

  • statusstringerforderlich

    enum: "choose_agent", "discovering", "planning", "implementing", "validating", "ready", "complete"

  • entry_surfacestring | nullerforderlich

    enum: "codex", "chatgpt", "claude", "grok", "other_agent", "browser", null

  • agent_statusstringerforderlich

    enum: "not_connected", "connecting", "connected", "browser_only"

  • agent_client_namestring | nullerforderlich
  • domain_choicestringerforderlich

    enum: "undecided", "company_domain", "no_domain"

  • company_domainstring | nullerforderlich
  • domain_chosen_atstring | nullerforderlich

    format: "date-time"

  • business_contextobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • opportunity_planarrayerforderlich
  • Jedes Elementobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • implementation_summaryobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • validation_summaryobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • journey_metadataobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • context_reviewed_atstring | nullerforderlich

    format: "date-time"

  • plan_proposed_atstring | nullerforderlich

    format: "date-time"

  • plan_approved_atstring | nullerforderlich

    format: "date-time"

  • completed_atstring | nullerforderlich

    format: "date-time"

  • versionintegererforderlich

    format: "int64" · minimum: 1

  • updated_atstringerforderlich

    format: "date-time"

  • allOf 2object
  • domain_discoverynicht angegebenerforderlich
  • oneOf 1object
  • domainstringerforderlich
  • scan_statusstringerforderlich

    enum: "complete", "partial", "failed"

  • companyobjecterforderlich
  • domainstringerforderlich

    Weitere Verschachtelung ausgelassen

  • website_urlstring | nullerforderlich

    format: "uri"

    Weitere Verschachtelung ausgelassen

  • website_statusstringerforderlich

    enum: "available", "missing", "blocked", "error"

    Weitere Verschachtelung ausgelassen

  • company_namestringerforderlich

    Weitere Verschachtelung ausgelassen

  • summarystringerforderlich

    Weitere Verschachtelung ausgelassen

  • audiencestringerforderlich

    Weitere Verschachtelung ausgelassen

  • offeringsarrayerforderlich

    Weitere Verschachtelung ausgelassen

  • logo_urlstring | nullerforderlich

    format: "uri"

    Weitere Verschachtelung ausgelassen

  • favicon_urlstring | nullerforderlich

    format: "uri"

    Weitere Verschachtelung ausgelassen

  • visual_identityobjecterforderlich

    Weitere Verschachtelung ausgelassen

  • source_snapshotobjecterforderlich

    Weitere Verschachtelung ausgelassen

  • dns_signalsarrayerforderlich
  • Jedes Elementobject

    Weitere Verschachtelung ausgelassen

  • dns_providernicht angegebenerforderlich
  • oneOf 1object

    Keine zusätzlichen Eigenschaften

    Weitere Verschachtelung ausgelassen

  • oneOf 2null

    Weitere Verschachtelung ausgelassen

  • provider_detectionsarrayerforderlich
  • Jedes Elementobject

    Weitere Verschachtelung ausgelassen

  • capability_summaryarrayerforderlich
  • Jedes Elementobject

    Weitere Verschachtelung ausgelassen

  • recommended_connectionsarrayerforderlich
  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

    Weitere Verschachtelung ausgelassen

  • connection_planarrayerforderlich
  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

    Weitere Verschachtelung ausgelassen

  • limitationsarrayerforderlich
  • Jedes Elementstring

    Weitere Verschachtelung ausgelassen

  • scanned_atstringerforderlich

    format: "date-time"

  • confirmed_atstring | nullerforderlich

    format: "date-time"

  • oneOf 2null
  • recommended_connectionsarrayerforderlich
  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

  • keystringerforderlich
  • namestringerforderlich
  • categorystringerforderlich

    enum: "email", "customer", "product", "work", "data"

  • prioritystringerforderlich

    enum: "required", "recommended"

  • reasonstringerforderlich
  • sourcestringerforderlich

    enum: "dns", "business_context", "opportunity_plan", "banger_recommendation"

  • setup_modestringerforderlich

    enum: "oauth", "secure_credentials"

  • availablebooleanerforderlich
  • provider_keystring
  • evidencearrayerforderlich
  • Jedes Elementobject

    Weitere Verschachtelung ausgelassen

  • domain_bundleobject | nullerforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • growthobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • activationobjecterforderlich
  • modestringerforderlich

    enum: "hosted", "company_domain", "starter"

  • statusstringerforderlich

    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 | nullerforderlich
  • sending_domain_idstring | nullerforderlich

    format: "uuid"

  • mailbox_idstring | nullerforderlich

    format: "uuid"

  • mailbox_addressstring | nullerforderlich

    format: "email"

  • exact_dns_recordsarrayerforderlich
  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

  • idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • lane_idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • providerstringerforderlich

    enum: "banger", "resend"

    Weitere Verschachtelung ausgelassen

  • purposestringerforderlich

    Weitere Verschachtelung ausgelassen

  • typestringerforderlich

    enum: "TXT", "MX", "CNAME"

    Weitere Verschachtelung ausgelassen

  • namestringerforderlich

    Weitere Verschachtelung ausgelassen

  • valuestringerforderlich

    Weitere Verschachtelung ausgelassen

  • priorityinteger | nullerforderlich

    Weitere Verschachtelung ausgelassen

  • requiredbooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • statusstringerforderlich

    enum: "pending", "verified", "error"

    Weitere Verschachtelung ausgelassen

  • provider_statusstringerforderlich

    enum: "pending", "verified", "error", "not_applicable"

    Weitere Verschachtelung ausgelassen

  • first_observed_atstring | nullerforderlich

    format: "date-time"

    Weitere Verschachtelung ausgelassen

  • last_checked_atstring | nullerforderlich

    format: "date-time"

    Weitere Verschachtelung ausgelassen

  • errorobjecterforderlich

    Weitere Verschachtelung ausgelassen

  • provider_referencestring | nullerforderlich

    Weitere Verschachtelung ausgelassen

  • checkpointsarrayerforderlich
  • Jedes Elementobject
  • keystringerforderlich

    enum: "domain", "provider", "infrastructure", "dns", "mailbox", "product", "broadcast"

    Weitere Verschachtelung ausgelassen

  • labelstringerforderlich

    Weitere Verschachtelung ausgelassen

  • statusstringerforderlich

    enum: "pending", "working", "action_required", "verified"

    Weitere Verschachtelung ausgelassen

  • detailstringerforderlich

    Weitere Verschachtelung ausgelassen

  • lanesobjecterforderlich
  • mailboxobjecterforderlich
  • statusstringerforderlich

    enum: "pending", "working", "action_required", "verified"

    Weitere Verschachtelung ausgelassen

  • detailstringerforderlich

    Weitere Verschachtelung ausgelassen

  • transactionalobjecterforderlich
  • statusstringerforderlich

    enum: "pending", "working", "action_required", "verified"

    Weitere Verschachtelung ausgelassen

  • detailstringerforderlich

    Weitere Verschachtelung ausgelassen

  • marketingobjecterforderlich
  • statusstringerforderlich

    enum: "pending", "working", "action_required", "verified"

    Weitere Verschachtelung ausgelassen

  • detailstringerforderlich

    Weitere Verschachtelung ausgelassen

  • proofnicht angegebenerforderlich
  • oneOf 1object
  • proof_idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • mailbox_idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • mailbox_addressstringerforderlich

    format: "email"

    Weitere Verschachtelung ausgelassen

  • command_idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • phasestringerforderlich

    enum: "sending", "sent", "received", "checked", "failed"

    Weitere Verschachtelung ausgelassen

  • send_completebooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • receive_completebooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • round_trip_check_completebooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • agent_check_completebooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • completebooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • expected_subjectstringerforderlich

    Weitere Verschachtelung ausgelassen

  • expected_body_textstringerforderlich

    Weitere Verschachtelung ausgelassen

  • received_message_idstring

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • received_thread_idstring

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • received_subjectstring

    Weitere Verschachtelung ausgelassen

  • received_body_textstring

    Weitere Verschachtelung ausgelassen

  • received_atstring

    format: "date-time"

    Weitere Verschachtelung ausgelassen

  • agent_labelstring

    Weitere Verschachtelung ausgelassen

  • agent_suggested_actionstring

    Weitere Verschachtelung ausgelassen

  • error_codestring

    Weitere Verschachtelung ausgelassen

  • replayedbooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • oneOf 2object
  • proof_idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • domain_idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • native_domain_idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • mailbox_idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • mailbox_addressstringerforderlich

    format: "email"

    Weitere Verschachtelung ausgelassen

  • transactional_send_intent_idstring

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • marketing_send_intent_idstring

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • transactional_subjectstringerforderlich

    Weitere Verschachtelung ausgelassen

  • marketing_subjectstringerforderlich

    Weitere Verschachtelung ausgelassen

  • phasestringerforderlich

    enum: "sending", "receiving", "received", "checked", "failed"

    Weitere Verschachtelung ausgelassen

  • send_completebooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • transactional_receivedbooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • marketing_receivedbooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • receive_completebooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • agent_check_completebooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • completebooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • error_codestring

    Weitere Verschachtelung ausgelassen

  • replayedbooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • oneOf 3null
  • overall_readybooleanerforderlich
  • production_readybooleanerforderlich
  • completedbooleanerforderlich
  • pendingbooleanerforderlich
  • next_actionstringerforderlich

    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_requiredobjecterforderlich
  • typestringerforderlich
  • requiredbooleanerforderlich
  • actionstringerforderlich

    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 | nullerforderlich

    format: "uri"

  • instructionsstring | nullerforderlich
  • secure_urlstring | nullerforderlich

    format: "uri"

  • mcp_urlstringerforderlich

    format: "uri"

  • dashboard_urlstringerforderlich

    format: "uri"

curl-Beispiel

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

Geprüfte, aus dem Chancenplan vorbereitete Artefakte erfassen.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body erforderlich

application/json

  • valueobject

    Keine zusätzlichen Eigenschaften

  • summaryobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert

Erfolgsantwort 200

Umsetzungsübersicht erfasst.

application/json

  • valueobject
  • datanicht angegebenerforderlich
  • allOf 1object
  • workspace_idstringerforderlich

    format: "uuid"

  • statusstringerforderlich

    enum: "choose_agent", "discovering", "planning", "implementing", "validating", "ready", "complete"

  • entry_surfacestring | nullerforderlich

    enum: "codex", "chatgpt", "claude", "grok", "other_agent", "browser", null

  • agent_statusstringerforderlich

    enum: "not_connected", "connecting", "connected", "browser_only"

  • agent_client_namestring | nullerforderlich
  • domain_choicestringerforderlich

    enum: "undecided", "company_domain", "no_domain"

  • company_domainstring | nullerforderlich
  • domain_chosen_atstring | nullerforderlich

    format: "date-time"

  • business_contextobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • opportunity_planarrayerforderlich
  • Jedes Elementobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • implementation_summaryobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • validation_summaryobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • journey_metadataobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • context_reviewed_atstring | nullerforderlich

    format: "date-time"

  • plan_proposed_atstring | nullerforderlich

    format: "date-time"

  • plan_approved_atstring | nullerforderlich

    format: "date-time"

  • completed_atstring | nullerforderlich

    format: "date-time"

  • versionintegererforderlich

    format: "int64" · minimum: 1

  • updated_atstringerforderlich

    format: "date-time"

  • allOf 2object
  • domain_discoverynicht angegebenerforderlich
  • oneOf 1object
  • domainstringerforderlich
  • scan_statusstringerforderlich

    enum: "complete", "partial", "failed"

  • companyobjecterforderlich
  • domainstringerforderlich

    Weitere Verschachtelung ausgelassen

  • website_urlstring | nullerforderlich

    format: "uri"

    Weitere Verschachtelung ausgelassen

  • website_statusstringerforderlich

    enum: "available", "missing", "blocked", "error"

    Weitere Verschachtelung ausgelassen

  • company_namestringerforderlich

    Weitere Verschachtelung ausgelassen

  • summarystringerforderlich

    Weitere Verschachtelung ausgelassen

  • audiencestringerforderlich

    Weitere Verschachtelung ausgelassen

  • offeringsarrayerforderlich

    Weitere Verschachtelung ausgelassen

  • logo_urlstring | nullerforderlich

    format: "uri"

    Weitere Verschachtelung ausgelassen

  • favicon_urlstring | nullerforderlich

    format: "uri"

    Weitere Verschachtelung ausgelassen

  • visual_identityobjecterforderlich

    Weitere Verschachtelung ausgelassen

  • source_snapshotobjecterforderlich

    Weitere Verschachtelung ausgelassen

  • dns_signalsarrayerforderlich
  • Jedes Elementobject

    Weitere Verschachtelung ausgelassen

  • dns_providernicht angegebenerforderlich
  • oneOf 1object

    Keine zusätzlichen Eigenschaften

    Weitere Verschachtelung ausgelassen

  • oneOf 2null

    Weitere Verschachtelung ausgelassen

  • provider_detectionsarrayerforderlich
  • Jedes Elementobject

    Weitere Verschachtelung ausgelassen

  • capability_summaryarrayerforderlich
  • Jedes Elementobject

    Weitere Verschachtelung ausgelassen

  • recommended_connectionsarrayerforderlich
  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

    Weitere Verschachtelung ausgelassen

  • connection_planarrayerforderlich
  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

    Weitere Verschachtelung ausgelassen

  • limitationsarrayerforderlich
  • Jedes Elementstring

    Weitere Verschachtelung ausgelassen

  • scanned_atstringerforderlich

    format: "date-time"

  • confirmed_atstring | nullerforderlich

    format: "date-time"

  • oneOf 2null
  • recommended_connectionsarrayerforderlich
  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

  • keystringerforderlich
  • namestringerforderlich
  • categorystringerforderlich

    enum: "email", "customer", "product", "work", "data"

  • prioritystringerforderlich

    enum: "required", "recommended"

  • reasonstringerforderlich
  • sourcestringerforderlich

    enum: "dns", "business_context", "opportunity_plan", "banger_recommendation"

  • setup_modestringerforderlich

    enum: "oauth", "secure_credentials"

  • availablebooleanerforderlich
  • provider_keystring
  • evidencearrayerforderlich
  • Jedes Elementobject

    Weitere Verschachtelung ausgelassen

  • domain_bundleobject | nullerforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • growthobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • activationobjecterforderlich
  • modestringerforderlich

    enum: "hosted", "company_domain", "starter"

  • statusstringerforderlich

    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 | nullerforderlich
  • sending_domain_idstring | nullerforderlich

    format: "uuid"

  • mailbox_idstring | nullerforderlich

    format: "uuid"

  • mailbox_addressstring | nullerforderlich

    format: "email"

  • exact_dns_recordsarrayerforderlich
  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

  • idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • lane_idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • providerstringerforderlich

    enum: "banger", "resend"

    Weitere Verschachtelung ausgelassen

  • purposestringerforderlich

    Weitere Verschachtelung ausgelassen

  • typestringerforderlich

    enum: "TXT", "MX", "CNAME"

    Weitere Verschachtelung ausgelassen

  • namestringerforderlich

    Weitere Verschachtelung ausgelassen

  • valuestringerforderlich

    Weitere Verschachtelung ausgelassen

  • priorityinteger | nullerforderlich

    Weitere Verschachtelung ausgelassen

  • requiredbooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • statusstringerforderlich

    enum: "pending", "verified", "error"

    Weitere Verschachtelung ausgelassen

  • provider_statusstringerforderlich

    enum: "pending", "verified", "error", "not_applicable"

    Weitere Verschachtelung ausgelassen

  • first_observed_atstring | nullerforderlich

    format: "date-time"

    Weitere Verschachtelung ausgelassen

  • last_checked_atstring | nullerforderlich

    format: "date-time"

    Weitere Verschachtelung ausgelassen

  • errorobjecterforderlich

    Weitere Verschachtelung ausgelassen

  • provider_referencestring | nullerforderlich

    Weitere Verschachtelung ausgelassen

  • checkpointsarrayerforderlich
  • Jedes Elementobject
  • keystringerforderlich

    enum: "domain", "provider", "infrastructure", "dns", "mailbox", "product", "broadcast"

    Weitere Verschachtelung ausgelassen

  • labelstringerforderlich

    Weitere Verschachtelung ausgelassen

  • statusstringerforderlich

    enum: "pending", "working", "action_required", "verified"

    Weitere Verschachtelung ausgelassen

  • detailstringerforderlich

    Weitere Verschachtelung ausgelassen

  • lanesobjecterforderlich
  • mailboxobjecterforderlich
  • statusstringerforderlich

    enum: "pending", "working", "action_required", "verified"

    Weitere Verschachtelung ausgelassen

  • detailstringerforderlich

    Weitere Verschachtelung ausgelassen

  • transactionalobjecterforderlich
  • statusstringerforderlich

    enum: "pending", "working", "action_required", "verified"

    Weitere Verschachtelung ausgelassen

  • detailstringerforderlich

    Weitere Verschachtelung ausgelassen

  • marketingobjecterforderlich
  • statusstringerforderlich

    enum: "pending", "working", "action_required", "verified"

    Weitere Verschachtelung ausgelassen

  • detailstringerforderlich

    Weitere Verschachtelung ausgelassen

  • proofnicht angegebenerforderlich
  • oneOf 1object
  • proof_idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • mailbox_idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • mailbox_addressstringerforderlich

    format: "email"

    Weitere Verschachtelung ausgelassen

  • command_idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • phasestringerforderlich

    enum: "sending", "sent", "received", "checked", "failed"

    Weitere Verschachtelung ausgelassen

  • send_completebooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • receive_completebooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • round_trip_check_completebooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • agent_check_completebooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • completebooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • expected_subjectstringerforderlich

    Weitere Verschachtelung ausgelassen

  • expected_body_textstringerforderlich

    Weitere Verschachtelung ausgelassen

  • received_message_idstring

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • received_thread_idstring

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • received_subjectstring

    Weitere Verschachtelung ausgelassen

  • received_body_textstring

    Weitere Verschachtelung ausgelassen

  • received_atstring

    format: "date-time"

    Weitere Verschachtelung ausgelassen

  • agent_labelstring

    Weitere Verschachtelung ausgelassen

  • agent_suggested_actionstring

    Weitere Verschachtelung ausgelassen

  • error_codestring

    Weitere Verschachtelung ausgelassen

  • replayedbooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • oneOf 2object
  • proof_idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • domain_idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • native_domain_idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • mailbox_idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • mailbox_addressstringerforderlich

    format: "email"

    Weitere Verschachtelung ausgelassen

  • transactional_send_intent_idstring

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • marketing_send_intent_idstring

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • transactional_subjectstringerforderlich

    Weitere Verschachtelung ausgelassen

  • marketing_subjectstringerforderlich

    Weitere Verschachtelung ausgelassen

  • phasestringerforderlich

    enum: "sending", "receiving", "received", "checked", "failed"

    Weitere Verschachtelung ausgelassen

  • send_completebooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • transactional_receivedbooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • marketing_receivedbooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • receive_completebooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • agent_check_completebooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • completebooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • error_codestring

    Weitere Verschachtelung ausgelassen

  • replayedbooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • oneOf 3null
  • overall_readybooleanerforderlich
  • production_readybooleanerforderlich
  • completedbooleanerforderlich
  • pendingbooleanerforderlich
  • next_actionstringerforderlich

    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_requiredobjecterforderlich
  • typestringerforderlich
  • requiredbooleanerforderlich
  • actionstringerforderlich

    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 | nullerforderlich

    format: "uri"

  • instructionsstring | nullerforderlich
  • secure_urlstring | nullerforderlich

    format: "uri"

  • mcp_urlstringerforderlich

    format: "uri"

  • dashboard_urlstringerforderlich

    format: "uri"

curl-Beispiel

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

Vorgeschlagene Chancenübersicht genehmigen, bevor der Agent sensible Änderungen vorbereitet.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Chancenplan vom authentifizierten Workspace-Administrator genehmigt.

application/json

  • valueobject
  • datanicht angegebenerforderlich
  • allOf 1object
  • workspace_idstringerforderlich

    format: "uuid"

  • statusstringerforderlich

    enum: "choose_agent", "discovering", "planning", "implementing", "validating", "ready", "complete"

  • entry_surfacestring | nullerforderlich

    enum: "codex", "chatgpt", "claude", "grok", "other_agent", "browser", null

  • agent_statusstringerforderlich

    enum: "not_connected", "connecting", "connected", "browser_only"

  • agent_client_namestring | nullerforderlich
  • domain_choicestringerforderlich

    enum: "undecided", "company_domain", "no_domain"

  • company_domainstring | nullerforderlich
  • domain_chosen_atstring | nullerforderlich

    format: "date-time"

  • business_contextobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • opportunity_planarrayerforderlich
  • Jedes Elementobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • implementation_summaryobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • validation_summaryobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • journey_metadataobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • context_reviewed_atstring | nullerforderlich

    format: "date-time"

  • plan_proposed_atstring | nullerforderlich

    format: "date-time"

  • plan_approved_atstring | nullerforderlich

    format: "date-time"

  • completed_atstring | nullerforderlich

    format: "date-time"

  • versionintegererforderlich

    format: "int64" · minimum: 1

  • updated_atstringerforderlich

    format: "date-time"

  • allOf 2object
  • domain_discoverynicht angegebenerforderlich
  • oneOf 1object
  • domainstringerforderlich
  • scan_statusstringerforderlich

    enum: "complete", "partial", "failed"

  • companyobjecterforderlich
  • domainstringerforderlich

    Weitere Verschachtelung ausgelassen

  • website_urlstring | nullerforderlich

    format: "uri"

    Weitere Verschachtelung ausgelassen

  • website_statusstringerforderlich

    enum: "available", "missing", "blocked", "error"

    Weitere Verschachtelung ausgelassen

  • company_namestringerforderlich

    Weitere Verschachtelung ausgelassen

  • summarystringerforderlich

    Weitere Verschachtelung ausgelassen

  • audiencestringerforderlich

    Weitere Verschachtelung ausgelassen

  • offeringsarrayerforderlich

    Weitere Verschachtelung ausgelassen

  • logo_urlstring | nullerforderlich

    format: "uri"

    Weitere Verschachtelung ausgelassen

  • favicon_urlstring | nullerforderlich

    format: "uri"

    Weitere Verschachtelung ausgelassen

  • visual_identityobjecterforderlich

    Weitere Verschachtelung ausgelassen

  • source_snapshotobjecterforderlich

    Weitere Verschachtelung ausgelassen

  • dns_signalsarrayerforderlich
  • Jedes Elementobject

    Weitere Verschachtelung ausgelassen

  • dns_providernicht angegebenerforderlich
  • oneOf 1object

    Keine zusätzlichen Eigenschaften

    Weitere Verschachtelung ausgelassen

  • oneOf 2null

    Weitere Verschachtelung ausgelassen

  • provider_detectionsarrayerforderlich
  • Jedes Elementobject

    Weitere Verschachtelung ausgelassen

  • capability_summaryarrayerforderlich
  • Jedes Elementobject

    Weitere Verschachtelung ausgelassen

  • recommended_connectionsarrayerforderlich
  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

    Weitere Verschachtelung ausgelassen

  • connection_planarrayerforderlich
  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

    Weitere Verschachtelung ausgelassen

  • limitationsarrayerforderlich
  • Jedes Elementstring

    Weitere Verschachtelung ausgelassen

  • scanned_atstringerforderlich

    format: "date-time"

  • confirmed_atstring | nullerforderlich

    format: "date-time"

  • oneOf 2null
  • recommended_connectionsarrayerforderlich
  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

  • keystringerforderlich
  • namestringerforderlich
  • categorystringerforderlich

    enum: "email", "customer", "product", "work", "data"

  • prioritystringerforderlich

    enum: "required", "recommended"

  • reasonstringerforderlich
  • sourcestringerforderlich

    enum: "dns", "business_context", "opportunity_plan", "banger_recommendation"

  • setup_modestringerforderlich

    enum: "oauth", "secure_credentials"

  • availablebooleanerforderlich
  • provider_keystring
  • evidencearrayerforderlich
  • Jedes Elementobject

    Weitere Verschachtelung ausgelassen

  • domain_bundleobject | nullerforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • growthobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • activationobjecterforderlich
  • modestringerforderlich

    enum: "hosted", "company_domain", "starter"

  • statusstringerforderlich

    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 | nullerforderlich
  • sending_domain_idstring | nullerforderlich

    format: "uuid"

  • mailbox_idstring | nullerforderlich

    format: "uuid"

  • mailbox_addressstring | nullerforderlich

    format: "email"

  • exact_dns_recordsarrayerforderlich
  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

  • idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • lane_idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • providerstringerforderlich

    enum: "banger", "resend"

    Weitere Verschachtelung ausgelassen

  • purposestringerforderlich

    Weitere Verschachtelung ausgelassen

  • typestringerforderlich

    enum: "TXT", "MX", "CNAME"

    Weitere Verschachtelung ausgelassen

  • namestringerforderlich

    Weitere Verschachtelung ausgelassen

  • valuestringerforderlich

    Weitere Verschachtelung ausgelassen

  • priorityinteger | nullerforderlich

    Weitere Verschachtelung ausgelassen

  • requiredbooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • statusstringerforderlich

    enum: "pending", "verified", "error"

    Weitere Verschachtelung ausgelassen

  • provider_statusstringerforderlich

    enum: "pending", "verified", "error", "not_applicable"

    Weitere Verschachtelung ausgelassen

  • first_observed_atstring | nullerforderlich

    format: "date-time"

    Weitere Verschachtelung ausgelassen

  • last_checked_atstring | nullerforderlich

    format: "date-time"

    Weitere Verschachtelung ausgelassen

  • errorobjecterforderlich

    Weitere Verschachtelung ausgelassen

  • provider_referencestring | nullerforderlich

    Weitere Verschachtelung ausgelassen

  • checkpointsarrayerforderlich
  • Jedes Elementobject
  • keystringerforderlich

    enum: "domain", "provider", "infrastructure", "dns", "mailbox", "product", "broadcast"

    Weitere Verschachtelung ausgelassen

  • labelstringerforderlich

    Weitere Verschachtelung ausgelassen

  • statusstringerforderlich

    enum: "pending", "working", "action_required", "verified"

    Weitere Verschachtelung ausgelassen

  • detailstringerforderlich

    Weitere Verschachtelung ausgelassen

  • lanesobjecterforderlich
  • mailboxobjecterforderlich
  • statusstringerforderlich

    enum: "pending", "working", "action_required", "verified"

    Weitere Verschachtelung ausgelassen

  • detailstringerforderlich

    Weitere Verschachtelung ausgelassen

  • transactionalobjecterforderlich
  • statusstringerforderlich

    enum: "pending", "working", "action_required", "verified"

    Weitere Verschachtelung ausgelassen

  • detailstringerforderlich

    Weitere Verschachtelung ausgelassen

  • marketingobjecterforderlich
  • statusstringerforderlich

    enum: "pending", "working", "action_required", "verified"

    Weitere Verschachtelung ausgelassen

  • detailstringerforderlich

    Weitere Verschachtelung ausgelassen

  • proofnicht angegebenerforderlich
  • oneOf 1object
  • proof_idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • mailbox_idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • mailbox_addressstringerforderlich

    format: "email"

    Weitere Verschachtelung ausgelassen

  • command_idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • phasestringerforderlich

    enum: "sending", "sent", "received", "checked", "failed"

    Weitere Verschachtelung ausgelassen

  • send_completebooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • receive_completebooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • round_trip_check_completebooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • agent_check_completebooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • completebooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • expected_subjectstringerforderlich

    Weitere Verschachtelung ausgelassen

  • expected_body_textstringerforderlich

    Weitere Verschachtelung ausgelassen

  • received_message_idstring

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • received_thread_idstring

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • received_subjectstring

    Weitere Verschachtelung ausgelassen

  • received_body_textstring

    Weitere Verschachtelung ausgelassen

  • received_atstring

    format: "date-time"

    Weitere Verschachtelung ausgelassen

  • agent_labelstring

    Weitere Verschachtelung ausgelassen

  • agent_suggested_actionstring

    Weitere Verschachtelung ausgelassen

  • error_codestring

    Weitere Verschachtelung ausgelassen

  • replayedbooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • oneOf 2object
  • proof_idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • domain_idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • native_domain_idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • mailbox_idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • mailbox_addressstringerforderlich

    format: "email"

    Weitere Verschachtelung ausgelassen

  • transactional_send_intent_idstring

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • marketing_send_intent_idstring

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • transactional_subjectstringerforderlich

    Weitere Verschachtelung ausgelassen

  • marketing_subjectstringerforderlich

    Weitere Verschachtelung ausgelassen

  • phasestringerforderlich

    enum: "sending", "receiving", "received", "checked", "failed"

    Weitere Verschachtelung ausgelassen

  • send_completebooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • transactional_receivedbooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • marketing_receivedbooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • receive_completebooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • agent_check_completebooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • completebooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • error_codestring

    Weitere Verschachtelung ausgelassen

  • replayedbooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • oneOf 3null
  • overall_readybooleanerforderlich
  • production_readybooleanerforderlich
  • completedbooleanerforderlich
  • pendingbooleanerforderlich
  • next_actionstringerforderlich

    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_requiredobjecterforderlich
  • typestringerforderlich
  • requiredbooleanerforderlich
  • actionstringerforderlich

    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 | nullerforderlich

    format: "uri"

  • instructionsstring | nullerforderlich
  • secure_urlstring | nullerforderlich

    format: "uri"

  • mcp_urlstringerforderlich

    format: "uri"

  • dashboard_urlstringerforderlich

    format: "uri"

curl-Beispiel

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

Deterministische Aktivierungsvalidierung aus dem von Banger verwalteten Nachweisstatus ableiten.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body erforderlich

application/json

  • valueobject

    Keine zusätzlichen Eigenschaften

  • summaryobject
  • Zusätzliche EigenschaftBeliebiger Wert

Erfolgsantwort 200

Validierungsergebnis erfasst.

application/json

  • valueobject
  • datanicht angegebenerforderlich
  • allOf 1object
  • workspace_idstringerforderlich

    format: "uuid"

  • statusstringerforderlich

    enum: "choose_agent", "discovering", "planning", "implementing", "validating", "ready", "complete"

  • entry_surfacestring | nullerforderlich

    enum: "codex", "chatgpt", "claude", "grok", "other_agent", "browser", null

  • agent_statusstringerforderlich

    enum: "not_connected", "connecting", "connected", "browser_only"

  • agent_client_namestring | nullerforderlich
  • domain_choicestringerforderlich

    enum: "undecided", "company_domain", "no_domain"

  • company_domainstring | nullerforderlich
  • domain_chosen_atstring | nullerforderlich

    format: "date-time"

  • business_contextobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • opportunity_planarrayerforderlich
  • Jedes Elementobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • implementation_summaryobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • validation_summaryobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • journey_metadataobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • context_reviewed_atstring | nullerforderlich

    format: "date-time"

  • plan_proposed_atstring | nullerforderlich

    format: "date-time"

  • plan_approved_atstring | nullerforderlich

    format: "date-time"

  • completed_atstring | nullerforderlich

    format: "date-time"

  • versionintegererforderlich

    format: "int64" · minimum: 1

  • updated_atstringerforderlich

    format: "date-time"

  • allOf 2object
  • domain_discoverynicht angegebenerforderlich
  • oneOf 1object
  • domainstringerforderlich
  • scan_statusstringerforderlich

    enum: "complete", "partial", "failed"

  • companyobjecterforderlich
  • domainstringerforderlich

    Weitere Verschachtelung ausgelassen

  • website_urlstring | nullerforderlich

    format: "uri"

    Weitere Verschachtelung ausgelassen

  • website_statusstringerforderlich

    enum: "available", "missing", "blocked", "error"

    Weitere Verschachtelung ausgelassen

  • company_namestringerforderlich

    Weitere Verschachtelung ausgelassen

  • summarystringerforderlich

    Weitere Verschachtelung ausgelassen

  • audiencestringerforderlich

    Weitere Verschachtelung ausgelassen

  • offeringsarrayerforderlich

    Weitere Verschachtelung ausgelassen

  • logo_urlstring | nullerforderlich

    format: "uri"

    Weitere Verschachtelung ausgelassen

  • favicon_urlstring | nullerforderlich

    format: "uri"

    Weitere Verschachtelung ausgelassen

  • visual_identityobjecterforderlich

    Weitere Verschachtelung ausgelassen

  • source_snapshotobjecterforderlich

    Weitere Verschachtelung ausgelassen

  • dns_signalsarrayerforderlich
  • Jedes Elementobject

    Weitere Verschachtelung ausgelassen

  • dns_providernicht angegebenerforderlich
  • oneOf 1object

    Keine zusätzlichen Eigenschaften

    Weitere Verschachtelung ausgelassen

  • oneOf 2null

    Weitere Verschachtelung ausgelassen

  • provider_detectionsarrayerforderlich
  • Jedes Elementobject

    Weitere Verschachtelung ausgelassen

  • capability_summaryarrayerforderlich
  • Jedes Elementobject

    Weitere Verschachtelung ausgelassen

  • recommended_connectionsarrayerforderlich
  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

    Weitere Verschachtelung ausgelassen

  • connection_planarrayerforderlich
  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

    Weitere Verschachtelung ausgelassen

  • limitationsarrayerforderlich
  • Jedes Elementstring

    Weitere Verschachtelung ausgelassen

  • scanned_atstringerforderlich

    format: "date-time"

  • confirmed_atstring | nullerforderlich

    format: "date-time"

  • oneOf 2null
  • recommended_connectionsarrayerforderlich
  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

  • keystringerforderlich
  • namestringerforderlich
  • categorystringerforderlich

    enum: "email", "customer", "product", "work", "data"

  • prioritystringerforderlich

    enum: "required", "recommended"

  • reasonstringerforderlich
  • sourcestringerforderlich

    enum: "dns", "business_context", "opportunity_plan", "banger_recommendation"

  • setup_modestringerforderlich

    enum: "oauth", "secure_credentials"

  • availablebooleanerforderlich
  • provider_keystring
  • evidencearrayerforderlich
  • Jedes Elementobject

    Weitere Verschachtelung ausgelassen

  • domain_bundleobject | nullerforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • growthobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • activationobjecterforderlich
  • modestringerforderlich

    enum: "hosted", "company_domain", "starter"

  • statusstringerforderlich

    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 | nullerforderlich
  • sending_domain_idstring | nullerforderlich

    format: "uuid"

  • mailbox_idstring | nullerforderlich

    format: "uuid"

  • mailbox_addressstring | nullerforderlich

    format: "email"

  • exact_dns_recordsarrayerforderlich
  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

  • idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • lane_idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • providerstringerforderlich

    enum: "banger", "resend"

    Weitere Verschachtelung ausgelassen

  • purposestringerforderlich

    Weitere Verschachtelung ausgelassen

  • typestringerforderlich

    enum: "TXT", "MX", "CNAME"

    Weitere Verschachtelung ausgelassen

  • namestringerforderlich

    Weitere Verschachtelung ausgelassen

  • valuestringerforderlich

    Weitere Verschachtelung ausgelassen

  • priorityinteger | nullerforderlich

    Weitere Verschachtelung ausgelassen

  • requiredbooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • statusstringerforderlich

    enum: "pending", "verified", "error"

    Weitere Verschachtelung ausgelassen

  • provider_statusstringerforderlich

    enum: "pending", "verified", "error", "not_applicable"

    Weitere Verschachtelung ausgelassen

  • first_observed_atstring | nullerforderlich

    format: "date-time"

    Weitere Verschachtelung ausgelassen

  • last_checked_atstring | nullerforderlich

    format: "date-time"

    Weitere Verschachtelung ausgelassen

  • errorobjecterforderlich

    Weitere Verschachtelung ausgelassen

  • provider_referencestring | nullerforderlich

    Weitere Verschachtelung ausgelassen

  • checkpointsarrayerforderlich
  • Jedes Elementobject
  • keystringerforderlich

    enum: "domain", "provider", "infrastructure", "dns", "mailbox", "product", "broadcast"

    Weitere Verschachtelung ausgelassen

  • labelstringerforderlich

    Weitere Verschachtelung ausgelassen

  • statusstringerforderlich

    enum: "pending", "working", "action_required", "verified"

    Weitere Verschachtelung ausgelassen

  • detailstringerforderlich

    Weitere Verschachtelung ausgelassen

  • lanesobjecterforderlich
  • mailboxobjecterforderlich
  • statusstringerforderlich

    enum: "pending", "working", "action_required", "verified"

    Weitere Verschachtelung ausgelassen

  • detailstringerforderlich

    Weitere Verschachtelung ausgelassen

  • transactionalobjecterforderlich
  • statusstringerforderlich

    enum: "pending", "working", "action_required", "verified"

    Weitere Verschachtelung ausgelassen

  • detailstringerforderlich

    Weitere Verschachtelung ausgelassen

  • marketingobjecterforderlich
  • statusstringerforderlich

    enum: "pending", "working", "action_required", "verified"

    Weitere Verschachtelung ausgelassen

  • detailstringerforderlich

    Weitere Verschachtelung ausgelassen

  • proofnicht angegebenerforderlich
  • oneOf 1object
  • proof_idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • mailbox_idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • mailbox_addressstringerforderlich

    format: "email"

    Weitere Verschachtelung ausgelassen

  • command_idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • phasestringerforderlich

    enum: "sending", "sent", "received", "checked", "failed"

    Weitere Verschachtelung ausgelassen

  • send_completebooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • receive_completebooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • round_trip_check_completebooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • agent_check_completebooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • completebooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • expected_subjectstringerforderlich

    Weitere Verschachtelung ausgelassen

  • expected_body_textstringerforderlich

    Weitere Verschachtelung ausgelassen

  • received_message_idstring

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • received_thread_idstring

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • received_subjectstring

    Weitere Verschachtelung ausgelassen

  • received_body_textstring

    Weitere Verschachtelung ausgelassen

  • received_atstring

    format: "date-time"

    Weitere Verschachtelung ausgelassen

  • agent_labelstring

    Weitere Verschachtelung ausgelassen

  • agent_suggested_actionstring

    Weitere Verschachtelung ausgelassen

  • error_codestring

    Weitere Verschachtelung ausgelassen

  • replayedbooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • oneOf 2object
  • proof_idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • domain_idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • native_domain_idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • mailbox_idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • mailbox_addressstringerforderlich

    format: "email"

    Weitere Verschachtelung ausgelassen

  • transactional_send_intent_idstring

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • marketing_send_intent_idstring

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • transactional_subjectstringerforderlich

    Weitere Verschachtelung ausgelassen

  • marketing_subjectstringerforderlich

    Weitere Verschachtelung ausgelassen

  • phasestringerforderlich

    enum: "sending", "receiving", "received", "checked", "failed"

    Weitere Verschachtelung ausgelassen

  • send_completebooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • transactional_receivedbooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • marketing_receivedbooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • receive_completebooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • agent_check_completebooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • completebooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • error_codestring

    Weitere Verschachtelung ausgelassen

  • replayedbooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • oneOf 3null
  • overall_readybooleanerforderlich
  • production_readybooleanerforderlich
  • completedbooleanerforderlich
  • pendingbooleanerforderlich
  • next_actionstringerforderlich

    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_requiredobjecterforderlich
  • typestringerforderlich
  • requiredbooleanerforderlich
  • actionstringerforderlich

    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 | nullerforderlich

    format: "uri"

  • instructionsstring | nullerforderlich
  • secure_urlstring | nullerforderlich

    format: "uri"

  • mcp_urlstringerforderlich

    format: "uri"

  • dashboard_urlstringerforderlich

    format: "uri"

curl-Beispiel

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

Einrichtung nach erfolgreicher deterministischer Validierung abschließen.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Einrichtung abgeschlossen.

application/json

  • valueobject
  • datanicht angegebenerforderlich
  • allOf 1object
  • workspace_idstringerforderlich

    format: "uuid"

  • statusstringerforderlich

    enum: "choose_agent", "discovering", "planning", "implementing", "validating", "ready", "complete"

  • entry_surfacestring | nullerforderlich

    enum: "codex", "chatgpt", "claude", "grok", "other_agent", "browser", null

  • agent_statusstringerforderlich

    enum: "not_connected", "connecting", "connected", "browser_only"

  • agent_client_namestring | nullerforderlich
  • domain_choicestringerforderlich

    enum: "undecided", "company_domain", "no_domain"

  • company_domainstring | nullerforderlich
  • domain_chosen_atstring | nullerforderlich

    format: "date-time"

  • business_contextobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • opportunity_planarrayerforderlich
  • Jedes Elementobject
  • Zusätzliche EigenschaftBeliebiger Wert
  • implementation_summaryobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • validation_summaryobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • journey_metadataobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • context_reviewed_atstring | nullerforderlich

    format: "date-time"

  • plan_proposed_atstring | nullerforderlich

    format: "date-time"

  • plan_approved_atstring | nullerforderlich

    format: "date-time"

  • completed_atstring | nullerforderlich

    format: "date-time"

  • versionintegererforderlich

    format: "int64" · minimum: 1

  • updated_atstringerforderlich

    format: "date-time"

  • allOf 2object
  • domain_discoverynicht angegebenerforderlich
  • oneOf 1object
  • domainstringerforderlich
  • scan_statusstringerforderlich

    enum: "complete", "partial", "failed"

  • companyobjecterforderlich
  • domainstringerforderlich

    Weitere Verschachtelung ausgelassen

  • website_urlstring | nullerforderlich

    format: "uri"

    Weitere Verschachtelung ausgelassen

  • website_statusstringerforderlich

    enum: "available", "missing", "blocked", "error"

    Weitere Verschachtelung ausgelassen

  • company_namestringerforderlich

    Weitere Verschachtelung ausgelassen

  • summarystringerforderlich

    Weitere Verschachtelung ausgelassen

  • audiencestringerforderlich

    Weitere Verschachtelung ausgelassen

  • offeringsarrayerforderlich

    Weitere Verschachtelung ausgelassen

  • logo_urlstring | nullerforderlich

    format: "uri"

    Weitere Verschachtelung ausgelassen

  • favicon_urlstring | nullerforderlich

    format: "uri"

    Weitere Verschachtelung ausgelassen

  • visual_identityobjecterforderlich

    Weitere Verschachtelung ausgelassen

  • source_snapshotobjecterforderlich

    Weitere Verschachtelung ausgelassen

  • dns_signalsarrayerforderlich
  • Jedes Elementobject

    Weitere Verschachtelung ausgelassen

  • dns_providernicht angegebenerforderlich
  • oneOf 1object

    Keine zusätzlichen Eigenschaften

    Weitere Verschachtelung ausgelassen

  • oneOf 2null

    Weitere Verschachtelung ausgelassen

  • provider_detectionsarrayerforderlich
  • Jedes Elementobject

    Weitere Verschachtelung ausgelassen

  • capability_summaryarrayerforderlich
  • Jedes Elementobject

    Weitere Verschachtelung ausgelassen

  • recommended_connectionsarrayerforderlich
  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

    Weitere Verschachtelung ausgelassen

  • connection_planarrayerforderlich
  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

    Weitere Verschachtelung ausgelassen

  • limitationsarrayerforderlich
  • Jedes Elementstring

    Weitere Verschachtelung ausgelassen

  • scanned_atstringerforderlich

    format: "date-time"

  • confirmed_atstring | nullerforderlich

    format: "date-time"

  • oneOf 2null
  • recommended_connectionsarrayerforderlich
  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

  • keystringerforderlich
  • namestringerforderlich
  • categorystringerforderlich

    enum: "email", "customer", "product", "work", "data"

  • prioritystringerforderlich

    enum: "required", "recommended"

  • reasonstringerforderlich
  • sourcestringerforderlich

    enum: "dns", "business_context", "opportunity_plan", "banger_recommendation"

  • setup_modestringerforderlich

    enum: "oauth", "secure_credentials"

  • availablebooleanerforderlich
  • provider_keystring
  • evidencearrayerforderlich
  • Jedes Elementobject

    Weitere Verschachtelung ausgelassen

  • domain_bundleobject | nullerforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • growthobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • activationobjecterforderlich
  • modestringerforderlich

    enum: "hosted", "company_domain", "starter"

  • statusstringerforderlich

    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 | nullerforderlich
  • sending_domain_idstring | nullerforderlich

    format: "uuid"

  • mailbox_idstring | nullerforderlich

    format: "uuid"

  • mailbox_addressstring | nullerforderlich

    format: "email"

  • exact_dns_recordsarrayerforderlich
  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

  • idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • lane_idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • providerstringerforderlich

    enum: "banger", "resend"

    Weitere Verschachtelung ausgelassen

  • purposestringerforderlich

    Weitere Verschachtelung ausgelassen

  • typestringerforderlich

    enum: "TXT", "MX", "CNAME"

    Weitere Verschachtelung ausgelassen

  • namestringerforderlich

    Weitere Verschachtelung ausgelassen

  • valuestringerforderlich

    Weitere Verschachtelung ausgelassen

  • priorityinteger | nullerforderlich

    Weitere Verschachtelung ausgelassen

  • requiredbooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • statusstringerforderlich

    enum: "pending", "verified", "error"

    Weitere Verschachtelung ausgelassen

  • provider_statusstringerforderlich

    enum: "pending", "verified", "error", "not_applicable"

    Weitere Verschachtelung ausgelassen

  • first_observed_atstring | nullerforderlich

    format: "date-time"

    Weitere Verschachtelung ausgelassen

  • last_checked_atstring | nullerforderlich

    format: "date-time"

    Weitere Verschachtelung ausgelassen

  • errorobjecterforderlich

    Weitere Verschachtelung ausgelassen

  • provider_referencestring | nullerforderlich

    Weitere Verschachtelung ausgelassen

  • checkpointsarrayerforderlich
  • Jedes Elementobject
  • keystringerforderlich

    enum: "domain", "provider", "infrastructure", "dns", "mailbox", "product", "broadcast"

    Weitere Verschachtelung ausgelassen

  • labelstringerforderlich

    Weitere Verschachtelung ausgelassen

  • statusstringerforderlich

    enum: "pending", "working", "action_required", "verified"

    Weitere Verschachtelung ausgelassen

  • detailstringerforderlich

    Weitere Verschachtelung ausgelassen

  • lanesobjecterforderlich
  • mailboxobjecterforderlich
  • statusstringerforderlich

    enum: "pending", "working", "action_required", "verified"

    Weitere Verschachtelung ausgelassen

  • detailstringerforderlich

    Weitere Verschachtelung ausgelassen

  • transactionalobjecterforderlich
  • statusstringerforderlich

    enum: "pending", "working", "action_required", "verified"

    Weitere Verschachtelung ausgelassen

  • detailstringerforderlich

    Weitere Verschachtelung ausgelassen

  • marketingobjecterforderlich
  • statusstringerforderlich

    enum: "pending", "working", "action_required", "verified"

    Weitere Verschachtelung ausgelassen

  • detailstringerforderlich

    Weitere Verschachtelung ausgelassen

  • proofnicht angegebenerforderlich
  • oneOf 1object
  • proof_idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • mailbox_idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • mailbox_addressstringerforderlich

    format: "email"

    Weitere Verschachtelung ausgelassen

  • command_idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • phasestringerforderlich

    enum: "sending", "sent", "received", "checked", "failed"

    Weitere Verschachtelung ausgelassen

  • send_completebooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • receive_completebooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • round_trip_check_completebooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • agent_check_completebooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • completebooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • expected_subjectstringerforderlich

    Weitere Verschachtelung ausgelassen

  • expected_body_textstringerforderlich

    Weitere Verschachtelung ausgelassen

  • received_message_idstring

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • received_thread_idstring

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • received_subjectstring

    Weitere Verschachtelung ausgelassen

  • received_body_textstring

    Weitere Verschachtelung ausgelassen

  • received_atstring

    format: "date-time"

    Weitere Verschachtelung ausgelassen

  • agent_labelstring

    Weitere Verschachtelung ausgelassen

  • agent_suggested_actionstring

    Weitere Verschachtelung ausgelassen

  • error_codestring

    Weitere Verschachtelung ausgelassen

  • replayedbooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • oneOf 2object
  • proof_idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • domain_idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • native_domain_idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • mailbox_idstringerforderlich

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • mailbox_addressstringerforderlich

    format: "email"

    Weitere Verschachtelung ausgelassen

  • transactional_send_intent_idstring

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • marketing_send_intent_idstring

    format: "uuid"

    Weitere Verschachtelung ausgelassen

  • transactional_subjectstringerforderlich

    Weitere Verschachtelung ausgelassen

  • marketing_subjectstringerforderlich

    Weitere Verschachtelung ausgelassen

  • phasestringerforderlich

    enum: "sending", "receiving", "received", "checked", "failed"

    Weitere Verschachtelung ausgelassen

  • send_completebooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • transactional_receivedbooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • marketing_receivedbooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • receive_completebooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • agent_check_completebooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • completebooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • error_codestring

    Weitere Verschachtelung ausgelassen

  • replayedbooleanerforderlich

    Weitere Verschachtelung ausgelassen

  • oneOf 3null
  • overall_readybooleanerforderlich
  • production_readybooleanerforderlich
  • completedbooleanerforderlich
  • pendingbooleanerforderlich
  • next_actionstringerforderlich

    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_requiredobjecterforderlich
  • typestringerforderlich
  • requiredbooleanerforderlich
  • actionstringerforderlich

    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 | nullerforderlich

    format: "uri"

  • instructionsstring | nullerforderlich
  • secure_urlstring | nullerforderlich

    format: "uri"

  • mcp_urlstringerforderlich

    format: "uri"

  • dashboard_urlstringerforderlich

    format: "uri"

curl-Beispiel

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

Dauerhaften Status eines Rundlaufs der Startadresse lesen.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

mailbox_id
query · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Aktueller Nachweisstatus.

application/json

  • valueobject
  • dataobjecterforderlich
  • proof_idstringerforderlich

    format: "uuid"

  • mailbox_idstringerforderlich

    format: "uuid"

  • mailbox_addressstringerforderlich

    format: "email"

  • command_idstringerforderlich

    format: "uuid"

  • phasestringerforderlich

    enum: "sending", "sent", "received", "checked", "failed"

  • send_completebooleanerforderlich
  • receive_completebooleanerforderlich
  • round_trip_check_completebooleanerforderlich
  • agent_check_completebooleanerforderlich
  • completebooleanerforderlich
  • expected_subjectstringerforderlich
  • expected_body_textstringerforderlich
  • 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
  • replayedbooleanerforderlich

curl-Beispiel

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

Echten Sende- und Empfangsnachweis für eine Startadresse starten oder fortsetzen.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body erforderlich

application/json

  • valueobject

    Keine zusätzlichen Eigenschaften

  • mailbox_idstringerforderlich

    format: "uuid"

Erfolgsantwort 200

Der bestehende Nachweis wurde fortgesetzt.

application/json

  • valueobject
  • dataobjecterforderlich
  • proof_idstringerforderlich

    format: "uuid"

  • mailbox_idstringerforderlich

    format: "uuid"

  • mailbox_addressstringerforderlich

    format: "email"

  • command_idstringerforderlich

    format: "uuid"

  • phasestringerforderlich

    enum: "sending", "sent", "received", "checked", "failed"

  • send_completebooleanerforderlich
  • receive_completebooleanerforderlich
  • round_trip_check_completebooleanerforderlich
  • agent_check_completebooleanerforderlich
  • completebooleanerforderlich
  • expected_subjectstringerforderlich
  • expected_body_textstringerforderlich
  • 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
  • replayedbooleanerforderlich

curl-Beispiel

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

Dauerhaften Status der Domain-Infrastrukturprüfungen lesen.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Aktueller Nachweisstatus.

application/json

  • valueobject
  • dataobjecterforderlich
  • proof_idstringerforderlich

    format: "uuid"

  • domain_idstringerforderlich

    format: "uuid"

  • native_domain_idstringerforderlich

    format: "uuid"

  • mailbox_idstringerforderlich

    format: "uuid"

  • mailbox_addressstringerforderlich

    format: "email"

  • transactional_send_intent_idstring

    format: "uuid"

  • marketing_send_intent_idstring

    format: "uuid"

  • transactional_subjectstringerforderlich
  • marketing_subjectstringerforderlich
  • phasestringerforderlich

    enum: "sending", "receiving", "received", "checked", "failed"

  • send_completebooleanerforderlich
  • transactional_receivedbooleanerforderlich
  • marketing_receivedbooleanerforderlich
  • receive_completebooleanerforderlich
  • agent_check_completebooleanerforderlich
  • completebooleanerforderlich
  • error_codestring
  • replayedbooleanerforderlich

curl-Beispiel

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

Zwei echte Sende- und Empfangsprüfungen für verifizierte Banger-Infrastruktur starten oder fortsetzen.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body erforderlich

application/json

  • valueobject

    Keine zusätzlichen Eigenschaften

  • native_domain_idstringerforderlich

    format: "uuid"

Erfolgsantwort 200

Der bestehende Nachweis wurde fortgesetzt.

application/json

  • valueobject
  • dataobjecterforderlich
  • proof_idstringerforderlich

    format: "uuid"

  • domain_idstringerforderlich

    format: "uuid"

  • native_domain_idstringerforderlich

    format: "uuid"

  • mailbox_idstringerforderlich

    format: "uuid"

  • mailbox_addressstringerforderlich

    format: "email"

  • transactional_send_intent_idstring

    format: "uuid"

  • marketing_send_intent_idstring

    format: "uuid"

  • transactional_subjectstringerforderlich
  • marketing_subjectstringerforderlich
  • phasestringerforderlich

    enum: "sending", "receiving", "received", "checked", "failed"

  • send_completebooleanerforderlich
  • transactional_receivedbooleanerforderlich
  • marketing_receivedbooleanerforderlich
  • receive_completebooleanerforderlich
  • agent_check_completebooleanerforderlich
  • completebooleanerforderlich
  • error_codestring
  • replayedbooleanerforderlich

curl-Beispiel

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

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body erforderlich

application/json

  • valueobject

    Keine zusätzlichen Eigenschaften

  • goalstringerforderlich

    enum: "work_inbox", "product_email", "campaign", "company_workflow"

Erfolgsantwort 200

Das erste Ergebnis wird ausgewählt und der geführte Lauf kann in der Produktoberfläche geöffnet werden.

application/json

  • valueobject
  • dataobjecterforderlich
  • goalstringerforderlich

    enum: "work_inbox", "product_email", "campaign", "company_workflow"

curl-Beispiel

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

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Aktuelle Erkennung von Unternehmen und E-Mail-Infrastruktur.

application/json

  • valueobject
  • dataobjecterforderlich
  • domainstringerforderlich
  • scan_statusstringerforderlich

    enum: "complete", "partial", "failed"

  • companyobjecterforderlich
  • domainstringerforderlich
  • website_urlstring | nullerforderlich

    format: "uri"

  • website_statusstringerforderlich

    enum: "available", "missing", "blocked", "error"

  • company_namestringerforderlich
  • summarystringerforderlich
  • audiencestringerforderlich
  • offeringsarrayerforderlich
  • Jedes Elementstring
  • logo_urlstring | nullerforderlich

    format: "uri"

  • favicon_urlstring | nullerforderlich

    format: "uri"

  • visual_identityobjecterforderlich
  • colorsarrayerforderlich

    maxItems: 6

  • Jedes Elementstring
  • fontsarrayerforderlich

    maxItems: 6

  • Jedes Elementstring
  • tonearrayerforderlich

    maxItems: 6

  • Jedes Elementstring
  • source_confidencestringerforderlich

    enum: "high", "medium", "low"

  • hero_image_urlstring

    format: "uri"

  • palettearrayerforderlich

    maxItems: 6

  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

  • valuestringerforderlich

    Weitere Verschachtelung ausgelassen

  • rolestringerforderlich

    enum: "primary", "accent", "background", "surface", "text", "other"

    Weitere Verschachtelung ausgelassen

  • namestringerforderlich

    Weitere Verschachtelung ausgelassen

  • typographyarrayerforderlich

    maxItems: 6

  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

  • familystringerforderlich

    Weitere Verschachtelung ausgelassen

  • rolestringerforderlich

    enum: "heading", "body", "mono", "other"

    Weitere Verschachtelung ausgelassen

  • weightsarrayerforderlich

    Weitere Verschachtelung ausgelassen

  • assetsarrayerforderlich

    maxItems: 8

  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

  • urlstringerforderlich

    format: "uri"

    Weitere Verschachtelung ausgelassen

  • kindstringerforderlich

    enum: "logo", "wordmark", "favicon", "hero"

    Weitere Verschachtelung ausgelassen

  • sourcestringerforderlich

    Weitere Verschachtelung ausgelassen

  • brand_summarystringerforderlich
  • imagery_stylearrayerforderlich

    maxItems: 6

  • Jedes Elementstring
  • source_snapshotobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • dns_signalsarrayerforderlich
  • Jedes Elementobject
  • namestringerforderlich
  • typestringerforderlich

    enum: "MX", "TXT", "CNAME", "NS"

  • valuestringerforderlich
  • ttlintegererforderlich

    minimum: 0

  • dns_providernicht angegebenerforderlich
  • oneOf 1object

    Keine zusätzlichen Eigenschaften

  • keystringerforderlich
  • namestringerforderlich
  • confidencestringerforderlich

    enum: "high", "medium", "low"

  • dashboard_urlstringerforderlich

    format: "uri"

  • evidencearrayerforderlich
  • Jedes Elementobject
  • namestringerforderlich

    Weitere Verschachtelung ausgelassen

  • typestringerforderlich

    enum: "MX", "TXT", "CNAME", "NS"

    Weitere Verschachtelung ausgelassen

  • valuestringerforderlich

    Weitere Verschachtelung ausgelassen

  • ttlintegererforderlich

    minimum: 0

    Weitere Verschachtelung ausgelassen

  • oneOf 2null
  • provider_detectionsarrayerforderlich
  • Jedes Elementobject
  • keystringerforderlich
  • namestringerforderlich
  • categoriesarrayerforderlich
  • Jedes Elementstring

    enum: "work_mailbox", "transactional", "marketing", "deliverability"

  • confidencestringerforderlich

    enum: "high", "medium", "low"

  • evidencearrayerforderlich
  • Jedes Elementobject
  • namestringerforderlich

    Weitere Verschachtelung ausgelassen

  • typestringerforderlich

    enum: "MX", "TXT", "CNAME", "NS"

    Weitere Verschachtelung ausgelassen

  • valuestringerforderlich

    Weitere Verschachtelung ausgelassen

  • ttlintegererforderlich

    minimum: 0

    Weitere Verschachtelung ausgelassen

  • capability_summaryarrayerforderlich
  • Jedes Elementobject
  • kindstringerforderlich

    enum: "work_mailbox", "transactional", "marketing", "deliverability"

  • labelstringerforderlich
  • statusstringerforderlich

    enum: "detected", "missing", "needs_review"

  • provider_keysarrayerforderlich
  • Jedes Elementstring
  • recommendationstringerforderlich

    enum: "connect", "setup_banger", "review"

  • recommended_connectionsarrayerforderlich
  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

  • keystringerforderlich
  • namestringerforderlich
  • categorystringerforderlich

    enum: "email", "customer", "product", "work", "data"

  • prioritystringerforderlich

    enum: "required", "recommended"

  • reasonstringerforderlich
  • sourcestringerforderlich

    enum: "dns", "business_context", "opportunity_plan", "banger_recommendation"

  • setup_modestringerforderlich

    enum: "oauth", "secure_credentials"

  • availablebooleanerforderlich
  • provider_keystring
  • evidencearrayerforderlich
  • Jedes Elementobject
  • namestringerforderlich

    Weitere Verschachtelung ausgelassen

  • typestringerforderlich

    enum: "MX", "TXT", "CNAME", "NS"

    Weitere Verschachtelung ausgelassen

  • valuestringerforderlich

    Weitere Verschachtelung ausgelassen

  • ttlintegererforderlich

    minimum: 0

    Weitere Verschachtelung ausgelassen

  • connection_planarrayerforderlich
  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

  • capabilitystringerforderlich

    enum: "work_mailbox", "transactional", "marketing", "deliverability"

  • provider_keystring
  • actionstringerforderlich

    enum: "connect", "setup_banger", "review"

  • domainstring

    minLength: 3 · maxLength: 253

  • limitationsarrayerforderlich
  • Jedes Elementstring
  • scanned_atstringerforderlich

    format: "date-time"

  • confirmed_atstring | nullerforderlich

    format: "date-time"

curl-Beispiel

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

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body erforderlich

application/json

  • valueobject

    Keine zusätzlichen Eigenschaften

  • domainstringerforderlich

    minLength: 3 · maxLength: 253

  • stream_kindstring

    default: "default" · enum: "default", "transactional", "marketing"

Erfolgsantwort 201

Öffentliche DNS- und Website-Erkennung abgeschlossen und gespeichert.

application/json

  • valueobject
  • dataobjecterforderlich
  • domainstringerforderlich
  • scan_statusstringerforderlich

    enum: "complete", "partial", "failed"

  • companyobjecterforderlich
  • domainstringerforderlich
  • website_urlstring | nullerforderlich

    format: "uri"

  • website_statusstringerforderlich

    enum: "available", "missing", "blocked", "error"

  • company_namestringerforderlich
  • summarystringerforderlich
  • audiencestringerforderlich
  • offeringsarrayerforderlich
  • Jedes Elementstring
  • logo_urlstring | nullerforderlich

    format: "uri"

  • favicon_urlstring | nullerforderlich

    format: "uri"

  • visual_identityobjecterforderlich
  • colorsarrayerforderlich

    maxItems: 6

  • Jedes Elementstring
  • fontsarrayerforderlich

    maxItems: 6

  • Jedes Elementstring
  • tonearrayerforderlich

    maxItems: 6

  • Jedes Elementstring
  • source_confidencestringerforderlich

    enum: "high", "medium", "low"

  • hero_image_urlstring

    format: "uri"

  • palettearrayerforderlich

    maxItems: 6

  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

  • valuestringerforderlich

    Weitere Verschachtelung ausgelassen

  • rolestringerforderlich

    enum: "primary", "accent", "background", "surface", "text", "other"

    Weitere Verschachtelung ausgelassen

  • namestringerforderlich

    Weitere Verschachtelung ausgelassen

  • typographyarrayerforderlich

    maxItems: 6

  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

  • familystringerforderlich

    Weitere Verschachtelung ausgelassen

  • rolestringerforderlich

    enum: "heading", "body", "mono", "other"

    Weitere Verschachtelung ausgelassen

  • weightsarrayerforderlich

    Weitere Verschachtelung ausgelassen

  • assetsarrayerforderlich

    maxItems: 8

  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

  • urlstringerforderlich

    format: "uri"

    Weitere Verschachtelung ausgelassen

  • kindstringerforderlich

    enum: "logo", "wordmark", "favicon", "hero"

    Weitere Verschachtelung ausgelassen

  • sourcestringerforderlich

    Weitere Verschachtelung ausgelassen

  • brand_summarystringerforderlich
  • imagery_stylearrayerforderlich

    maxItems: 6

  • Jedes Elementstring
  • source_snapshotobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • dns_signalsarrayerforderlich
  • Jedes Elementobject
  • namestringerforderlich
  • typestringerforderlich

    enum: "MX", "TXT", "CNAME", "NS"

  • valuestringerforderlich
  • ttlintegererforderlich

    minimum: 0

  • dns_providernicht angegebenerforderlich
  • oneOf 1object

    Keine zusätzlichen Eigenschaften

  • keystringerforderlich
  • namestringerforderlich
  • confidencestringerforderlich

    enum: "high", "medium", "low"

  • dashboard_urlstringerforderlich

    format: "uri"

  • evidencearrayerforderlich
  • Jedes Elementobject
  • namestringerforderlich

    Weitere Verschachtelung ausgelassen

  • typestringerforderlich

    enum: "MX", "TXT", "CNAME", "NS"

    Weitere Verschachtelung ausgelassen

  • valuestringerforderlich

    Weitere Verschachtelung ausgelassen

  • ttlintegererforderlich

    minimum: 0

    Weitere Verschachtelung ausgelassen

  • oneOf 2null
  • provider_detectionsarrayerforderlich
  • Jedes Elementobject
  • keystringerforderlich
  • namestringerforderlich
  • categoriesarrayerforderlich
  • Jedes Elementstring

    enum: "work_mailbox", "transactional", "marketing", "deliverability"

  • confidencestringerforderlich

    enum: "high", "medium", "low"

  • evidencearrayerforderlich
  • Jedes Elementobject
  • namestringerforderlich

    Weitere Verschachtelung ausgelassen

  • typestringerforderlich

    enum: "MX", "TXT", "CNAME", "NS"

    Weitere Verschachtelung ausgelassen

  • valuestringerforderlich

    Weitere Verschachtelung ausgelassen

  • ttlintegererforderlich

    minimum: 0

    Weitere Verschachtelung ausgelassen

  • capability_summaryarrayerforderlich
  • Jedes Elementobject
  • kindstringerforderlich

    enum: "work_mailbox", "transactional", "marketing", "deliverability"

  • labelstringerforderlich
  • statusstringerforderlich

    enum: "detected", "missing", "needs_review"

  • provider_keysarrayerforderlich
  • Jedes Elementstring
  • recommendationstringerforderlich

    enum: "connect", "setup_banger", "review"

  • recommended_connectionsarrayerforderlich
  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

  • keystringerforderlich
  • namestringerforderlich
  • categorystringerforderlich

    enum: "email", "customer", "product", "work", "data"

  • prioritystringerforderlich

    enum: "required", "recommended"

  • reasonstringerforderlich
  • sourcestringerforderlich

    enum: "dns", "business_context", "opportunity_plan", "banger_recommendation"

  • setup_modestringerforderlich

    enum: "oauth", "secure_credentials"

  • availablebooleanerforderlich
  • provider_keystring
  • evidencearrayerforderlich
  • Jedes Elementobject
  • namestringerforderlich

    Weitere Verschachtelung ausgelassen

  • typestringerforderlich

    enum: "MX", "TXT", "CNAME", "NS"

    Weitere Verschachtelung ausgelassen

  • valuestringerforderlich

    Weitere Verschachtelung ausgelassen

  • ttlintegererforderlich

    minimum: 0

    Weitere Verschachtelung ausgelassen

  • connection_planarrayerforderlich
  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

  • capabilitystringerforderlich

    enum: "work_mailbox", "transactional", "marketing", "deliverability"

  • provider_keystring
  • actionstringerforderlich

    enum: "connect", "setup_banger", "review"

  • domainstring

    minLength: 3 · maxLength: 253

  • limitationsarrayerforderlich
  • Jedes Elementstring
  • scanned_atstringerforderlich

    format: "date-time"

  • confirmed_atstring | nullerforderlich

    format: "date-time"

curl-Beispiel

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

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body erforderlich

application/json

  • valueobject

    Keine zusätzlichen Eigenschaften

  • company_namestringerforderlich

    minLength: 1 · maxLength: 200

  • summarystringerforderlich

    minLength: 1 · maxLength: 4000

  • audiencestring

    maxLength: 2000

  • offeringsarray

    maxItems: 8

  • Jedes Elementstring

    maxLength: 120

  • website_urlstring | null

    format: "uri"

  • connection_planarrayerforderlich

    maxItems: 30

  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

  • capabilitystringerforderlich

    enum: "work_mailbox", "transactional", "marketing", "deliverability"

  • provider_keystring
  • actionstringerforderlich

    enum: "connect", "setup_banger", "review"

  • domainstring

    minLength: 3 · maxLength: 253

Erfolgsantwort 200

Unternehmenskontext und vorgeschlagener Verbindungsplan wurden bestätigt.

application/json

  • valueobject
  • dataobjecterforderlich
  • domainstringerforderlich
  • scan_statusstringerforderlich

    enum: "complete", "partial", "failed"

  • companyobjecterforderlich
  • domainstringerforderlich
  • website_urlstring | nullerforderlich

    format: "uri"

  • website_statusstringerforderlich

    enum: "available", "missing", "blocked", "error"

  • company_namestringerforderlich
  • summarystringerforderlich
  • audiencestringerforderlich
  • offeringsarrayerforderlich
  • Jedes Elementstring
  • logo_urlstring | nullerforderlich

    format: "uri"

  • favicon_urlstring | nullerforderlich

    format: "uri"

  • visual_identityobjecterforderlich
  • colorsarrayerforderlich

    maxItems: 6

  • Jedes Elementstring
  • fontsarrayerforderlich

    maxItems: 6

  • Jedes Elementstring
  • tonearrayerforderlich

    maxItems: 6

  • Jedes Elementstring
  • source_confidencestringerforderlich

    enum: "high", "medium", "low"

  • hero_image_urlstring

    format: "uri"

  • palettearrayerforderlich

    maxItems: 6

  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

  • valuestringerforderlich

    Weitere Verschachtelung ausgelassen

  • rolestringerforderlich

    enum: "primary", "accent", "background", "surface", "text", "other"

    Weitere Verschachtelung ausgelassen

  • namestringerforderlich

    Weitere Verschachtelung ausgelassen

  • typographyarrayerforderlich

    maxItems: 6

  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

  • familystringerforderlich

    Weitere Verschachtelung ausgelassen

  • rolestringerforderlich

    enum: "heading", "body", "mono", "other"

    Weitere Verschachtelung ausgelassen

  • weightsarrayerforderlich

    Weitere Verschachtelung ausgelassen

  • assetsarrayerforderlich

    maxItems: 8

  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

  • urlstringerforderlich

    format: "uri"

    Weitere Verschachtelung ausgelassen

  • kindstringerforderlich

    enum: "logo", "wordmark", "favicon", "hero"

    Weitere Verschachtelung ausgelassen

  • sourcestringerforderlich

    Weitere Verschachtelung ausgelassen

  • brand_summarystringerforderlich
  • imagery_stylearrayerforderlich

    maxItems: 6

  • Jedes Elementstring
  • source_snapshotobjecterforderlich
  • Zusätzliche EigenschaftBeliebiger Wert
  • dns_signalsarrayerforderlich
  • Jedes Elementobject
  • namestringerforderlich
  • typestringerforderlich

    enum: "MX", "TXT", "CNAME", "NS"

  • valuestringerforderlich
  • ttlintegererforderlich

    minimum: 0

  • dns_providernicht angegebenerforderlich
  • oneOf 1object

    Keine zusätzlichen Eigenschaften

  • keystringerforderlich
  • namestringerforderlich
  • confidencestringerforderlich

    enum: "high", "medium", "low"

  • dashboard_urlstringerforderlich

    format: "uri"

  • evidencearrayerforderlich
  • Jedes Elementobject
  • namestringerforderlich

    Weitere Verschachtelung ausgelassen

  • typestringerforderlich

    enum: "MX", "TXT", "CNAME", "NS"

    Weitere Verschachtelung ausgelassen

  • valuestringerforderlich

    Weitere Verschachtelung ausgelassen

  • ttlintegererforderlich

    minimum: 0

    Weitere Verschachtelung ausgelassen

  • oneOf 2null
  • provider_detectionsarrayerforderlich
  • Jedes Elementobject
  • keystringerforderlich
  • namestringerforderlich
  • categoriesarrayerforderlich
  • Jedes Elementstring

    enum: "work_mailbox", "transactional", "marketing", "deliverability"

  • confidencestringerforderlich

    enum: "high", "medium", "low"

  • evidencearrayerforderlich
  • Jedes Elementobject
  • namestringerforderlich

    Weitere Verschachtelung ausgelassen

  • typestringerforderlich

    enum: "MX", "TXT", "CNAME", "NS"

    Weitere Verschachtelung ausgelassen

  • valuestringerforderlich

    Weitere Verschachtelung ausgelassen

  • ttlintegererforderlich

    minimum: 0

    Weitere Verschachtelung ausgelassen

  • capability_summaryarrayerforderlich
  • Jedes Elementobject
  • kindstringerforderlich

    enum: "work_mailbox", "transactional", "marketing", "deliverability"

  • labelstringerforderlich
  • statusstringerforderlich

    enum: "detected", "missing", "needs_review"

  • provider_keysarrayerforderlich
  • Jedes Elementstring
  • recommendationstringerforderlich

    enum: "connect", "setup_banger", "review"

  • recommended_connectionsarrayerforderlich
  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

  • keystringerforderlich
  • namestringerforderlich
  • categorystringerforderlich

    enum: "email", "customer", "product", "work", "data"

  • prioritystringerforderlich

    enum: "required", "recommended"

  • reasonstringerforderlich
  • sourcestringerforderlich

    enum: "dns", "business_context", "opportunity_plan", "banger_recommendation"

  • setup_modestringerforderlich

    enum: "oauth", "secure_credentials"

  • availablebooleanerforderlich
  • provider_keystring
  • evidencearrayerforderlich
  • Jedes Elementobject
  • namestringerforderlich

    Weitere Verschachtelung ausgelassen

  • typestringerforderlich

    enum: "MX", "TXT", "CNAME", "NS"

    Weitere Verschachtelung ausgelassen

  • valuestringerforderlich

    Weitere Verschachtelung ausgelassen

  • ttlintegererforderlich

    minimum: 0

    Weitere Verschachtelung ausgelassen

  • connection_planarrayerforderlich
  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

  • capabilitystringerforderlich

    enum: "work_mailbox", "transactional", "marketing", "deliverability"

  • provider_keystring
  • actionstringerforderlich

    enum: "connect", "setup_banger", "review"

  • domainstring

    minLength: 3 · maxLength: 253

  • limitationsarrayerforderlich
  • Jedes Elementstring
  • scanned_atstringerforderlich

    format: "date-time"

  • confirmed_atstring | nullerforderlich

    format: "date-time"

curl-Beispiel

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

Aktuelle OAuth-Agentenverbindung bestätigen

Erfordert die im aktuellen Agentenclient installierten OAuth-Zugangsdaten und automation:read-Berechtigung.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Erfolgreiche Antwort.

application/json

  • valueobject
  • dataobjecterforderlich
  • statusstringerforderlich

    enum: "connected"

  • messagestringerforderlich
  • workspace_idstringerforderlich

    format: "uuid"

  • client_namestringerforderlich
  • confirmed_atstringerforderlich

    format: "date-time"

curl-Beispiel

curl --request POST --globoff 'https://api.bangermail.com/v1/workspaces/{workspaceId}/onboarding/agent-state/confirm-connection' \
  --header "Authorization: Bearer $BANGER_API_KEY"

Zugriff

GET/v1/workspaces/{workspaceId}/access

Workspace-Mitglieder und aktive Einladungen auflisten.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Workspace-Verzeichnis.

application/json

  • valueobject
  • dataobjecterforderlich
  • actorIdstringerforderlich
  • identitiesarrayerforderlich
  • Jedes Elementobject
  • idstringerforderlich

    format: "uuid"

  • userIdstringerforderlich
  • emailstring

    format: "email"

  • displayNamestring
  • kindstringerforderlich

    const: "user"

  • rolestringerforderlich

    enum: "owner", "admin", "member", "viewer"

  • statusstringerforderlich

    enum: "active", "suspended"

  • pendingInvitationsarrayerforderlich
  • Jedes Elementobject
  • idstringerforderlich

    format: "uuid"

  • codestringerforderlich

    format: "uuid"

  • inviteCodestring

    format: "uuid"

  • invitedEmailstring

    format: "email"

  • workspaceIdstringerforderlich

    format: "uuid"

  • workspaceNamestringerforderlich
  • rolestringerforderlich

    enum: "admin", "member", "viewer"

  • accessScopestring

    const: "workspace"

  • statusstringerforderlich

    enum: "pending", "accepted"

  • expiresAtstringerforderlich

    format: "date-time"

  • notificationSentboolean

curl-Beispiel

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

Einladungen

POST/v1/workspaces/{workspaceId}/invitations

Menschlichen Akteur in den Workspace einladen.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body erforderlich

application/json

  • valueobject

    Keine zusätzlichen Eigenschaften

  • emailstringerforderlich

    format: "email" · maxLength: 320

  • rolestring

    default: "member" · enum: "admin", "member", "viewer"

  • mailbox_idsarray

    maxItems: 250

  • Jedes Elementstring

    format: "uuid"

  • send_modestring

    default: "direct" · enum: "direct", "approval_required"

  • expires_in_hoursinteger

    minimum: 1 · maximum: 720 · default: 168

Erfolgsantwort 201

Einladung erstellt.

application/json

  • valueobject
  • dataobjecterforderlich
  • idstringerforderlich

    format: "uuid"

  • codestringerforderlich

    format: "uuid"

  • inviteCodestring

    format: "uuid"

  • invitedEmailstring

    format: "email"

  • workspaceIdstringerforderlich

    format: "uuid"

  • workspaceNamestringerforderlich
  • rolestringerforderlich

    enum: "admin", "member", "viewer"

  • accessScopestring

    const: "workspace"

  • statusstringerforderlich

    enum: "pending", "accepted"

  • expiresAtstringerforderlich

    format: "date-time"

  • notificationSentboolean

curl-Beispiel

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
}'

API-Schlüssel

GET/v1/workspaces/{workspaceId}/api-keys

listWorkspaceApiKeys

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Aktive API-Schlüssel mit Berechtigungsumfang. Geheime Werte werden nie zurückgegeben.

application/json

  • valueobject
  • dataarrayerforderlich
  • Jedes Elementobject
  • idstringerforderlich

    format: "uuid"

  • namestringerforderlich
  • prefixstringerforderlich
  • scopesarrayerforderlich
  • Jedes Elementstring

    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_atstringerforderlich

    format: "date-time"

curl-Beispiel

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

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body erforderlich

application/json

  • valueobject

    Keine zusätzlichen Eigenschaften

  • namestringerforderlich

    minLength: 1 · maxLength: 100

  • scopesarrayerforderlich

    minItems: 1 · uniqueItems: true

  • Jedes Elementstring

    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"

Erfolgsantwort 201

API-Schlüssel erstellt. Das Token wird nur einmal zurückgegeben.

application/json

  • valueobject
  • datanicht angegebenerforderlich
  • allOf 1object
  • idstringerforderlich

    format: "uuid"

  • namestringerforderlich
  • prefixstringerforderlich
  • scopesarrayerforderlich
  • Jedes Elementstring

    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_atstringerforderlich

    format: "date-time"

  • allOf 2object
  • tokenstringerforderlich
  • smtpobject

    Wie eine App, die nur über SMTP sendet (Supabase Auth, Auth0, WordPress, Framework-Mailer), über Banger sendet. Das Passwort ist ein API-Schlüssel mit mail:send; Banger leitet jede Nachricht wie verfasst weiter und antwortet erst nach allen erfolgreichen Prüfungen. Nur bei einem versandfähigen Schlüssel in einer Umgebung vorhanden, deren Submission-Host antwortet.

  • hoststringerforderlich
  • portintegererforderlich

    Implizites TLS, empfohlen.

  • starttls_portintegererforderlich

    STARTTLS vor AUTH.

  • alternate_portsobjecterforderlich

    Dieselben zwei Listener für Netzwerke, die 465 und 587 blockieren.

  • tlsintegererforderlich
  • starttlsintegererforderlich
  • usernamestringerforderlich

    Jeder Benutzername funktioniert; allein der Schlüssel identifiziert Workspace und Produkt.

curl-Beispiel

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

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

apiKeyId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 204

API-Schlüssel widerrufen.

Kein Antwort-Body.

curl-Beispiel

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

Abrechnung

GET/v1/workspaces/{workspaceId}/billing

Abrechnung, Nutzung und verfügbare Tarife lesen

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Erfolgreiche Antwort.

application/json

  • valueobject
  • dataobjecterforderlich
  • billingobjecterforderlich
  • workspaceIdstringerforderlich

    format: "uuid"

  • tierstringerforderlich

    enum: "free", "starter", "pro", "business", "scale", "enterprise"

  • planKeystringerforderlich

    enum: "free", "starter", "pro", "business", "scale", "enterprise"

  • statusstringerforderlich
  • planIntervalstring | nullerforderlich

    enum: "month", "year", null

  • stripeCustomerIdstring | nullerforderlich
  • stripeSubscriptionIdstring | nullerforderlich
  • currentPeriodEndinteger | nullerforderlich

    Unix-Zeitstempel in Millisekunden.

  • cancelAtPeriodEndbooleanerforderlich
  • prepaidPlanKeystring | nullerforderlich
  • prepaidUntilinteger | nullerforderlich

    Unix-Zeitstempel in Millisekunden.

  • usageobjecterforderlich
  • storageBytesnumbererforderlich
  • storageLimitBytesnumbererforderlich
  • sendsThisMonthnumbererforderlich
  • sendLimitnumbererforderlich
  • sendsTodaynumbererforderlich
  • dailySendLimitnumber | nullerforderlich
  • periodEndinteger | nullerforderlich

    Unix-Zeitstempel in Millisekunden.

  • catalogobjecterforderlich
  • plansarrayerforderlich
  • Jedes Elementobject
  • planKeystringerforderlich

    enum: "free", "starter", "pro", "business", "scale", "enterprise"

  • labelstringerforderlich
  • sendLimitnumbererforderlich
  • storageGbnumbererforderlich
  • gmailImportLimitnumbererforderlich
  • triageRuleLimitnumbererforderlich
  • triageRunLimitnumbererforderlich
  • pricesarrayerforderlich
  • Jedes Elementobject

    Weitere Verschachtelung ausgelassen

  • addonsarrayerforderlich

    maxItems: 0

  • Jedes Elementnicht angegeben
  • agentPaymentnicht angegebenerforderlich
  • anyOf 1object
  • network_idstringerforderlich
  • currencystringerforderlich

    enum: "usd"

  • howstringerforderlich
  • optionsarrayerforderlich
  • Jedes Elementobject
  • plan_keystringerforderlich

    enum: "starter", "pro"

    Weitere Verschachtelung ausgelassen

  • intervalstringerforderlich

    enum: "month", "year"

    Weitere Verschachtelung ausgelassen

  • monthsintegererforderlich

    enum: 1, 12

    Weitere Verschachtelung ausgelassen

  • amount_centsintegererforderlich

    What to mint the token for

    Weitere Verschachtelung ausgelassen

  • discountobject

    Weitere Verschachtelung ausgelassen

  • anyOf 2null
  • switchOffernicht angegeben

    The month free on a yearly plan this workspace gets for switching from Mailchimp; null when it doesn't.

  • anyOf 1object
  • offerstringerforderlich

    enum: "switch_from_mailchimp"

  • sourcestringerforderlich

    enum: "signup_campaign", "mailchimp_connection"

  • appliesTostringerforderlich

    enum: "year"

  • plansarrayerforderlich
  • Jedes Elementobject
  • planKeystringerforderlich

    enum: "starter", "pro", "business", "scale"

    Weitere Verschachtelung ausgelassen

  • currencystringerforderlich

    Weitere Verschachtelung ausgelassen

  • yearlyPriceintegererforderlich

    In the currency's smallest unit.

    Weitere Verschachtelung ausgelassen

  • firstYearPriceintegererforderlich

    In the currency's smallest unit.

    Weitere Verschachtelung ausgelassen

  • messagestringerforderlich
  • anyOf 2null

curl-Beispiel

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

Abrechnung aus Stripe synchronisieren

Alias von POST /billing/sync. Erfordert workspace:admin.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Erfolgreiche Antwort.

application/json

  • valueobject
  • dataobjecterforderlich
  • billingobjecterforderlich
  • workspaceIdstringerforderlich

    format: "uuid"

  • tierstringerforderlich

    enum: "free", "starter", "pro", "business", "scale", "enterprise"

  • planKeystringerforderlich

    enum: "free", "starter", "pro", "business", "scale", "enterprise"

  • statusstringerforderlich
  • planIntervalstring | nullerforderlich

    enum: "month", "year", null

  • stripeCustomerIdstring | nullerforderlich
  • stripeSubscriptionIdstring | nullerforderlich
  • currentPeriodEndinteger | nullerforderlich

    Unix-Zeitstempel in Millisekunden.

  • cancelAtPeriodEndbooleanerforderlich
  • prepaidPlanKeystring | nullerforderlich
  • prepaidUntilinteger | nullerforderlich

    Unix-Zeitstempel in Millisekunden.

  • usageobjecterforderlich
  • storageBytesnumbererforderlich
  • storageLimitBytesnumbererforderlich
  • sendsThisMonthnumbererforderlich
  • sendLimitnumbererforderlich
  • sendsTodaynumbererforderlich
  • dailySendLimitnumber | nullerforderlich
  • periodEndinteger | nullerforderlich

    Unix-Zeitstempel in Millisekunden.

  • catalogobjecterforderlich
  • plansarrayerforderlich
  • Jedes Elementobject
  • planKeystringerforderlich

    enum: "free", "starter", "pro", "business", "scale", "enterprise"

  • labelstringerforderlich
  • sendLimitnumbererforderlich
  • storageGbnumbererforderlich
  • gmailImportLimitnumbererforderlich
  • triageRuleLimitnumbererforderlich
  • triageRunLimitnumbererforderlich
  • pricesarrayerforderlich
  • Jedes Elementobject

    Weitere Verschachtelung ausgelassen

  • addonsarrayerforderlich

    maxItems: 0

  • Jedes Elementnicht angegeben
  • agentPaymentnicht angegebenerforderlich
  • anyOf 1object
  • network_idstringerforderlich
  • currencystringerforderlich

    enum: "usd"

  • howstringerforderlich
  • optionsarrayerforderlich
  • Jedes Elementobject
  • plan_keystringerforderlich

    enum: "starter", "pro"

    Weitere Verschachtelung ausgelassen

  • intervalstringerforderlich

    enum: "month", "year"

    Weitere Verschachtelung ausgelassen

  • monthsintegererforderlich

    enum: 1, 12

    Weitere Verschachtelung ausgelassen

  • amount_centsintegererforderlich

    What to mint the token for

    Weitere Verschachtelung ausgelassen

  • discountobject

    Weitere Verschachtelung ausgelassen

  • anyOf 2null
  • switchOffernicht angegeben

    The month free on a yearly plan this workspace gets for switching from Mailchimp; null when it doesn't.

  • anyOf 1object
  • offerstringerforderlich

    enum: "switch_from_mailchimp"

  • sourcestringerforderlich

    enum: "signup_campaign", "mailchimp_connection"

  • appliesTostringerforderlich

    enum: "year"

  • plansarrayerforderlich
  • Jedes Elementobject
  • planKeystringerforderlich

    enum: "starter", "pro", "business", "scale"

    Weitere Verschachtelung ausgelassen

  • currencystringerforderlich

    Weitere Verschachtelung ausgelassen

  • yearlyPriceintegererforderlich

    In the currency's smallest unit.

    Weitere Verschachtelung ausgelassen

  • firstYearPriceintegererforderlich

    In the currency's smallest unit.

    Weitere Verschachtelung ausgelassen

  • messagestringerforderlich
  • anyOf 2null

curl-Beispiel

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

Aktuellstes Stripe-Abonnement synchronisieren

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Erfolgreiche Antwort.

application/json

  • valueobject
  • dataobjecterforderlich
  • billingobjecterforderlich
  • workspaceIdstringerforderlich

    format: "uuid"

  • tierstringerforderlich

    enum: "free", "starter", "pro", "business", "scale", "enterprise"

  • planKeystringerforderlich

    enum: "free", "starter", "pro", "business", "scale", "enterprise"

  • statusstringerforderlich
  • planIntervalstring | nullerforderlich

    enum: "month", "year", null

  • stripeCustomerIdstring | nullerforderlich
  • stripeSubscriptionIdstring | nullerforderlich
  • currentPeriodEndinteger | nullerforderlich

    Unix-Zeitstempel in Millisekunden.

  • cancelAtPeriodEndbooleanerforderlich
  • prepaidPlanKeystring | nullerforderlich
  • prepaidUntilinteger | nullerforderlich

    Unix-Zeitstempel in Millisekunden.

  • usageobjecterforderlich
  • storageBytesnumbererforderlich
  • storageLimitBytesnumbererforderlich
  • sendsThisMonthnumbererforderlich
  • sendLimitnumbererforderlich
  • sendsTodaynumbererforderlich
  • dailySendLimitnumber | nullerforderlich
  • periodEndinteger | nullerforderlich

    Unix-Zeitstempel in Millisekunden.

  • catalogobjecterforderlich
  • plansarrayerforderlich
  • Jedes Elementobject
  • planKeystringerforderlich

    enum: "free", "starter", "pro", "business", "scale", "enterprise"

  • labelstringerforderlich
  • sendLimitnumbererforderlich
  • storageGbnumbererforderlich
  • gmailImportLimitnumbererforderlich
  • triageRuleLimitnumbererforderlich
  • triageRunLimitnumbererforderlich
  • pricesarrayerforderlich
  • Jedes Elementobject

    Weitere Verschachtelung ausgelassen

  • addonsarrayerforderlich

    maxItems: 0

  • Jedes Elementnicht angegeben
  • agentPaymentnicht angegebenerforderlich
  • anyOf 1object
  • network_idstringerforderlich
  • currencystringerforderlich

    enum: "usd"

  • howstringerforderlich
  • optionsarrayerforderlich
  • Jedes Elementobject
  • plan_keystringerforderlich

    enum: "starter", "pro"

    Weitere Verschachtelung ausgelassen

  • intervalstringerforderlich

    enum: "month", "year"

    Weitere Verschachtelung ausgelassen

  • monthsintegererforderlich

    enum: 1, 12

    Weitere Verschachtelung ausgelassen

  • amount_centsintegererforderlich

    What to mint the token for

    Weitere Verschachtelung ausgelassen

  • discountobject

    Weitere Verschachtelung ausgelassen

  • anyOf 2null
  • switchOffernicht angegeben

    The month free on a yearly plan this workspace gets for switching from Mailchimp; null when it doesn't.

  • anyOf 1object
  • offerstringerforderlich

    enum: "switch_from_mailchimp"

  • sourcestringerforderlich

    enum: "signup_campaign", "mailchimp_connection"

  • appliesTostringerforderlich

    enum: "year"

  • plansarrayerforderlich
  • Jedes Elementobject
  • planKeystringerforderlich

    enum: "starter", "pro", "business", "scale"

    Weitere Verschachtelung ausgelassen

  • currencystringerforderlich

    Weitere Verschachtelung ausgelassen

  • yearlyPriceintegererforderlich

    In the currency's smallest unit.

    Weitere Verschachtelung ausgelassen

  • firstYearPriceintegererforderlich

    In the currency's smallest unit.

    Weitere Verschachtelung ausgelassen

  • messagestringerforderlich
  • anyOf 2null

curl-Beispiel

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

Bezahlvorgang starten oder Abrechnungsportal öffnen

Erfordert workspace:admin. Es werden nur kostenpflichtige Selbstbedienungstarife verkauft. Ein aktives Abonnement öffnet das Kundenportal. Snake-case-Felder haben Vorrang vor Camel-case-Aliasen.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body erforderlich

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

    Optionale Wiederholungskennung: 8–64 Buchstaben, Ziffern oder Bindestriche. Ungültige Kennungen werden ignoriert.

  • billingAttemptIdstring
  • anyOf 1nicht angegeben
  • anyOf 2nicht angegeben

Erfolgsantwort 200

Erfolgreiche Antwort.

application/json

  • valueobject
  • dataobjecterforderlich
  • urlstringerforderlich

    format: "uri"

  • kindstringerforderlich

    enum: "checkout", "portal"

  • discountnicht angegeben

    The switch-from-Mailchimp month applied to this yearly checkout.

  • allOf 1object

    Switch from Mailchimp: one month off the first yearly invoice.

  • offerstringerforderlich

    enum: "switch_from_mailchimp"

  • sourcestringerforderlich

    enum: "signup_campaign", "mailchimp_connection"

  • planKeystringerforderlich

    enum: "starter", "pro", "business", "scale"

  • intervalstringerforderlich

    enum: "year"

  • currencystringerforderlich

    Lowercase ISO currency the amounts are in.

  • amountOffintegererforderlich

    In the currency's smallest unit.

  • yearlyPriceintegererforderlich

    In the currency's smallest unit.

  • firstYearPriceintegererforderlich

    In the currency's smallest unit.

  • messagestringerforderlich

    A sentence to tell the person.

  • switchOffernicht angegeben

    On a monthly checkout, the month a yearly one would get instead.

  • allOf 1object

    Switch from Mailchimp: one month off the first yearly invoice.

  • offerstringerforderlich

    enum: "switch_from_mailchimp"

  • sourcestringerforderlich

    enum: "signup_campaign", "mailchimp_connection"

  • planKeystringerforderlich

    enum: "starter", "pro", "business", "scale"

  • intervalstringerforderlich

    enum: "year"

  • currencystringerforderlich

    Lowercase ISO currency the amounts are in.

  • amountOffintegererforderlich

    In the currency's smallest unit.

  • yearlyPriceintegererforderlich

    In the currency's smallest unit.

  • firstYearPriceintegererforderlich

    In the currency's smallest unit.

  • messagestringerforderlich

    A sentence to tell the person.

curl-Beispiel

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

Kundenabrechnungsportal öffnen

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Erfolgreiche Antwort.

application/json

  • valueobject
  • dataobjecterforderlich
  • urlstringerforderlich

    format: "uri"

curl-Beispiel

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

Vorausbezahlte Tarifzeit mit einem Shared Payment Token kaufen

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body erforderlich

application/json

  • valueobject
  • plan_keystringerforderlich

    enum: "starter", "pro"

  • intervalstring

    default: "month" · enum: "month", "year"

  • shared_payment_tokenstringerforderlich

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

Erfolgsantwort 200

Erfolgreiche Antwort.

application/json

  • valueobject
  • dataobjecterforderlich
  • statusstringerforderlich
  • payment_intent_idstringerforderlich
  • messagestringerforderlich
  • plan_keystring

    enum: "starter", "pro"

  • prepaid_untilstring | null

    format: "date-time"

  • amount_centsinteger

    What was charged.

  • discountobject
  • offerstringerforderlich

    enum: "switch_from_mailchimp"

  • amount_off_centsintegererforderlich
  • full_price_centsintegererforderlich
  • messagestringerforderlich

curl-Beispiel

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

Workspaces

POST/v1/workspaces

createWorkspace

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
Idempotency-Key
header · erforderlich
  • valuestring

    minLength: 16 · maxLength: 128

Anfrage-Body erforderlich

application/json

  • valueobject

    Keine zusätzlichen Eigenschaften

  • namestringerforderlich

    minLength: 1 · maxLength: 200

Erfolgsantwort 200

Idempotente Wiederholung eines zuvor erstellten Workspace.

application/json

  • valueobject
  • datanicht angegebenerforderlich
  • allOf 1object
  • idstringerforderlich

    format: "uuid"

  • namestringerforderlich
  • shardstringerforderlich
  • rolestringerforderlich

    enum: "owner", "admin", "member", "viewer"

  • revisionintegererforderlich

    format: "int64"

  • name_sourcestringerforderlich

    Herkunft des Workspace-Namens: signup (automatischer Registrierungsname), brand (bei Einrichtung bestätigtes Unternehmen oder Marke) oder user (von einer Person eingegeben; Markenbestätigungen benennen ihn nicht mehr um).

    enum: "signup", "brand", "user"

  • owner_emailstring | nullerforderlich

    E-Mail-Adresse des ältesten aktiven Eigentümers. Null, wenn der Aufrufer ein statischer API-Schlüssel ist oder der Eigentümer keine gespeicherte Adresse hat.

  • avatar_urlstring | nullerforderlich

    Workspace-Bildmarke: Markenlogo des Standardprodukts, sonst das Logo der zuletzt bestätigten Unternehmenserkennung.

  • allOf 2object
  • replayedbooleanerforderlich

curl-Beispiel

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}

Workspace, Eigentümer und weitere Workspaces der angemeldeten Person lesen.

Jeder für den Workspace autorisierte Akteur darf ihn lesen. other_workspaces listet weitere aktive Mitgliedschaften der angemeldeten Person. OAuth-Berechtigungen oder API-Schlüssel sind nur für diesen Workspace autorisiert und erfahren nichts über andere; daher ist other_workspaces leer und die Antwort enthält einen entsprechenden Hinweis. Hinter einem statischen API-Schlüssel steht keine Person, daher ist owner_email null.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 200

Der Workspace aus Sicht des Aufrufers.

application/json

  • valueobject
  • dataobjecterforderlich

    Keine zusätzlichen Eigenschaften

  • idstringerforderlich

    format: "uuid"

  • namestringerforderlich
  • name_sourcestringerforderlich

    Herkunft des Workspace-Namens: signup (automatischer Registrierungsname), brand (bei Einrichtung bestätigtes Unternehmen oder Marke) oder user (von einer Person eingegeben; Markenbestätigungen benennen ihn nicht mehr um).

    enum: "signup", "brand", "user"

  • rolestringerforderlich

    enum: "owner", "admin", "member", "viewer"

  • owner_emailstring | nullerforderlich
  • avatar_urlstring | nullerforderlich
  • other_workspacesarrayerforderlich

    maxItems: 50

  • Jedes Elementobject

    Keine zusätzlichen Eigenschaften

  • idstringerforderlich

    format: "uuid"

  • namestringerforderlich
  • rolestringerforderlich

    enum: "owner", "admin", "member", "viewer"

  • notestring

    Bei API-Schlüssel- und OAuth-Aufrufern vorhanden, deren Verbindung nur für diesen Workspace autorisiert ist.

curl-Beispiel

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

Workspace umbenennen.

Erfordert aktiven Eigentümer oder Administrator; Zugangsdaten benötigen workspace:admin für diesen Workspace. Der Name wird an den Rändern bereinigt und muss 1-80 Zeichen haben. Ein eingegebener Name ist endgültig: Spätere Markenbestätigungen benennen den Workspace nicht mehr um (name_source wird user). Erhöht die Workspace-Revision und erfasst eine "workspace"-Änderung.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body erforderlich

application/json

  • valueobject

    Keine zusätzlichen Eigenschaften

  • namestringerforderlich

    minLength: 1 · maxLength: 80

Erfolgsantwort 200

Der Workspace wurde umbenannt.

application/json

  • valueobject
  • dataobjecterforderlich

    Keine zusätzlichen Eigenschaften

  • idstringerforderlich

    format: "uuid"

  • namestringerforderlich

    minLength: 1 · maxLength: 80

  • name_sourcestringerforderlich

    const: "user"

curl-Beispiel

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}

Eigenen Workspace endgültig löschen und physische Objektbereinigung einreihen.

Der authentifizierte Akteur muss Eigentümer sein. Statische Workspace-API-Schlüssel können keinen Workspace löschen; erforderlich ist eine menschliche Sitzung oder nutzerautorisierte OAuth-Berechtigung mit workspace:admin. Kostenpflichtige Abonnements müssen zuerst gekündigt werden. PostgreSQL-Daten werden atomar gelöscht und alle B2-Objektversionen unter dem Workspace-Präfix asynchron bereinigt.

Authentifizierung: Bearer-API-Schlüssel des Workspace.

Parameter

Name / PositionSchema
workspaceId
path · erforderlich
  • valuestring

    format: "uuid"

Anfrage-Body

Im Vertrag ist kein Anfrage-Body angegeben.

Erfolgsantwort 202

Der kanonische Workspace wurde gelöscht und die physische Objektbereinigung eingereiht.

application/json

  • valueobject
  • dataobjecterforderlich

    Keine zusätzlichen Eigenschaften

  • idstringerforderlich

    format: "uuid"

  • namestringerforderlich
  • deletedbooleanerforderlich

    const: true

  • storage_cleanupstringerforderlich

    const: "queued"

  • next_workspace_idstring

    format: "uuid"

curl-Beispiel

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