Player Data JSON

Obtiene datos completos de un jugador en formato JSON para alimentar LLMs

William Zhang

William Zhang

USA ATP
12W - 4L 75,0% Win Rate Forma: WWWLWWWWLW

JSON Data

{
  "player": {
    "id": 3120,
    "api_id": 1138906,
    "name": "William Zhang",
    "short_name": "W. Zhang",
    "country": "USA",
    "country_code": "US",
    "gender": "Male",
    "circuit": "ATP",
    "date_of_birth": null,
    "height_cm": null,
    "weight_kg": null,
    "plays": "",
    "turned_pro": null
  },
  "utr": {
    "id": 3040244,
    "singles": 12.45,
    "doubles": 11.83,
    "ranking": 99,
    "division": "Junior",
    "is_pro": true,
    "updated_at": "2026-01-18"
  },
  "current_ranking": null,
  "ranking_history": [],
  "career_stats": {
    "total_matches": 16,
    "wins": 12,
    "losses": 4,
    "win_rate": 75.0
  },
  "surface_stats": {
    "hard": {
      "matches": 16,
      "wins": 12,
      "losses": 4,
      "win_rate": 75.0
    },
    "clay": {
      "matches": 0,
      "wins": 0,
      "losses": 0,
      "win_rate": 0
    },
    "grass": {
      "matches": 0,
      "wins": 0,
      "losses": 0,
      "win_rate": 0
    }
  },
  "category_stats": {
    "UTR": {
      "matches": 16,
      "wins": 12,
      "losses": 4,
      "win_rate": 75.0
    }
  },
  "average_match_stats": {
    "matches_with_stats": 16,
    "avg_aces_per_match": 0.2,
    "avg_double_faults_per_match": 2.4,
    "avg_first_serve_pct": 67.5,
    "avg_first_serve_won_pct": 60.3,
    "avg_second_serve_won_pct": 49.3,
    "avg_break_points_converted_pct": null
  },
  "recent_form": [
    {
      "date": "2026-01-29",
      "opponent": "Nikita Kryvonos",
      "opponent_id": 15808,
      "tournament": "UTR Newport Beach M03",
      "surface": "hard",
      "round": "",
      "result": "W",
      "score": "2-0",
      "stats": {
        "aces": 0,
        "double_faults": 5,
        "first_serve_pct": 63.1578947368421,
        "first_serve_won_pct": 69.44444444444444,
        "second_serve_won_pct": 53.333333333333336,
        "break_points_converted_pct": null,
        "total_points_won": null
      }
    },
    {
      "date": "2026-01-27",
      "opponent": "Michael Kaplan",
      "opponent_id": 1080930,
      "tournament": "UTR Newport Beach M03",
      "surface": "hard",
      "round": "",
      "result": "W",
      "score": "2-0",
      "stats": {
        "aces": 1,
        "double_faults": 4,
        "first_serve_pct": 66.66666666666666,
        "first_serve_won_pct": 75.0,
        "second_serve_won_pct": 52.38095238095239,
        "break_points_converted_pct": null,
        "total_points_won": null
      }
    },
    {
      "date": "2026-01-27",
      "opponent": "Justin Riley Anson",
      "opponent_id": 1166677,
      "tournament": "UTR Newport Beach M03",
      "surface": "hard",
      "round": "",
      "result": "W",
      "score": "2-0",
      "stats": {
        "aces": 2,
        "double_faults": 3,
        "first_serve_pct": 69.23076923076923,
        "first_serve_won_pct": 61.111111111111114,
        "second_serve_won_pct": 58.333333333333336,
        "break_points_converted_pct": null,
        "total_points_won": null
      }
    },
    {
      "date": "2026-01-10",
      "opponent": "Maciej Rajski",
      "opponent_id": 111783,
      "tournament": "UTR Newport Beach M01",
      "surface": "hard",
      "round": "Semifinals",
      "result": "L",
      "score": "0-2",
      "stats": {
        "aces": 0,
        "double_faults": 4,
        "first_serve_pct": 69.81132075471697,
        "first_serve_won_pct": 54.054054054054056,
        "second_serve_won_pct": 37.5,
        "break_points_converted_pct": null,
        "total_points_won": null
      }
    },
    {
      "date": "2026-01-09",
      "opponent": "Vraj Patel",
      "opponent_id": 1074774,
      "tournament": "UTR Newport Beach M01",
      "surface": "hard",
      "round": "",
      "result": "W",
      "score": "2-0",
      "stats": {
        "aces": 0,
        "double_faults": 5,
        "first_serve_pct": 61.81818181818181,
        "first_serve_won_pct": 67.64705882352942,
        "second_serve_won_pct": 52.38095238095239,
        "break_points_converted_pct": null,
        "total_points_won": null
      }
    },
    {
      "date": "2026-01-08",
      "opponent": "Maximilian Wuelfing",
      "opponent_id": 377423,
      "tournament": "UTR Newport Beach M01",
      "surface": "hard",
      "round": "",
      "result": "W",
      "score": "2-0",
      "stats": {
        "aces": 0,
        "double_faults": 1,
        "first_serve_pct": 61.40350877192983,
        "first_serve_won_pct": 71.42857142857143,
        "second_serve_won_pct": 45.45454545454545,
        "break_points_converted_pct": null,
        "total_points_won": null
      }
    },
    {
      "date": "2026-01-08",
      "opponent": "Caden Hasler",
      "opponent_id": 1162165,
      "tournament": "UTR Newport Beach M01",
      "surface": "hard",
      "round": "",
      "result": "W",
      "score": "2-1",
      "stats": {
        "aces": 0,
        "double_faults": 2,
        "first_serve_pct": 74.39024390243902,
        "first_serve_won_pct": 59.01639344262295,
        "second_serve_won_pct": 52.38095238095239,
        "break_points_converted_pct": null,
        "total_points_won": null
      }
    },
    {
      "date": "2026-01-05",
      "opponent": "Tal Goodman",
      "opponent_id": 1044790,
      "tournament": "UTR Newport Beach M01",
      "surface": "hard",
      "round": "",
      "result": "W",
      "score": "2-1",
      "stats": {
        "aces": 0,
        "double_faults": 5,
        "first_serve_pct": 74.57627118644068,
        "first_serve_won_pct": 55.68181818181818,
        "second_serve_won_pct": 43.333333333333336,
        "break_points_converted_pct": null,
        "total_points_won": null
      }
    },
    {
      "date": "2025-12-21",
      "opponent": "Vlad Cristian Breazu",
      "opponent_id": 382870,
      "tournament": "UTR PTT Newport Beach Men 18",
      "surface": "hard",
      "round": "Semifinals",
      "result": "L",
      "score": "0-2",
      "stats": {
        "aces": 0,
        "double_faults": 2,
        "first_serve_pct": 73.68421052631578,
        "first_serve_won_pct": 40.476190476190474,
        "second_serve_won_pct": 40.0,
        "break_points_converted_pct": null,
        "total_points_won": null
      }
    },
    {
      "date": "2025-12-20",
      "opponent": "George Hakopian",
      "opponent_id": 1099306,
      "tournament": "UTR PTT Newport Beach Men 18",
      "surface": "hard",
      "round": "",
      "result": "W",
      "score": "2-0",
      "stats": {
        "aces": 0,
        "double_faults": 1,
        "first_serve_pct": 67.85714285714286,
        "first_serve_won_pct": 68.42105263157895,
        "second_serve_won_pct": 40.0,
        "break_points_converted_pct": null,
        "total_points_won": null
      }
    }
  ],
  "form_summary": {
    "last_10_matches": 10,
    "wins": 8,
    "losses": 2,
    "form_string": "WWWLWWWWLW"
  },
  "head_to_head": [
    {
      "opponent": "George Hakopian",
      "opponent_id": 1099306,
      "matches": 2,
      "wins": 2,
      "losses": 0
    },
    {
      "opponent": "Antreas Djakouris",
      "opponent_id": 252748,
      "matches": 1,
      "wins": 0,
      "losses": 1
    },
    {
      "opponent": "Michael Kaplan",
      "opponent_id": 1080930,
      "matches": 1,
      "wins": 1,
      "losses": 0
    },
    {
      "opponent": "Nikita Kryvonos",
      "opponent_id": 15808,
      "matches": 1,
      "wins": 1,
      "losses": 0
    },
    {
      "opponent": "Raz Haviv",
      "opponent_id": 215683,
      "matches": 1,
      "wins": 1,
      "losses": 0
    }
  ],
  "upcoming_matches": [
    {
      "date": "2026-01-31 02:30",
      "opponent": "Antreas Djakouris",
      "opponent_id": 252748,
      "tournament": "UTR Newport Beach M03",
      "surface": "hard",
      "round": "",
      "odds_player": null,
      "odds_opponent": null
    }
  ],
  "year_statistics": null,
  "data_generated_at": "2026-01-30 08:34:47 UTC"
}