Player Data JSON

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

Nikola Lulic

Nikola Lulic

Serbia ATP
2W - 3L 40,0% Win Rate Forma: LLLWW

JSON Data

{
  "player": {
    "id": 2847,
    "api_id": 516799,
    "name": "Nikola Lulic",
    "short_name": "N. Lulić",
    "country": "Serbia",
    "country_code": "RS",
    "gender": "Male",
    "circuit": "ATP",
    "date_of_birth": null,
    "height_cm": null,
    "weight_kg": null,
    "plays": "",
    "turned_pro": null
  },
  "utr": {
    "id": 814732,
    "singles": 12.0,
    "doubles": null,
    "ranking": 1881,
    "division": "Pro",
    "is_pro": false,
    "updated_at": "2026-01-18"
  },
  "current_ranking": null,
  "ranking_history": [],
  "career_stats": {
    "total_matches": 5,
    "wins": 2,
    "losses": 3,
    "win_rate": 40.0
  },
  "surface_stats": {
    "hard": {
      "matches": 0,
      "wins": 0,
      "losses": 0,
      "win_rate": 0
    },
    "clay": {
      "matches": 5,
      "wins": 2,
      "losses": 3,
      "win_rate": 40.0
    },
    "grass": {
      "matches": 0,
      "wins": 0,
      "losses": 0,
      "win_rate": 0
    }
  },
  "category_stats": {
    "UTR": {
      "matches": 5,
      "wins": 2,
      "losses": 3,
      "win_rate": 40.0
    }
  },
  "average_match_stats": {
    "matches_with_stats": 5,
    "avg_aces_per_match": 2.8,
    "avg_double_faults_per_match": 2.8,
    "avg_first_serve_pct": 65.5,
    "avg_first_serve_won_pct": 66.8,
    "avg_second_serve_won_pct": 37.4,
    "avg_break_points_converted_pct": null
  },
  "recent_form": [
    {
      "date": "2026-01-17",
      "opponent": "Tadija Radovanovic",
      "opponent_id": 229822,
      "tournament": "UTR Belgrade M01",
      "surface": "clay",
      "round": "Semifinals",
      "result": "L",
      "score": "0-2",
      "stats": {
        "aces": 5,
        "double_faults": 7,
        "first_serve_pct": 61.97183098591549,
        "first_serve_won_pct": 72.72727272727273,
        "second_serve_won_pct": 37.03703703703704,
        "break_points_converted_pct": null,
        "total_points_won": null
      }
    },
    {
      "date": "2026-01-16",
      "opponent": "Marko Maksimovic",
      "opponent_id": 382892,
      "tournament": "UTR Belgrade M01",
      "surface": "clay",
      "round": "",
      "result": "L",
      "score": "0-2",
      "stats": {
        "aces": 1,
        "double_faults": 2,
        "first_serve_pct": 72.54901960784314,
        "first_serve_won_pct": 56.75675675675676,
        "second_serve_won_pct": 14.285714285714285,
        "break_points_converted_pct": null,
        "total_points_won": null
      }
    },
    {
      "date": "2026-01-15",
      "opponent": "Attila Dominik Boros",
      "opponent_id": 394626,
      "tournament": "UTR Belgrade M01",
      "surface": "clay",
      "round": "",
      "result": "L",
      "score": "0-2",
      "stats": {
        "aces": 3,
        "double_faults": 2,
        "first_serve_pct": 62.5,
        "first_serve_won_pct": 57.14285714285714,
        "second_serve_won_pct": 33.33333333333333,
        "break_points_converted_pct": null,
        "total_points_won": null
      }
    },
    {
      "date": "2026-01-14",
      "opponent": "Alexandru Luca",
      "opponent_id": 362558,
      "tournament": "UTR Belgrade M01",
      "surface": "clay",
      "round": "",
      "result": "W",
      "score": "2-0",
      "stats": {
        "aces": 3,
        "double_faults": 1,
        "first_serve_pct": 64.28571428571429,
        "first_serve_won_pct": 81.48148148148148,
        "second_serve_won_pct": 46.666666666666664,
        "break_points_converted_pct": null,
        "total_points_won": null
      }
    },
    {
      "date": "2026-01-12",
      "opponent": "Pavel Savelov",
      "opponent_id": 1043759,
      "tournament": "UTR Belgrade M01",
      "surface": "clay",
      "round": "",
      "result": "W",
      "score": "2-0",
      "stats": {
        "aces": 2,
        "double_faults": 2,
        "first_serve_pct": 66.0377358490566,
        "first_serve_won_pct": 65.71428571428571,
        "second_serve_won_pct": 55.55555555555556,
        "break_points_converted_pct": null,
        "total_points_won": null
      }
    }
  ],
  "form_summary": {
    "last_10_matches": 5,
    "wins": 2,
    "losses": 3,
    "form_string": "LLLWW"
  },
  "head_to_head": [
    {
      "opponent": "Tadija Radovanovic",
      "opponent_id": 229822,
      "matches": 1,
      "wins": 0,
      "losses": 1
    },
    {
      "opponent": "Alexandru Luca",
      "opponent_id": 362558,
      "matches": 1,
      "wins": 1,
      "losses": 0
    },
    {
      "opponent": "Marko Maksimovic",
      "opponent_id": 382892,
      "matches": 1,
      "wins": 0,
      "losses": 1
    },
    {
      "opponent": "Attila Dominik Boros",
      "opponent_id": 394626,
      "matches": 1,
      "wins": 0,
      "losses": 1
    },
    {
      "opponent": "Pavel Savelov",
      "opponent_id": 1043759,
      "matches": 1,
      "wins": 1,
      "losses": 0
    }
  ],
  "upcoming_matches": [],
  "year_statistics": null,
  "data_generated_at": "2026-01-30 11:26:50 UTC"
}