SeatBuilderSeatBuilder Docs

Extend held seats

Refresh the hold TTL (payment window) for one or more seats the caller already holds. Batch + partial-success: seats no longer held by this token are returned in failed[] without failing the request.

POST/api/v1/events/{eventKey}/seats/extend

Path Parameters

eventKeystring
holdTokenstring

Client-generated token identifying the hold session (≥ 8 chars; recommended: random UUID).

Length8 <= length
labels?array<string>

Seat labels to extend. Omit to extend every seat currently held by this token.

Items1 <= items <= 200
ttlSeconds?integer

New hold lifetime in seconds (payment window). Defaults to 600 (10 min) when omitted; capped at 3600 (1 hour).

Range0 < value <= 3600

Response Body

curl -X POST "http://localhost:3000/api/v1/events/string/seats/extend" \  -H "Content-Type: application/json" \  -d '{    "holdToken": "stringst"  }'

{
  "holdExpiresAt": "2026-10-02T18:55:00.000Z",
  "extended": [
    {
      "objectLabel": "A-12"
    }
  ],
  "failed": [
    {
      "objectLabel": "A-13",
      "reason": "not_held_by_token"
    }
  ]
}
{
  "statusCode": 0,
  "message": "string",
  "errors": {
    "property1": [
      "string"
    ],
    "property2": [
      "string"
    ]
  }
}
{
  "statusCode": 0,
  "message": "string",
  "errors": {
    "property1": [
      "string"
    ],
    "property2": [
      "string"
    ]
  }
}
{
  "statusCode": 0,
  "message": "string",
  "errors": {
    "property1": [
      "string"
    ],
    "property2": [
      "string"
    ]
  }
}
{
  "statusCode": 0,
  "message": "string",
  "errors": {
    "property1": [
      "string"
    ],
    "property2": [
      "string"
    ]
  }
}