Source type
Twitch Source Configuration
Twitch sources receive EventSub webhook notifications, verify Twitch signatures, and answer callback verification challenges.
Twitch configuration
Create a Twitch source, keep POST and PUT and PATCH and DELETE enabled, and provide the configured EventSub Secret values for provider signature. FastHook uses these settings to validate each Twitch delivery before it enters the routing workflow.
Source TypeTWITCH
Allowed methodsPOST, PUT, PATCH, DELETE
AuthenticationProvider signature
Credential fieldsEventSub Secret
{
"type": "TWITCH",
"config": {
"auth_type": "PROVIDER_SIGNATURE",
"auth": {
"provider": "TWITCH",
"webhook_signing_secret": "provider-secret"
},
"allowed_http_methods": ["POST","PUT","PATCH","DELETE"]
}
}Callback verification before EventSub notifications
- Twitch sends a webhook_callback_verification message as a signed POST request.
- FastHook verifies the EventSub signature and returns the challenge value as plaintext.
- After validation succeeds, Twitch sends signed EventSub notification POST requests.
Twitch request contract
FastHook signs message id + timestamp + raw body with HMAC-SHA256, prefixes the digest with sha256=, and compares it with twitch-eventsub-message-signature.
Special response: For webhook_callback_verification messages, FastHook returns the challenge value as plaintext.
Twitch headers
Preserve twitch-eventsub-message-id, twitch-eventsub-message-timestamp, twitch-eventsub-message-signature, twitch-eventsub-message-type when sending Twitch test deliveries. FastHook evaluates this request context before accepting the payload, so missing or modified values remain visible as rejected requests instead of routed events.
twitch-eventsub-message-idMessage id used in the signed payload.
twitch-eventsub-message-timestampRFC3339 timestamp used in the signed payload.
twitch-eventsub-message-signaturesha256= HMAC-SHA256 signature.
twitch-eventsub-message-typeNotification type, including webhook_callback_verification.
Twitch setup
- Create EventSub subscriptions with webhook transport and the generated FastHook Source URL.
- Use the same EventSub secret in Twitch and FastHook.
- Keep the source enabled before creating subscriptions so Twitch callback verification can complete.