---
title: "GET /api/feed/v1/events/{eventId}/sections/live"
method: GET
path: "/api/feed/v1/events/{eventId}/sections/live"
tags: ["Feed"]
---

# GET /api/feed/v1/events/{eventId}/sections/live

`GET /api/feed/v1/events/{eventId}/sections/live`

## Request

- Base URL: `https://api.findticker.com`
- URL: `https://api.findticker.com/api/feed/v1/events/{eventId}/sections/live`
- Auth: HTTP bearer

## Path parameters

- `eventId` string, required

## Response `200`

Seats open for sale RIGHT NOW in each section of one event, with the section's total capacity, the share of it no longer open, and the lowest, median and highest price of the open seats. Keyed by the section's ticket code. This is the live state of the house: GET /v1/events/{eventId}/sections is the per-section history. `capacity` and `percent_taken` are null, never 0, for an event whose seat map states no capacity. `percent_taken` is capacity minus the open seats: a seat a buyer took, one held back and one withdrawn all count the same, so it is never a count of sales. `meta.covered` false means the event has no live seat reading at all. `sold_or_pulled` says how many listings and tickets left the resale market in the last 24 hours and 7 days and what they were last asking, weighted by tickets: a listing leaves the market because a buyer took it or because its seller withdrew it, and nothing here tells those apart, so it is not a count of sales and the average is an asking price, not a clearing price. It is null, never 0, for an event whose resale listings we do not hold at listing level, which is most events. The top level `sold_or_pulled` splits the event total by source, never summed into one figure, and its `sections` list is complete where the `sections` array above is only the sections with a seat still open. Every key holder is entitled to this reading. Costs ONE UNIT whatever the section count.

- FeedEventSectionsLive
  - `event_id` string, nullable, required
  - `seat_map_version` string, nullable, required: The version of the seat layout these counts were read under. Null when the event has no live seat reading.
  - `as_of` string, nullable, required: When these counts were last seen, UTC.
  - `sold_or_pulled` FeedSoldOrPulledTotals, required
    - `window_days` integer, required: Days the 7 day figures look back over. The history does not reach further back than the store holds.
    - `by_source` object[], required: One entry per resale source we hold listing identity on for this event, never summed into a single figure.
      - `listings_24h` integer, required: Listings that left the resale market in the last 24 hours.
      - `tickets_24h` integer, required: Tickets on those listings.
      - `avg_exit_ask_24h` number, nullable, required: Average of the last asking price on the listings that left in the last 24 hours, weighted by the tickets on each. Null when none left.
      - `median_exit_ask_24h` number, nullable, required: The middle of the same asking prices, weighted the same way. Read this one when it disagrees with the average: a block parked at a placeholder price moves the average and not the middle.
      - `listings_7d` integer, required: Listings that left the resale market in the last 7 days.
      - `tickets_7d` integer, required: Tickets on those listings.
      - `avg_exit_ask_7d` number, nullable, required: Average of the last asking price on the listings that left in the last 7 days, weighted by the tickets on each. Null when none left.
      - `median_exit_ask_7d` number, nullable, required: The middle of the same asking prices, weighted the same way. Read this one when it disagrees with the average: a block parked at a placeholder price moves the average and not the middle.
      - `source` 'tmr' | 'vs', required: Which resale source these came from. The same source codes GET /v1/events/{eventId}/series/{source} uses.
    - `sections` object[], required: Every section of the event, ordered by tickets over 7 days. This list is complete: a section with no seats open has no row in `sections` above and still has one here.
      - `listings_24h` integer, required: Listings that left the resale market in the last 24 hours.
      - `tickets_24h` integer, required: Tickets on those listings.
      - `avg_exit_ask_24h` number, nullable, required: Average of the last asking price on the listings that left in the last 24 hours, weighted by the tickets on each. Null when none left.
      - `median_exit_ask_24h` number, nullable, required: The middle of the same asking prices, weighted the same way. Read this one when it disagrees with the average: a block parked at a placeholder price moves the average and not the middle.
      - `listings_7d` integer, required: Listings that left the resale market in the last 7 days.
      - `tickets_7d` integer, required: Tickets on those listings.
      - `avg_exit_ask_7d` number, nullable, required: Average of the last asking price on the listings that left in the last 7 days, weighted by the tickets on each. Null when none left.
      - `median_exit_ask_7d` number, nullable, required: The middle of the same asking prices, weighted the same way. Read this one when it disagrees with the average: a block parked at a placeholder price moves the average and not the middle.
      - `section` string, required
  - `sections` FeedLiveSection[], required
    - `section` string, required: The section's ticket code, as printed on a ticket. This is the key.
    - `open_count` integer, required: Seats open for sale now in this section.
    - `capacity` integer, nullable, required: Seats the section holds in total, open or not. Null, never 0, when this event's seat map states no capacity.
    - `percent_taken` number, nullable, required: Capacity minus the seats open now, as a percentage of capacity. A seat a buyer took, one held back and one withdrawn all count the same here, so read it as the share of the section no longer open and never as a count of sales. Null, never 0, when this event's seat map states no capacity.
    - `is_general_admission` boolean, nullable, required: True when the section is general admission, where the capacity is the room's declared allocation rather than a count of seats.
    - `base_section` string, nullable, required: For a section of accessible seats, the section they belong to, so a map can draw the two as one. Null when the section stands alone.
    - `min_price` number, nullable, required
    - `median_price` number, nullable, required
    - `max_price` number, nullable, required
    - `sold_or_pulled` FeedSoldOrPulled, required
      - `listings_24h` integer, required: Listings that left the resale market in the last 24 hours.
      - `tickets_24h` integer, required: Tickets on those listings.
      - `avg_exit_ask_24h` number, nullable, required: Average of the last asking price on the listings that left in the last 24 hours, weighted by the tickets on each. Null when none left.
      - `median_exit_ask_24h` number, nullable, required: The middle of the same asking prices, weighted the same way. Read this one when it disagrees with the average: a block parked at a placeholder price moves the average and not the middle.
      - `listings_7d` integer, required: Listings that left the resale market in the last 7 days.
      - `tickets_7d` integer, required: Tickets on those listings.
      - `avg_exit_ask_7d` number, nullable, required: Average of the last asking price on the listings that left in the last 7 days, weighted by the tickets on each. Null when none left.
      - `median_exit_ask_7d` number, nullable, required: The middle of the same asking prices, weighted the same way. Read this one when it disagrees with the average: a block parked at a placeholder price moves the average and not the middle.
  - `meta` object, required
    - `sections` integer, required
    - `covered` boolean, required: False when this event has no live seat reading at all. The event exists and the call still costs one unit; it is not a 404 and not a claim that the house is empty.
    - `units_charged` integer, required

## Other responses

- `400`: Validation error, an unknown `columns` name (the message lists the valid set), or a batch over the size bound.
- `401`: Missing or invalid API key.
- `403`: The key's account is not entitled to the feed, or the account or the address it calls from is blocked (`reason` `blocked`).
- `404`: No such event.
- `429`: The per-minute burst ceiling or the unit budget for the current UTC date is used up.
- `500`: Internal Server Error.

---

[API](https://skmtc.dev/findticker/apis/ticker-api.md) · [All operations](https://skmtc.dev/findticker/apis/ticker-api/llms.txt) · [OpenAPI document](https://skmtc.dev/findticker/apis/ticker-api/revisions/b6229ca924f4?raw)
