---
title: "GET /team/{team_key}/events/{year}"
method: GET
path: "/team/{team_key}/events/{year}"
tags: ["team", "event"]
---

# GET /team/{team_key}/events/{year}

`GET /team/{team_key}/events/{year}`

## Request

- Base URL: `https://www.thebluealliance.com/api/v3`
- URL: `https://www.thebluealliance.com/api/v3/team/{team_key}/events/{year}`
- Auth: API key in header `X-TBA-Auth-Key`
- TypeScript: <https://skmtc.dev/thebluealliance/apis/the-blue-alliance-api-v3/docs/team/:team_key/events/:year/get.ts> (a function with typed inputs; its response is checked against the schema)

Gets a list of events this team has competed at in the given year.

## Path parameters

- `team_key` string, required
- `year` integer, required

## Headers

- `If-None-Match` string

## Response `200`

Successful response

- Event[]
  - `key` string, required: TBA event key with the format yyyy[EVENT_CODE], where yyyy is the year, and EVENT_CODE is the event code of the event.
  - `name` string, required: Official name of event on record either provided by FIRST or organizers of offseason event.
  - `event_code` string, required: Event short code, as provided by FIRST.
  - `event_type` 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 99 | 100 | -1, required: Event Type. See https://github.com/the-blue-alliance/the-blue-alliance/blob/main/src/backend/common/consts/event_type.py for definitions.
  - `district` District, required
    - `abbreviation` string, required: The short identifier for the district.
    - `display_name` string, required: The long name for the district.
    - `key` string, required: Key for this district, e.g. `2016ne`.
    - `year` integer, required: Year this district participated.
    - `official_advancement_counts` object, required: The number of teams advancing to DCMP and CMP from this district, as specified in the FIRST manual.
      - `dcmp` integer, required: Number of teams advancing to the District Championship.
      - `cmp` integer, required: Number of teams advancing to the Championship.
  - `city` string, nullable, required: City, town, village, etc. the event is located in.
  - `state_prov` string, nullable, required: State or Province the event is located in.
  - `country` string, nullable, required: Country the event is located in.
  - `start_date` string, date, required: Event start date in `yyyy-mm-dd` format.
  - `end_date` string, date, required: Event end date in `yyyy-mm-dd` format.
  - `year` integer, required: Year the event data is for.
  - `short_name` string, nullable, required: Same as `name` but doesn't include event specifiers, such as 'Regional' or 'District'. May be null.
  - `event_type_string` string, required: Event Type, eg Regional, District, or Offseason.
  - `week` integer, nullable, required: Week of the event relative to the first official season event, zero-indexed. Only valid for Regionals, Districts, and District Championships. Null otherwise. (Eg. A season with a week 0 'preseason' event does not count, and week 1 events will show 0 here. Seasons with a week 0.5 regional event will show week 0 for those event(s) and week 1 for week 1 events and so on.)
  - `address` string, nullable, required: Address of the event's venue, if available.
  - `postal_code` string, nullable, required: Postal code from the event address.
  - `gmaps_place_id` string, nullable, required: Google Maps Place ID for the event address. Will be NULL, for future development.
  - `gmaps_url` string, url, nullable, required: Link to address location on Google Maps. Will be NULL, for future development.
  - `lat` number, double, nullable, required: Latitude for the event address. Will be NULL, for future development.
  - `lng` number, double, nullable, required: Longitude for the event address. Will be NULL, for future development.
  - `location_name` string, nullable, required: Name of the location at the address for the event, eg. Blue Alliance High School.
  - `timezone` string, nullable, required: IANA Timezone identifier.
  - `website` string, nullable, required: The event's website, if any.
  - `first_event_id` string, nullable, required: The FIRST internal Event ID, used to link to the event on the FRC webpage.
  - `first_event_code` string, nullable, required: Public facing event code used by FIRST (on frc-events.firstinspires.org, for example)
  - `webcasts` Webcast[], required
    - `type` 'youtube' | 'twitch' | 'ustream' | 'iframe' | 'html5' | 'rtmp' | 'livestream' | 'direct_link' | 'mms' | 'justin' | 'stemtv' | 'dacast', required: Type of webcast, typically descriptive of the streaming provider.
    - `channel` string, required: Type specific channel information. May be the YouTube stream, or Twitch channel name. In the case of iframe types, contains HTML to embed the stream in an HTML iframe.
    - `date` string, nullable: The date for the webcast in `yyyy-mm-dd` format. May be null.
    - `file` string, nullable: File identification as may be required for some types. May be null.
    - `status` 'unknown' | 'online' | 'offline': Online status of a webcast. See https://github.com/the-blue-alliance/the-blue-alliance/blob/main/src/backend/common/consts/webcast_status.py for full definitions.
    - `stream_title` string, nullable: The title of the stream from the streaming provider. May be null.
    - `viewer_count` integer, nullable: The current viewer count from the streaming provider. May be null.
  - `division_keys` string[], required: An array of event keys for the divisions at this event.
  - `parent_event_key` string, nullable, required: The TBA Event key that represents the event's parent. Used to link back to the event from a division event. It is also the inverse relation of `divison_keys`.
  - `playoff_type` 1 | 0 | 2 | 9 | 3 | 4 | 5 | 10 | 11 | 6 | 7 | 8, required: Playoff bracket format. See https://github.com/the-blue-alliance/the-blue-alliance/blob/main/src/backend/common/consts/playoff_type.py for definitions.
  - `playoff_type_string` string, nullable, required: String representation of the `playoff_type`, or null.
  - `remap_teams` object, nullable, required: Map of temporary "off-season demo" team numbers to pre-rookie and B teams. Both keys and values are team keys in the format 'frc####'. Key is the old team key ('frc' + numeric only), value is the new team key ('frc' + numeric + may include a letter suffix).

