bird email broadcasts create
Usage
Code example
bird email broadcasts create [flags]Description
Create a broadcast
Every field is optional; a broadcast can be created as an empty draft and filled in later with "bird email broadcasts update". Pass --send to send the broadcast on creation instead of leaving a draft.
Build the request from flags, a JSON EmailBroadcastCreateRequest body via --body-file ("-" reads stdin), or both — a flag overrides the matching body field. Run --example to print a ready-to-edit body, or --dry-run to print the resolved request without sending it.
Examples
Code example
# print the body shape (no credentials needed)
bird email broadcasts create --example
# the body it prints:Code example
{
"audience_id": "adn_01krdgeqcxet5s7t44vh8rt9mg",
"category": "marketing",
"from": "newsletter@acme.com",
"metadata": {
"campaign_id": "12345"
},
"tags": [
{
"name": "campaign",
"value": "spring_launch"
}
],
"template": {
"id": "emt_01krdgeqcxet5s7t44vh8rt9mg",
"language": "nl"
}
}Options
Content
| Name | Description |
|---|---|
--from | Sender address. Accepts a bare address or RFC 5322 "Name <addr>" form |
--audience-id | Audience to send to |
--template | Template ID (emt_…). The broadcast sends this template's published version |
--language | One of the template's languages, such as en or fr-CA, to send to the whole audience. Needs --template |
--reply-to <value>… | Reply-To address; repeatable. Accepts bare addresses or RFC 5322 "Name <addr>" form |
Labels & metadata
| Name | Description |
|---|---|
--header <key=value> | Custom header as Key=Value; repeatable |
--tag <key=value> | Tag as name=value; repeatable |
--metadata | Arbitrary JSON metadata object |
--category | Content classification: marketing (default) or transactional |
--ip-pool-id | IP pool ID (ipp_…) to send from |
Tracking
| Name | Description |
|---|---|
--track-opens | Track open events (default true) |
--track-clicks | Track click events (default true) |
Delivery
| Name | Description |
|---|---|
--send | Send on creation instead of leaving a draft, immediately or at --scheduled-at |
--scheduled-at | Schedule the send for a future time (RFC 3339, e.g. 2026-07-10T09:00:00Z); requires --send |
Request
| Name | Description |
|---|---|
--body-file | Read the JSON request body from this file; "-" reads stdin |
--example | Print a complete example request body, then exit |
--dry-run | Print the resolved request without sending it, then exit |
--idempotency-key | Deduplication key; a retry with the same key won't act twice |
Options
| Name | Description |
|---|---|
--response-schema | Print the fields this command returns, then exit |
Related
| Name | Description |
|---|---|
bird email broadcasts cancel | Cancel a broadcast |
bird email broadcasts counts | Get a broadcast's audience counts |
bird email broadcasts delete | Delete a broadcast |
bird email broadcasts get | Get a broadcast |
bird email broadcasts list | List broadcasts |
bird email broadcasts list-clicked-links | List a broadcast's clicked links |
bird email broadcasts list-events | List events for a broadcast |
bird email broadcasts list-recipients | List recipients of a broadcast |
bird email broadcasts send | Send a broadcast |
bird email broadcasts send-quota | Get how much of a broadcast the send allowance covers |
bird email broadcasts update | Update a draft or scheduled broadcast |
Related resources
Continue with the documentation, guides and examples for this topic.