curl -X POST \
-H "Content-Type: application/json" \
-H "QB-Token: 199b1d9ec0dedeb19d81283b3b2a32b80f012bba" \
-d '{
"score_value":665,
"progress":"0.12",
"expert_mode":false,
"game_mode_name":"deathmatch",
"user_location":"11.13, 45.52",
"date":"2019-09-21 21:21:00",
"completed_levels":[
1,
2,
3
]
}' \
https://api.quickblox.com/data/ScoreTable.json
{
"_id": "5d866b53a28f9a5ad51cb562",
"_parent_id": null,
"completed_levels": [
1,
2,
3
],
"created_at": 1569090387,
"date": "2019-09-21T21:21:00Z",
"expert_mode": false,
"game_mode_name": "deathmatch",
"progress": 0.12,
"score_value": 665,
"updated_at": 1569090387,
"user_avatar": null,
"user_id": 96753878,
"user_location": [
11.13,
45.52
],
"permissions": {
"read": {
"access": "open"
},
"update": {
"access": "owner"
},
"delete": {
"access": "owner"
}
}
}
{}
Create Record
Create a new record of particular class.
curl -X POST \
-H "Content-Type: application/json" \
-H "QB-Token: 199b1d9ec0dedeb19d81283b3b2a32b80f012bba" \
-d '{
"score_value":665,
"progress":"0.12",
"expert_mode":false,
"game_mode_name":"deathmatch",
"user_location":"11.13, 45.52",
"date":"2019-09-21 21:21:00",
"completed_levels":[
1,
2,
3
]
}' \
https://api.quickblox.com/data/ScoreTable.json
{
"_id": "5d866b53a28f9a5ad51cb562",
"_parent_id": null,
"completed_levels": [
1,
2,
3
],
"created_at": 1569090387,
"date": "2019-09-21T21:21:00Z",
"expert_mode": false,
"game_mode_name": "deathmatch",
"progress": 0.12,
"score_value": 665,
"updated_at": 1569090387,
"user_avatar": null,
"user_id": 96753878,
"user_location": [
11.13,
45.52
],
"permissions": {
"read": {
"access": "open"
},
"update": {
"access": "owner"
},
"delete": {
"access": "owner"
}
}
}
{}
Recipes
Create record
Create record
1. Set record fields.
curl -X POST \
-H "Content-Type: application/json" \
-H "QB-Token: 199b1d9ec0dedeb19d81283b3b2a32b80f012bba" \
-d '{
"score_value":665,
"progress":"0.12",
"expert_mode":false,
"game_mode_name":"deathmatch",
"user_location":"11.13, 45.52",
"date":"2019-09-21 21:21:00",
"completed_levels":[
1,
2,
3
]
}' \
"https://api.quickblox.com/data/ScoreTable.json"
2. Set a class.
ScoreTable class is specified.curl -X POST \
-H "Content-Type: application/json" \
-H "QB-Token: 199b1d9ec0dedeb19d81283b3b2a32b80f012bba" \
-d '{
"score_value":665,
"progress":"0.12",
"expert_mode":false,
"game_mode_name":"deathmatch",
"user_location":"11.13, 45.52",
"date":"2019-09-21 21:21:00",
"completed_levels":[
1,
2,
3
]
}' \
"https://api.quickblox.com/data/ScoreTable.json"
3. As a result, the API returns a new record.
{
"_id": "5d866b53a28f9a5ad51cb562",
"_parent_id": null,
"completed_levels": [
1,
2,
3
],
"created_at": 1569090387,
"date": "2019-09-21T21:21:00Z",
"expert_mode": false,
"game_mode_name": "deathmatch",
"progress": 0.12,
"score_value": 665,
"updated_at": 1569090387,
"user_avatar": null,
"user_id": 96753878,
"user_location": [
11.13,
45.52
],
"permissions": {
"read": {
"access": "open"
},
"update": {
"access": "owner"
},
"delete": {
"access": "owner"
}
}
}
Create record with permissions
Create record with permissions
1. Set record fields
curl -X POST \
-H "Content-Type: application/json" \
-H "QB-Token: 199b1d9ec0dedeb19d81283b3b2a32b80f012bba" \
-d '{
"score_value":665,
"progress":"0.12",
"expert_mode":false,
"game_mode_name":"deathmatch",
"user_location":"11.13, 45.52",
"date":"2019-09-21 21:21:00",
"completed_levels":[
1,
2,
3
],
}' \
"https://api.quickblox.com/data/ScoreTable.json"
2. Use a `permissions` parameter to set operations allowed and access levels
curl -X POST \
-H "Content-Type: application/json" \
-H "QB-Token: 199b1d9ec0dedeb19d81283b3b2a32b80f012bba" \
-d '{
"score_value":665,
"progress":"0.12",
"expert_mode":false,
"game_mode_name":"deathmatch",
"user_location":"11.13, 45.52",
"date":"2019-09-21 21:21:00",
"completed_levels":[
1,
2,
3
],
"permissions": {}
}' \
"https://api.quickblox.com/data/ScoreTable.json"
3. Set CRUD operations
read, and update operations are set.curl -X POST \
-H "Content-Type: application/json" \
-H "QB-Token: 199b1d9ec0dedeb19d81283b3b2a32b80f012bba" \
-d '{
"score_value":665,
"progress":"0.12",
"expert_mode":false,
"game_mode_name":"deathmatch",
"user_location":"11.13, 45.52",
"date":"2019-09-21 21:21:00",
"completed_levels":[
1,
2,
3
],
"permissions": {
"read": {},
"update": {}
}
}' \
"https://api.quickblox.com/data/ScoreTable.json"
4. Set access levels
owner, and open_for_groups access levels are set.curl -X POST \
-H "Content-Type: application/json" \
-H "QB-Token: 199b1d9ec0dedeb19d81283b3b2a32b80f012bba" \
-d '{
"score_value":665,
"progress":"0.12",
"expert_mode":false,
"game_mode_name":"deathmatch",
"user_location":"11.13, 45.52",
"date":"2019-09-21 21:21:00",
"completed_levels":[
1,
2,
3
],
"permissions": {
"read": {
"access":"owner",
},
"update": {
"access":"open_for_groups"
}
}
}' \
"https://api.quickblox.com/data/ScoreTable.json"
5. Set a user group
world tag can make a required operation.curl -X POST \
-H "Content-Type: application/json" \
-H "QB-Token: 199b1d9ec0dedeb19d81283b3b2a32b80f012bba" \
-d '{
"score_value":665,
"progress":"0.12",
"expert_mode":false,
"game_mode_name":"deathmatch",
"user_location":"11.13, 45.52",
"date":"2019-09-21 21:21:00",
"completed_levels":[
1,
2,
3
],
"permissions": {
"read": {
"access":"owner",
},
"update": {
"access":"open_for_groups",
"user_groups":[
"world"
]
}
}
}' \
"https://api.quickblox.com/data/ScoreTable.json"
6. As a result, the API returns a new record.
{
"_id": "5d866b53a28f9a5ad51cb562",
"_parent_id": null,
"completed_levels": [
1,
2,
3
],
"created_at": 1569090387,
"date": "2019-09-21T21:21:00Z",
"expert_mode": false,
"game_mode_name": "deathmatch",
"progress": 0.12,
"score_value": 665,
"updated_at": 1569090387,
"user_avatar": null,
"user_id": 96753878,
"user_location": [
11.13,
45.52
],
"permissions": {
"read": {
"access": "owner"
},
"update": {
"access": "open_for_groups",
"user_groups": [
"world"
]
},
"delete": {
"access": "owner"
}
}
}
Create record with API key
Create record with API key
1. Use 'Authorization' header to pass API key
curl -X POST \
-H "Content-Type: application/json" \
-H "Authorization: ApiKey 28irlNAGasWDSupO9Vw0BBMZfuHrAUYKpmroS9yBORI" \
-d '{
"score_value":665,
"progress":"0.12",
"expert_mode":false,
"game_mode_name":"deathmatch",
"user_location":"11.13, 45.52",
"date":"2019-09-21 21:21:00",
"completed_levels":[
1,
2,
3
]
}' \
"https://api.quickblox.com/data/ScoreTable.json"
2. Set record fields.
curl -X POST \
-H "Content-Type: application/json" \
-H "Authorization: ApiKey 28irlNAGasWDSupO9Vw0BBMZfuHrAUYKpmroS9yBORI" \
-d '{
"score_value":665,
"progress":"0.12",
"expert_mode":false,
"game_mode_name":"deathmatch",
"user_location":"11.13, 45.52",
"date":"2019-09-21 21:21:00",
"completed_levels":[
1,
2,
3
]
}' \
"https://api.quickblox.com/data/ScoreTable.json"
3. Set a class.
ScoreTable class is specified.curl -X POST \
-H "Content-Type: application/json" \
-H "Authorization: ApiKey 28irlNAGasWDSupO9Vw0BBMZfuHrAUYKpmroS9yBORI" \
-d '{
"score_value":665,
"progress":"0.12",
"expert_mode":false,
"game_mode_name":"deathmatch",
"user_location":"11.13, 45.52",
"date":"2019-09-21 21:21:00",
"completed_levels":[
1,
2,
3
]
}' \
"https://api.quickblox.com/data/ScoreTable.json"
4. As a result, the API returns a new record.
{
"_id": "5d866b53a28f9a5ad51cb562",
"_parent_id": null,
"completed_levels": [
1,
2,
3
],
"created_at": 1569090387,
"date": "2019-09-21T21:21:00Z",
"expert_mode": false,
"game_mode_name": "deathmatch",
"progress": 0.12,
"score_value": 665,
"updated_at": 1569090387,
"user_avatar": null,
"user_id": 96753878,
"user_location": [
11.13,
45.52
],
"permissions": {
"read": {
"access": "open"
},
"update": {
"access": "owner"
},
"delete": {
"access": "owner"
}
}
}
Create record with permissions with API key
Create record with permissions with API key
1. Use 'Authorization' header to pass API key
curl -X POST \
-H "Content-Type: application/json" \
-H "Authorization: ApiKey 28irlNAGasWDSupO9Vw0BBMZfuHrAUYKpmroS9yBORI" \
-d '{
"score_value":665,
"progress":"0.12",
"expert_mode":false,
"game_mode_name":"deathmatch",
"user_location":"11.13, 45.52",
"date":"2019-09-21 21:21:00",
"completed_levels":[
1,
2,
3
],
}' \
"https://api.quickblox.com/data/ScoreTable.json"
2. Set record fields
curl -X POST \
-H "Content-Type: application/json" \
-H "Authorization: ApiKey 28irlNAGasWDSupO9Vw0BBMZfuHrAUYKpmroS9yBORI" \
-d '{
"score_value":665,
"progress":"0.12",
"expert_mode":false,
"game_mode_name":"deathmatch",
"user_location":"11.13, 45.52",
"date":"2019-09-21 21:21:00",
"completed_levels":[
1,
2,
3
],
}' \
"https://api.quickblox.com/data/ScoreTable.json"
3. Use a `permissions` parameter to set operations allowed and access levels
curl -X POST \
-H "Content-Type: application/json" \
-H "Authorization: ApiKey 28irlNAGasWDSupO9Vw0BBMZfuHrAUYKpmroS9yBORI" \
-d '{
"score_value":665,
"progress":"0.12",
"expert_mode":false,
"game_mode_name":"deathmatch",
"user_location":"11.13, 45.52",
"date":"2019-09-21 21:21:00",
"completed_levels":[
1,
2,
3
],
"permissions": {}
}' \
"https://api.quickblox.com/data/ScoreTable.json"
4. Set CRUD operations
read, and update operations are set.curl -X POST \
-H "Content-Type: application/json" \
-H "Authorization: ApiKey 28irlNAGasWDSupO9Vw0BBMZfuHrAUYKpmroS9yBORI" \
-d '{
"score_value":665,
"progress":"0.12",
"expert_mode":false,
"game_mode_name":"deathmatch",
"user_location":"11.13, 45.52",
"date":"2019-09-21 21:21:00",
"completed_levels":[
1,
2,
3
],
"permissions": {
"read": {},
"update": {}
}
}' \
"https://api.quickblox.com/data/ScoreTable.json"
5. Set access levels
owner, and open_for_groups access levels are set.curl -X POST \
-H "Content-Type: application/json" \
-H "Authorization: ApiKey 28irlNAGasWDSupO9Vw0BBMZfuHrAUYKpmroS9yBORI" \
-d '{
"score_value":665,
"progress":"0.12",
"expert_mode":false,
"game_mode_name":"deathmatch",
"user_location":"11.13, 45.52",
"date":"2019-09-21 21:21:00",
"completed_levels":[
1,
2,
3
],
"permissions": {
"read": {
"access":"owner",
},
"update": {
"access":"open_for_groups"
}
}
}' \
"https://api.quickblox.com/data/ScoreTable.json"
6. Set a user group
world tag can make a required operation.curl -X POST \
-H "Content-Type: application/json" \
-H "Authorization: ApiKey 28irlNAGasWDSupO9Vw0BBMZfuHrAUYKpmroS9yBORI" \
-d '{
"score_value":665,
"progress":"0.12",
"expert_mode":false,
"game_mode_name":"deathmatch",
"user_location":"11.13, 45.52",
"date":"2019-09-21 21:21:00",
"completed_levels":[
1,
2,
3
],
"permissions": {
"read": {
"access":"owner",
},
"update": {
"access":"open_for_groups",
"user_groups":[
"world"
]
}
}
}' \
"https://api.quickblox.com/data/ScoreTable.json"
7. As a result, the API returns a new record.
{
"_id": "5d866b53a28f9a5ad51cb562",
"_parent_id": null,
"completed_levels": [
1,
2,
3
],
"created_at": 1569090387,
"date": "2019-09-21T21:21:00Z",
"expert_mode": false,
"game_mode_name": "deathmatch",
"progress": 0.12,
"score_value": 665,
"updated_at": 1569090387,
"user_avatar": null,
"user_id": 96753878,
"user_location": [
11.13,
45.52
],
"permissions": {
"read": {
"access": "owner"
},
"update": {
"access": "open_for_groups",
"user_groups": [
"world"
]
},
"delete": {
"access": "owner"
}
}
}
POST request with application/json or application/x-www-form-urlencoded content
type of the POST body. Received values will be cast according to the class defined in QuickBlox Dashboard.
The field that is present in the class but not specified in the POST request will have a null value.
Allowed permissions
| Permission | Syntax | Example |
|---|---|---|
| Open | permissions.<CRUD_operation>.access | permissions.read.access=open |
| Owner | permissions.<CRUD_operation>.access | permissions.read.access=owner |
| Open for users IDs | permissions.<CRUD_operation>.access=open_for_users_ids permissions.<CRUD_operation>.ids=id_1,id_2,id_3,… | permissions.update.access=open_for_users_ids permissions.update.ids=3,12 |
| Open for groups | permissions.<CRUD_operation>.access=open_for_groups permissions.<CRUD_operation>.groups=group_name_1,group_name_2 | permissions.delete.access=open_for_groups permissions.delete.groups=experience,rate |
Path Parameters
Body Parameters
permission.<CRUD_operation>.access=<value> permission.<CRUD_operation>.<option>=<value>CRUD operations: create, read, update, delete. CRUD access values:
open, owner, open_for_users_ids, open_for_groups. CRUD options:
ids, groups.Headers
ApiKey {your_api_key}. Must be used
either QB-Token or Authorization.Responses
201
201
400
400
curl -X POST \
-H "Content-Type: application/json" \
-H "QB-Token: 199b1d9ec0dedeb19d81283b3b2a32b80f012bba" \
-d '{
"score_value":665,
"progress":"0.12",
"expert_mode":false,
"game_mode_name":"deathmatch",
"user_location":"11.13, 45.52",
"date":"2019-09-21 21:21:00",
"completed_levels":[
1,
2,
3
]
}' \
https://api.quickblox.com/data/ScoreTable.json
{
"_id": "5d866b53a28f9a5ad51cb562",
"_parent_id": null,
"completed_levels": [
1,
2,
3
],
"created_at": 1569090387,
"date": "2019-09-21T21:21:00Z",
"expert_mode": false,
"game_mode_name": "deathmatch",
"progress": 0.12,
"score_value": 665,
"updated_at": 1569090387,
"user_avatar": null,
"user_id": 96753878,
"user_location": [
11.13,
45.52
],
"permissions": {
"read": {
"access": "open"
},
"update": {
"access": "owner"
},
"delete": {
"access": "owner"
}
}
}
{}
Was this page helpful?