API Reference

add_game

Adds a new game and sends a create incident message to BOS.

POST /add_game/:create_message
Parameters
Response
Example
Parameters
  • create_message: Object of type create

Response
  • Failure

    • status: 400: Bad Request

    • subcode: One of Error Objects

    • title: One of Error Objects

    • message: One of Error Objects

Error Objects

Example
var http: HttpClient;
var headers = new HttpHeaders({'Content-Type' : 'application/json'});
var postData:any = {};
postData.sport = "Soccer";
postData.league = "EPL";
postData.user = 1;
postData.home = "Chelsea";
postData.away = "Manchester United";
postData.start_time = "2020-02-04T18:33:00Z";
http.post(url + "add_game.php?" , postData, {headers}).map();

start_game

Starts an existing game and sends an in_progress incident message to BOS.

POST /start_game/:in_progress_message
Parameters
Response
Example
Parameters
Response
  • Failure

    • status: 400: Bad Request

    • subcode: One of Error Objects

    • title: One of Error Objects

    • message: One of Error Objects

Error Objects

Example
var http: HttpClient;
var headers = new HttpHeaders({'Content-Type' : 'application/json'});
var postData:any = {};
postData.sport = "Soccer";
postData.league = "EPL";
postData.user = 1;
postData.home = "Chelsea";
postData.away = "Manchester United";
postData.start_time = "2020-02-04T18:33:00.000Z";
postData.whistle_start_time = "2020-02-04T18:45:00.000Z";
postData.match_id: 24;
http.post(url + "start_game.php?" , postData, {headers}).map();

add_score

Add scores to a game.

POST /add_score/:result_message
Parameters
Response
Example
Parameters
  • result_message: Object of type result

Response
  • Failure

    • status: 400: Bad Request

    • subcode: One of Error Objects

    • title: One of Error Objects

    • message: One of Error Objects

Error Objects

Example
var http: HttpClient;
var headers = new HttpHeaders({'Content-Type' : 'application/json'});
var postData:any = {};
postData.sport = "Soccer";
postData.league = "EPL";
postData.user = 1;
postData.home = "Chelsea";
postData.away = "Manchester United";
postData.start_time = "2020-02-04T18:33:00.000Z";
postData.home_score = 4;
postData.away_score = 2;
postData.match_id: 24;
http.post(url + "add_score.php?" , postData, {headers}).map();

finish_game

Finish a game

POST /finish_game/:finish_game_message
Parameters
Response
Example
Parameters
  • finish_game_message: Object of type finish

Response
  • Failure

    • status: 400: Bad Request

    • subcode: One of Error Objects

    • title: One of Error Objects

    • message: One of Error Objects

Error Objects

Example
var http: HttpClient;
var headers = new HttpHeaders({'Content-Type' : 'application/json'});
var postData:any = {};
postData.sport = "Soccer";
postData.league = "EPL";
postData.user = 1;
postData.home = "Chelsea";
postData.away = "Manchester United";
postData.start_time = "2020-02-04T18:33:00.000Z";
postData.whistle_end_time = "2020-02-04T20:33:00.000Z";
postData.match_id: 24;
http.post(url + "finish_game.php?" , postData, {headers}).map();

cancel_game

Cancel a game

POST /add_score/:cancel_game_message
Parameters
Response
Example
Parameters
  • cancel_game_message: Object of type canceled

Response
  • Failure

    • status: 400: Bad Request

    • subcode: One of Error Objects

    • title: One of Error Objects

    • message: One of Error Objects

Error Objects

Example
var http: HttpClient;
var headers = new HttpHeaders({'Content-Type' : 'application/json'});
var postData:any = {};
postData.sport = "Soccer";
postData.league = "EPL";
postData.user = 1;
postData.home = "Chelsea";
postData.away = "Manchester United";
postData.start_time = "2020-02-04T18:33:00.000Z";
postData.match_id: 24;
http.post(url + "cancel_game.php" , postData, {headers}).map();

delete_event

Delete an event according to the league and date.

DELETE /delete_event/:date/:league
Parameters
Response
Example
Parameters
  • date: The date of the event. Format is YYYY-MM-DD (UTC)

  • league: The name of the league

Response
  • Success - 200

    • title: League Deleted

    • message:[league]

  • Failure - 400

Example
var http: HttpClient;
var headers = new HttpHeaders({'Content-Type' : 'application/x-www-form-urlencoded'});
let httpParams = new HttpParams().set('date', '2020-02-29', 'league', 'EPL');
return http.delete(url + "delete_event.php", {
params: httpParams, headers: headers});

delete_game

Delete an event according to the league and date.

DELETE /delete_game/:game_id
Parameters
Response
Example
Parameters
  • game_id: The id of the game to be deleted.

Response
  • Success - 200

    • title: League Deleted

    • message:[league]

  • Failure - 400

Example
var http: HttpClient;
var headers = new HttpHeaders({'Content-Type' : 'application/x-www-form-urlencoded'});
let httpParams = new HttpParams().set('game_id', 24);
return this.http.delete(this.url + "delete_game.php", {
params: httpParams, headers: headers});

get_all_data_by_date_range

Get all games data between a date range.

GET /get_all_data_by_date_range/:start_date/:end_date
Parameters
Response
Example
Parameters
  • start_date: The start of the date range. Format is YYYY-MM-DDTHH:MM:SS.000Z

  • end_date: The end of the date range. Format is YYYY-MM-DDTHH:MM:SS.000Z

