Skip to content

API changes

Every change to a webhook format, limit or error code is listed here, with its date, in the same piece of work that changes the API.

Incoming webhooks launch.

  • Public routes at /hooks/{id}/{token}: POST (format detected, or forced by /discord, /slack and /betterstack), GET, and PATCH and DELETE on /messages/{message_id}. See Create in the app and the URL.
  • Four formats: GGspeak, Discord, Slack and Better Stack. See Formats.
  • A card that updates itself with the key: the same key updates the same card for 24 hours, and an alert that comes back after being resolved opens a new message. See Card and key.
  • Calling a role only on a new message in the alert state; a payload never pings anyone. See Calling a role.
  • ?wait=true returns the created message with its id (200); without it, 204. See Messages.
  • Limits: 10 webhooks per community, 5 sends every 2 seconds and 30 per minute per webhook, 60 per minute per channel, bodies up to 16 KB. See Limits.
  • Errors in the {code, message, docs} shape, with a section for each code in Errors: hook_not_found, message_not_found, hook_paused, payload_too_large, payload_unrecognized, payload_invalid, rate_limited and internal.
  • CORS open to https://developers.ggspeak.app, for the Try it page.
  • Integrations screen in the app, in the community settings: create, pause, get a new link, send a test and see the last 20 deliveries.