Skip to main content
Telnyx signs every webhook delivery with an ED25519 signature carried in the telnyx-signature-ed25519 and telnyx-timestamp request headers. The SDK’s webhook service verifies the signature against your account’s public key and parses the payload into a typed event union. Copy your public key from the Mission Control Portal and expose it as TELNYX_PUBLIC_KEYtelnyx.NewClient() reads it automatically, the same way it reads TELNYX_API_KEY:

Verify and parse an event

Pass the raw request body and the request headers to client.Webhooks.Unwrap():
Unwrap() returns an error when the signature does not match, and returns the parsed event as a union of every webhook event the API sends — switch on event.Data.EventType or use the union’s As...() accessors to handle specific events. client.Webhooks.Verify(payload, headers) checks the signature without parsing.

Skipping verification

client.Webhooks.UnsafeUnwrap(payload) parses a payload without checking the signature. Only use it for payloads you have already verified by other means, or in tests.