> ## Documentation Index
> Fetch the complete documentation index at: https://docs.rewind.rest/llms.txt
> Use this file to discover all available pages before exploring further.

# Get a player you have watched play

> Returns the player bio with both photo variants when available, plus a list of every attended event in which they appeared along with that game's stat lines.



## OpenAPI

````yaml get /v1/attending/players/{id}
openapi: 3.1.0
info:
  title: Rewind API
  version: 1.0.0
  description: >-
    Personal data aggregation API. Syncs and serves data from Last.fm, Apple
    Music, Strava, Plex, Letterboxd, Discogs, Trakt, Instapaper, Google
    Calendar, and Gmail.


    ## Domains


    | Domain | Source | Description |

    |--------|--------|-------------|

    | **Listening** | Last.fm, Apple Music | Scrobbles, top
    artists/albums/tracks, streaks, stats |

    | **Running** | Strava | Activities, splits, gear, personal records, year
    summaries |

    | **Watching** | Plex, Letterboxd | Movies, TV shows, watch history,
    ratings, reviews |

    | **Collecting** | Discogs, Trakt | Vinyl/CD collection, physical media,
    wantlist |

    | **Reading** | Instapaper | Articles, highlights, reading progress, word
    count |

    | **Attending** | Google Calendar, Gmail | Live events, tickets, sports
    games, concerts, venues |


    ## Authentication


    All endpoints require a Bearer token. There are two key types:


    - **Read keys** (`rw_live_...`) — access all GET endpoints

    - **Admin keys** (`rw_admin_...`) — access all endpoints including sync
    triggers and data management


    Pass your key in the Authorization header: `Authorization: Bearer
    rw_live_...`


    ## Pagination


    List endpoints return paginated responses:


    ```json

    {
      "data": [...],
      "pagination": { "page": 1, "limit": 20, "total": 150, "total_pages": 8 }
    }

    ```


    The activity feed uses cursor-based pagination instead.


    ## Quick Start


    ```bash

    # Check the API is up

    curl https://api.rewind.rest/v1/health


    # Fetch recent scrobbles (requires read key)

    curl -H "Authorization: Bearer rw_live_..." \
      https://api.rewind.rest/v1/listening/recent

    # Fetch running stats

    curl -H "Authorization: Bearer rw_live_..." \
      https://api.rewind.rest/v1/running/stats
    ```


    ## Errors


    All errors follow the same envelope:


    ```json

    { "error": "Not found", "status": 404 }

    ```


    Common status codes: 400 (bad request), 401 (unauthorized), 404 (not found),
    500 (server error).
  contact:
    url: https://github.com/pdugan20/rewind
servers:
  - url: https://api.rewind.rest
    description: Production
security:
  - bearerAuth: []
tags:
  - name: Listening
    description: Last.fm scrobbles, top charts, streaks, and stats.
  - name: Running
    description: Strava activities, splits, gear, records, and year summaries.
  - name: Watching
    description: >-
      Movies, TV shows, watch history, ratings, and reviews from Plex and
      Letterboxd.
  - name: Collecting
    description: Vinyl/CD collection from Discogs and physical media from Trakt.
  - name: Reading
    description: Articles, highlights, and reading stats from Instapaper.
  - name: Attending
    description: >-
      Live events you bought tickets for — sports games, concerts, theater.
      Sourced from Google Calendar and ticket-vendor email.
  - name: Feed
    description: Cross-domain activity feed with cursor-based pagination.
  - name: Search
    description: Full-text search across all domains.
  - name: Images
    description: Image proxy with on-the-fly transforms via Cloudflare Images.
  - name: System
    description: Health checks and sync status.
  - name: Admin
    description: >-
      API key management, sync triggers, and data administration. Requires admin
      key.
  - name: Webhooks
    description: Inbound webhook receivers for Strava and Plex. No auth required.
