Webhooks

Receive real-time event notifications when responses are submitted or surveys change status.

Webhooks push events to your server when something happens in QuestionPunk: a response is started or completed, a survey is published or unpublished, or a response limit is reached. Use webhooks to trigger downstream workflows without polling.

developerwebhooksintegrationsautomation10-15 minutes to configureIntermediateDevelopersProduct teams

Steps

  1. Create a webhook
    Go to Settings > Developer and click Create Webhook. Enter a publicly accessible HTTPS URL that will receive POST requests.
  2. Select events
    Choose which events to subscribe to: response.completed, response.started, survey.published, survey.unpublished, survey.response_limit_reached, or use a wildcard (*) to receive all events.
  3. Verify signatures
    Each webhook delivery includes a SHA-256 HMAC signature in the header. Verify this signature using your webhook secret to confirm the request came from QuestionPunk.
  4. Monitor deliveries
    The Developer settings page shows delivery history including HTTP status codes and response times, so you can diagnose failures.

Webhooks let you react to QuestionPunk events in real time. Common use cases include sending Slack notifications when a response is completed, syncing data to a CRM, or triggering analysis pipelines.

Five event types are available: response.completed (a respondent finishes the survey), response.started (a respondent begins the survey), survey.published (a survey goes live), survey.unpublished (a survey is taken offline), and survey.response_limit_reached (the survey hits its response cap).

Webhook secrets are encrypted at rest using AES-256-GCM. Each delivery is signed with SHA-256 HMAC so your server can verify authenticity.

If a delivery fails, check the delivery log in Developer settings for the HTTP status code and response body to diagnose the issue.

QuestionPunk