BangerMail Inc. Workspaces API
The Workspaces API from BangerMail Inc. — 262 operation(s) for workspaces.
Operations 331
Showing the first 250 of 331. The full set is in the contract, and via get_provider_operations.
POST
/v1/workspaces/{workspaceId}/feedback/attachments
Upload a screenshot or video to private Linear storage
#
POST
/v1/workspaces/{workspaceId}/feedback/attachments/prepare
Prepare a direct agent or server media upload
#
POST
/v1/workspaces/{workspaceId}/feedback/attachments/{attachmentId}/complete
Verify a direct media upload before attaching it to feedback
#
POST
/v1/workspaces/{workspaceId}/ai/command-runs
Start a mail assistant command with reads and confirmation-only proposals
#
POST
/v1/workspaces/{workspaceId}/ai/command-runs/{runId}/tool-results
Continue an actor-owned command in its original product scope
#
GET
/v1/workspaces/{workspaceId}/email-preview
Render saved emails for visual iteration without sending
#
GET
/v1/workspaces/{workspaceId}
Read the workspace, its owner, and the signed-in person's other workspaces
#
DELETE
/v1/workspaces/{workspaceId}
Permanently delete an owned workspace and queue physical object cleanup
#
POST
/v1/workspaces/{workspaceId}/select
Make a workspace the signed-in person's current workspace
#
GET
/v1/workspaces/{workspaceId}/onboarding/guided
Read the canonical setup (connect, brand, domain) without creating resources or…
#
POST
/v1/workspaces/{workspaceId}/onboarding/guided
Execute one explicit retry-safe onboarding action for the selected product
#
GET
/v1/workspaces/{workspaceId}/onboarding/agent-state
Resume the shared browser and MCP onboarding journey
#
POST
/v1/workspaces/{workspaceId}/onboarding/agent-state/start
Select the agent-led entry surface or the browser fallback
#
POST
/v1/workspaces/{workspaceId}/onboarding/agent-state/aha-one
Idempotently create the permanent hosted mailbox and start its real…
#
POST
/v1/workspaces/{workspaceId}/onboarding/agent-state/agent-proof
Send the OAuth-bound agent connection proof to the canonical hosted mailbox
#
PUT
/v1/workspaces/{workspaceId}/onboarding/agent-state/decision
Record one explicit progressive-onboarding choice
#
PUT
/v1/workspaces/{workspaceId}/onboarding/agent-state/domain-choice
Persist the user's company-domain or no-domain onboarding decision and run…
#
PUT
/v1/workspaces/{workspaceId}/onboarding/agent-state/context
Store reviewed business context supplied by the browser or connected agent
#
PUT
/v1/workspaces/{workspaceId}/onboarding/agent-state/plan
Store personalized next-step choices after live email activation passes
#
POST
/v1/workspaces/{workspaceId}/onboarding/agent-state/apply
Record reviewed artifacts prepared from the opportunity plan
#
POST
/v1/workspaces/{workspaceId}/onboarding/agent-state/plan/approve
Approve the proposed opportunity map before the agent prepares sensitive changes
#
POST
/v1/workspaces/{workspaceId}/onboarding/agent-state/validate
Derive deterministic activation validation from Banger-owned proof state
#
POST
/v1/workspaces/{workspaceId}/onboarding/agent-state/complete
Complete onboarding after deterministic validation passes
#
POST
/v1/workspaces/{workspaceId}/onboarding/starter-proof
Start or resume a real send-and-receive proof for a starter address
#
GET
/v1/workspaces/{workspaceId}/onboarding/starter-proof
Read the durable status of a starter-address round trip
#
POST
/v1/workspaces/{workspaceId}/onboarding/domain-proof
Start or resume two real send-and-receive checks for verified Banger…
#
GET
/v1/workspaces/{workspaceId}/onboarding/domain-proof
Read the durable status of the domain infrastructure checks
#
GET
/v1/workspaces/{workspaceId}/webhooks
List inbound event sources and outbound event destinations
#
POST
/v1/workspaces/{workspaceId}/webhooks
Create a signed, retried destination or idempotent inbound event source
#
PATCH
/v1/workspaces/{workspaceId}/webhooks/{endpointId}
Disable a webhook, or re-enable a disabled or failing one, without rotating its…
#
DELETE
/v1/workspaces/{workspaceId}/webhooks/{endpointId}
Permanently delete a webhook so its name can be used again
#
GET
/v1/workspaces/{workspaceId}/webhooks/{endpointId}/credentials
Reopen an active incoming webhook's existing credential options
#
GET
/v1/workspaces/{workspaceId}/webhooks/{endpointId}/deliveries
List recent delivery attempts and HTTP outcomes for an outbound webhook
#
POST
/v1/workspaces/{workspaceId}/webhooks/{endpointId}/test
Queue one signed synthetic event through the normal retrying delivery path
#
GET
/v1/workspaces/{workspaceId}/content-settings
Read product-level locale, fallback, timezone, glossary, and review settings
#
PUT
/v1/workspaces/{workspaceId}/content-settings
Save product-level content settings with optimistic version check
#
GET
/v1/workspaces/{workspaceId}/communication-policy
Read product-wide recipient conflict, frequency, and delivery-window policy
#
PUT
/v1/workspaces/{workspaceId}/communication-policy
Save the product communication policy with optimistic version check
#
POST
/v1/workspaces/{workspaceId}/communication-policy/simulate
Read-only policy simulation for fixed send requests to one recipient
#
GET
/v1/workspaces/{workspaceId}/approvals/{approvalId}/managed-layout-preview/{contentId}
Read full source-locale before/after renders for content bound to one layout…
#
GET
/v1/workspaces/{workspaceId}/approvals/{approvalId}/journey-preview
Render every email of a Journey activation or enrollment approval from its…
#
GET
/v1/workspaces/{workspaceId}/assets/{assetId}
Read one product email image's metadata and public URL
#
POST
/v1/workspaces/{workspaceId}/managed-layouts
Create a draft layout from validated HTML or a brand-seeded default
#
GET
/v1/workspaces/{workspaceId}/managed-layouts/{layoutId}
Read a layout and its current draft revision
#
PATCH
/v1/workspaces/{workspaceId}/managed-layouts/{layoutId}
Save a validated draft layout revision
#
GET
/v1/workspaces/{workspaceId}/managed-layouts/{layoutId}/versions
List immutable layout revisions
#
GET
/v1/workspaces/{workspaceId}/managed-layouts/{layoutId}/impact
Describe content drafts and publications depending on this layout
#
POST
/v1/workspaces/{workspaceId}/managed-layouts/{layoutId}/restore
Copy an immutable layout revision into a new draft
#
GET
/v1/workspaces/{workspaceId}/managed-content
List product managed email content in stable newest-id order
#
POST
/v1/workspaces/{workspaceId}/managed-content
Save a source-locale email draft and queue missing target translations
#
GET
/v1/workspaces/{workspaceId}/managed-content/{contentId}
Read the draft revision, translations, and preparation status
#
PATCH
/v1/workspaces/{workspaceId}/managed-content/{contentId}
Save a new source draft revision without changing production publication
#
POST
/v1/workspaces/{workspaceId}/managed-content/{contentId}/render
Preview a saved source revision and one ready locale without sending
#
POST
/v1/workspaces/{workspaceId}/managed-content/{contentId}/translations/{locale}/retry
Retry a failed automatic translation of the current source draft
#
GET
/v1/workspaces/{workspaceId}/managed-content/{contentId}/translations
Read translation catalogs and preparation jobs for the draft revision
#
POST
/v1/workspaces/{workspaceId}/managed-content/{contentId}/translations/{locale}/review
Review the exact pending translation catalog for one source revision
#
GET
/v1/workspaces/{workspaceId}/managed-content/{contentId}/versions
List immutable publication history
#
POST
/v1/workspaces/{workspaceId}/managed-content/{contentId}/restore
Copy an earlier source revision into a new draft, without publishing it
#
PATCH
/v1/workspaces/{workspaceId}/journeys/{journeyId}
Update selected Journey fields while preserving its other definition fields
#
POST
/v1/workspaces/{workspaceId}/journeys/{journeyId}/convert-managed
Convert a paused or draft legacy Journey to prepared managed content
#
POST
/v1/workspaces/{workspaceId}/journeys/{journeyId}/render
Render one saved Journey email step without sending
#
POST
/v1/workspaces/{workspaceId}/journeys/{journeyId}/enroll
Enroll explicit contacts in a Journey through a governed approval
#
POST
/v1/workspaces/{workspaceId}/journeys/{journeyId}/splits/{stepId}/decide
Decide journey split
#
GET
/v1/workspaces/{workspaceId}/approvals/count
Count approvals that are waiting or were missed before a decision
#
POST
/v1/workspaces/{workspaceId}/mailboxes
Create a Banger-native work mailbox on a workspace sending domain
#
POST
/v1/workspaces/{workspaceId}/mailboxes/sms
Add an SMS inbox for a number on the company's own Twilio account.
#
GET
/v1/workspaces/{workspaceId}/mailboxes/whatsapp/signup
What the web app needs to open Meta's Embedded Signup for a WhatsApp inbox…
#
POST
/v1/workspaces/{workspaceId}/mailboxes/whatsapp
Finish connecting a WhatsApp number as an inbox, with the WhatsApp Business…
#
GET
/v1/workspaces/{workspaceId}/mailboxes/sms/available-numbers
Toll-free numbers Banger can buy for this workspace, which text phones in the…
#
POST
/v1/workspaces/{workspaceId}/mailboxes/sms/numbers
Buy a toll-free number as an SMS inbox and ask carriers to approve it with the…
#
GET
/v1/workspaces/{workspaceId}/mailboxes/{mailboxId}/deletion-preview
Preview permanent mailbox deletion and dependent sending flows.
#
PATCH
/v1/workspaces/{workspaceId}/mailboxes/{mailboxId}
Set the sender name recipients see on mail from one Banger mailbox ("Name ").
#
DELETE
/v1/workspaces/{workspaceId}/mailboxes/{mailboxId}
Permanently delete one mailbox, keeping its domain and other mailboxes.
#
POST
/v1/workspaces/{workspaceId}/mailboxes/starter
Create a hosted mailbox restricted to same-product hosted inboxes and the…
#
POST
/v1/workspaces/{workspaceId}/mailboxes/{mailboxId}/reactivate
Resume the sender-reputation pause holding one mailbox, under the self-serve…
#
GET
/v1/workspaces/{workspaceId}/sending-health
Read sender-reputation enforcement state, lane rates, pauses and the enforced…
#
POST
/v1/workspaces/{workspaceId}/sending-health/resume
Resume one lane, domain or mailbox pause after reviewing its rates and sources
#
GET
/v1/workspaces/{workspaceId}/surface-data/{surface}
Load a product screen through one authorized database transaction
#
GET
/v1/workspaces/{workspaceId}/agents
List the AI agents (MCP clients) that can act for this workspace
#
POST
/v1/workspaces/{workspaceId}/agents/{agentId}/revoke
Revoke one agent's access. It stops working within about 30 seconds
#
GET
/v1/workspaces/{workspaceId}/oauth-clients
List the workspace's OAuth clients for agent platforms that connect with a…
#
POST
/v1/workspaces/{workspaceId}/oauth-clients
Create a confidential OAuth client (client ID and secret) for an agent platform
#
GET
/v1/workspaces/{workspaceId}/connections
List Banger-managed product and business data connections
#
POST
/v1/workspaces/{workspaceId}/connections/adapters/{adapterKey}
Validate and encrypt a Banger-managed source connection
#
GET
/v1/workspaces/{workspaceId}/mailchimp-migration
Read the progress and report of the move from Mailchimp
#
POST
/v1/workspaces/{workspaceId}/mailchimp-migration
Start, or run again, the move from Mailchimp into this product
#
POST
/v1/workspaces/{workspaceId}/ai/email/revise
Generate a reviewable email revision without saving or sending it
#
POST
/v1/workspaces/{workspaceId}/connections/{connectionId}/validate
Revalidate the active credential and refresh account metadata
#
POST
/v1/workspaces/{workspaceId}/connections/{connectionId}/credential
Validate and atomically rotate a managed connection credential
#
POST
/v1/workspaces/{workspaceId}/connections/{connectionId}/query
Execute a typed, bounded read against a Banger-managed connection
#
PUT
/v1/workspaces/{workspaceId}/connections/{connectionId}/grants/{principalKind}/{principalId}
Grant connection access
#
DELETE
/v1/workspaces/{workspaceId}/connections/{connectionId}/grants/{principalKind}/{principalId}
Revoke connection access
#
POST
/v1/workspaces/{workspaceId}/providers/google/oauth/session
Start a PKCE-protected Gmail mailbox connection for this workspace
#
GET
/v1/workspaces/{workspaceId}/providers/google/oauth/sessions/{sessionId}
Poll a Gmail authorization session inside its workspace boundary
#
PUT
/v1/workspaces/{workspaceId}/provider-connections/{providerConnectionId}/credential
Rotate resend provider credential
#
DELETE
/v1/workspaces/{workspaceId}/provider-connections/{providerConnectionId}
Disable provider connection
#
DELETE
/v1/workspaces/{workspaceId}/sending-domains/{sendingDomainId}
Delete native sending domain
#
DELETE
/v1/workspaces/{workspaceId}/sending-domains/{sendingDomainId}/lanes/{laneKind}
Remove native sending lane
#
POST
/v1/workspaces/{workspaceId}/sending-domains/{sendingDomainId}/lanes/{laneKind}/pause
Pause native sending lane
#
POST
/v1/workspaces/{workspaceId}/sending-domains/{sendingDomainId}/lanes/{laneKind}/resume
Resume native sending lane
#
POST
/v1/workspaces/{workspaceId}/sending-domains/{sendingDomainId}/verify
Verify native sending domain
#
DELETE
/v1/workspaces/{workspaceId}/drafts/{draftId}/attachments/{attachmentId}
Delete draft attachment
#
GET
/v1/workspaces/{workspaceId}/contact-lists/{listId}/deletion-preview
Preview contact list deletion
#
GET
/v1/workspaces/{workspaceId}/contact-fields
The product's contact fields (built-in, declared and discovered) with type…
#
POST
/v1/workspaces/{workspaceId}/contact-fields
Declare a contact field: label, type (text, number, boolean, date, choice…
#
PATCH
/v1/workspaces/{workspaceId}/contact-fields/{key}
Rename, describe, retype (converting stored values, or 409 with an example that…
#
GET
/v1/workspaces/{workspaceId}/signup-forms
The product's signup forms with embed code, hosted link, views, signups…
#
POST
/v1/workspaces/{workspaceId}/signup-forms
Create a form: kind (inline, popup, bar, slide_in, page), list_id or list_name…
#
GET
/v1/workspaces/{workspaceId}/signup-forms/readiness
Whether this product can turn forms on (its product lane sends from a verified…
#
POST
/v1/workspaces/{workspaceId}/signup-forms/preview
Render unsaved form settings as a complete HTML page on a sketched website
#
PATCH
/v1/workspaces/{workspaceId}/signup-forms/{formId}
Partial update; config merges into the saved settings; status active, paused or…
#
POST
/v1/workspaces/{workspaceId}/signup-forms/{formId}/preview
Render a saved form, optionally with unsaved changes, in the form or success…
#
Specifications
⚙
OpenAPI
https://artifacts.apis.io/bangermail-com/openapi/bangermail-com-workspaces-api-openapi.yml
Schemas & Data
📊
JSONSchema
https://artifacts.apis.io/bangermail-com/json-schema/bangermail-com-billing-snapshot-schema.json
📊
JSONSchema
https://artifacts.apis.io/bangermail-com/json-schema/bangermail-com-mailchimp-migration-report-schema.json
📊
JSONSchema
https://artifacts.apis.io/bangermail-com/json-schema/bangermail-com-broadcast-schema.json
📊
JSONSchema
https://artifacts.apis.io/bangermail-com/json-schema/bangermail-com-create-product-webhook-request-schema.json
📊
JSONSchema
https://artifacts.apis.io/bangermail-com/json-schema/bangermail-com-journey-input-schema.json
📊
JSONSchema
https://artifacts.apis.io/bangermail-com/json-schema/bangermail-com-transactional-send-schema.json