Tracking changes

Learn how to use the Incidents API to track data changes with the PandaScore REST API.

PandaScore allows you to track changes on Leagues, Series, Tournaments, Matches, Teams and Players using incidents.

The Incidents API includes the following endpoints:

To track additions, changes, and deletions, PandaScore REST API includes a unique Incidents > List incidents endpoint.

Polling incidents

To keep your application's data up-to-date, it is strongly recommended to implement some sort of polling logic around the incidents endpoints.

The recipe below provides an example of a basic implementation in Node.js.

Common use cases

Here are some quick examples of common use cases for using the Incidents API.

Tracking new CS:GO competitions

With the CS:GO scene being very large and mainly tournament-based, new events can be announced at any time. You can track the creation of CS:GO related resources at the League, Series, or Tournament level using the following request URL:

/additions?type=tournament,serie,league&videogame=cs-go

Tracking LoL roster changes

When the new season is announced, roster changes happen left and right. You can track League of Legends players' team movements using the following request URL:

/changes?type=team&videogame=league-of-legends

Tracking PandaScore mistakes deletions

Sometimes — rarely, but still — we have to delete records from our database. The most common reasons are either the removal of something we didn't want to cover or a merge between two duplicate objects.

Using the Incidents > List deletions endpoint, you can receive responses such as the following:

[
  {
    "change_type": "deletion",
    "id": 3521,
    "modified_at": "2020-01-06T13:54:26Z",
    "object": {
      "deleted_at": "2020-01-06T13:54:26Z",
      "reason": "Model deleted",
      "videogame_id": 4
    },
    "type": "tournament"
  },
  {
    "change_type": "deletion",
    "id": 19766,
    "modified_at": "2020-01-05T19:53:52Z",
    "object": {
      "deleted_at": "2020-01-05T19:53:52Z",
      "reason": "Merged with 3428",
      "videogame_id": 1
    },
    "type": "player"
  },
  [...]
]