Perk · AsyncAPI Specification
Perk Webhooks
Version
View Spec
View on GitHub
CompanyCorporate TravelExpense ManagementSpend ManagementTravelInvoicesFintechSoftware-as-a-ServiceAsyncAPIEvents
AsyncAPI Specification
generated: '2026-07-20'
method: searched
source: https://developers.perk.com/docs/topics-and-events
docs: https://developers.perk.com/docs/subscribing-to-webhooks
name: Perk Webhooks
type: Webhooks
description: >-
Perk delivers event notifications as HTTPS POST requests with a JSON payload. Endpoints
are managed in Settings > Developer > API tools or via the webhooks REST API. Each event
is signed so subscribers can verify Perk as the sender.
delivery:
method: POST
content_type: application/json
ack: subscriber must return 2xx; non-2xx (incl. 3xx/redirects) treated as failure
retry: exponential backoff on failure; marked failed after multiple attempts
security:
signature_header: Tk-webhook-hmac-sha256
algorithm: HMAC-SHA256
secret: per-endpoint secret set at subscription time; used to sign all payloads
ip_allowlist: none published; signature verification is the recommended mechanism
headers:
- name: Tk-webhook-hmac-sha256
description: HMAC-SHA256 signature authenticating Perk as sender.
- name: Tk-webhook-name
description: The endpoint title specified at subscription time.
- name: Tk-webhook-event
description: The event that triggered the notification.
- name: Tk-webhook-test
description: Only set for test notifications.
management:
ui: Settings > Developer > API tools > Webhooks
api:
- https://developers.perk.com/reference/subscribe-to-event
- https://developers.perk.com/reference/update-subscription
constraint: target URL must be unique per account (duplicate returns HTTP 409)
events:
- name: invoice.issued
model: Invoice / InvoiceLine
trigger: When a billing period closes and an invoice is issued.
payload_ref: https://developers.perk.com/reference/the-invoiceline-object
- name: trip.created/updated
model: Trip
trigger: When a trip is booked, canceled, or its travelers are updated.
payload_ref: https://developers.perk.com/reference/retrieve-a-trip-by-id
test:
method: Use the sandbox to trigger real events, or press "Test" on an endpoint to fire {"test":"true"}.
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.
Call it yourself
curl for this page
This AsyncAPI spec
curl "https://apis.io/api/v1/asyncapis/perk-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.