paths:
  /v1/attending/players/{id}:
    get:
      tags:
        - Attending
      summary: Get a player you have watched play
      description: >-
        Returns the player bio with both photo variants when available, plus a
        list of every attended event in which they appeared along with that
        game's stat lines.
      operationId: getAttendedPlayer
      parameters:
        - schema:
            type:
              - integer
              - 'null'
          required: true
          name: id
          in: path
      responses:
        '200':
          description: Player detail
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: number
                    example: 42
                  league:
                    type: string
                    example: mlb
                  mlb_stats_id:
                    type:
                      - number
                      - 'null'
                    example: 663728
                  espn_id:
                    type:
                      - string
                      - 'null'
                    example: '41292'
                  full_name:
                    type: string
                    example: Cal Raleigh
                  primary_position:
                    type:
                      - string
                      - 'null'
                    example: C
                  primary_number:
                    type:
                      - string
                      - 'null'
                    example: '29'
                  birth_date:
                    type:
                      - string
                      - 'null'
                    example: '1996-11-26'
                  birth_city:
                    type:
                      - string
                      - 'null'
                    example: Harrisonburg
                  birth_state_province:
                    type:
                      - string
                      - 'null'
                    example: VA
                  birth_country:
                    type:
                      - string
                      - 'null'
                    example: USA
                  height:
                    type:
                      - string
                      - 'null'
                    example: 6' 2"
                  weight:
                    type:
                      - integer
                      - 'null'
                    example: 235
                  bats:
                    type:
                      - string
                      - 'null'
                    example: B
                  throws:
                    type:
                      - string
                      - 'null'
                    example: R
                  primary_team:
                    $ref: '#/components/schemas/Team'
                  debut_date:
                    type:
                      - string
                      - 'null'
                    example: '2021-07-11'
                  college_name:
                    type:
                      - string
                      - 'null'
                    example: Florida State
                  awards:
                    type: array
                    items:
                      type: object
                      properties:
                        season:
                          type: string
                          example: '2025'
                        id:
                          type: string
                          example: ALSS
                        name:
                          type: string
                          example: AL Silver Slugger
                      required:
                        - season
                        - id
                        - name
                    description: >-
                      Filtered to honors that matter (Silver Slugger, Gold
                      Glove, MVP, All-MLB, Cy Young, etc.). Newest season first.
                      Empty array when no qualifying awards or bio not yet
                      enriched.
                  photo_silo:
                    type:
                      - object
                      - 'null'
                    properties:
                      cdn_url:
                        type: string
                        example: https://cdn.rewind.rest/.../players/silo/123
                      thumbhash:
                        type:
                          - string
                          - 'null'
                      dominant_color:
                        type:
                          - string
                          - 'null'
                        example: '#1a3a6c'
                      accent_color:
                        type:
                          - string
                          - 'null'
                        example: '#c4ced4'
                    required:
                      - cdn_url
                      - thumbhash
                      - dominant_color
                      - accent_color
                  photo_full:
                    type:
                      - object
                      - 'null'
                    properties:
                      cdn_url:
                        type: string
                        example: https://cdn.rewind.rest/.../players/silo/123
                      thumbhash:
                        type:
                          - string
                          - 'null'
                      dominant_color:
                        type:
                          - string
                          - 'null'
                        example: '#1a3a6c'
                      accent_color:
                        type:
                          - string
                          - 'null'
                        example: '#c4ced4'
                    required:
                      - cdn_url
                      - thumbhash
                      - dominant_color
                      - accent_color
                  supported:
                    type: boolean
                    example: true
                  season_stats: {}
                  career:
                    description: >-
                      Year-by-year batting (or pitching for pitchers) for this
                      player from MLB Stats. KV-cached 24h. Null for non-MLB
                      players, players missing `mlb_stats_id`, or upstream
                      errors.
                  splits:
                    description: >-
                      Current-season home/away/vs-LHP/vs-RHP splits. KV-cached
                      6h. Null when unavailable.
                  attended_summary:
                    description: >-
                      Career-scoped: your stat line aggregated across every
                      attended game where this player appeared.
                  season_attended_summary:
                    description: >-
                      Current-season slice of attended_summary: this player's
                      line across only the games you attended in
                      `season_attended_summary_season`. Null for non-MLB players
                      or when no season-stats season can be resolved.
                  season_attended_summary_season:
                    type:
                      - number
                      - 'null'
                    description: >-
                      Season the season_attended_summary covers (matches
                      season_stats.season when available, otherwise the current
                      calendar year UTC).
                  appearances:
                    type: array
                    items:
                      type: object
                      properties:
                        event_id:
                          type: number
                        event_date:
                          type: string
                        title:
                          type: string
                        team:
                          $ref: '#/components/schemas/Team'
                        is_home:
                          type: boolean
                        batting_line:
                          type:
                            - object
                            - 'null'
                          additionalProperties: {}
                        pitching_line:
                          type:
                            - object
                            - 'null'
                          additionalProperties: {}
                        decision:
                          type:
                            - string
                            - 'null'
                        notable:
                          type: boolean
                      required:
                        - event_id
                        - event_date
                        - title
                        - team
                        - is_home
                        - batting_line
                        - pitching_line
                        - decision
                        - notable
                  appearance_count:
                    type: number
                required:
                  - id
                  - league
                  - mlb_stats_id
                  - espn_id
                  - full_name
                  - primary_position
                  - primary_number
                  - birth_date
                  - birth_city
                  - birth_state_province
                  - birth_country
                  - height
                  - weight
                  - bats
                  - throws
                  - primary_team
                  - debut_date
                  - college_name
                  - awards
                  - photo_silo
                  - photo_full
                  - supported
                  - season_attended_summary_season
                  - appearances
                  - appearance_count
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '404':
          description: Not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
components:
  schemas:
    Team:
      type:
        - object
        - 'null'
      properties:
        id:
          type: integer
          example: 136
        league:
          type: string
          example: mlb
        abbreviation:
          type: string
          example: SEA
        location:
          type:
            - string
            - 'null'
          example: Seattle
        name:
          type: string
          example: Mariners
        full_name:
          type:
            - string
            - 'null'
          example: Seattle Mariners
        primary_color:
          type:
            - string
            - 'null'
          example: '#0C2C56'
        secondary_color:
          type:
            - string
            - 'null'
          example: '#005C5C'
        tertiary_color:
          type:
            - string
            - 'null'
          example: null
        ui_tint_color:
          type:
            - string
            - 'null'
          example: '#0C2C56'
        logo_url:
          type:
            - string
            - 'null'
          example: https://www.mlbstatic.com/team-logos/136.svg
        logo_dark_url:
          type:
            - string
            - 'null'
          example: https://www.mlbstatic.com/team-logos/team-cap-on-dark/136.svg
        logo_light_url:
          type:
            - string
            - 'null'
          example: https://www.mlbstatic.com/team-logos/team-cap-on-light/136.svg
        conference:
          type:
            - string
            - 'null'
          example: AL
        division:
          type:
            - string
            - 'null'
          example: AL West
      required:
        - id
        - league
        - abbreviation
        - location
        - name
        - full_name
        - primary_color
        - secondary_color
        - tertiary_color
        - ui_tint_color
        - logo_url
        - logo_dark_url
        - logo_light_url
        - conference
        - division
    ErrorResponse:
      type: object
      properties:
        error:
          type: string
          example: Not found
        status:
          type: integer
          example: 404
      required:
        - error
        - status
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: >-
        API key. Read keys (rw_live_...) access GET endpoints. Admin keys
        (rw_admin_...) access all endpoints.

````