# API usage
Note that it is not possible to call the API from a web browser. You must do it on the server due to CORS restrictions. This is good for you because it forces you to keep your API token a secret; if Browserboard allowed API requests from web browsers, users would be able to trivially discover your private API token.
# Authenticating
For each request you make to the Browserboard API, pass a header Authorization=Token $YOUR_TOKEN
.
# Example
You can see a complete example of creating a whiteboard in this node.js example (opens new window). Feel free to write in and request additional examples.
# Creating a whiteboard
Creating a whiteboard and constructing its URL is a two-step process.
- Make a POST request to
/api/1.0/whiteboards/
with thename
parameter. Store the response and extract thewbid
field. - Make a GET request to
/api/1.0/whiteboards/<wbid>/access_keys
. Use the approprate URL from theshare_urls
dictionary.
# Reference
# /api/1.0/whiteboards/
- GET: list all whiteboards
- POST: create a new whiteboard
name
: Name of the new whiteboard
# /api/1.0/whiteboards/<wbid>
- GET: list details for one whiteboard
- PUT: update a whiteboard
name
: Name of the new whiteboard
# /api/1.0/whiteboards/<wbid>/access_keys
- GET: list access keys and all share URLs for one whiteboard
# /api/1.0/whiteboards/<wbid>/copy_from_template
- POST: Copy another board's events into this board. Must include
template_id
in POST body. You must be the owner of both boards.template_id
: wbid of the whiteboard to copy from.
# Output of the node.js
example
> npm install
> node examples/node.js $API_TOKEN "Demo whiteboard"
/api/1.0/whiteboards/
{
"name": "Demo whiteboard",
"is_template": false,
"wbid": "...",
"t_created": "2021-10-19T23:08:26.205543Z",
"t_updated": "2021-10-19T23:08:26.205551Z",
"thumbnail_url": null,
"absolute_url": "/whiteboard/..."
}
/api/1.0/whiteboards/.../access_keys
{
"access_keys": {
"view": "...",
"contribute": "...",
"admin": "..."
},
"share_urls": {
"view": "https://browserboard.com/whiteboard/...?access_key=...",
"contribute": "https://browserboard.com/whiteboard/...?access_key=...",
"admin": "https://browserboard.com/whiteboard/...?access_key=..."
}
}
Results:
{
"board": {
"name": "Demo whiteboard",
"is_template": false,
"wbid": "...",
"t_created": "2021-10-19T23:08:26.205543Z",
"t_updated": "2021-10-19T23:08:26.205551Z",
"thumbnail_url": null,
"absolute_url": "/whiteboard/..."
},
"shareURLs": {
"view": "https://browserboard.com/whiteboard/...?access_key=...",
"contribute": "https://browserboard.com/whiteboard/...?access_key=...",
"admin": "https://browserboard.com/whiteboard/...?access_key=..."
}
}