Skip to main content
POST
/
v1
/
events
Create Event
curl --request POST \
  --url https://events-api.monk.com/v1/events \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "customerId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
  "eventName": "call_count",
  "properties": {
    "endpoint": "/api/users",
    "method": "GET"
  }
}
'
{
  "status": "accepted",
  "idempotencyKey": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
  "requestId": "req_a1b2c3d4e5f67890"
}
Events are accepted immediately and processed asynchronously. Provide exactly one of customerId (Monk UUID) or externalCustomerId (your own identifier). Include an idempotencyKey to prevent duplicate billing on retries. If omitted, a UUID is auto-generated. Resending the same key is always safe — Monk accepts the request and the latest version of the event becomes the source of truth for billing. Scope: usage:write

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Body

application/json
eventName
string
required
customerId
string

Monk customer UUID (provide this or externalCustomerId)

externalCustomerId
string

Your external identifier (provide this or customerId)

idempotencyKey
string

Unique key to prevent duplicates. Auto-generated if omitted.

timestamp
string<date-time>

ISO 8601 (UTC). Defaults to now. Must not be more than 1 hour in the future.

properties
object

Response

Event accepted

status
enum<string>
Available options:
accepted
idempotencyKey
string
requestId
string