How AI is applied across API Evangelist and APIs.io. Read my AI disclosure →
API Evangelist API Evangelist
Discovery
Learnings
Guidance
Toolbox
Alignment
API Evangelist LLC

Bird Email Templates API

Reusable email templates and their versions, with stored subject, HTML, and plain-text content you manage and reference when sending.

Bird Email Templates API is one of 65 APIs that Bird publishes on the APIs.io network, described by a machine-readable OpenAPI specification and an AsyncAPI event-driven specification.

Tagged areas include Email Templates. The published artifact set on APIs.io includes an OpenAPI specification, API documentation, an API reference, and an AsyncAPI specification.

This API exposes 18 operations across 11 paths, and defines 60 schemas. It is described by OpenAPI 3.2.0, at version 1.0.0.

Requests are made against 3 base URLs: https://{region}.platform.bird.com, https://platform.bird.com, http://localhost:8080.

18 operations 11 paths 60 schemas 3 DELETE7 GET2 PATCH5 POST1 PUT

Metadata

The identity and technical contract details declared by the specification.

Specification
OpenAPI 3.2.0
API Version
1.0.0
Base URL
https://api.bird.com
Authentication
HTTP Bearer, API Key, API Key, API Key
Resource Areas
1

Authentication & Security 4

Bird Email Templates API declares 4 security schemes for authenticating requests. It accepts HTTP bearer tokens (BearerAuth). An API key is passed in the cookie as bird_session (CookieAuth). An API key is passed in the header as X-Realtime-Key (RealtimeKey). An API key is passed in the header as X-Realtime-Secret (RealtimeSecret). By default, every request must be authenticated.

  • BearerAuth — Pass the API key as a bearer token in the Authorization header. Keys use the format bk{region}. The prefix identifies the region and selects the API endpoint.…
  • CookieAuth — Session cookie set after signing in to the Bird dashboard. The cookie value is an opaque session token; no session data is stored in the cookie itself.
  • RealtimeKey — The Realtime app key. Together with X-Realtime-Secret, it authenticates a request to the Realtime API in addition to the workspace credential. Both values come…
  • RealtimeSecret — The Realtime app secret paired with X-Realtime-Key. The API returns the secret only when the key is created and does not store it. Create a new key and revoke…

Paths & Operations 18

Across 11 paths, the API surfaces 18 operations — 3 DELETE, 7 GET, 2 PATCH, 5 POST, 1 PUT. Each is listed below with its method, path, parameters, and response codes.

Email Templates 18

Reusable email templates and their versions, with stored subject, HTML, and plain-text content you manage and reference when sending.

POST
/v1/email/templates
Create an email template
createEmailTemplate 1 param body → 201400401403409422429500
GET
/v1/email/templates
List email templates
listEmailTemplates 8 params → 200401403422429500
GET
/v1/email/templates/{template_ref}
Get an email template
getEmailTemplate 1 param → 200401403404422429500
PATCH
/v1/email/templates/{template_ref}
Update an email template
updateEmailTemplate 2 params body → 200400401403404409422429
DELETE
/v1/email/templates/{template_ref}
Delete an email template
deleteEmailTemplate 2 params → 204401403404409422429500
POST
/v1/email/templates/{template_ref}/duplicate
Duplicate an email template
duplicateEmailTemplate 2 params body → 201400401403404409422429
POST
/v1/email/templates/{template_ref}/preview
Get an email template preview
getEmailTemplatePreview 2 params body → 200400401403404422429500
GET
/v1/email/templates/{template_ref}/versions
List email template versions
listEmailTemplateVersions 4 params → 200401403404422429500
GET
/v1/email/templates/{template_ref}/broadcasts
List the broadcasts blocking a template delete
listEmailTemplateBroadcasts 4 params → 200401403404422429500
GET
/v1/email/templates/{template_ref}/versions/{version_id}
Get an email template version
getEmailTemplateVersion 2 params → 200401403404422429500
DELETE
/v1/email/templates/{template_ref}/versions/{version_id}
Delete an email template draft
deleteEmailTemplateVersion 3 params → 204401403404409422429500
GET
/v1/email/templates/{template_ref}/versions/{version_id}/languages
List a version's languages
listEmailTemplateVersionLanguages 2 params → 200401403404422429500
GET
/v1/email/templates/{template_ref}/versions/{version_id}/languages/{language}
Get one language of a version
getEmailTemplateLanguage 3 params → 200401403404422429500
PUT
/v1/email/templates/{template_ref}/versions/{version_id}/languages/{language}
Upsert one language of a draft
upsertEmailTemplateLanguage 4 params body → 200400401403404409422429
PATCH
/v1/email/templates/{template_ref}/versions/{version_id}/languages/{language}
Update one language of a draft
updateEmailTemplateLanguage 4 params body → 200400401403404409422429
DELETE
/v1/email/templates/{template_ref}/versions/{version_id}/languages/{language}
Delete one language from a draft
deleteEmailTemplateLanguage 4 params → 204401403404409422429500
POST
/v1/email/templates/{template_ref}/versions/{version_id}/rollback
Roll back an email template
rollbackEmailTemplate 3 params body → 200400401403404409422429
POST
/v1/email/templates/{template_ref}/versions/{version_id}/submit
Submit an email template version
submitEmailTemplateVersion 3 params body → 200400401403404409422429

