Skip to content
POSTAPI key

Register an endpoint

POSTapi.trackingmcp.com/v1/webhooks

Register an HTTPS URL to receive signed event deliveries. The signing secret is returned once here and never again: store it before you close the connection. An unrecognised event type is dropped silently rather than rejected, so read event_types back from the response. Answers 201 on success, 400 INVALID_URL when the URL is missing or not https.

Request body

urlstringrequired

Where we post deliveries. Must start with https://.

event_typesstring[]

Event types to receive. Omit or send [] to receive every event type we emit.

descriptionstring

Your own label. We never interpret it.

Response schema

10 fields

Derived from the example response, nested as the JSON is.

api_versionstring

The response contract this build answers, as a date. Pin it in your client and nothing in the shape below moves under you.

okboolean

Whether the request succeeded.

dataobject

The payload. Everything an endpoint returns sits under this key.

idstring

Stable identifier for the record. On the tracking endpoints this is the container UUID, except on a portfolio summary row, where it is the container number.

urlstring

Where we POST the events.

event_typesobject[]

The events this endpoint receives. Anything not listed is not delivered.

descriptionstring

The carrier own phrasing for the event, falling back to our word for the code.

activeboolean

False while the endpoint is paused. A paused endpoint keeps its secret and its history.

created_atstring

When the record was created (ISO 8601).

secretstring

Signing secret, returned ONLY on creation. Store it then: we keep a hash, so it cannot be shown again.

curl -X POST 'https://api.trackingmcp.com/v1/webhooks' \
  -H "Authorization: Bearer tmcp_YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"url":"https://hooks.example.com/trackingmcp","event_types":["api_change_announced"],"description":"Integration alerts, on-call channel"}'
Response
{
  "api_version": "2026-08-04",
  "ok": true,
  "data": {
    "id": "3f1c9a4e-7b52-4f0e-9a41-2c9d5e6b8a10",
    "url": "https://example.com/navo-docs-capture",
    "event_types": [],
    "description": "Docs capture, staging only",
    "active": true,
    "created_at": "2026-08-19T15:07:46.481165+00:00",
    "secret": "whsec_0000000000000000000000000000000000000000000000000"
  }
}