API Introduction

Starting guide for the 1Pilot REST API

Generate Access Token

To use the API you need to have an Access Token, you can generate one from your Profile page by clicking the "Create New Token" button.

On the modal, set a name and choose if this token will have Write access to the API (write access means you can create sites and tags via the API) once this is done, click on the create button and save the token in a safe place: this is the only time it will be shown.


All requests through the API must be authenticated using the previously generated token.

The token must be passed as a bearer token in the "Authorization" HTTP header as following :

Authorization: Bearer $TOKEN

API endpoint

Our API is available at the following base URI: https://app.1pilot.io/api/v1

Test Call

GET /ping

A simple ping endpoint that you can use to test if you're correctly authenticated.

curl -X GET https://app.1pilot.io/api/v1/ping \
    -H "Accept: application/json" \
    -H "Authorization: Bearer $TOKEN"
Authorization Authentication Token
value: Bearer $TOKEN
Accept application/json


HTTP 200 You are successfully authenticated.

    "message": "pong"
HTTP 401 You have not provided the Authorization header or the provided one is not valid.

    "message": "Unauthenticated."


All list results are paginated with "links" & "meta" informations in the response body

    "data": [
    "links": { 
        "first": "https://app.1pilot.io/api/v1/sites/1/logs?page=1", 
        "last": "https://app.1pilot.io/api/v1/sites/1/logs?page=4", 
        "prev": "https://app.1pilot.io/api/v1/sites/1/logs?page=1", 
        "next": "https://app.1pilot.io/api/v1/sites/1/logs?page=3" 
    "meta": { 
        "current_page": 2, 
        "from": 16, 
        "last_page": 4, 
        "path": "https://app.1pilot.io/api/v1/sites/1/logs", 
        "per_page": 15, 
        "to": 30, 
        "total": 53 

You can use the page query parameter to follow the pagination.