---
title: "Get this matchweek's best Serie A players per role, in order"
method: GET
path: "/v1/fantasy/fantacalcio/leaders"
tags: ["fantasy"]
---

# Get this matchweek's best Serie A players per role, in order

`GET /v1/fantasy/fantacalcio/leaders`

## Request

- Base URL: `https://api.predixsport.com` (the document declares no server; this is the origin it was published from)
- URL: `https://api.predixsport.com/v1/fantasy/fantacalcio/leaders`
- Auth: none declared

Returns the open matchweek's best players for each Classic role (P keeper, D defender, C midfielder, A forward), best first. The order is the selection score our lineup optimiser ranks on: the projected fantavoto weighted by the chance of starting, so a likely starter can rank above a better player who may sit on the bench. Only the ORDER is published, with each player's club, opponent and kick-off: no score, no probability and no lineup information. Players reported unavailable are left out. A ranking exists only while the matchweek is open for advice, from 48 hours before its first kick-off until that kick-off. Outside it the four lists are empty and `board_not_ready` carries the sentence to show, which between two matchweeks is the steady state, not an outage. `board.revision` changes whenever the projections are republished, and `board_freshness` says `stale` only when a scheduled update was missed. The Fantacalcio workspace is in a private beta: this endpoint answers 403 for an account outside it.

## Query parameters

- `season` string, nullable: Season label, e.g. 2026-27. Omitted = the current one.
- `per_role` integer: How many players to return for each role.

## Headers

- `authorization` string, nullable

## Response `200`

Successful Response

- FantacalcioRoleLeadersResponse
  - `sport` 'fantacalcio'
  - `season` string, required
  - `per_role` integer, required
  - `board` FantacalcioBoard: Identity of the matchweek the advice is priced on.
    - `giornata` integer, required
    - `revision` string, required: Content revision, used to detect advice that went stale.
    - `run_id` string, required
    - `first_kickoff_utc` string, date-time, required
    - `last_kickoff_utc` string, date-time, required
    - `player_count` integer, required
  - `board_not_ready` string, nullable
  - `board_freshness` FantacalcioBoardFreshness: How current the published lineup information behind the board is. ``stale`` means a scheduled collection slot came and went without an update, never plain age: the slots are 48, 24, 12 and 2 hours before the first kick-off, so a board can legitimately be a day old inside the gap between two of them.
    - `status` 'fresh' | 'stale', required
    - `collected_at` string, date-time, nullable
    - `expected_slot` string, date-time, nullable
  - `roles` FantacalcioRoleLeaders, required: The four Classic roles, each ranked best first.
    - `P` FantacalcioRoleLeader[], required
      - `rank` integer, required: 1 is the best of his role this matchweek.
      - `player_code` string, required
      - `name` string, required
      - `role` 'P' | 'D' | 'C' | 'A', required
      - `club` string, required
      - `club_name` string, required
      - `opponent` string, required
      - `opponent_name` string, required
      - `is_home` boolean, required
      - `kickoff_utc` string, date-time, required
    - `D` FantacalcioRoleLeader[], required
      - `rank` integer, required: 1 is the best of his role this matchweek.
      - `player_code` string, required
      - `name` string, required
      - `role` 'P' | 'D' | 'C' | 'A', required
      - `club` string, required
      - `club_name` string, required
      - `opponent` string, required
      - `opponent_name` string, required
      - `is_home` boolean, required
      - `kickoff_utc` string, date-time, required
    - `C` FantacalcioRoleLeader[], required
      - `rank` integer, required: 1 is the best of his role this matchweek.
      - `player_code` string, required
      - `name` string, required
      - `role` 'P' | 'D' | 'C' | 'A', required
      - `club` string, required
      - `club_name` string, required
      - `opponent` string, required
      - `opponent_name` string, required
      - `is_home` boolean, required
      - `kickoff_utc` string, date-time, required
    - `A` FantacalcioRoleLeader[], required
      - `rank` integer, required: 1 is the best of his role this matchweek.
      - `player_code` string, required
      - `name` string, required
      - `role` 'P' | 'D' | 'C' | 'A', required
      - `club` string, required
      - `club_name` string, required
      - `opponent` string, required
      - `opponent_name` string, required
      - `is_home` boolean, required
      - `kickoff_utc` string, date-time, required

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/predixsport/apis/predixsport-api.md) · [All operations](https://skmtc.dev/predixsport/apis/predixsport-api/llms.txt) · [OpenAPI document](https://skmtc.dev/predixsport/apis/predixsport-api/revisions/02014aee733d?raw)
