{
  "canonical_id": "ethan-bryant",
  "canonical_name": "Ethan Bryant",
  "positions": [
    "CM"
  ],
  "leagues": [
    "USL1"
  ],
  "sport_names": [],
  "ambiguous": false,
  "appearances": [
    {
      "id": 1502138,
      "full_name": "Ethan Bryant",
      "team": "",
      "position": "CM",
      "sport_id": null,
      "league": "USL1",
      "jersey": null,
      "college": null,
      "college_stats": null,
      "height": "5'9\"",
      "weight": "130",
      "college_full": null
    }
  ],
  "career_totals": {
    "minutes_played": 8752.0,
    "shots": 151.0,
    "shots_on_target": 51.0,
    "goals": 18.0,
    "xg": 15.6618,
    "xg_place": 3.0458000000000003,
    "goals_minus_xg": 2.3381999999999996,
    "key_passes": 146.0,
    "assists": 15.0,
    "xa": 13.93,
    "assists_minus_xa": 1.07,
    "goals_plus_assists": 33.0,
    "xg_plus_xa": 29.5921,
    "points_added": 7.2928999999999995,
    "xpoints_added": 8.8818,
    "passes_attempted": 3616.0,
    "pass_completion_pct": 6.4767,
    "xpass_completion_pct": 6.8597,
    "passes_over_expected": -60.21029999999999,
    "passes_over_expected_p100": -38.2804,
    "avg_pass_distance": 187.844,
    "avg_pass_vertical": 29.0193
  },
  "season_totals": {
    "USLC-2018": {
      "minutes_played": 863.0,
      "shots": 11.0,
      "shots_on_target": 4.0,
      "goals": 1.0,
      "xg": 1.4711,
      "xg_place": 0.5119,
      "goals_minus_xg": -0.4711,
      "key_passes": 7.0,
      "assists": 3.0,
      "xa": 1.7164,
      "assists_minus_xa": 1.2836,
      "goals_plus_assists": 4.0,
      "xg_plus_xa": 3.1876,
      "points_added": 0.1274,
      "xpoints_added": 0.861,
      "passes_attempted": 209.0,
      "pass_completion_pct": 0.7368,
      "xpass_completion_pct": 0.7656,
      "passes_over_expected": -6.014,
      "passes_over_expected_p100": -2.8775,
      "avg_pass_distance": 17.8053,
      "avg_pass_vertical": 2.0372
    },
    "USLC-2019": {
      "minutes_played": 445.0,
      "shots": 9.0,
      "shots_on_target": 2.0,
      "goals": 1.0,
      "xg": 0.5779,
      "xg_place": -0.0871,
      "goals_minus_xg": 0.4221,
      "key_passes": 5.0,
      "assists": 0.0,
      "xa": 0.1334,
      "assists_minus_xa": -0.1334,
      "goals_plus_assists": 1.0,
      "xg_plus_xa": 0.7113,
      "points_added": 0.997,
      "xpoints_added": 0.3488,
      "passes_attempted": 188.0,
      "pass_completion_pct": 0.8085,
      "xpass_completion_pct": 0.8256,
      "passes_over_expected": -3.2114,
      "passes_over_expected_p100": -1.7082,
      "avg_pass_distance": 17.7522,
      "avg_pass_vertical": 2.534
    },
    "USLC-2020": {
      "minutes_played": 40.0,
      "shots": 1.0,
      "shots_on_target": 0.0,
      "goals": 0.0,
      "xg": 0.0907,
      "xg_place": -0.0907,
      "goals_minus_xg": -0.0907,
      "key_passes": 0.0,
      "assists": 0.0,
      "xa": 0.0,
      "assists_minus_xa": 0.0,
      "goals_plus_assists": 0.0,
      "xg_plus_xa": 0.0907,
      "points_added": 0.0,
      "xpoints_added": 0.1209,
      "passes_attempted": 15.0,
      "pass_completion_pct": 0.4667,
      "xpass_completion_pct": 0.6953,
      "passes_over_expected": -3.4295,
      "passes_over_expected_p100": -22.8635,
      "avg_pass_distance": 18.1088,
      "avg_pass_vertical": 5.6153
    },
    "USL1-2021": {
      "minutes_played": 1045.0,
      "shots": 13.0,
      "shots_on_target": 4.0,
      "goals": 0.0,
      "xg": 0.4807,
      "xg_place": 0.0891,
      "goals_minus_xg": -0.4807,
      "key_passes": 9.0,
      "assists": 0.0,
      "xa": 0.7599,
      "assists_minus_xa": -0.7599,
      "goals_plus_assists": 0.0,
      "xg_plus_xa": 1.2406,
      "points_added": 0.0,
      "xpoints_added": 0.4073,
      "passes_attempted": 318.0,
      "pass_completion_pct": 0.7075,
      "xpass_completion_pct": 0.7347,
      "passes_over_expected": -8.6402,
      "passes_over_expected_p100": -2.717,
      "avg_pass_distance": 21.6088,
      "avg_pass_vertical": 3.5719
    },
    "USL1-2022": {
      "minutes_played": 2224.0,
      "shots": 23.0,
      "shots_on_target": 8.0,
      "goals": 3.0,
      "xg": 2.1241,
      "xg_place": 0.7716,
      "goals_minus_xg": 0.8759,
      "key_passes": 28.0,
      "assists": 4.0,
      "xa": 1.9798,
      "assists_minus_xa": 2.0202,
      "goals_plus_assists": 7.0,
      "xg_plus_xa": 4.1039,
      "points_added": 1.3069,
      "xpoints_added": 1.0943,
      "passes_attempted": 866.0,
      "pass_completion_pct": 0.7517,
      "xpass_completion_pct": 0.7728,
      "passes_over_expected": -18.2155,
      "passes_over_expected_p100": -2.1034,
      "avg_pass_distance": 23.0795,
      "avg_pass_vertical": 3.0386
    },
    "MLSNP-2023": {
      "minutes_played": 1914.0,
      "shots": 52.0,
      "shots_on_target": 16.0,
      "goals": 8.0,
      "xg": 5.1173,
      "xg_place": 1.2414,
      "goals_minus_xg": 2.8827,
      "key_passes": 50.0,
      "assists": 3.0,
      "xa": 5.2877,
      "assists_minus_xa": -2.2877,
      "goals_plus_assists": 11.0,
      "xg_plus_xa": 10.405,
      "points_added": 3.1314,
      "xpoints_added": 3.4396,
      "passes_attempted": 891.0,
      "pass_completion_pct": 0.7508,
      "xpass_completion_pct": 0.744,
      "passes_over_expected": 6.0945,
      "passes_over_expected_p100": 0.684,
      "avg_pass_distance": 22.2663,
      "avg_pass_vertical": 4.0339
    },
    "MLSNP-2024": {
      "minutes_played": 1322.0,
      "shots": 28.0,
      "shots_on_target": 14.0,
      "goals": 5.0,
      "xg": 4.7627,
      "xg_place": 0.7955,
      "goals_minus_xg": 0.2373,
      "key_passes": 34.0,
      "assists": 5.0,
      "xa": 3.0208,
      "assists_minus_xa": 1.9792,
      "goals_plus_assists": 10.0,
      "xg_plus_xa": 7.7836,
      "points_added": 1.7302,
      "xpoints_added": 2.1235,
      "passes_attempted": 704.0,
      "pass_completion_pct": 0.7443,
      "xpass_completion_pct": 0.77,
      "passes_over_expected": -18.0941,
      "passes_over_expected_p100": -2.5702,
      "avg_pass_distance": 22.5776,
      "avg_pass_vertical": 3.5899
    },
    "USLC-2025": {
      "minutes_played": 451.0,
      "shots": 10.0,
      "shots_on_target": 3.0,
      "goals": 0.0,
      "xg": 0.9196,
      "xg_place": -0.0682,
      "goals_minus_xg": -0.9196,
      "key_passes": 6.0,
      "assists": 0.0,
      "xa": 0.5529,
      "assists_minus_xa": -0.5529,
      "goals_plus_assists": 0.0,
      "xg_plus_xa": 1.4726,
      "points_added": 0.0,
      "xpoints_added": 0.4457,
      "passes_attempted": 210.0,
      "pass_completion_pct": 0.7476,
      "xpass_completion_pct": 0.7812,
      "passes_over_expected": -7.0479,
      "passes_over_expected_p100": -3.3561,
      "avg_pass_distance": 20.6297,
      "avg_pass_vertical": 2.3049
    },
    "USL1-2026": {
      "minutes_played": 448.0,
      "shots": 4.0,
      "shots_on_target": 0.0,
      "goals": 0.0,
      "xg": 0.1177,
      "xg_place": -0.1177,
      "goals_minus_xg": -0.1177,
      "key_passes": 7.0,
      "assists": 0.0,
      "xa": 0.4791,
      "assists_minus_xa": -0.4791,
      "goals_plus_assists": 0.0,
      "xg_plus_xa": 0.5968,
      "points_added": 0.0,
      "xpoints_added": 0.0407,
      "passes_attempted": 215.0,
      "pass_completion_pct": 0.7628,
      "xpass_completion_pct": 0.7705,
      "passes_over_expected": -1.6522,
      "passes_over_expected_p100": -0.7685,
      "avg_pass_distance": 24.0158,
      "avg_pass_vertical": 2.2936
    }
  },
  "season_coaches": {},
  "game_log": [
    {
      "game_id": "soccer-uslc-2018-7vQ7x3YMD1",
      "game_slug": "soccer-uslc-2018-7vq7x3ymd1",
      "display": "USLC 2018 Season",
      "season": 2018,
      "week": 1,
      "league": "USLC",
      "sport_slug": "uslc-2018",
      "away_team": "",
      "home_team": "",
      "date_str": "",
      "score_home": "",
      "score_away": "",
      "stats": {
        "minutes_played": 863.0,
        "shots": 11.0,
        "shots_on_target": 4.0,
        "goals": 1.0,
        "xg": 1.4711,
        "xg_place": 0.5119,
        "goals_minus_xg": -0.4711,
        "key_passes": 7.0,
        "assists": 3.0,
        "xa": 1.7164,
        "assists_minus_xa": 1.2836,
        "goals_plus_assists": 4.0,
        "xg_plus_xa": 3.1876,
        "points_added": 0.1274,
        "xpoints_added": 0.861,
        "passes_attempted": 209.0,
        "pass_completion_pct": 0.7368,
        "xpass_completion_pct": 0.7656,
        "passes_over_expected": -6.014,
        "passes_over_expected_p100": -2.8775,
        "avg_pass_distance": 17.8053,
        "avg_pass_vertical": 2.0372
      }
    },
    {
      "game_id": "soccer-uslc-2019-7vQ7x3YMD1",
      "game_slug": "soccer-uslc-2019-7vq7x3ymd1",
      "display": "USLC 2019 Season",
      "season": 2019,
      "week": 1,
      "league": "USLC",
      "sport_slug": "uslc-2019",
      "away_team": "",
      "home_team": "",
      "date_str": "",
      "score_home": "",
      "score_away": "",
      "stats": {
        "minutes_played": 445.0,
        "shots": 9.0,
        "shots_on_target": 2.0,
        "goals": 1.0,
        "xg": 0.5779,
        "xg_place": -0.0871,
        "goals_minus_xg": 0.4221,
        "key_passes": 5.0,
        "assists": 0.0,
        "xa": 0.1334,
        "assists_minus_xa": -0.1334,
        "goals_plus_assists": 1.0,
        "xg_plus_xa": 0.7113,
        "points_added": 0.997,
        "xpoints_added": 0.3488,
        "passes_attempted": 188.0,
        "pass_completion_pct": 0.8085,
        "xpass_completion_pct": 0.8256,
        "passes_over_expected": -3.2114,
        "passes_over_expected_p100": -1.7082,
        "avg_pass_distance": 17.7522,
        "avg_pass_vertical": 2.534
      }
    },
    {
      "game_id": "soccer-uslc-2020-7vQ7x3YMD1",
      "game_slug": "soccer-uslc-2020-7vq7x3ymd1",
      "display": "USLC 2020 Season",
      "season": 2020,
      "week": 1,
      "league": "USLC",
      "sport_slug": "uslc-2020",
      "away_team": "",
      "home_team": "",
      "date_str": "",
      "score_home": "",
      "score_away": "",
      "stats": {
        "minutes_played": 40.0,
        "shots": 1.0,
        "shots_on_target": 0.0,
        "goals": 0.0,
        "xg": 0.0907,
        "xg_place": -0.0907,
        "goals_minus_xg": -0.0907,
        "key_passes": 0.0,
        "assists": 0.0,
        "xa": 0.0,
        "assists_minus_xa": 0.0,
        "goals_plus_assists": 0.0,
        "xg_plus_xa": 0.0907,
        "points_added": 0.0,
        "xpoints_added": 0.1209,
        "passes_attempted": 15.0,
        "pass_completion_pct": 0.4667,
        "xpass_completion_pct": 0.6953,
        "passes_over_expected": -3.4295,
        "passes_over_expected_p100": -22.8635,
        "avg_pass_distance": 18.1088,
        "avg_pass_vertical": 5.6153
      }
    },
    {
      "game_id": "soccer-usl1-2021-9jYQJ7ZMGR",
      "game_slug": "soccer-usl1-2021-9jyqj7zmgr",
      "display": "USL1 2021 Season",
      "season": 2021,
      "week": 1,
      "league": "USL1",
      "sport_slug": "usl1-2021",
      "away_team": "",
      "home_team": "",
      "date_str": "",
      "score_home": "",
      "score_away": "",
      "stats": {
        "minutes_played": 1045.0,
        "shots": 13.0,
        "shots_on_target": 4.0,
        "goals": 0.0,
        "xg": 0.4807,
        "xg_place": 0.0891,
        "goals_minus_xg": -0.4807,
        "key_passes": 9.0,
        "assists": 0.0,
        "xa": 0.7599,
        "assists_minus_xa": -0.7599,
        "goals_plus_assists": 0.0,
        "xg_plus_xa": 1.2406,
        "points_added": 0.0,
        "xpoints_added": 0.4073,
        "passes_attempted": 318.0,
        "pass_completion_pct": 0.7075,
        "xpass_completion_pct": 0.7347,
        "passes_over_expected": -8.6402,
        "passes_over_expected_p100": -2.717,
        "avg_pass_distance": 21.6088,
        "avg_pass_vertical": 3.5719
      }
    },
    {
      "game_id": "soccer-usl1-2022-9jYQJ7ZMGR",
      "game_slug": "soccer-usl1-2022-9jyqj7zmgr",
      "display": "USL1 2022 Season",
      "season": 2022,
      "week": 1,
      "league": "USL1",
      "sport_slug": "usl1-2022",
      "away_team": "",
      "home_team": "",
      "date_str": "",
      "score_home": "",
      "score_away": "",
      "stats": {
        "minutes_played": 2224.0,
        "shots": 23.0,
        "shots_on_target": 8.0,
        "goals": 3.0,
        "xg": 2.1241,
        "xg_place": 0.7716,
        "goals_minus_xg": 0.8759,
        "key_passes": 28.0,
        "assists": 4.0,
        "xa": 1.9798,
        "assists_minus_xa": 2.0202,
        "goals_plus_assists": 7.0,
        "xg_plus_xa": 4.1039,
        "points_added": 1.3069,
        "xpoints_added": 1.0943,
        "passes_attempted": 866.0,
        "pass_completion_pct": 0.7517,
        "xpass_completion_pct": 0.7728,
        "passes_over_expected": -18.2155,
        "passes_over_expected_p100": -2.1034,
        "avg_pass_distance": 23.0795,
        "avg_pass_vertical": 3.0386
      }
    },
    {
      "game_id": "soccer-mlsnp-2023-2vQ14GKqrA",
      "game_slug": "soccer-mlsnp-2023-2vq14gkqra",
      "display": "MLSNP 2023 Season",
      "season": 2023,
      "week": 1,
      "league": "MLSNP",
      "sport_slug": "mlsnp-2023",
      "away_team": "",
      "home_team": "",
      "date_str": "",
      "score_home": "",
      "score_away": "",
      "stats": {
        "minutes_played": 1914.0,
        "shots": 52.0,
        "shots_on_target": 16.0,
        "goals": 8.0,
        "xg": 5.1173,
        "xg_place": 1.2414,
        "goals_minus_xg": 2.8827,
        "key_passes": 50.0,
        "assists": 3.0,
        "xa": 5.2877,
        "assists_minus_xa": -2.2877,
        "goals_plus_assists": 11.0,
        "xg_plus_xa": 10.405,
        "points_added": 3.1314,
        "xpoints_added": 3.4396,
        "passes_attempted": 891.0,
        "pass_completion_pct": 0.7508,
        "xpass_completion_pct": 0.744,
        "passes_over_expected": 6.0945,
        "passes_over_expected_p100": 0.684,
        "avg_pass_distance": 22.2663,
        "avg_pass_vertical": 4.0339
      }
    },
    {
      "game_id": "soccer-mlsnp-2024-2vQ14GKqrA",
      "game_slug": "soccer-mlsnp-2024-2vq14gkqra",
      "display": "MLSNP 2024 Season",
      "season": 2024,
      "week": 1,
      "league": "MLSNP",
      "sport_slug": "mlsnp-2024",
      "away_team": "",
      "home_team": "",
      "date_str": "",
      "score_home": "",
      "score_away": "",
      "stats": {
        "minutes_played": 1322.0,
        "shots": 28.0,
        "shots_on_target": 14.0,
        "goals": 5.0,
        "xg": 4.7627,
        "xg_place": 0.7955,
        "goals_minus_xg": 0.2373,
        "key_passes": 34.0,
        "assists": 5.0,
        "xa": 3.0208,
        "assists_minus_xa": 1.9792,
        "goals_plus_assists": 10.0,
        "xg_plus_xa": 7.7836,
        "points_added": 1.7302,
        "xpoints_added": 2.1235,
        "passes_attempted": 704.0,
        "pass_completion_pct": 0.7443,
        "xpass_completion_pct": 0.77,
        "passes_over_expected": -18.0941,
        "passes_over_expected_p100": -2.5702,
        "avg_pass_distance": 22.5776,
        "avg_pass_vertical": 3.5899
      }
    },
    {
      "game_id": "soccer-uslc-2025-4JMAZ1D5Kg",
      "game_slug": "soccer-uslc-2025-4jmaz1d5kg",
      "display": "USLC 2025 Season",
      "season": 2025,
      "week": 1,
      "league": "USLC",
      "sport_slug": "uslc-2025",
      "away_team": "",
      "home_team": "",
      "date_str": "",
      "score_home": "",
      "score_away": "",
      "stats": {
        "minutes_played": 451.0,
        "shots": 10.0,
        "shots_on_target": 3.0,
        "goals": 0.0,
        "xg": 0.9196,
        "xg_place": -0.0682,
        "goals_minus_xg": -0.9196,
        "key_passes": 6.0,
        "assists": 0.0,
        "xa": 0.5529,
        "assists_minus_xa": -0.5529,
        "goals_plus_assists": 0.0,
        "xg_plus_xa": 1.4726,
        "points_added": 0.0,
        "xpoints_added": 0.4457,
        "passes_attempted": 210.0,
        "pass_completion_pct": 0.7476,
        "xpass_completion_pct": 0.7812,
        "passes_over_expected": -7.0479,
        "passes_over_expected_p100": -3.3561,
        "avg_pass_distance": 20.6297,
        "avg_pass_vertical": 2.3049
      }
    },
    {
      "game_id": "soccer-usl1-2026-NWMW2p7Qlz",
      "game_slug": "soccer-usl1-2026-nwmw2p7qlz",
      "display": "USL1 2026 Season",
      "season": 2026,
      "week": 1,
      "league": "USL1",
      "sport_slug": "usl1-2026",
      "away_team": "",
      "home_team": "",
      "date_str": "",
      "score_home": "",
      "score_away": "",
      "stats": {
        "minutes_played": 448.0,
        "shots": 4.0,
        "shots_on_target": 0.0,
        "goals": 0.0,
        "xg": 0.1177,
        "xg_place": -0.1177,
        "goals_minus_xg": -0.1177,
        "key_passes": 7.0,
        "assists": 0.0,
        "xa": 0.4791,
        "assists_minus_xa": -0.4791,
        "goals_plus_assists": 0.0,
        "xg_plus_xa": 0.5968,
        "points_added": 0.0,
        "xpoints_added": 0.0407,
        "passes_attempted": 215.0,
        "pass_completion_pct": 0.7628,
        "xpass_completion_pct": 0.7705,
        "passes_over_expected": -1.6522,
        "passes_over_expected_p100": -0.7685,
        "avg_pass_distance": 24.0158,
        "avg_pass_vertical": 2.2936
      }
    }
  ],
  "college": null,
  "nfl": null,
  "articles": []
}