Skip to content

Pass

A deliberate attempt to deliver the ball to a teammate. The unified pass event covers open-play passes, crosses, throw-ins, kickoffs, set-piece restarts played as passes, and headed passes. All decomposed via two orthogonal metadata axes (set_piece and pass_type) plus body_part.

Category: Ball action

Properties

Property Type Description Values
body_part str Which body part contacted the ball. unknown is the engine-side placeholder for unmeasured rows. head, both_hands, unknown
confidence_detection float32 Detection confidence [0,1].
confidence_event float32 Event [0,1]. Model confidence for this event class.
confidence_identity float32 Identity confidence [0,1]. Null for non-actor events and for rows where the jersey/player_id was not resolved (team-only actor rows have this null).
length_cm int32 Euclidean distance start → target, in cm (span events).
pass_type str Stylistic flavour for a pass event (e.g. cross). null for plain passes. cross
set_piece str Restart context for a pass event. open_play is the in-play default. open_play, throw_in, kick_off, corner_kick, free_kick, goal_kick
x_target int16 Target x-coordinate in cm (corner-origin, same convention as top-level x/y).
y_target int16 Target y-coordinate in cm (corner-origin, same convention as top-level x/y).

Property Values

body_part

Which body part contacted the ball.

Value Description
head Headed contact. Includes header, flick-on, headed pass, headed clearance.
both_hands Two-handed throw. Used for throw-in restarts (paired with set_piece=throw_in).
unknown Engine-side placeholder for rows where body part was not measured. Distinct from a positive identification of a non-standard body part.

pass_type

Stylistic flavour of a pass event. Null for plain passes. Only set when a positive style signal fires.

Value Description
cross Wide delivery into the box. Set independently of set_piece and body_part (e.g. an open-play headed cross is set_piece=open_play, pass_type=cross, body_part=head).

set_piece

Restart context for a pass event. Records how the pass entered play.

Value Description
open_play In-play default. Always set on pass rows (not omitted) so consumers can distinguish "in play" from "field not declared".
throw_in Two-handed touchline restart after the ball leaves the sideline. Pair with body_part=both_hands.
kick_off Centre-circle restart at the start of a half or after a goal. Single-frame anchor.
corner_kick Restart from the corner arc after the defending team puts the ball over its own goal line.
free_kick Restart awarded after a foul or other in-play stoppage, taken from the spot of the offence.
goal_kick Restart from the six-yard box after the attacking team puts the ball over the byline.

Querying

Using event_property filter

{
  "filters": [
    {
      "type": "event_property",
      "event_type": "pass",
      "properties": []
    }
  ]
}

Filter by property

By body_part

{
  "filters": [
    {
      "type": "event_property",
      "event_type": "pass",
      "properties": [
        { "field": "body_part", "eq": "head" }
      ]
    }
  ]
}

By pass_type

{
  "filters": [
    {
      "type": "event_property",
      "event_type": "pass",
      "properties": [
        { "field": "pass_type", "eq": "cross" }
      ]
    }
  ]
}

By set_piece

{
  "filters": [
    {
      "type": "event_property",
      "event_type": "pass",
      "properties": [
        { "field": "set_piece", "eq": "open_play" }
      ]
    }
  ]
}

Filter by player

{
  "filters": [
    {
      "type": "event_property",
      "event_type": "pass",
      "properties": [],
      "players": ["0-10"]
    }
  ]
}

Filter by team

{
  "filters": [
    {
      "type": "event_property",
      "event_type": "pass",
      "properties": [],
      "teams": ["team_0"]
    }
  ]
}

Response

Events of this type appear in the Events endpoint response:

{
  "start": 125.5,
  "end": 135.5,
  "label": "pass",
  "event_type": "pass"
}