Schemas 60

The contract defines 60 schemas that model the data the API accepts and returns. The most detailed are EmailTemplate (22 properties), EmailTemplateSummary (20 properties), EmailCompatibilityFinding (12 properties), EmailTemplateVersion (11 properties). Each schema is shown below with its type and property counts.

_ListEnvelope
object
3 properties 3 required
ErrorDetail
object
2 properties 2 required
ContactID
string
TemplateOnMissingLanguage
string
What a send or a preview does when it asks for a language the template cannot serve. fallback serves the closest match instead. It tries a broader form of the…
TemplateVariable
object
A single variable slot a template fills in from the values supplied when sending. The same shape on email, SMS and WhatsApp, so reading what a template needs w…
5 properties 4 required
EmailTemplateLanguage
object
One language of a template version: its content plus the identity a concurrent-edit check needs. Reading a language returns everything you need to edit it and…
7 properties 4 required
EmailTemplateRollback
object
Parameters for rolling a template back to an earlier published version. Rolling back also replaces the draft with that version's content, so you have to pass r…
1 property 1 required
EmailBroadcastID
string
EmailTemplateSubmitProblem
object
One problem found while checking whether a version can be submitted.
4 properties 2 required
EmailTemplateLanguageSummary
object
One language of a template version, without its content: enough to list what a version holds and how big each language is. Read a single language to get its co…
6 properties 2 required
EmailTemplateLanguageUpsert
object
Content to save for one language, replacing whatever that language held. Send every field you want the language to keep: a field you omit is cleared, which is…
5 properties 1 required
EmailTemplateVersionStatus
string
Whether this version is still being edited or has been published. It records the version's publication history: a version that a later one replaced stays publi…
ErrorBody
object
11 properties 6 required
EmailTemplateSource
string
The authoring format the template is written in, fixed at creation. html is finished markup you provide, optionally personalized with Liquid.
EmailTemplateBroadcastList
EmailClientFamily
string
Which mail client a finding applies to. A finding's message names at most Apple Mail, Gmail, Outlook, and Yahoo; its unsupportedclients and partialclients name…
EmailTemplateBroadcastSummary
object
One broadcast that blocks deleting this template.
4 properties 3 required
EmailTemplateID
string
EmailTemplateVersionID
string
EmailTemplateSubmit
object
Options for a submit. Every field here is optional, so an empty request body submits the draft exactly as it stands.
3 properties
EmailTemplateLanguageList
object
1 property 1 required
EmailTemplateSummary
object
20 properties 20 required
EmailClientPlatform
string
Which build of a client family a finding applies to. A family can support a feature in one build and not another, so Gmail on iOS is tracked separately from Gm…
EmailCompatibilityFinding
object
One pattern in the HTML that mail clients remove, ignore, or render inconsistently.
12 properties 12 required
EmailTemplateList
EmailTemplateUpdate
object
Partial update of a template's metadata and draft settings. Only the fields you send are changed. The rest are left as-is. Include the draft revision you last…
6 properties 1 required
EmailTemplateLanguageState
object
Where one of the template's languages stands: whether sends are using it, and whether its draft contains an unpublished edit.
2 properties 1 required
EmailTemplateDuplicate
object
Optional parameters when duplicating an email template. The body may be omitted entirely to accept the defaults.
1 property
TemplateScope
string
Whether the template is one of our built-in templates (system) or one your workspace created (workspace).
WorkspaceID
string
NextAction
object
5 properties 2 required
TemplateSlug
string
A template's slug: what you send it by, for example welcome-email. Email and SMS slugs stay fixed after creation. WhatsApp slugs can change only before the fir…
TemplateStatus
string
Where the template stands as a whole. The same five states on every channel. - draft: nothing has ever gone live. - pending: nothing is live and at least one l…
EmailCompatibilitySeverity
string
What a finding costs you. - problem: the pattern does nothing at all. The client removes the markup, never loads the stylesheet carrying it, or will not operat…
EmailTemplatePreviewRequest
object
Sample values and options for rendering a template preview. Omit the body entirely to preview the current draft: bird.contact. tokens then fill from stand-in v…
5 properties
EmailTemplateLanguageContent
object
One language's content for an email template. Each language carries its own subject, preview text and bodies, so a translation can differ in wording and length…
4 properties
EmailTemplateSourceWrite
string
The authoring format to create the template in. html is finished markup you provide, optionally personalized with Liquid; a format the API cannot author yet is…
EmailTemplateThemeFilter
string
Filter by the visual theme a built-in template is designed in. Only built-in system templates have a theme, so naming one returns built-ins alone.
EmailTemplateRef
string
The template this call addressed, as its id, even when you addressed it by slug. Send it back as templateref on a follow-up call.
EmailTemplatePreview
object
A rendered preview of an email template: its subject, HTML, and plain-text bodies with the supplied sample values filled in, ready to display.
7 properties 7 required
EmailTemplateSubmitResult
object
The outcome of a submit. This has the same shape whether the submit was a validation run or a real one, so you can read valid and version the same way either t…
7 properties 6 required
EmailTemplateVersion
object
11 properties 8 required
EmailTemplateLanguageSaved
object
The identity, revision counters, and fingerprint of a saved language. The response does not include its content; read the language to retrieve it.
10 properties 7 required
EmailCompatibilityRuleID
string
Which rule produced a finding. - htmlscript: a tag. - htmleventhandlers: a JavaScript event-handler attribute such as onclick. - htmlembeddedcontent: an , , or…
TemplateLanguageStatus
string
Status of one template language on channels without third-party review. - draft: it has never been published. - live: it is available to sends. - superseded: a…
EmailTemplatePreviewContent
object
Content to render instead of the template's stored draft. Give it the subject and bodies you have in hand and they are rendered exactly as the draft would be,…
4 properties
EmailTemplateCreate
object
Parameters for creating an email template and its initial draft.
9 properties 3 required
EmailCompatibilityReportSeverity
string
The worst severity across every finding the response was computed from, which is the authoritative reading: a response that caps how many findings it lists sti…
Actor
object
3 properties 2 required
EmailTemplateDraftRevision
integer
The draft revision you last read (from the template's revision field). A stale value returns a conflict so you can reload and retry.
Error
object
1 property 1 required
LanguageTag
string
A language tag in BCP-47 form, for example en or pt-BR.
EmailTemplateLanguageUpdate
object
A partial edit to one language: send only the fields you are changing, and the rest keep their current values. The language must already exist. Create it by sa…
5 properties
EmailBroadcastStatus
string
Where the broadcast itself has got to. This is separate from what happened to individual recipients, which the broadcast's own sentcount, deliveredcount, bounc…
EmailTemplateVersionSummary
object
One version of a template, without its content. Version history lists every version a template has ever had, and each one has a full copy of the content in eve…
11 properties 8 required
EmailTemplateCategory
string
Whether the template is for transactional email or marketing email.
EmailTemplateVersionList
EmailTemplateTheme
string
The visual theme a built-in template is designed in. Each of the catalog's five themes ships its own set of eight emails, and the sets overlap only partly, so…
EmailTemplate
object
22 properties 22 required
EmailClientSupport
object
One mail client family a finding applies to, and which of that family's platforms.
2 properties 2 required

Specification

The full machine-readable OpenAPI contract behind this narrative.

Source

bird-email-templates-api-openapi.yml Raw ↑

Other APIs Bird publishes across the network.

Bird Customer Data API
Bird Phone Numbers API
Bird Identity Verification API
Bird Touchpoints API
Bird Accounts API
Bird FAQ API
Bird Intent API
Bird SMS Messaging API
Bird Channels API
Bird Contacts API
Bird Conversations API
Bird Legacy MessageBird API
Where this information came from

This is an independent, third-party profile of Bird Email Templates API, published by API Evangelist. We do not operate, host, resell, or support these APIs, and we are not affiliated with or endorsed by the company unless stated above. Everything here is built from publicly available information — the company's own site, developer portal, documentation, public repositories, and the specifications it publishes for public use. Nothing is obtained by breaching a system, defeating an access control, or using credentials.

The Kin Score and Agent Readiness rating are independently calculated assessments of a company's public API artifacts, scored against a published rubric. They are not certifications, endorsements, security assessments, or audits.

Corrections, re-scores, and removal are free — no partnership or purchase required, and you do not need to justify the request. A removed company is recorded as unrated, never scored zero for having asked. Acknowledgement within one business day; removal within two.

info@apievangelist.com · Read the full data-sourcing policy →
On a security or compliance team? Put security in the subject line and you will get a person, not a form — we will tell you exactly which public URLs this profile was built from.