Skip to Content
API access is available to organizations with a signed BAA. Request API access →
API referenceCreate a campaign

Create a campaign

Your BloomText team turns this on for your account. Book a call and we’ll set it up with you.Request access
POST/campaigns

Creates a draft campaign. Add recipients, then start it. Every recipient gets the same message, from the phone number you choose. It’s sent from the API identity the key belongs to; until identities are on for the account, it shows the key’s name.

Credentials
API key, or an OAuth access token
Scope
messages.write
Idempotent
With Idempotency-Key

Run in Postman: import the collection, set api_key, and find this request in its folder.

Query parameters

org_idUUID

The organization the call acts on, from List organizations. Required when an account API key reaches more than one organization; an organization key or a key limited to one organization can leave it out.

Headers

Idempotency-KeyUUIDRequired

A UUID you generate for each write. Retrying with the same key returns the original result for 24 hours. Reusing a key with a different method, path, or body returns 409.

Body parameters

namestringRequired

A name for staff.

bodystringRequired

The message, up to 1,600 characters. Every recipient gets the same text.

channelsecure, sms

secure (the default) or sms, as in Send a message to a patient.

fromstring

The clinic phone number to send from, in E.164 format, like +15125550100. Defaults to the API key’s default number, else the organization’s only number; an organization with several numbers and no default answers 422 from_required. See List phone numbers.

send_interval_secondsnumber

Seconds between messages.

Any other field returns 422 unknown_field. See Unknown fields are rejected.

Returns

Returns 201 Created with the Campaign object.

Errors

Failed requests return application/problem+json problem details. The errors specific to this endpoint:

StatusCodeMeaning
400invalid_requestThe request is malformed, such as invalid JSON.
400org_id_requiredThe key reaches more than one organization: pass org_id.
401invalid_tokenThe API key is missing or malformed, or isn’t a BloomText key.
401key_revokedThe API key was revoked.
401key_expiredThe API key’s expiry has passed.
403insufficient_scopeThe key doesn’t have the scope this endpoint needs.
403org_not_reachableThe key can’t reach the organization in org_id.
409idempotency_key_reusedThe Idempotency-Key was already used with a different request.
409idempotency_request_in_progressA request with this Idempotency-Key is still running. Retry shortly.
422validation_failedA field failed validation. See field_errors.
422from_requiredThere are several phone numbers and no default. Pass from.
429rate_limitedToo many requests. Retry after Retry-After seconds.
Last updated on