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

API reference

The BloomText API is a REST API with JSON request and response bodies, standard HTTP status codes, and bearer authentication with an API key. Everything on these pages is generated from the OpenAPI spec below, which you can also import into Postman, Okta Workflows, or any client generator.

Download the OpenAPI specVersion 1.0.0
Run in PostmanDownloads the BloomText collection, generated from the spec. In Postman, choose Import and drop in the file, or paste this link, then set the api_key variable. If your key reaches several organizations, set org_id and switch on that parameter.
Base URL
https://api.bloomtext.com/v1

New to the API? Start with the Patient API quickstart, then read Authentication for API keys and scopes. To provision staff, see Manage members.

Endpoints by credential

Resources

Conventions

  • Authentication: send an API key as Authorization: Bearer …. See Authentication.
  • Access: an API key reaches the Patient API: patient records by ID, phone, or MRN, and bounded reads of patient messages. With member scopes it also reaches the account endpoints for organizations, members and teams.
  • Turned on per account: some endpoints, including OAuth, which reaches a person’s own conversations under /me, are turned on for an account that asks; their pages have a Request access button.
  • Organizations: a key that reaches more than one organization names one with org_id on every call. See Organizations a key reaches.
  • Search: message lists take a q of words and operators, like refill from:patient. See Search.
  • IDs: objects have a stable id, usually a UUID.
  • Timestamps: RFC 3339 strings in UTC, like 2026-09-21T12:00:00Z.
  • Lists: cursor-paginated with page[limit] and page[after]. See Pagination.
  • Writes: every POST takes an Idempotency-Key. See Idempotency.
  • Errors: RFC 9457 problem details. See Errors.

All endpoints

Organization

MethodPathEndpoint
GET/organizationRetrieve the organization

Patients

MethodPathEndpoint
GET/patientsFind patients
POST/patientsCreate a patient
GET/patients/{patientId}Retrieve a patient
PATCH/patients/{patientId}Update a patient
DELETE/patients/{patientId}Delete a patient

Patient imports

MethodPathEndpoint
POST/patient-importsImport patients
GET/patient-imports/{importId}Retrieve an import

Patient messages

MethodPathEndpoint
GET/patient-messagesList patient messages
POST/patient-messagesSend a message to a patient
POST/messages:batchSend messages to patients in a batch
GET/patient-messages/{messageId}Retrieve a patient message

Patient conversations

MethodPathEndpoint
GET/patient-conversationsList patient conversations
GET/patient-conversations/{conversationId}Retrieve a patient conversation

Phone numbers

MethodPathEndpoint
GET/phone-numbersList phone numbers

Campaigns

MethodPathEndpoint
GET/campaignsList campaigns
POST/campaignsCreate a campaign
GET/campaigns/{campaignId}Retrieve a campaign
PATCH/campaigns/{campaignId}Update a campaign
DELETE/campaigns/{campaignId}Delete a campaign
GET/campaigns/{campaignId}/recipientsList campaign recipients
POST/campaigns/{campaignId}/recipientsAdd campaign recipients
POST/campaigns/{campaignId}/recipients/removeRemove campaign recipients
POST/campaigns/{campaignId}/startStart a campaign
POST/campaigns/{campaignId}/pausePause a campaign
POST/campaigns/{campaignId}/stopStop a campaign

Profile

MethodPathEndpoint
GET/meRetrieve the profile

Messages

MethodPathEndpoint
GET/me/messagesList messages
GET/me/messages/{messageId}Retrieve a message
POST/me/conversations/{conversationId}/messagesSend a message

Reactions

MethodPathEndpoint
GET/me/messages/{messageId}/reactionsList reactions
POST/me/messages/{messageId}/reactionsAdd a reaction
DELETE/me/messages/{messageId}/reactionsRemove a reaction

Conversations

MethodPathEndpoint
GET/me/conversationsList conversations
GET/me/conversations/{conversationId}Retrieve a conversation

Participants

MethodPathEndpoint
GET/me/conversations/{conversationId}/participantsList participants

Users

MethodPathEndpoint
GET/usersList users
GET/users/{userId}Retrieve a user

Organizations

MethodPathEndpoint
GET/orgsList organizations

Members

MethodPathEndpoint
GET/membersList members
POST/membersAdd a member
GET/members/{memberId}Retrieve a member
PATCH/members/{memberId}Update a member
DELETE/members/{memberId}Remove a member

Teams

MethodPathEndpoint
GET/teamsList teams
POST/teams/{teamId}/membersAdd a member to a team
DELETE/teams/{teamId}/members/{memberId}Remove a member from a team

Member events

MethodPathEndpoint
GET/member-eventsList member events

Audit events

MethodPathEndpoint
GET/audit-eventsList audit events
Last updated on