Skip to main content

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

ParameterTypeDefaultDescription
cursorstringnonePagination cursor from previous response
limitnumber20Items 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

ParameterTypeDescription
pubkeystringBase58-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:

FieldDescription
clearing_priceCurrent Q96-encoded clearing price
sum_currency_demand_above_clearingTotal demand above clearing (U256 string)
next_active_tick_priceNext tick price in the linked list
currency_raised_q96_x7Currency raised in high-precision Q96*7 format
currency_raisedTotal currency raised (U256 string)
latest_checkpoint_slotSlot of most recent checkpoint
latest_checkpoint_auction_blockAuction block of most recent checkpoint
total_bidsNumber of bids placed
total_ticksNumber of tick accounts
currency_sweptCurrency swept during settlement
tokens_sweptTokens swept during settlement
is_graduatedWhether the auction has graduated
slots_remainingSlots until auction ends (0 if ended)
num_stepsNumber of supply schedule steps
supply_stepsArray 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

ParameterTypeDefaultDescription
cursorstringnonePagination cursor
limitnumber20Items per page
activestringnoneSet to "true" to filter to active bids only (exited_slot = 0)
ownerstringnoneFilter 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

ParameterTypeDefaultDescription
limitnumber20Items per page
offsetnumber0Offset for pagination
statusstringnoneFilter 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
}
]
}
note

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

ParameterTypeDefaultDescription
limitnumber20Items per page
offsetnumber0Offset for pagination
typestringnoneFilter 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
}