Messaging
Update BYO SMS provider credentials
Body `config` is provider-specific JSON stored encrypted per organization: - **twilio** — `accountSid`, `authToken` (required). Optional `from` sender override used if the send request does not specify `from` and `defaultFrom` is empty. - **termii** — `apiKey` (required). Optional `from` sender name (e.g. brand label). - **africastalking** — `username`, `apiKey` (both required). Optional `from` shortcode or sender ID. On enable, the API validates credentials with a lightweight ping (no SMS sent). See request body **Examples** for sample payloads.
/api/messaging/projects/{projectId}/messaging/sms-providerSDK setup
Create a client and set credentials (JWT and/or API key) before calling the API. Match the authentication type shown above.
import { Configuration, MessagingApi } from 'mudbase-sdk';
const configuration = new Configuration({
basePath: 'https://cloud.mudbase.dev',
apiKey: 'sk_live_mudbase_doc_Xk9mP2qR7vN4wL8jH3tY6uE',
accessToken: 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiJ1c3JfbW9yZ2FuX2RlIiwiZW1haWwiOiJtb3JnYW4uY2hlbkBub3J0aHdpbmQuZGV2IiwiZXhwIjoxODI1MTI5NjAwfQ.doc_preview_sig',
});
// This endpoint accepts either credential — apiKey or accessToken alone is enough.
const messaging = new MessagingApi(configuration);import { Configuration, MessagingApi } from 'mudbase-sdk';
const configuration = new Configuration({
basePath: 'https://cloud.mudbase.dev',
apiKey: 'sk_live_mudbase_doc_Xk9mP2qR7vN4wL8jH3tY6uE',
accessToken: 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiJ1c3JfbW9yZ2FuX2RlIiwiZW1haWwiOiJtb3JnYW4uY2hlbkBub3J0aHdpbmQuZGV2IiwiZXhwIjoxODI1MTI5NjAwfQ.doc_preview_sig',
});
// This endpoint accepts either credential — apiKey or accessToken alone is enough.
const messaging = new MessagingApi(configuration);Example request
Call this endpoint using the client from SDK setup. Use View HTTP for a raw cURL example.
const { data: result } = await messaging.patchProjectSmsByo(
"proj_3shxUh42Feyr",
{
enabled: false,
provider: "circuit override",
defaultFrom: "monitor program",
config: "matrix compress"
}
);const { data: result } = await messaging.patchProjectSmsByo(
"proj_3shxUh42Feyr",
{
enabled: false,
provider: "circuit override",
defaultFrom: "monitor program",
config: "matrix compress"
}
);Playground
liveTest this endpoint with your own credentials. Your requests will be sent to the live API.
No Request Yet
Send a request to see the full inspector
Authentication
Authorization: Bearer YOUR_TOKEN for user context, or X-API-Key: YOUR_KEY for server-to-server. View authentication guide →Include your JWT in the Authorization: Bearer YOUR_TOKEN header (user-facing apps, RBAC). View authentication guide →Include your API key in the X-API-Key: YOUR_KEY header (server-to-server, SDKs). View authentication guide →Path Parameters
| Name | Type | Required | Description |
|---|---|---|---|
projectId | string | Yes | — |
Request Body
{
"enabled": false,
"provider": "twilio",
"defaultFrom": "sensor bypass",
"config": {}
}{
"enabled": false,
"provider": "twilio",
"defaultFrom": "sensor bypass",
"config": {}
}Responses
{
"success": true,
"data": {
"enabled": false,
"provider": "twilio",
"defaultFrom": "bandwidth compress",
"hasCredentials": true
}
}{
"success": true,
"data": {
"enabled": false,
"provider": "twilio",
"defaultFrom": "bandwidth compress",
"hasCredentials": true
}
}Errors
| Code | Meaning |
|---|---|
400 | — |