Bitly · AsyncAPI Specification

Bitly Engagement Webhooks

Version

View Spec View on GitHub LinksURL ShortenerQR CodesAnalyticsMarketingLink ManagementWebhookAttributionAgentsMCPAsyncAPIEvents

AsyncAPI Specification

Raw ↑
generated: '2026-08-13'
method: searched
source: >-
  https://dev.bitly.com/docs/tutorials/create-a-webhook/ and the Webhooks operations in
  openapi/_original/bitly-v4-openapi.json
type: Webhooks
asyncapi_published: false
asyncapi_note: >-
  Bitly publishes NO AsyncAPI document. Probes of dev.bitly.com/asyncapi.yaml and the docs
  sitemap found none. It does ship a real, managed webhook surface with six REST operations and
  documented retry semantics, so the event surface is captured here as a webhook catalog rather
  than fabricated as an AsyncAPI.
docs: https://dev.bitly.com/docs/tutorials/create-a-webhook/
management:
  style: rest
  operations:
  - operationId: createWebhook
    path: POST /v4/webhooks
  - operationId: getWebhook
    path: GET /v4/webhooks/{webhook_guid}
  - operationId: getWebhooks
    path: GET /v4/organizations/{organization_guid}/webhooks
  - operationId: updateWebhook
    path: PATCH /v4/webhooks/{webhook_guid}
  - operationId: deleteWebhook
    path: DELETE /v4/webhooks/{webhook_guid}
  - operationId: verifyWebhook
    path: POST /v4/webhooks/{webhook_guid}/verify
  ui: https://app.bitly.com
availability: >-
  Webhooks are listed as an Enterprise plan inclusion on https://bitly.com/pages/pricing, so the
  six operations above are not reachable from the self-serve tiers.
transport:
  protocol: https
  method: POST
  content_type: application/json
  timeout_seconds: 10
events:
- name: engagement
  former_name: click
  description: >-
    A single engagement with a Bitly-managed destination — a link click, a QR Code scan, or a
    Link-in-bio button click. This is the ONLY event type Bitly publishes; the surface is one
    event, not a catalog.
  payload_fields:
  - event_id
  - event_type
  - timestamp
  - timezone
  - long_url
  - bitlink
  - country
  - referrer
  - device_type
  - account_guid
  - group_guid
  - webhook_guid
  - tags
  - references
  payload_notes: >-
    `event_type` is the literal string "engagement". `tags` is only populated when the webhook was
    created with fetch_tags: true. `references` carries API links back to the related resources.
delivery:
  retries: 5
  backoff: exponential
  failure_definition: client timeout or a 5xx response
  escalation: >-
    The first failure is requeued. A second failure moves the webhook into alert status and
    notifies the account administrator. After 24 hours in alert status the webhook either clears
    (on a 2xx) or is deactivated.
  ordering: not published
consumer_authentication:
  note: >-
    Bitly authenticates ITSELF to the consumer's endpoint — the consumer chooses the scheme when
    registering the webhook.
  methods:
  - api key (query parameter)
  - http basic
  - oauth 2.0 client credentials
signature_verification:
  supported: false
  note: >-
    Bitly documents no payload signature (no HMAC header, no signing secret). Consumers cannot
    cryptographically verify that a delivery originated from Bitly; the documented controls are
    the outbound auth scheme above and transport TLS.

Work with this as data

Every AsyncAPI spec here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for asyncapi

4 MCP tools reach this
  • find_asyncapisBrowse and filter every AsyncAPI spec in the catalog.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This AsyncAPI spec
curl "https://apis.io/api/v1/asyncapis/bitly-engagement-webhooks"
All asyncapi
curl "https://apis.io/api/v1/asyncapis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.