Integrations

GoTo Webinar Webhooks: Integration, Signatures, and Replay

GoTo Webinar webhooks can trigger CRM updates, attendee workflows, follow-up messages, analytics, and internal automations as organizers create webinars and registrants enroll, join, or submit surveys.

FastHook answers GoTo's callback URL validation request, verifies x-webhook-signature, stores the original event, and routes accepted deliveries to destinations with independent retries and replay.

GoTo validates the callback URL first, then sends timestamped and signed event payloads to the active user subscription.

Supported GoTo Webinar webhook events

  • registrant.added: a person registers for a webinar.
  • registrant.joined: a registered person joins a webinar session.
  • webinar.created: an organizer creates a webinar.
  • webinar.changed: an organizer updates or deletes a webinar.
  • survey.submitted: an attendee submits a post-session survey.

Callback validation and signature verification

  • GoTo validates the callback URL with a GET request that must return 200 OK.
  • x-webhook-signature contains the Base64 HMAC-SHA256 signature.
  • x-webhook-signature-timestamp contains the millisecond timestamp.
  • The signed input is timestamp:raw-body, using the GoTo webhook secret key.
  • FastHook rejects invalid signatures and timestamps outside the configured tolerance.

Create a GoTo Webinar source

Create GoTo Webinar source
curl -X POST "https://api.fasthook.io/v1/sources" \
  -H "Authorization: Bearer $FASTHOOK_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "GoTo Webinar production",
    "type": "GOTO_WEBINAR",
    "config": {
      "auth_type": "PROVIDER_SIGNATURE",
      "auth": {
        "provider": "GOTO_WEBINAR",
        "webhook_signing_secret": "your-goto-webhook-secret-key"
      },
      "allowed_http_methods": ["GET", "POST"]
    }
  }'

Connect GoTo Webinar

  1. Create a GoTo developer app for GoTo Webinar and obtain an OAuth access token.
  2. Create a webhook secret key and copy its value into the FastHook source.
  3. Create each required webhook with the FastHook Source URL as callbackUrl.
  4. Activate the webhook; new GoTo webhooks start in the INACTIVE state.
  5. Create an active user subscription for every organizer whose events should be delivered.

Production checklist

  • Use eventKey as an idempotency key when downstream actions cannot run twice.
  • Route registrant, webinar, attendance, and survey events to separate destinations or branches.
  • Keep the raw request available when another receiver also validates the GoTo signature.
  • Inspect a failed destination attempt before replaying a busy registration or event window.
  • Confirm both the GoTo webhook state and user subscription state are active.

Related guides