Auction Endpoints
Endpoints for querying CCA V2 auction data, including auction configuration, state, bids, ticks, checkpoints, and events.
List Auctions
GET /api/auctions
Returns a paginated list of auctions ordered by confirmation slot (newest first).
Query Parameters
| Parameter | Type | Default | Description |
|---|---|---|---|
cursor | string | none | Pagination cursor from previous response |
limit | number | 20 | Items per page |
Example
curl https://cca-indexer-production.up.railway.app/api/auctions?limit=5
Response
Returns auction config fields joined with auction state data:
{
"data": [
{
"pubkey": "AbC123...",
"authority": "XyZ789...",
"base_mint": "...",
"quote_mint": "...",
"total_supply": "1000000000",
"floor_price": "79228162514264337593544",
"start_slot": "312000000",
"end_slot": "312100000",
"clearing_price": "158456325028528675187087",
"total_bids": "12",
"total_ticks": "3",
"currency_raised": "5000000000",
"is_graduated": false,
"slots_remaining": "50000"
}
],
"next_cursor": "eyJzbG90IjozMTIwMDAwMDAsInB1YmtleSI6IkFiQzEyMyJ9",
"has_more": true
}
Get Auction Detail
GET /api/auctions/:pubkey
Returns full detail for a single auction, including config, state, and supply schedule.
Path Parameters
| Parameter | Type | Description |
|---|---|---|
pubkey | string | Base58-encoded auction config public key |
Example
curl https://cca-indexer-production.up.railway.app/api/auctions/AbC123...
Response
All fields from auction config and auction state, plus:
| Field | Description |
|---|---|
clearing_price | Current Q96-encoded clearing price |
sum_currency_demand_above_clearing | Total demand above clearing (U256 string) |
next_active_tick_price | Next tick price in the linked list |
currency_raised_q96_x7 | Currency raised in high-precision Q96*7 format |
currency_raised | Total currency raised (U256 string) |
latest_checkpoint_slot | Slot of most recent checkpoint |
latest_checkpoint_auction_block | Auction block of most recent checkpoint |
total_bids | Number of bids placed |
total_ticks | Number of tick accounts |
currency_swept | Currency swept during settlement |
tokens_swept | Tokens swept during settlement |
is_graduated | Whether the auction has graduated |
slots_remaining | Slots until auction ends (0 if ended) |
num_steps | Number of supply schedule steps |
supply_steps | Array of supply step objects |
Returns 404 if the auction is not found.
Get Auction Bids
GET /api/auctions/:pubkey/bids
Returns bids for a specific auction, ordered by max price descending.
Query Parameters
| Parameter | Type | Default | Description |
|---|---|---|---|
cursor | string | none | Pagination cursor |
limit | number | 20 | Items per page |
active | string | none | Set to "true" to filter to active bids only (exited_slot = 0) |
owner | string | none | Filter by bid owner address |
Example
# All bids for an auction
curl "https://cca-indexer-production.up.railway.app/api/auctions/AbC123.../bids?limit=10"
# Active bids only
curl "https://cca-indexer-production.up.railway.app/api/auctions/AbC123.../bids?active=true"
# Bids by a specific owner
curl "https://cca-indexer-production.up.railway.app/api/auctions/AbC123.../bids?owner=XyZ789..."
Response
Each bid includes a computed is_eligible field:
{
"data": [
{
"pubkey": "BidPubkey123...",
"auction_config_pubkey": "AbC123...",
"bid_id": "0",
"owner": "XyZ789...",
"max_price": "158456325028528675187087",
"raw_amount": "1000000",
"start_slot": "312050000",
"start_auction_block": "5",
"exited_slot": "0",
"tokens_filled": "500000",
"currency_spent": "250000",
"is_eligible": true
}
],
"next_cursor": "...",
"has_more": false
}
Get Auction Checkpoints
GET /api/auctions/:pubkey/checkpoints
Returns checkpoints for a specific auction, ordered by auction block descending.
Query Parameters
| Parameter | Type | Default | Description |
|---|---|---|---|
limit | number | 20 | Items per page |
offset | number | 0 | Offset for pagination |
status | string | none | Filter by status: "uninitialized", "resolving", or "finalized" |
Example
# All checkpoints
curl "https://cca-indexer-production.up.railway.app/api/auctions/AbC123.../checkpoints"
# Finalized checkpoints only
curl "https://cca-indexer-production.up.railway.app/api/auctions/AbC123.../checkpoints?status=finalized"
Response
{
"data": [
{
"pubkey": "ChkPubkey123...",
"auction_config_pubkey": "AbC123...",
"auction_block": "10",
"slot": "312060000",
"clearing_price": "158456325028528675187087",
"status": 2,
"status_label": "finalized"
}
],
"total": 5,
"offset": 0,
"limit": 20
}
Get Auction Ticks
GET /api/auctions/:pubkey/ticks
Returns all initialized ticks for an auction, ordered by price descending.
Example
curl "https://cca-indexer-production.up.railway.app/api/auctions/AbC123.../ticks"
Response
{
"data": [
{
"pubkey": "TickPubkey123...",
"auction_config_pubkey": "AbC123...",
"price": "237684487542396506390631850504",
"currency_demand_q96": "...",
"next_tick_price": "158456325028528675187087",
"is_initialized": true
}
]
}
This endpoint returns all ticks in a single response (no pagination). Auctions are limited to maxTicks tick accounts, so the result set is bounded.
Get Auction Events
GET /api/auctions/:pubkey/events
Returns indexer events for an auction, ordered by slot descending.
Query Parameters
| Parameter | Type | Default | Description |
|---|---|---|---|
limit | number | 20 | Items per page |
offset | number | 0 | Offset for pagination |
type | string | none | Filter by event type (e.g., "bid", "settlement") |
Example
# All events
curl "https://cca-indexer-production.up.railway.app/api/auctions/AbC123.../events?limit=50"
# Only bid events
curl "https://cca-indexer-production.up.railway.app/api/auctions/AbC123.../events?type=bid"
Response
{
"data": [
{
"pubkey": "EvtPubkey123...",
"auction_config_pubkey": "AbC123...",
"event_type": "bid",
"slot": "312055000",
"instruction_index": 0,
"data": { ... }
}
],
"total": 15,
"offset": 0,
"limit": 20
}