Chainwalk/Documentation
CatalogEvents API

Events API

Events and tickets are managed in the events surface. Ticket prices are currently sent as integer micro-units.

Ticket purchases are fulfilled through the managed checkout flow, where checkout preflight issues a managed payment address lifecycle for the selected ticket and chain before server-side purchase execution. That managed payment address lifecycle stays attached to the same ticket intent until checkout is confirmed or expires.

List events

bash
GET /v1/admin/tenants/{tenant}/events
Authorization: Bearer $JWT

Create an event

bash
POST /v1/admin/tenants/{tenant}/events
Authorization: Bearer $JWT
Content-Type: application/json

{
  "title": "Web3 Summit 2026",
  "slug": "web3-summit-2026",
  "description": "Main conference event",
  "type": "online",
  "start_at": "2026-06-15T18:00:00Z",
  "timezone": "UTC",
  "status": "draft",
  "online_join_url": "https://example.com/join"
}

Create a ticket type

bash
POST /v1/admin/tenants/{tenant}/events/{event_id}/tickets
Authorization: Bearer $JWT
Content-Type: application/json

{
  "name": "General",
  "price_amount": 1000000,
  "status": "draft",
  "transferable": true,
  "chain_id": 84532
}

Publish the event and ticket

bash
POST /v1/admin/tenants/{tenant}/events/{event_id}/status
Authorization: Bearer $JWT
Content-Type: application/json

{ "status": "published" }
bash
POST /v1/admin/tenants/{tenant}/events/{event_id}/tickets/{ticket_id}/status
Authorization: Bearer $JWT
Content-Type: application/json

{ "status": "published" }

Public read-only tickets

bash
GET /v1/public/tenants/{tenant}/events/{event_id}/tickets