Send a test event
Overview
Send a test event to a subscription so you can check your endpoint receives it and your signature check passes.
Use this right after creating a subscription, and after any change to your receiving code.
You'll need the subscription id. The subscription must be active.
A webhook.test event is delivered through the same path as real ones, signed with the subscription's secret. Check See recent deliveries for the result, within about a minute.
Prerequisites
- A Partner bearer token. See Authentication.
- The subscription's id, from List your webhooks.
Base URL
| Environment | URL |
|---|---|
| Production | https://production-api.shoutaboutus.com |
| Development | https://development-api.shoutaboutus.com |
Endpoint
POST /api/v1/partner/webhooks/{webhookSubscriptionId}/test
Authentication
Partner token
- Only partner users can call it; other tokens get
403. - Only your own partner's subscriptions: any other id, including another partner's, gets
404.
Rate limit
60 requests per minute, counted per user (the token’s user). See Rate limits.
Request parameters
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
webhookSubscriptionId | path | integer | Yes | The subscription's id, from List your webhooks. |
Request body
None.
Request payload
None. Send no body.
Response body
The payload is inside data.
| Field | Type | Description |
|---|---|---|
data | object | The queued test. |
data.subscription_id | integer | The subscription's id. |
data.status | string | queued. |
data.note | string | Where to check the result. |
Response payload
{
"data": {
"data": {
"subscription_id": 3,
"status": "queued",
"note": "Test event queued — check /partner/webhooks/3/deliveries within ~60s."
}
}
}Examples
Success payload
See Response payload.
Error payload
400 Subscription is inactive
{
"message": "Subscription is inactive — re-enable before testing.",
"status": "error",
"errors": {
"subscription_id": 3
}
}403 Not a Partner token
{
"message": "Only partner-admin users can manage webhook subscriptions.",
"status": "error",
"errors": []
}404 Subscription not found
{
"message": "Subscription not found.",
"status": "error",
"errors": []
}429 Too many requests
{
"message": "Too Many Attempts."
}| Status | Meaning |
|---|---|
200 | The test event was queued. |
400 | The subscription is inactive; turn it on with Update a webhook first. |
401 | The token is missing, expired or invalid. |
403 | The token isn't a Partner token. |
404 | No subscription with this id belongs to your partner. |
429 | More than 60 requests in a minute from this user. |
500 | Unexpected server error. |
Example request
curl --request POST \
--url "https://production-api.shoutaboutus.com/api/v1/partner/webhooks/3/test" \
--header 'Authorization: Bearer <bearer-token>' \
--header 'Accept: application/json'Updated 17 days ago
Did this page help you?
