Webhooks

Claim events to work on

Leases up to limit unread events atomically; two agents never get the same one. consumer is free text, not checked, cooperative rather than access control. Finish with done or release, or it expires after lease_seconds. Retention is still 24h; an event can vanish while held.

post/v1/{account_id}/events/claim

Request

  • Base URL: https://api.curviate.com
  • URL: https://api.curviate.com/v1/{account_id}/events/claim
  • Auth: HTTP bearer

Path parameters

account_idstring required

The connected LinkedIn account whose received events to read.

Request body

consumerstring required
limitinteger

Max events to lease (1-100, default 10).

lease_secondsinteger

Seconds to hold the lease (10-3600, default 300).

Response

The events now leased to you, oldest occurred_at first. Claiming when nothing is available returns an empty list and a 200, so an idle poll is not an error. Each event is handed to one caller only: a second claim running at the same instant gets different events, or none. The lease is cooperative and is not access control: it stops your own agents duplicating work, it does not stop anything from acting on an event it did not claim.

object'event_claim' required

Response type discriminator.

consumerstring required

The consumer name you sent, echoed as recorded on the claimed events. Like every echoed input on this API it passes the output filter on the way back, so a value containing a filtered term returns altered.

lease_untilstring date-time nullable required

When this batch's lease expires. After this instant the events become claimable by anyone again, whether or not you finished. null when nothing was claimed.

Example response

{
  "safety_warning": {
    "row": "profile_views",
    "reset_at": "2026-09-05T00:00:00.000Z",
    "hint": {
      "parameter": "profile_views.ceiling",
      "message": "This account is at its ceiling for profile_views. This action went through because profile_views.posture is warn, and it counted: 101 of 100 this window. Raise profile_views.ceiling, or wait for the window to reset at 2026-09-05T00:00:00.000Z."
    },
    "reason": "ceiling",
    "blocked": false
  }
}

Changes

No recorded changes to this operation across all 1 revision of this API.