Integrations

Webhooks

Send application data to external services via webhooks

6 min read

Integrate Guildbase with any external service using webhooks. Send application data to your own systems for custom processing, analytics, or integrations.

What Are Webhooks?

Webhooks are HTTP callbacks that send data to a URL when events occur. When configured, Guildbase will POST JSON data to your specified endpoint whenever the selected event happens.

Common Use Cases

Analytics

Send application data to your analytics platform

Custom Database

Sync application data to your own database

Zapier/Make

Connect to automation platforms

Custom Notifications

Send to Slack, Teams, or other services

Setting Up a Webhook

  1. Go to IntegrationsWebhooks
  2. Click Add Webhook
  3. Enter your webhook URL
  4. Select which events trigger the webhook
  5. Optionally configure authentication
  6. Save your webhook

Screenshot: Webhook configuration

Available Events

Event Triggered When
application.created New application submitted
application.updated Application data modified
application.stage_changed Application moves to new stage
application.accepted Application reaches accepted stage
application.rejected Application reaches rejected stage

Payload Format

Webhook payloads are sent as JSON:

{
  "event": "application.created",
  "timestamp": "2024-01-15T14:30:00Z",
  "guild_id": "abc123",
  "data": {
    "application_id": "app_xyz789",
    "applicant": {
      "id": "user_123",
      "name": "JohnDoe",
      "email": "[email protected]",
      "discord_id": "123456789"
    },
    "template": {
      "id": "tpl_456",
      "name": "Staff Application"
    },
    "stage": {
      "id": "stage_789",
      "name": "Submitted"
    },
    "responses": [...]
  }
}

Authentication

Secure your webhook endpoint with authentication:

Method Description
Secret Token Sent in X-Webhook-Secret header
Basic Auth Username/password in Authorization header
Bearer Token API key in Authorization header

Security

Always use HTTPS URLs for webhooks and implement authentication. This prevents unauthorized parties from sending fake webhook data to your endpoint.

Retry Behaviour

If your endpoint doesn't respond with a 2xx status code, Guildbase will retry the webhook:

  • First retry: After 1 minute
  • Second retry: After 5 minutes
  • Third retry: After 30 minutes
  • After 3 failed attempts, the webhook is marked as failed

Testing Webhooks

Use the Test button to send a sample payload to your endpoint. This helps verify your integration works before going live.

Pro Tip

Use webhook.site or RequestBin for testing webhooks during development. These services provide temporary URLs that capture and display incoming requests.

Was this article helpful?

Let us know if we can improve this article.