Patient API endpoints
All 25 endpoints an organization API key can call, grouped by resource. An org admin’s OAuth token can call every one of them too, and they behave the same. Each links to its full reference page, with parameters, errors, and code samples.
https://api.bloomtext.com/v1Send the key as Authorization: Bearer $BLOOMTEXT_API_KEY. The scope column is what the key needs; see Scopes. An API key can’t reach anything under /me or /users, which return 403 with code: oauth_required. See OAuth endpoints for those.
Organization
The organization a credential belongs to.
| Method | Path | Endpoint | Scope |
|---|---|---|---|
| GET | /organization | Retrieve the organization | Any |
Patients
Patient records, always found by patient ID, phone number, or MRN.
| Method | Path | Endpoint | Scope |
|---|---|---|---|
| GET | /patients | Find patients | patients.read |
| POST | /patients | Create a patient | patients.write |
| GET | /patients/{patientId} | Retrieve a patient | patients.read |
| PATCH | /patients/{patientId} | Update a patient | patients.write |
| DELETE | /patients/{patientId} | Delete a patient | patients.write |
Patient imports
Bulk imports of patient records.
| Method | Path | Endpoint | Scope |
|---|---|---|---|
| POST | /patient-imports | Import patients | patients.write |
| GET | /patient-imports/{importId} | Retrieve an import | patients.write |
Patient messages
Messages with patients: send to a patient by ID or phone number, read patient messages by time range, and check delivery.
| Method | Path | Endpoint | Scope |
|---|---|---|---|
| GET | /patient-messages | List patient messages | messages.read |
| POST | /patient-messages | Send a message to a patient | messages.write |
| GET | /patient-messages/{messageId} | Retrieve a patient message | messages.read |
Patient conversations
Conversations with patients, one per patient and clinic phone number.
| Method | Path | Endpoint | Scope |
|---|---|---|---|
| GET | /patient-conversations | List patient conversations | messages.read |
| GET | /patient-conversations/{conversationId} | Retrieve a patient conversation | messages.read |
Phone numbers
The clinic phone numbers messages to patients come from, and the team each belongs to.
| Method | Path | Endpoint | Scope |
|---|---|---|---|
| GET | /phone-numbers | List phone numbers | messages.read |
Campaigns
One message sent to many patients from a clinic phone number, with per-patient delivery.
| Method | Path | Endpoint | Scope |
|---|---|---|---|
| GET | /campaigns | List campaigns | messages.read |
| POST | /campaigns | Create a campaign | messages.write |
| GET | /campaigns/{campaignId} | Retrieve a campaign | messages.read |
| PATCH | /campaigns/{campaignId} | Update a campaign | messages.write |
| DELETE | /campaigns/{campaignId} | Delete a campaign | messages.write |
| GET | /campaigns/{campaignId}/recipients | List campaign recipients | messages.read |
| POST | /campaigns/{campaignId}/recipients | Add campaign recipients | messages.write |
| POST | /campaigns/{campaignId}/recipients/remove | Remove campaign recipients | messages.write |
| POST | /campaigns/{campaignId}/start | Start a campaign | messages.write |
| POST | /campaigns/{campaignId}/pause | Pause a campaign | messages.write |
| POST | /campaigns/{campaignId}/stop | Stop a campaign | messages.write |