The Robin Developer Hub

Welcome to the Robin developer hub. You'll find comprehensive guides and documentation to help you start working with Robin as quickly as possible, as well as support if you get stuck. Let's jump right in!

Get Started    

Getting Started

Robin's API gives developers the power to interact with their team's data (locations, spaces, presence, etc.) and build third-party applications to extend Robin's capabilities.

Deprecations and future breaking changes

  • The GET /free-busy/spaces endpoints will be removed some time in the future. Please use the POST /free-busy/spaces endpoint instead.
  • Event properties started_at and ended_at will be removed some time in the future. Please use start and end instead.
  • The ?include=amenities submodel for spaces will be removed some time in the future. Please use ?include=space_amenities instead.

Base URL

All requests should be made to https://api.robinpowered.com/v1.0. Please note that this may change with future releases of the API.

Authorization

Every API request must contain an Authorization header with a valid access token. You'll need one to get started.

Get your token

At a Hackathon?

You can skip this step and use your event's custom link to generate your token instead. #easy

Log into the web dashboard and generate a new token via your team's integration settings. (Note: You must be an administrator)

Example Authorization header

Authorization: Access-Token [[app:Token]]
# Standard CURL request with authorization header
curl -X GET https://api.robinpowered.com/v1.0/spaces/:id
    -H "Authorization: Access-Token [[app:Token]]"

Response structure

All API responses share a basic JSON structure. The response is always an object with two properties meta and data and a conditional third property, paging.

The examples below show what full responses looks like:

Success

{
  "meta": {
    "status_code": 200,
    "status": "OK",
    "message": "",
    "more_info": {}
  },
  "data": [
    {
      "space_id": 1,
      "user_id": 9,
      "last_seen_at": "2014-05-22T14:49:48+0000",
      "arrived_at": "2014-05-22T14:49:48+0000",
      "session_ttl": 30,
      "session_active": true,
      "user": {
        "id": 1,
        "access_level": 9001,
        "name": "George Jetson",
        "slug": "gjetson",
        "avatar": "",
        "created_at": "2014-05-05T16:06:58+0000",
        "updated_at": "2014-05-05T16:06:58+0000",
        "primary_email": {
          "email": "gjetson@robinpowered.com",
          "is_verified": true
        }
      }
    }
  ],
  "paging": {
    "page": 1,
    "per_page": 10
  }
}

Error

{
   "meta":{
      "status_code":400,
      "status":"INVALID_PARAMETERS",
      "message":"The posted data did not pass validation",
      "more_info":{
         "name":[
            "can't be blank"
         ]
      }
   },
   "data":{

   }
}

Common response codes

Success

Response Code
Title
Meaning

200

SUCCESS

The response completed successfully

201

CREATED

The request was a successful and a new resource was created as a result.

Error:

Response Code
Title
Meaning

400

BAD_REQUEST

There was an error in the request parameters. This error is most commonly send when trying to create or modify a resource with invalid attributes.

401

UNAUTHORIZED

The Authorization header is missing or invalid.

403

FORBIDDEN

The authorized entity is not permitted to view or modify a resource.

404

NOT_FOUND

The resource does not exist.

HTTP request methods

Method
Description

GET

Retrieves a resource

POST

Creates a resource

PUT

Creates or replaces a resource

PATCH

Updates an existing resource

DELETE

Removes a resource

Getting Started


Robin's API gives developers the power to interact with their team's data (locations, spaces, presence, etc.) and build third-party applications to extend Robin's capabilities.

Suggested Edits are limited on API Reference Pages

You can only suggest edits to Markdown body content, but not to the API spec.