Docs / Vendor onboarding
Connect Discord webhooks to Relin
Relin receives Discord webhooks, verifies signatures, stores payloads, and delivers them to your endpoints with retries, alerts, and replay.
Before you start
- Create a Relin workspace and sign in.
- Have admin access to the Discord account where you'll configure the webhook.
- Decide which events you want to capture, or start with "all events" if you're exploring.
Setup steps
- In Relin, open your workspace and click New source. Pick the Discord tile.
- Copy the ingest URL Relin shows. This URL is shown once, so store it.
- Open your Discord application.
- Send interactions to the Relin source URL.
- Paste the application public key here.
- Save and send a test event from Discord. Confirm Relin received it in your workspace.
Public key: Paste the hex public key from the Discord application.
What Relin does next
- Verifies the signature on every incoming event and records the status (verified, failed, unchecked).
- Stores the payload so you can replay or inspect it later, bounded by your workspace retention window.
- Delivers the event to every destination you've connected to this source, with retries and per-destination rate limits.
- Surfaces lifecycle gaps (for vendors with known lifecycles) as anomalies you can triage from the dashboard.
Test it
The fastest check is the events view in your workspace. After you send a test event from Discord, it appears within a second or two. Click into the event to see the raw payload, signature status, and the delivery attempts to your destinations.
You can also use the REST API or the MCP tools to inspect the stream programmatically.
Discord-specific notes
- Discord uses Ed25519 signatures rather than an HMAC. Relin handles this; you paste the public key from the Discord developer portal where the signing-secret field appears.
Troubleshooting
- Signature status is failed: the public key doesn't match. Re-copy it from Discord and update the Relin source.
- Signature status is unchecked: no signing secret is configured on the source yet. Paste the secret on the source settings page.
- No events arriving: check that the ingest URL in Discord matches the URL Relin shows, including the token segment at the end.
- Events arrive but destinations fail: open the delivery attempts tab on the event detail page. Each attempt shows the response body, status, and timing.
Next
- Add a destination so Relin can forward events to your app.
- Configure retry policy for resilient delivery.
- Set up alerts on failed deliveries or missing events.