Webhooks
Response submitted
Fires when a real (non-test) participant completes a project. Requires Premium tier or above to subscribe. session_number distinguishes repeated completions when max_completes_per_user > 1. user_id + platform_id identify the respondent; call GET /responses?user_id={user_id}&session_number={session_number} after receiving this event to retrieve the full answer set for the exact submission.
postWebhookresponse.submitted
Payload
Example payload
{
"event": "response.submitted",
"community_id": "1152727606572093543",
"project_id": "789",
"response_id": "48120",
"session_number": 1,
"user_id": "44821",
"platform_id": "308994132968210433",
"provider": "discord",
"completed_at": "2026-04-30T12:00:00+00:00"
}Response
Webhook processed successfully
Changes
Webhooks have no change history: a webhook is keyed by its event name rather than a path and method, so no recorded change can name it.