## Other responses

- `304`: Not Modified - Use Local Cached Value
- `401`: Authorization information is missing or invalid.
- `404`: Not Found

## Changes

- **2026-06-08** `c26cc01880d2`: 4 breaking, 11 warning, 3 info
  - added `#/components/schemas/PlayoffType, subschema #2` to the `items/playoff_type` response property `oneOf` list for the response status `200`
  - added `#/components/schemas/WebcastStatus, subschema #2` to the `items/webcasts/items/status` response property `oneOf` list for the response status `200`
  - the `items/playoff_type` response's property type changed from `integer, null` to no type for status `200`
  - the `items/webcasts/items/status` response's property type changed from `string, null` to no type for status `200`
  - …14 more
- **2026-04-03** `e02edcb016b7`: 6 breaking
  - added `#/components/schemas/District, subschema #2` to the `items/district` response property `oneOf` list for the response status `200`
  - the `items/district` response's property type changed from `null, object` to no type for status `200`
  - removed the required property `items/district/abbreviation` from the response with the `200` status
  - removed the required property `items/district/display_name` from the response with the `200` status
  - …2 more
- **2026-02-08** `cc960731dc5b`: 3 info
  - added the optional property `items/webcasts/items/status` to the response with the `200` status
  - added the optional property `items/webcasts/items/stream_title` to the response with the `200` status
  - added the optional property `items/webcasts/items/viewer_count` to the response with the `200` status
- …earlier changes not shown

[Operation history](https://skmtc.dev/thebluealliance/apis/the-blue-alliance-api-v3/changes/team/:team_key/events/:year/get.md)

---

[API](https://skmtc.dev/thebluealliance/apis/the-blue-alliance-api-v3.md) - [All operations](https://skmtc.dev/thebluealliance/apis/the-blue-alliance-api-v3/llms.txt) - [OpenAPI document](https://skmtc.dev/thebluealliance/apis/the-blue-alliance-api-v3/revisions/9316d02dee32?raw)
