NAV undefined
undefined
bash

Introduction

Welcome to the Rova API! Use the API to interact with your Rova data automatically.

You can view code examples in the dark area to the right, and you can switch the programming language of the examples with the tabs in the top right.

We recommend testing the API on one of the plans in your organization's client sandbox before using the API on active plans.

This example API documentation page was created with Slate and is hosted on GitHub. Feel free to send us pull requests or create issues by going to the repository.

Authentication

# Add the correct header on each request
curl "api_endpoint_here"
  -H "X-Api-Key: {your_api_key}"

Make sure to replace {your_api_key} with your API key.

Rova uses API keys to allow access to the API. Administrators can find their API key by navigating to the Integrations page from the Admin menu.

Rova expects for the API key to be included in all API requests to the server in a header that looks like the following:

X-Api-Key: {your_api_key}

Resources

Clients

Get All Clients

curl https://app.rova.io/api/v1/clients \
-H "X-Api-Key: {your_api_key}"

This endpoint returns a JSON array with clients structured in this way:

{
  "id": 1234,
  "name": "Client 1"
}

This endpoint returns all active clients for your organization.

HTTP Request

GET https://app.rova.io/api/v1/clients

Plans

Get All Plans for a Client

curl https://app.rova.io/api/v1/client/{client_id}/plans
-H "X-Api-Key: {your_api_key}"

Returns an array of plans structured like so:

{
  "id": 123,
  "name": "Plan 1",
  "horizonDate": "2017-10-31T00:00:00"
}

The plans endpoint returns all active plans for a client.

HTTP Request

GET https://app.rova.io/api/v1/client/{client_id}/plans

Measurements

Get All Measurements in a Plan

curl https://app.rova.io/api/v1/client/{client_id}/plan/{plan_id}/measurements \
-H "X-Api-Key: {your_api_key}"

Returns an array of measurements structured like so:

{
  "id": 123,
  "displayId": 1,
  "description" "My measurement description"
}

This endpoint returns all measurements in a plan.

HTTP Request

GET https://app.rova.io/api/v1/client/{client_id}/plan/{plan_id}/measurements

Measurement Activity

Add Measurement Activity

curl https://app.rova.io/api/v1/client/{client_id}/plan/{plan_id}/measurement/{measurement_id}/activities \ 
-H "X-Api-Key: {your_api_key}" \
-X POST \
-F value={value} \
-F comment="{comment}"

The above command returns the created measurement activity in JSON:

{
  "id": 123,
  "date": "2017-04-24T00:00:00",
  "comment": "My comment",
  "status": "Green",
  "value": 100
}

This endpoint adds a new activity to a measurement.

HTTP Request

POST https://app.rova.io/api/v1/client/{client_id}/plan/{plan_id}/measurement/{measurement_id}/activities

Post Body

Parameter Required Description
value true The value for the activity.
comment false A comment for this activity.

Increment Measurement Activity

curl https://app.rova.io/api/v1/client/{client_id}/plan/{plan_id}/measurement/{measurement_id}/activities/increment \
-H "X-Api-Key: {your_api_key}" \
-X POST \
-F incrementBy={value} \
-F comment="{comment}"

This endpoint will modify the last recorded activity by a value you choose.

HTTP Request

POST https://app.rova.io/api/v1/client/{client_id}/plan/{plan_id}/measurement/{measurement_id}/activities/increment

Post Body

Paramter Required Description
incrementBy true The value to increment the last recorded activity by.
comment false A comment for this activity.

Errors

The Rova API uses the following error codes:

Error Code Meaning
400 Bad Request -- There was some parameter missing from your request. The status message will contain more details.
401 Unauthorized -- Missing or invalid API key
404 Not Found -- The specified endpoint could not be found
500 Internal Server Error -- We had a problem with our server. Try again later.
503 Service Unavailable -- We're temporarially offline for maintanance. Please try again later.