API Documentation

The Vintage Data API provides endpoints to retrieve match and event data from the MTGO Vintage Metagame dataset.

  • Requests are limited to 100 per minute.
  • Response size is limited to 1000 rows.
  • No authentication is required.
Base URL: https://api.vintagedata.io

Back to Project Description.


Logging & Monitoring

All requests are logged and inserted into the API_LOGGING_STATS table to track API Endpoint usage statistics.

See Data Dictionary for more information.


Error Handling

Status Code Error Type Error Description
400 Bad Request Invalid query parameters.
404 Not Found Requested resource does not exist.
500 Internal Server Error Unexpected server error.

Example Requests

curl -X GET "https://api.vintagedata.io/matches/?start=2024-08-25&end=2024-10-30&page=1"
curl -X GET "https://api.vintagedata.io/events/?start=2024-08-25&end=2024-10-30&page=1"
curl -X GET "https://api.vintagedata.io/events/player/IamActuallyLvL1/"
curl -X GET "https://api.vintagedata.io/load-reports/"

API Endpoints

GET /

Redirects to the GitHub repository.


GET /matches/

Retrieves raw match data.

Query Parameter(s):

Parameter Name Data Type Requirement Description Default Value
start String Optional Start date (YYYY-MM-DD) 2024-08-25
end String Optional End date (YYYY-MM-DD) Current Date
page Integer Optional Page number 1

GET /matches/{match_id}/

Retrieves a specific match by its match_id.

URL Parameter(s):

Parameter Name Data Type Requirement Description Default Value
match_id Integer Required Match ID (11000000000) NA

GET /matches/player/{player_id}/

Retrieves all matches involving a specific player.

URL Parameter(s):

Parameter Name Data Type Requirement Description Default Value
match_id Integer Required Match ID (11000000000) NA

Query Parameter(s):

Parameter Name Data Type Requirement Description Default Value
start String Optional Start date (YYYY-MM-DD) 2024-08-25
end String Optional End date (YYYY-MM-DD) Current Date
page Integer Optional Page number 1

GET /matches/event/{event_id}/

Retrieves all matches from a specific event.

URL Parameter(s):

Parameter Name Data Type Requirement Description Default Value
event_id Integer Required Event ID (12000000000) NA

GET /events/

Retrieves all events. Returns event details and total number of players per event.

Query Parameter(s):

Parameter Name Data Type Requirement Description Default Value
start String Optional Start date (YYYY-MM-DD) 2024-08-25
end String Optional End date (YYYY-MM-DD) Current Date
page Integer Optional Page number 1

GET /events/{event_id}/

Retrieves event details by event_id.

URL Parameter(s):

Parameter Name Data Type Requirement Description Default Value
event_id Integer Required Event ID (12000000000) NA

GET /events/player/{P1}/

Retrieves events played by a specific player (P1). Returns a JSON object containing event details, deck details, and win-loss record.

URL Parameter(s):

Parameter Name Data Type Requirement Description Default Value
P1 String Required Player identifier NA

Query Parameter(s):

Parameter Name Data Type Requirement Description Default Value
start String Optional Start date (YYYY-MM-DD) 2024-08-25
end String Optional End date (YYYY-MM-DD) Current Date
page Integer Optional Page number 1

GET /decks/

Retrieves a list of all valid decks.


GET /decks/{deck_id}/

Retrieves details of a specific deck by deck_id.

URL Parameter(s):

Parameter Name Data Type Requirement Description Default Value
deck_id Integer Required Unique deck identifier (13000000000) NA

GET /event-types/

Retrieves a list of valid event types (e.g. Challenge, Showcase, etc.).


GET /event-types/{event_type_id}/

Retrieves details of a specific event type by event_type_id.

URL Parameter(s):

Parameter Name Data Type Requirement Description Default Value
event_type_id Integer Required Unique event type identifier (14000000000) NA

GET /load-reports/

Retrieves a list of all load reports. Load Reports contain statistics such as matches deleted, matches processed, matches skipped, etc.


GET /load-reports/{load_rpt_id}/

Retrieves a specific load report using load_rpt_id.

URL Parameter(s):

Parameter Name Data Type Requirement Description Default Value
load_rpt_id Integer Required Unique load report identifier (15000000000) NA

GET /event-rejections/

Retrieves a list of all event rejections. Event Rejections will contain the post-processed event data along with a Rejection Type and Rejection Reason Text.


GET /event-rejections/{load_rpt_id}/

Retrieves event rejections for a specific load_rpt_id.

URL Parameter(s):

Parameter Name Data Type Requirement Description Default Value
load_rpt_id Integer Required Unique load report identifier (15000000000) NA

GET /match-rejections/

Retrieves a list of all match rejections. Match Rejections will contain the post-processed event data along with a Rejection Type and Rejection Reason Text.


GET /match-rejections/{load_rpt_id}/

Retrieves match rejections for a specific load_rpt_id.

URL Parameter(s):

Parameter Name Data Type Requirement Description Default Value
load_rpt_id Integer Required Unique load report identifier (15000000000) NA