Webhooks
Manually trigger an outbound webhook
Queues an HTTP delivery to **`url`** for **`projectId`** (must belong to your org). Creates a **`WebhookLog`** row, runs delivery, and returns the new log’s **`_id`**. **Response field `webhookId`:** This is the **MongoDB `_id` of the delivery log** (same as the log’s **`_id`** in list endpoints). It is **not** part of the request body and is **not** the project `webhookSecret` from **`PUT .../config`**. **Auth:** Org JWT, project JWT, or project API key with **project `update`** permission.
/api/webhooks/triggerSDK setup
Create a client and set credentials (JWT and/or API key) before calling the API. Match the authentication type shown above.
import { Configuration, WebhooksApi } 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 webhooks = new WebhooksApi(configuration);import { Configuration, WebhooksApi } 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 webhooks = new WebhooksApi(configuration);Example request
Call this endpoint using the client from SDK setup. Use View HTTP for a raw cURL example.
const { data: result } = await webhooks.triggerWebhook(
{
projectId: "proj_J3NAzhV2xF1d",
url: "https://flustered-merit.info",
event: "card quantify",
payload: "driver calculate",
method: "circuit compress"
}
);const { data: result } = await webhooks.triggerWebhook(
{
projectId: "proj_J3NAzhV2xF1d",
url: "https://flustered-merit.info",
event: "card quantify",
payload: "driver calculate",
method: "circuit 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 →Request Body
{
"projectId": "proj_qh5hFHNT70YZ",
"url": "https://scented-pleasure.biz/",
"event": "bus input",
"payload": {},
"method": "PUT"
}{
"projectId": "proj_qh5hFHNT70YZ",
"url": "https://scented-pleasure.biz/",
"event": "bus input",
"payload": {},
"method": "PUT"
}Responses
{
"message": "Webhook triggered successfully",
"webhookId": "685af3992f9c4c96514247e9"
}{
"message": "Webhook triggered successfully",
"webhookId": "685af3992f9c4c96514247e9"
}{
"error": "program back up"
}{
"error": "program back up"
}Errors
| Code | Meaning |
|---|---|
400 | Missing projectId, invalid project id, or invalid URL (SSRF guard) |
404 | Project not found or not in your org |
500 | — |