Skip to Content

Webhook

⚡ 5 min read

Configure webhooks to receive real-time notifications for authentication events


What Webhooks Do

Webhooks deliver real-time HTTP POST notifications to your server when authentication events occur in your Transcodes project. Instead of polling for changes, your backend receives events as they happen.

Common use cases:

  • Send Slack notifications on new user registrations
  • Sync user data to your database on login events
  • Trigger workflows on MFA completions
  • Maintain audit trails in external systems

Supported Event Types

Transcodes fires webhooks for the following event categories:

CategoryEventsDescription
Loginlogin.success, login.failureUser authentication attempts
Registrationregistration.successNew user sign-ups
MFAmfa.success, mfa.failureStep-up authentication events
Auditaudit.actionCustom tracked user actions

You can subscribe to specific event types or receive all events. Filter by event type in your webhook handler


Configuring Webhooks

Open the Webhook Panel

  1. Log in to Transcodes Console 
  2. Open your project
  3. Locate the Authentication Kit Cluster
  4. Click the Webhook card

Set Your Endpoint URL

Enter the HTTPS URL where you want to receive webhook events. Your endpoint must:

  • Accept HTTP POST requests
  • Return a 2xx status code to acknowledge receipt
  • Respond within 10 seconds

Select Event Types

Choose which events should trigger webhook notifications. You can select individual events or subscribe to all events.

Save Configuration

Click Save to activate the webhook. Transcodes will send a test ping to verify your endpoint is reachable.

Webhook endpoints must use HTTPS. Plain HTTP endpoints are not supported for security reasons


Payload Format

Webhook payloads are sent as JSON in the HTTP POST body:

{ "id": "evt_a1b2c3d4e5f6", "type": "login.success", "timestamp": "2025-12-16T20:21:34Z", "projectId": "proj_abc123", "data": { "userId": "usr_xyz789", "email": "user@example.com", "method": "passkey", "ipAddress": "192.168.1.1", "userAgent": "Mozilla/5.0..." } }

Payload fields:

FieldTypeDescription
idstringUnique event identifier
typestringEvent type (e.g., login.success)
timestampstringISO 8601 timestamp
projectIdstringProject that generated the event
dataobjectEvent-specific data

Slack Integration

Transcodes supports sending webhook notifications directly to Slack channels.

Create a Slack Incoming Webhook

  1. Go to your Slack App settings 
  2. Create a new app or select an existing one
  3. Enable Incoming Webhooks
  4. Add a new webhook to your desired channel
  5. Copy the webhook URL

Configure in Transcodes

  1. Open the Webhook panel in Transcodes Console
  2. Paste the Slack webhook URL as your endpoint
  3. Select the events you want to receive in Slack
  4. Save the configuration

Slack messages will include a formatted summary of each event with user details and timestamps.


Testing Webhooks

From the Console:

  1. Open the Webhook panel
  2. Click Send Test Event
  3. Verify your endpoint receives the test payload

Using a testing tool:

You can use services like webhook.site  or ngrok  during development to inspect incoming webhook payloads before connecting your production endpoint.


Error Handling and Retries

If your endpoint fails to respond with a 2xx status code, Transcodes implements an automatic retry strategy:

AttemptDelay
1st retry1 minute
2nd retry5 minutes
3rd retry30 minutes

After 3 failed retries, the event is marked as failed. You can view failed deliveries in the webhook panel and manually retry them.

Design your webhook handler to be idempotent. The same event may be delivered more than once due to retries or network issues. Use the id field to deduplicate events


What to do next?

After setting up webhooks:

  1. Track user activity with Audit Logs
  2. Configure API token (x-transcodes-token) for server-to-server Transcodes API calls
  3. Review Events API for programmatic event access
Last updated on