REST API v1.1 Resources


Authentication is the first step when using the API.

Resource Description
POST /token Authenticates you as a valid API user and returns a token to use in subsequent API calls. A device secret is also returned that can be used in future authenticate calls to re-identify as a specific device.

Ripl is made up of things. A thing is a specific physical or virtual object. It could be a coffee pot, a 3D printer, DVD rendering software, a sensor, or whatever your product is.

Resource Description
POST /thing Create or retrieve a thing. It takes in a name and optional product id and returns a thing_id and code. The thing_id is used to interact with that thing, and is specific to your api secret and device secret. Subsequent calls with the same name, api secret, and device secret will return the same thing_id.
POST /settings/product_type Define one or multiple product types. This is a one-time operation to define what categories of things you want. For example, if you make coffee pots and have 3 models, you could define 3 product types, one for each model. Each product type can have a specific image and profile page design defined. /create, /update, /delete are available.

The feed is a reverse chronological stream of messages about new things happening with a thing. For example, a coffee pot may post a new feed message: "Your coffee is ready!".

Resource Description
POST /feed Creates a new feed message. These messages show up in the feed section of the app and are specific to an individual thing.
POST /settings/feed_category Define one or multiple feed category types. This is a one-time operation to define what categories of feed messages you want for a product type. Feed categories allow a user to filter and define alerts for different categories of messages individually. /create, /update, /delete are available.

Each thing can have real-time status defined. Status can be any key/value pair. It is commonly used to update on current state, progress, and condition of the thing.

Resource Description
POST /status Updates the status of a thing. One or multiple key/value pairs can be sent at once.
POST /settings/status_key Define one or multiple status keys. This is a one-time operation to define what set of status keys you want for a product type. /create, /update, /delete are available.

Receive commands from the mobile app. For example, receive a command to turn on a light bulb, or change its color.

Resource Description
GET /command/listen Listen for commands. This call will remain open for up to 2 minutes unless a command is available in which case it will immediately return with the command and associated parameters.
POST /command/confirm After receiving a command and processing it, respond with a POST to confirm to the user that the command has been executed.