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

# Get valorantv4match 



## OpenAPI

````yaml https://api.henrikdev.xyz/openapi.json get /valorant/v4/match/{affinity}/{match_id}
openapi: 3.1.0
info:
  title: HenrikDev API
  description: ''
  license:
    name: ''
  version: 4.6.0
servers:
  - url: https://api.henrikdev.xyz
security: []
tags:
  - name: valorant
    description: Valorant public API endpoints
paths:
  /valorant/v4/match/{affinity}/{match_id}:
    get:
      tags:
        - valorant
      operationId: match_v4
      parameters:
        - name: affinity
          in: path
          description: Region/affinity (e.g., na, eu, ap, kr)
          required: true
          schema:
            type: string
        - name: match_id
          in: path
          description: Match UUID
          required: true
          schema:
            type: string
      responses:
        '200':
          description: Match details retrieved successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MatchesV4Response'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SendError'
        '404':
          description: Match not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SendError'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SendError'
components:
  schemas:
    MatchesV4Response:
      type: object
      required:
        - status
        - data
      properties:
        data:
          $ref: '#/components/schemas/MatchesV4Data'
        status:
          type: integer
          format: int32
          minimum: 0
    SendError:
      type: object
      required:
        - errors
      properties:
        errors:
          type: array
          items:
            $ref: '#/components/schemas/APIError'
    MatchesV4Data:
      type: object
      required:
        - metadata
        - players
        - observers
        - coaches
        - teams
        - rounds
        - kills
      properties:
        coaches:
          type: array
          items:
            $ref: '#/components/schemas/MatchesV4DataCoach'
        kills:
          type: array
          items:
            $ref: '#/components/schemas/MatchesV4DataKill'
        metadata:
          $ref: '#/components/schemas/MatchesV4DataMetadata'
        observers:
          type: array
          items:
            $ref: '#/components/schemas/MatchesV4DataObserver'
        players:
          type: array
          items:
            $ref: '#/components/schemas/MatchesV4DataPlayer'
        rounds:
          type: array
          items:
            $ref: '#/components/schemas/MatchesV4DataRound'
        teams:
          type: array
          items:
            $ref: '#/components/schemas/MatchesV4DataTeam'
    APIError:
      type: object
      required:
        - code
        - message
        - status
      properties:
        code:
          type: integer
          format: int32
          minimum: 0
        details: {}
        message:
          type: string
        status:
          type: integer
          format: int32
          minimum: 0
    MatchesV4DataCoach:
      type: object
      required:
        - puuid
        - team_id
      properties:
        puuid:
          type: string
        team_id:
          type: string
    MatchesV4DataKill:
      type: object
      required:
        - time_in_round_in_ms
        - time_in_match_in_ms
        - round
        - killer
        - victim
        - assistants
        - location
        - weapon
        - secondary_fire_mode
        - player_locations
      properties:
        assistants:
          type: array
          items:
            $ref: '#/components/schemas/MatchesV4DataRoundPlayer'
        killer:
          $ref: '#/components/schemas/MatchesV4DataRoundPlayer'
        location:
          $ref: '#/components/schemas/MatchesV4DataRoundLocation'
        player_locations:
          type: array
          items:
            $ref: '#/components/schemas/MatchesV4DataRoundPlayerLocations'
        round:
          type: integer
          format: int32
          minimum: 0
        secondary_fire_mode:
          type: boolean
        time_in_match_in_ms:
          type: integer
          format: int64
          minimum: 0
        time_in_round_in_ms:
          type: integer
          format: int64
          minimum: 0
        victim:
          $ref: '#/components/schemas/MatchesV4DataRoundPlayer'
        weapon:
          $ref: '#/components/schemas/MatchesV4DataRoundPlayerStatsEconomyWeapon'
    MatchesV4DataMetadata:
      type: object
      required:
        - match_id
        - map
        - game_version
        - game_length_in_ms
        - started_at
        - is_completed
        - queue
        - season
        - platform
        - party_rr_penaltys
      properties:
        cluster:
          type:
            - string
            - 'null'
        game_length_in_ms:
          type: integer
          format: int64
          minimum: 0
        game_version:
          type: string
        is_completed:
          type: boolean
        map:
          $ref: '#/components/schemas/MapIdNameCombo'
        match_id:
          type: string
        party_rr_penaltys:
          type: array
          items:
            $ref: '#/components/schemas/MatchesV4DataMetadataPartyRRPenalty'
        platform:
          type: string
        premier:
          default: null
        queue:
          $ref: '#/components/schemas/MatchesV4DataMetadataQueue'
        region:
          type:
            - string
            - 'null'
        season:
          $ref: '#/components/schemas/SeasonIdShortCombo'
        started_at:
          type: string
    MatchesV4DataObserver:
      type: object
      required:
        - puuid
        - name
        - tag
        - account_level
        - session_playtime_in_ms
        - card_id
        - title_id
        - party_id
      properties:
        account_level:
          type: integer
          format: int32
          minimum: 0
        card_id:
          type: string
        name:
          type: string
        party_id:
          type: string
        puuid:
          type: string
        session_playtime_in_ms:
          type: integer
          format: int32
          minimum: 0
        tag:
          type: string
        title_id:
          type: string
    MatchesV4DataPlayer:
      type: object
      required:
        - puuid
        - name
        - tag
        - team_id
        - platform
        - party_id
        - agent
        - stats
        - ability_casts
        - tier
        - customization
        - account_level
        - session_playtime_in_ms
        - behavior
        - economy
      properties:
        ability_casts:
          $ref: '#/components/schemas/MatchesV4DataPlayerAbilityCasts'
        account_level:
          type: integer
          format: int32
          minimum: 0
        agent:
          $ref: '#/components/schemas/AgentIdNameCombo'
        behavior:
          $ref: '#/components/schemas/MatchesV4DataPlayerBehavior'
        customization:
          $ref: '#/components/schemas/MatchesV4DataPlayerCustomization'
        economy:
          $ref: '#/components/schemas/MatchesV4DataPlayerEconomy'
        name:
          type: string
        party_id:
          type: string
        platform:
          type: string
        puuid:
          type: string
        session_playtime_in_ms:
          type: integer
          format: int32
          minimum: 0
        stats:
          $ref: '#/components/schemas/MatchesV4DataPlayerStats'
        tag:
          type: string
        team_id:
          type: string
        tier:
          $ref: '#/components/schemas/TierIdNameCombo'
    MatchesV4DataRound:
      type: object
      required:
        - id
        - result
        - ceremony
        - winning_team
        - stats
      properties:
        ceremony:
          type: string
        defuse:
          oneOf:
            - type: 'null'
            - $ref: '#/components/schemas/MatchesV4DataRoundDefuse'
        id:
          type: integer
          format: int32
          minimum: 0
        plant:
          oneOf:
            - type: 'null'
            - $ref: '#/components/schemas/MatchesV4DataRoundPlant'
        result:
          type: string
        stats:
          type: array
          items:
            $ref: '#/components/schemas/MatchesV4DataRoundPlayerStats'
        winning_team:
          type: string
    MatchesV4DataTeam:
      type: object
      required:
        - team_id
        - rounds
        - won
      properties:
        premier_roster:
          oneOf:
            - type: 'null'
            - $ref: '#/components/schemas/MatchesV4DataTeamPremierRoster'
        rounds:
          $ref: '#/components/schemas/MatchesV4DataTeamRounds'
        team_id:
          type: string
        won:
          type: boolean
    MatchesV4DataRoundPlayer:
      type: object
      required:
        - puuid
        - name
        - tag
        - team
      properties:
        name:
          type: string
        puuid:
          type: string
        tag:
          type: string
        team:
          type: string
    MatchesV4DataRoundLocation:
      type: object
      required:
        - x
        - 'y'
      properties:
        x:
          type: integer
          format: int32
        'y':
          type: integer
          format: int32
    MatchesV4DataRoundPlayerLocations:
      type: object
      required:
        - player
        - view_radians
        - location
      properties:
        location:
          $ref: '#/components/schemas/MatchesV4DataRoundLocation'
        player:
          $ref: '#/components/schemas/MatchesV4DataRoundPlayer'
        view_radians:
          type: number
          format: float
    MatchesV4DataRoundPlayerStatsEconomyWeapon:
      type: object
      properties:
        id:
          type:
            - string
            - 'null'
        name:
          type:
            - string
            - 'null'
        type:
          type:
            - string
            - 'null'
    MapIdNameCombo:
      type: object
      required:
        - id
        - name
      properties:
        id:
          type: string
        name:
          type: string
    MatchesV4DataMetadataPartyRRPenalty:
      type: object
      required:
        - party_id
        - penalty
      properties:
        party_id:
          type: string
        penalty:
          type: number
          format: float
    MatchesV4DataMetadataQueue:
      type: object
      required:
        - id
      properties:
        id:
          type: string
        mode_type:
          type:
            - string
            - 'null'
        name:
          type:
            - string
            - 'null'
    SeasonIdShortCombo:
      type: object
      required:
        - id
        - short
      properties:
        id:
          type: string
        short:
          type: string
    MatchesV4DataPlayerAbilityCasts:
      type: object
      properties:
        ability1:
          type:
            - integer
            - 'null'
          format: int32
          minimum: 0
        ability2:
          type:
            - integer
            - 'null'
          format: int32
          minimum: 0
        grenade:
          type:
            - integer
            - 'null'
          format: int32
          minimum: 0
        ultimate:
          type:
            - integer
            - 'null'
          format: int32
          minimum: 0
    AgentIdNameCombo:
      type: object
      required:
        - id
        - name
      properties:
        id:
          type: string
        name:
          type: string
    MatchesV4DataPlayerBehavior:
      type: object
      required:
        - afk_rounds
        - friendly_fire
        - rounds_in_spawn
      properties:
        afk_rounds:
          type: number
          format: float
        friendly_fire:
          $ref: '#/components/schemas/MatchesV4DataPlayerBehaviorFriendlyFire'
        rounds_in_spawn:
          type: number
          format: float
    MatchesV4DataPlayerCustomization:
      type: object
      required:
        - card
        - title
      properties:
        card:
          type: string
        preferred_level_border:
          type:
            - string
            - 'null'
        title:
          type: string
    MatchesV4DataPlayerEconomy:
      type: object
      required:
        - spent
        - loadout_value
      properties:
        loadout_value:
          $ref: '#/components/schemas/MatchesV4DataPlayerEconomyLoadoutValue'
        spent:
          $ref: '#/components/schemas/MatchesV4DataPlayerEconomySpent'
    MatchesV4DataPlayerStats:
      type: object
      required:
        - score
        - kills
        - deaths
        - assists
        - headshots
        - bodyshots
        - legshots
        - damage
      properties:
        assists:
          type: integer
          format: int32
          minimum: 0
        bodyshots:
          type: integer
          format: int32
          minimum: 0
        damage:
          $ref: '#/components/schemas/MatchesV4DataPlayerStatsDamage'
        deaths:
          type: integer
          format: int32
          minimum: 0
        headshots:
          type: integer
          format: int32
          minimum: 0
        kills:
          type: integer
          format: int32
          minimum: 0
        legshots:
          type: integer
          format: int32
          minimum: 0
        score:
          type: integer
          format: int32
    TierIdNameCombo:
      type: object
      required:
        - id
        - name
      properties:
        id:
          type: integer
          format: int32
        name:
          type: string
    MatchesV4DataRoundDefuse:
      type: object
      required:
        - round_time_in_ms
        - location
        - player
        - player_locations
      properties:
        location:
          $ref: '#/components/schemas/MatchesV4DataRoundLocation'
        player:
          $ref: '#/components/schemas/MatchesV4DataRoundPlayer'
        player_locations:
          type: array
          items:
            $ref: '#/components/schemas/MatchesV4DataRoundPlayerLocations'
        round_time_in_ms:
          type: integer
          format: int32
    MatchesV4DataRoundPlant:
      type: object
      required:
        - round_time_in_ms
        - site
        - location
        - player
        - player_locations
      properties:
        location:
          $ref: '#/components/schemas/MatchesV4DataRoundLocation'
        player:
          $ref: '#/components/schemas/MatchesV4DataRoundPlayer'
        player_locations:
          type: array
          items:
            $ref: '#/components/schemas/MatchesV4DataRoundPlayerLocations'
        round_time_in_ms:
          type: integer
          format: int32
        site:
          type: string
    MatchesV4DataRoundPlayerStats:
      type: object
      required:
        - player
        - ability_casts
        - damage_events
        - stats
        - economy
        - was_afk
        - received_penalty
        - stayed_in_spawn
      properties:
        ability_casts:
          $ref: '#/components/schemas/MatchesV4DataRoundPlayerStatsAbilityCasts'
        damage_events:
          type: array
          items:
            $ref: '#/components/schemas/MatchesV4DataRoundPlayerStatsDamageEvents'
        economy:
          $ref: '#/components/schemas/MatchesV4DataRoundPlayerStatsEconomy'
        player:
          $ref: '#/components/schemas/MatchesV4DataRoundPlayer'
        received_penalty:
          type: boolean
        stats:
          $ref: '#/components/schemas/MatchesV4DataRoundPlayerStatsStats'
        stayed_in_spawn:
          type: boolean
        was_afk:
          type: boolean
    MatchesV4DataTeamPremierRoster:
      type: object
      required:
        - id
        - name
        - tag
        - members
        - customization
      properties:
        customization:
          $ref: '#/components/schemas/MatchesV4DataTeamPremierRosterCustomization'
        id:
          type: string
        members:
          type: array
          items:
            type: string
        name:
          type: string
        tag:
          type: string
    MatchesV4DataTeamRounds:
      type: object
      required:
        - won
        - lost
      properties:
        lost:
          type: integer
          format: int32
          minimum: 0
        won:
          type: integer
          format: int32
          minimum: 0
    MatchesV4DataPlayerBehaviorFriendlyFire:
      type: object
      required:
        - incoming
        - outgoing
      properties:
        incoming:
          type: number
          format: float
        outgoing:
          type: number
          format: float
    MatchesV4DataPlayerEconomyLoadoutValue:
      type: object
      required:
        - overall
        - average
      properties:
        average:
          type: number
          format: float
        overall:
          type: integer
          format: int32
    MatchesV4DataPlayerEconomySpent:
      type: object
      required:
        - overall
        - average
      properties:
        average:
          type: number
          format: float
        overall:
          type: integer
          format: int32
    MatchesV4DataPlayerStatsDamage:
      type: object
      required:
        - dealt
        - received
      properties:
        dealt:
          type: integer
          format: int32
        received:
          type: integer
          format: int32
    MatchesV4DataRoundPlayerStatsAbilityCasts:
      type: object
      properties:
        ability_1:
          type:
            - integer
            - 'null'
          format: int32
          minimum: 0
        ability_2:
          type:
            - integer
            - 'null'
          format: int32
          minimum: 0
        grenade:
          type:
            - integer
            - 'null'
          format: int32
          minimum: 0
        ultimate:
          type:
            - integer
            - 'null'
          format: int32
          minimum: 0
    MatchesV4DataRoundPlayerStatsDamageEvents:
      type: object
      required:
        - player
        - bodyshots
        - headshots
        - legshots
        - damage
      properties:
        bodyshots:
          type: integer
          format: int32
          minimum: 0
        damage:
          type: integer
          format: int32
          minimum: 0
        headshots:
          type: integer
          format: int32
          minimum: 0
        legshots:
          type: integer
          format: int32
          minimum: 0
        player:
          $ref: '#/components/schemas/MatchesV4DataRoundPlayer'
    MatchesV4DataRoundPlayerStatsEconomy:
      type: object
      required:
        - loadout_value
        - remaining
      properties:
        armor:
          oneOf:
            - type: 'null'
            - $ref: '#/components/schemas/MatchesV4DataRoundPlayerStatsEconomyArmor'
        loadout_value:
          type: integer
          format: int32
        remaining:
          type: integer
          format: int32
        weapon:
          oneOf:
            - type: 'null'
            - $ref: '#/components/schemas/MatchesV4DataRoundPlayerStatsEconomyWeapon'
    MatchesV4DataRoundPlayerStatsStats:
      type: object
      required:
        - score
        - kills
        - headshots
        - bodyshots
        - legshots
      properties:
        bodyshots:
          type: integer
          format: int32
          minimum: 0
        headshots:
          type: integer
          format: int32
          minimum: 0
        kills:
          type: integer
          format: int32
          minimum: 0
        legshots:
          type: integer
          format: int32
          minimum: 0
        score:
          type: integer
          format: int32
    MatchesV4DataTeamPremierRosterCustomization:
      type: object
      required:
        - icon
        - image
        - primary_color
        - secondary_color
        - tertiary_color
      properties:
        icon:
          type: string
        image:
          type: string
        primary_color:
          type: string
        secondary_color:
          type: string
        tertiary_color:
          type: string
    MatchesV4DataRoundPlayerStatsEconomyArmor:
      type: object
      required:
        - id
      properties:
        id:
          type: string
        name:
          type:
            - string
            - 'null'

````