-
GET List Contact MessagesReturns the contact's SMS and WhatsApp messages, newest first (offset and limit; the order is fixed): every message in the conversations matched to th.../tenants/{tenant}/contacts/{contact}/messages
-
GET List Client MessagesReturns the client's SMS and WhatsApp messages, newest first (offset and limit; the order is fixed): every message in the conversations matched to the.../tenants/{tenant}/clients/{client}/messages
-
POST Send Client MessageSends an SMS or WhatsApp message from the practice's number to one of the client's numbers or one of its contacts' (matched by phone lookup key; any o.../tenants/{tenant}/clients/{client}/messages
-
POST Mark Client Messaging ReadMarks every conversation the client's messages show read for the whole practice (its own, and its contacts'), and clears their message notifications f.../tenants/{tenant}/clients/{client}/messaging/read
-
GET List Client Messaging RecipientsReturns the numbers a message from this client can go to, one per number however it was typed: the client's own numbers first, then its contacts', the.../tenants/{tenant}/clients/{client}/messaging/recipients
-
GET Get Practice MessagingReturns the practice's SMS and WhatsApp messaging: its status (Unavailable, Off, SettingUp, AwaitingNumber, Active), who switched it on and when, and .../tenants/{tenant}/practice/messaging
-
POST Enable MessagingSwitches messaging on for the practice: its messaging account is found or created through Account Hub and set up in the Messaging Service. Safe to rep.../tenants/{tenant}/practice/messaging
-
GET Get Messaging PricesWhat messaging costs the practice (pence, ex VAT): the number's monthly price, a block of credits and the credits in it, and the credits a send costs..../tenants/{tenant}/practice/messaging/prices
-
GET List Available Messaging NumbersUK mobile numbers the practice may choose from for its number application, optionally containing some digits (limit at most 30). Nothing is reserved b.../tenants/{tenant}/practice/messaging/available-numbers
-
GET Get Messaging Number ApplicationThe practice's application for its own UK mobile number: its status, the details as submitted, the reviewer's reasons when turned down, and the number.../tenants/{tenant}/practice/messaging/number-application
-
POST Apply For Messaging NumberApplies for the practice's own UK mobile number with the business, address and representative given: the Messaging Service makes and submits the regul.../tenants/{tenant}/practice/messaging/number-application
-
POST Withdraw Messaging Number ApplicationWithdraws the practice's application for its own number while it is sent, in review, or approved with no number bought yet. The provider's review may .../tenants/{tenant}/practice/messaging/number-application/withdraw
-
POST Reuse Messaging Number ApplicationGets the practice a number at once with an earlier application's approved details (the number application read's reusable): a new application, approve.../tenants/{tenant}/practice/messaging/number-application/reuse
-
POST Cancel Messaging NumberCancels the practice's own messaging number: it is released to the provider straight away, clients can no longer text it, and after 10 days it may be .../tenants/{tenant}/practice/messaging/number/cancel
-
GET Get Messaging CreditsThe practice's messaging credits: the balance (one SMS segment or one WhatsApp message costs one credit), the automatic top-up and low-credit alert, a.../tenants/{tenant}/practice/messaging/credits
-
GET List Messaging Credit PurchasesThe practice's credit purchases, newest first (offset and limit; limit=0 returns the count alone): bought by someone in the practice, or by the automa.../tenants/{tenant}/practice/messaging/credits/purchases
-
POST Purchase Messaging CreditsBuys blocks of messaging credits at the practice's block price, added to the balance at once and to the next invoice. Credits never expire and are not.../tenants/{tenant}/practice/messaging/credits/purchases
-
PUT Update Messaging Credit SettingsReplaces the practice's automatic top-up and low-credit alert (null switches either off) and returns the credits. Every number is positive and the mon.../tenants/{tenant}/practice/messaging/credits/settings
-
GET Get WhatsApp Embedded SignupSodium's values for opening Meta's WhatsApp Embedded Signup on the settings page: the Meta app ID, the configuration ID and Twilio's Partner Solution .../tenants/{tenant}/practice/messaging/whatsapp/embedded-signup
-
POST Connect WhatsAppConnects the practice's own number to WhatsApp once Meta's Embedded Signup has finished, with the WhatsApp Business Account it created and the display.../tenants/{tenant}/practice/messaging/whatsapp
-
DELETE Disconnect WhatsAppDisconnects the practice's WhatsApp: its sender is deleted and the number no longer sends or receives WhatsApp messages; conversations and messages st.../tenants/{tenant}/practice/messaging/whatsapp
-
GET List Messaging ConversationsReturns the practice's conversations in one view, newest activity first (offset and limit; the order is fixed; limit=0 returns the count alone). view=.../tenants/{tenant}/messaging/conversations
-
GET Get Messaging ConversationReturns one conversation with a page of its messages, newest first (offset and limit). A user who can see only some clients gets a 404 unless the conv.../tenants/{tenant}/messaging/conversations/{code}
-
POST Mark Messaging Conversation ReadMarks the conversation read for the whole practice (hasUnread false, lastReadDate now) and clears its message notifications from everyone's bell. Noth.../tenants/{tenant}/messaging/conversations/{code}/read
-
POST Send Messaging Conversation MessageReplies on the conversation, to its number, whether or not it is matched. Free text (body), on WhatsApp a template (contentSid + contentVariables), or.../tenants/{tenant}/messaging/conversations/{code}/messages
-
POST Retry Messaging MessageSends a failed message again: an outbound message that is Failed or Undelivered goes to its conversation's number on the same channel with its stored .../tenants/{tenant}/messaging/messages/{messageId}/retry
-
GET Get Messaging Message MediaStreams one of a message's attachments (index from 0, as the message lists its media) from the Messaging Service's copy, with its content type and len.../tenants/{tenant}/messaging/messages/{messageId}/media/{index}
-
GET List Messaging WhatsApp TemplatesReturns the WhatsApp templates the practice can send, from its own Twilio account through the Messaging Service, with WhatsApp's approval status. Only.../tenants/{tenant}/messaging/whatsapp-templates
-
POST Create Messaging WhatsApp TemplateMakes a WhatsApp template in the practice's own Twilio account and submits it to Meta for approval; returns it as submitted (the list shows Meta's rev.../tenants/{tenant}/messaging/whatsapp-templates
-
POST Replace Messaging WhatsApp TemplateReplaces a WhatsApp template: Twilio cannot change one once submitted, so a new one is made and submitted to Meta (a new review), then the old one del.../tenants/{tenant}/messaging/whatsapp-templates/{sid}/replace
-
DELETE Delete Messaging WhatsApp TemplateDeletes a WhatsApp template from the practice's own Twilio account; one already gone is done. Messages sent with it are kept. 400 for a sid that is no.../tenants/{tenant}/messaging/whatsapp-templates/{sid}
-
PUT Match Messaging ConversationMatches the conversation to a contact, a client, or a contact on one of its clients, which takes it out of the To sort view and onto the client's mess.../tenants/{tenant}/messaging/conversations/{code}/match
-
DELETE Unmatch Messaging ConversationClears the conversation's contact and client, which puts it back in the To sort view (unless it was dismissed). It is not matched automatically again..../tenants/{tenant}/messaging/conversations/{code}/match
-
POST Dismiss Messaging ConversationTakes the conversation out of the To sort and All views into Dismissed (spam, a wrong number), and marks it read. Its messages are kept, and it is not.../tenants/{tenant}/messaging/conversations/{code}/dismiss
-
DELETE Undismiss Messaging ConversationBrings a dismissed conversation back: into the To sort view when it has no contact and no client. 403 for a user who can see only some clients. Requi.../tenants/{tenant}/messaging/conversations/{code}/dismiss
-
GET List MessagingTemplatesLists all MessagingTemplates for the given tenant. Requires: Create on Messaging./tenants/{tenant}/messaging/templates
-
POST Create MessagingTemplateCreates a new MessagingTemplate for the specified tenant. Requires: Admin on Messaging./tenants/{tenant}/messaging/templates
-
GET Get MessagingTemplateGets a MessagingTemplate for the specified tenant. Requires: Create on Messaging./tenants/{tenant}/messaging/templates/{code}
-
PUT Update MessagingTemplateUpdates a MessagingTemplate for the specified tenant. Requires: Admin on Messaging./tenants/{tenant}/messaging/templates/{code}
-
DELETE Delete MessagingTemplateDeletes a MessagingTemplate for the specified tenant. Requires: Admin on Messaging./tenants/{tenant}/messaging/templates/{code}
-
POST Render Messaging TemplateReturns the template's text rendered for one recipient, as a send would render it now: for a conversation (its client and contact fill the tokens; an .../tenants/{tenant}/messaging/templates/{code}/render