Send a test event
API reference

Send a test event

Sends a signed `ping` event to your endpoint and reports what it answered — use it to check your signature verification.

View as MarkdownUpdated Oct 17, 2026
POST/api/external/v1/webhooks/testalso served at /api/external/webhooks/testNew

Sends a signed ping event to your endpoint and reports what it answered — use it to check your signature verification.

Authentication

Send the creator's API key as a bearer token: Authorization: Bearer dpfn_…. See Authentication & API keys.

Responses

200The outcome.
NameTypeDescription
idstringEvent id.
deliveredbooleanTrue when your endpoint answered 2xx.
statusCodeinteger | nullYour endpoint’s status code.
errorstring | nullWhy it failed.
Example response
{
  "id": "evt_9f01…",
  "delivered": true,
  "statusCode": 200,
  "error": null
}

Errors

StatusBodyWhen
401{"error":"Unauthorized","code":"unauthorized"}Missing or invalid API key.
403{"error":"This endpoint needs a key bound to an approved app.","code":"app_key_required"}A Personal key was used.
403{"error":"Use the app owner's key for this endpoint.","code":"owner_key_required"}The key was minted by a creator for themselves. App-level calls need a key held by your app owner: their own, or one their agency minted for its personas or managed creators.
409{"error":"Set a webhook URL first (PUT /api/external/webhooks)."}No endpoint configured.
400{"error":"This endpoint acts as the key’s own account or app — call it without /creators/{creatorId}.","code":"creator_scope_not_allowed"}Called under /api/external/v1/creators/{creatorId}/ — this endpoint always acts as the key’s own account, agency or app.
403{"error":"This app does not have the webhooks API category enabled. Contact support to enable it.","code":"api_category_disabled","category":"webhooks"}Your app has the App webhooks [API category](/developers/concepts/api-categories) switched off.

Rate limiting

Every response carries the X-RateLimit-Tier header and, on limited tiers, the per-minute and per-day trios — read X-RateLimit-Remaining and X-RateLimit-Reset instead of hardcoding limits. Details in Rate limits.

Code samples

curl -X POST "https://www.dropfans.io/api/external/v1/webhooks/test" \
  -H "Authorization: Bearer $DROPFANS_API_KEY"

Questions? support@dropfans.io