WebHooks & Events - DailyBot Developers

Receive real-time event notifications from DailyBot via webhooks. Subscribe to check-in, form, kudos, and organization events.

WebHooks & Events

DailyBot webhooks let your application receive real-time HTTP notifications when events occur in your organization. Instead of polling the API, you register a URL that DailyBot calls whenever subscribed events happen.

Subscribing to Events

To set up an outgoing webhook, you need to configure three things:

  1. URL — The endpoint that will receive event payloads
  2. Event subscriptions — Which event types to listen for
  3. Object subscriptions — Specific check-ins or forms to filter (optional, not required for all events)

Configure webhooks via the web interface, the Webhooks API, or through Zapier.

Supported Events

Check-in Events

Event Description
followups.response.completedTriggered when a member completes a check-in response
followups.response.updatedTriggered when a check-in response is modified
followups.response.deletedTriggered when a check-in response is deleted

Form Events

Event Description
forms.response.createdTriggered when a form response is submitted
forms.response.updatedTriggered when a form response is edited
forms.response.deletedTriggered when a form response is removed

Kudos Events

Event Description
kudos.postedTriggered when kudos are given to an organization member

Organization Events

Event Description
organization.user_activatedTriggered when an admin activates a user
organization.user_deactivatedTriggered when a user is deactivated
organization.team_user_addedTriggered when a user is added to a team
organization.team_user_removedTriggered when a user is removed from a team

Privacy

All events respect privacy settings. Anonymous check-in responses exclude user information, and events are not sent if subscribers lack read permissions.

Event Payload Structure

All webhook events follow this standard structure:

Standard event payload
{
  "event": "followups.response.completed",
  "event_timestamp": "2026-02-14T09:15:00Z",
  "hook": {
    "id": "wh-1234-abcd",
    "name": "Check-in Responses"
  },
  "body": {
    // Event-specific payload data
  }
}

Authentication

DailyBot supports three methods to secure your webhook endpoint:

Secret Signature

DailyBot sends an X-BEARER header with a configurable bearer token. Set this when creating the webhook subscription and validate it in your endpoint.

Signature verification
// Verify the webhook signature
const signature = req.headers['x-bearer'];
if (signature !== process.env.DAILYBOT_WEBHOOK_SECRET) {
  return res.status(401).json({ error: 'Invalid signature' });
}

HTTPS Basic Authentication

Embed credentials directly in the webhook URL:

text
https://username:password@your-app.com/webhooks/dailybot

OAuth 2.0 Authentication

Provide an authorization access URL and optional private auth key. DailyBot will obtain tokens from your OAuth provider and include them in webhook requests.

Managing Webhooks

Create and manage webhooks through:

Testing Webhooks

  • Use the immediate_sample_event parameter when creating a webhook to receive a test event immediately
  • Use tools like webhook.site or ngrok for local development
  • Log all incoming payloads during development for debugging
  • Return a 200 OK response quickly — process events asynchronously