Response
  • Success - 200

    • List of all games between start_date and end_date

  • Failure - 400

Example
http.get(url + "get_all_data_by_date_range.php", {
params:{startdate: "2020-02-19T12:00:00.000Z",
enddate: "2020-02-29T12:00:00.000Z"}}).map();

get_all_games

Get all games.

GET /get_all_games/
Response
Example
Response
  • Success - 200

    • List of all games

  • Failure - 400

Example
http.get(url + "get_all_games.php").map()

get_all_sports

Get all sports.

GET /get_all_sports/
Response
Example
Response
  • Success - 200

    • List of all sports

  • Failure - 400

Example
http.get(url + "get_all_sports.php").map()

get_games_by_league_and_date

Get all games data between a date range and for a league.

GET /get_games_by_league_and_date/:league/:start_date/:end_date
Parameters
Response
Example
Parameters
  • league: The sport league (event group).

  • start: The start of the date range. Format is YYYY-MM-DDTHH:MM:SS.000Z.

  • end: The end of the date range. Format is YYYY-MM-DDTHH:MM:SS.

Response
  • Success - 200

    • List of all games for league between start and end

  • Failure - 400

Example
http.get(url + "get_games_by_league_and_date.php", {
params:{league: "NFL",
startdate: "2020-02-19T12:00:00.000Z",
enddate: "2020-02-29T12:00:00.000Z"}}).map();

get_games_by_league

Get all games for a league.

GET /get_games_by_league/:league
Parameters
Response
Example
Parameters
  • league: The league (event group).

Response
  • Success - 200

    • List of all games for league

  • Failure - 400

Example
http.get(url + "get_games_by_league.php", {
params:{league: "NFL" }}).map();

get_leagues_by_sport

Get all leagues from a league.

GET /get_leagues_by_sport/:sport
Parameters
Response
Example
Parameters
  • sport: The id of the sport.

Response
  • Success - 200

    • List of all leagues for sport

  • Failure - 400

Example
http.get(url + "get_leagues_by_sport.php", {
params:{sport: 0}}).map();

get_sports_and_leagues

Get all sports and leagues

GET /get_sports_and_leagues/
Response
Example
Response
  • Success - 200

    • List of all sports

  • Failure

Example
http.get(url + "get_sports_and_leagues.php").map()

get_teams_by_league

Get all teams from a league.

GET /get_teams_by_league/:league
Parameters
Response
Example
Parameters
  • league: The id of the league.

Response
  • Success - 200

    • List of all teams for the league

  • Failure - 400

Example
http.get(url + "get_teams_by_league.php", {
params:{league: 1}}).map();

get_league_data_by_name

Get all league information from its name.

GET /get_league_data_by_name/:leaguename
Parameters
Response
Parameters
  • leaguename: The name of the league.

Response
  • Success - 200

    • All fields for the selected league

  • Failure - 400

last_event_id_by_date_and_league

Get the event id of the last event on a date and for the league.

GET /last_event_id_by_date_and_league/:date/:league
Parameters
Response
Example
Parameters
  • date: Event date in the format YYYY-MM_DD

  • league: The name of the league.

Response
  • Success - 200

    • The last event id for league on date

  • Failure - 400

Example
http.get(url + "last_event_id_by_date_and_league.php", {
params:{
date: "2020-02-29",
league: 1}}).map();

last_event_id

Get the id of the last event.

GET /last_event_id/
Parameters
Example
Parameters
  • Success - 200

    • The last event_id for all leagues

  • Failure - 400

Example
http.get(url + "last_event_id.php").map()

last_game_id_by_date_and_league

Get the game id of the last game on a date and for the league.

GET /last_game_id_by_date_and_league/:date/:league
Parameters
Response
Example
Parameters
  • date: Game date in the format YYYY-MM_DD

  • league: The name of the league.

Response
  • Success - 200

    • The last game id for league on date

  • Failure - 400

Example
http.get(url + "last_game_id_by_date_and_league.php", {
params:{
date: "2020-02-29",
league: 1}}).map();

last_game_id

Get the game id of the last game for all sports.

GET /last_game_id
Response
Example
Response
  • Success - 200

    • The last game id for all sports.

  • Failure - 400

Example
http.get(url + "last_game_id.php").map();

last_game

Get the game details of all games sorted descending so the most recent (last) game is the first record

GET /last_game
Response
Example
Response
  • Success - 200

    • All game records sorted descending.

  • Failure - 400

Example
http.get(url + "last_game").map();

run_replay

Run a data replay for the selected sport and league(s)

GET /run_replay/:sport/:leagues/:start/:end
Parameters
Response
Example
Parameters
  • sport: The name of the sport

  • leagues: The name of the leagues. Pipe separated list, e.g "EPL|La Liga|Serie A

  • start: Start date in the format YYYY-MM_DD

  • end: End date in the format YYYY-MM_DD

Response
  • Success - 200

    • title: Replay completed

    • message: [sport]: { [league]: total, [league]: total, ... }

  • Failure - 400

Example
http.get(url + "run_replay.php", {params:{
sport: "Soccer",
leagues: "EPL | La Liga",
start: "2020-02-01",
end: "2020-01-08"}}).map();

Note: Replays can only be run for one sport at a time.