A simple REST API for keeping track of boardgame stats.
Searching boardgames
Parameters
Name | Required | Type | Description |
---|---|---|---|
search |
required | string | The search term |
limit |
optional | int | Maximum results. Default: 100 |
room |
optional | int | The id of the room to search for prioritizing played games |
Response
[
{
"id": 16933,
"name":"Monopoly (1933)"
}
]
Getting room information
Parameters
Name | Required | Type | Description |
---|---|---|---|
room |
required | string | The room name |
Response
{
"id":1,
"hash":"098f6bcd4621d373cade4e832627b4f6",
"createTime":"2019-03-09T11:25:18Z",
"players":[
{
"id":1,
"joinTime":"2019-03-10T13:11:48Z",
"name":"Tom",
"color":"#ffffff"
},
{
"id":2,
"joinTime":"2019-03-14T16:20:26Z",
"name":"Jerry",
"color":"#ff0000"
}
],
"games":[
{
"id":1,
"boardGame":{
"id":98238,
"name":"Mousetrap Trappers (2015)"
},
"gameTime":"2019-03-31T14:38:40Z",
"gamePlayers":[
{
"player":{
"id":1,
"joinTime":"2019-03-14T16:20:35Z",
"name":"Tom",
"color":"#ff0000"
},
"points":100
},
{
"player":{
"id":2,
"joinTime":"2019-03-14T16:20:40Z",
"name":"Jerry",
"color":"#ff0000"
},
"points":1
}
]
}
]
}
Parameters
Name | Required | Type | Description |
---|---|---|---|
room |
required | string | The room name |
Body
{
"name": string,
"color"?: string
}
Response
{
"id":1,
"joinTime":"2019-03-14T16:20:35Z",
"name":"Tom",
"color":"#ff0000"
}
Parameters
Name | Required | Type | Description |
---|---|---|---|
room |
required | string | The room name |
Body
{
"boardGame": {
"id": number
},
"gamePlayers": [
{
"points": number,
"player": {
"id": number
}
}
]
}
Response
{
"id":1,
"boardGame":{
"id":98238,
"name":"Mousetrap Trappers (2015)"
},
"gameTime":"2019-03-31T14:38:40Z",
"gamePlayers":[
{
"player":{
"id":1,
"joinTime":"2019-03-14T16:20:35Z",
"name":"Tom",
"color":"#ff0000"
},
"points":100
},
{
"player":{
"id":2,
"joinTime":"2019-03-14T16:20:40Z",
"name":"Jerry",
"color":"#ff0000"
},
"points":1
}
]
}
+--------------+---------------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+--------------+---------------------+------+-----+---------+----------------+
| boardgame_id | bigint(20) unsigned | NO | PRI | NULL | auto_increment |
| name | varchar(255) | YES | UNI | NULL | |
+--------------+---------------------+------+-----+---------+----------------+
+--------------+---------------------+------+-----+-------------------+----------------+
| Field | Type | Null | Key | Default | Extra |
+--------------+---------------------+------+-----+-------------------+----------------+
| game_id | bigint(20) unsigned | NO | PRI | NULL | auto_increment |
| room_id | bigint(20) unsigned | NO | MUL | NULL | |
| boardgame_id | bigint(20) unsigned | NO | MUL | NULL | |
| game_time | timestamp | NO | | CURRENT_TIMESTAMP | |
+--------------+---------------------+------+-----+-------------------+----------------+
+---------------+---------------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+---------------+---------------------+------+-----+---------+----------------+
| gameplayer_id | bigint(20) unsigned | NO | PRI | NULL | auto_increment |
| game_id | bigint(20) unsigned | NO | MUL | NULL | |
| player_id | bigint(20) unsigned | NO | MUL | NULL | |
| points | int(11) | YES | | NULL | |
+---------------+---------------------+------+-----+---------+----------------+
+-----------+---------------------+------+-----+-------------------+----------------+
| Field | Type | Null | Key | Default | Extra |
+-----------+---------------------+------+-----+-------------------+----------------+
| player_id | bigint(20) unsigned | NO | PRI | NULL | auto_increment |
| room_id | bigint(20) unsigned | NO | MUL | NULL | |
| name | varchar(255) | NO | | <empty> | |
| color | varchar(7) | NO | | #7dbc67 | |
| join_time | timestamp | NO | | CURRENT_TIMESTAMP | |
+-----------+---------------------+------+-----+-------------------+----------------+
+-------------+---------------------+------+-----+-------------------+----------------+
| Field | Type | Null | Key | Default | Extra |
+-------------+---------------------+------+-----+-------------------+----------------+
| room_id | bigint(20) unsigned | NO | PRI | NULL | auto_increment |
| room_hash | char(32) | NO | MUL | NULL | |
| create_time | timestamp | NO | | CURRENT_TIMESTAMP | |
+-------------+---------------------+------+-----+-------------------+----------------+