MENU navbar-image

Introduction

This documentation aims to provide all the information you need to work with our API.

Authenticating requests

To authenticate requests, include an Authorization header with the value "Bearer {YOUR_AUTH_KEY}".

All authenticated endpoints are marked with a requires authentication badge in the documentation below.

You can retrieve a new token by visiting Settings > API Tokens.

Account management

Users

Retrieve the authenticated user.

requires authentication

Get the authenticated user.

Example request:
curl --request GET \
    --get "https://prm-1.elitdevs.com/api/user" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
$client = new \GuzzleHttp\Client();
$url = 'https://prm-1.elitdevs.com/api/user';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
const url = new URL(
    "https://prm-1.elitdevs.com/api/user"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": {
        "id": "9ddaeeed-a7a2-4a24-b396-fdf6f82da67f",
        "name": "Ena Vandervort",
        "email": "estell14@example.org",
        "created_at": "2024-12-31T09:12:49Z",
        "updated_at": "2024-12-31T09:12:49Z",
        "links": {
            "self": "https://prm-1.elitdevs.com/api/users/9ddaeeed-a7a2-4a24-b396-fdf6f82da67f"
        }
    }
}
 

Example response (404, User not found):


{
    "message": "User not found"
}
 

Request      

GET api/user

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

List all users.

requires authentication

Get all the users in the account.

Example request:
curl --request GET \
    --get "https://prm-1.elitdevs.com/api/users?limit=10" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
$client = new \GuzzleHttp\Client();
$url = 'https://prm-1.elitdevs.com/api/users';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'query' => [
            'limit' => '10',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
const url = new URL(
    "https://prm-1.elitdevs.com/api/users"
);

const params = {
    "limit": "10",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": [
        {
            "id": "9ddaeeed-af37-4b19-a0c6-bba209416660",
            "name": "Janessa Bartoletti",
            "email": "liliana.bechtelar@example.net",
            "created_at": "2024-12-31T09:12:49Z",
            "updated_at": "2024-12-31T09:12:49Z",
            "links": {
                "self": "http://prm-1.elitdevs.com/api/users/9ddaeeed-af37-4b19-a0c6-bba209416660"
            }
        },
        {
            "id": "9ddaeeed-afd2-46ec-9136-bd1b73cb256a",
            "name": "Margarita Keebler",
            "email": "hailie25@example.com",
            "created_at": "2024-12-31T09:12:49Z",
            "updated_at": "2024-12-31T09:12:49Z",
            "links": {
                "self": "http://prm-1.elitdevs.com/api/users/9ddaeeed-afd2-46ec-9136-bd1b73cb256a"
            }
        }
    ]
}
 

Request      

GET api/users

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Query Parameters

limit   integer  optional  

A limit on the number of objects to be returned. Limit can range between 1 and 100, and the default is 10. Example: 10

Retrieve a user.

requires authentication

Get a specific user object.

Example request:
curl --request GET \
    --get "https://prm-1.elitdevs.com/api/users/amet" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
$client = new \GuzzleHttp\Client();
$url = 'https://prm-1.elitdevs.com/api/users/amet';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
const url = new URL(
    "https://prm-1.elitdevs.com/api/users/amet"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": {
        "id": "9ddaeeed-b2f2-4a81-8a10-3c0778f4019c",
        "name": "Bernadine Collins",
        "email": "anika44@example.net",
        "created_at": "2024-12-31T09:12:49Z",
        "updated_at": "2024-12-31T09:12:49Z",
        "links": {
            "self": "http://prm-1.elitdevs.com/api/users/9ddaeeed-b2f2-4a81-8a10-3c0778f4019c"
        }
    }
}
 

Request      

GET api/users/{id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the user. Example: amet

Vault management

Vaults

List all vaults.

requires authentication

Get all the vaults in the account.

Example request:
curl --request GET \
    --get "https://prm-1.elitdevs.com/api/vaults?limit=10" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
$client = new \GuzzleHttp\Client();
$url = 'https://prm-1.elitdevs.com/api/vaults';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'query' => [
            'limit' => '10',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
const url = new URL(
    "https://prm-1.elitdevs.com/api/vaults"
);

const params = {
    "limit": "10",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": [
        {
            "id": "9ddaeeed-b72e-4029-a24f-f03eef0a50ec",
            "name": "Gino Upton DDS",
            "description": "Nihil est ut placeat et tempore.",
            "created_at": "2024-12-31T09:12:49Z",
            "updated_at": "2024-12-31T09:12:49Z",
            "links": {
                "self": "http://prm-1.elitdevs.com/api/vaults/9ddaeeed-b72e-4029-a24f-f03eef0a50ec"
            }
        },
        {
            "id": "9ddaeeed-b7bc-4254-bae2-c74e75a67ed4",
            "name": "Joesph Reinger",
            "description": "Reiciendis voluptatum reiciendis ut sunt vitae pariatur qui.",
            "created_at": "2024-12-31T09:12:49Z",
            "updated_at": "2024-12-31T09:12:49Z",
            "links": {
                "self": "http://prm-1.elitdevs.com/api/vaults/9ddaeeed-b7bc-4254-bae2-c74e75a67ed4"
            }
        }
    ]
}
 

Request      

GET api/vaults

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Query Parameters

limit   integer  optional  

A limit on the number of objects to be returned. Limit can range between 1 and 100, and the default is 10. Example: 10

Create a vault.

requires authentication

Creates a vault object.

Example request:
curl --request POST \
    "https://prm-1.elitdevs.com/api/vaults" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"name\": \"asperiores\",
    \"description\": \"Perspiciatis qui nisi accusantium dicta harum officia voluptas.\"
}"
$client = new \GuzzleHttp\Client();
$url = 'https://prm-1.elitdevs.com/api/vaults';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'name' => 'asperiores',
            'description' => 'Perspiciatis qui nisi accusantium dicta harum officia voluptas.',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
const url = new URL(
    "https://prm-1.elitdevs.com/api/vaults"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "name": "asperiores",
    "description": "Perspiciatis qui nisi accusantium dicta harum officia voluptas."
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (201):


{
    "data": {
        "id": "9ddaeeed-b93d-4666-9cb4-8918f54a2541",
        "name": "Kurt Gulgowski DDS",
        "description": "Optio fuga sit nihil nostrum doloribus qui earum.",
        "created_at": "2024-12-31T09:12:49Z",
        "updated_at": "2024-12-31T09:12:49Z",
        "links": {
            "self": "http://prm-1.elitdevs.com/api/vaults/9ddaeeed-b93d-4666-9cb4-8918f54a2541"
        }
    }
}
 

Request      

POST api/vaults

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Body Parameters

name   string   

The name of the vault. Max 255 characters. Example: asperiores

description   string  optional  

The description of the vault. Max 65535 characters. Example: Perspiciatis qui nisi accusantium dicta harum officia voluptas.

Retrieve a vault.

requires authentication

Get a specific vault object.

Example request:
curl --request GET \
    --get "https://prm-1.elitdevs.com/api/vaults/et" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
$client = new \GuzzleHttp\Client();
$url = 'https://prm-1.elitdevs.com/api/vaults/et';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
const url = new URL(
    "https://prm-1.elitdevs.com/api/vaults/et"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": {
        "id": "9ddaeeed-bab3-4766-a52b-510c2876be90",
        "name": "Dr. Frederick Konopelski",
        "description": "Accusantium nisi minima atque ex sequi quis.",
        "created_at": "2024-12-31T09:12:49Z",
        "updated_at": "2024-12-31T09:12:49Z",
        "links": {
            "self": "http://prm-1.elitdevs.com/api/vaults/9ddaeeed-bab3-4766-a52b-510c2876be90"
        }
    }
}
 

Request      

GET api/vaults/{id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the vault. Example: et

Update a vault.

requires authentication

Updates a vault object.

If the call succeeds, the response is the same as the one for the Retrieve a vault endpoint.

Example request:
curl --request PUT \
    "https://prm-1.elitdevs.com/api/vaults/dignissimos" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"name\": \"sit\",
    \"description\": \"Qui veniam hic cumque non adipisci aliquam.\"
}"
$client = new \GuzzleHttp\Client();
$url = 'https://prm-1.elitdevs.com/api/vaults/dignissimos';
$response = $client->put(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'name' => 'sit',
            'description' => 'Qui veniam hic cumque non adipisci aliquam.',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
const url = new URL(
    "https://prm-1.elitdevs.com/api/vaults/dignissimos"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "name": "sit",
    "description": "Qui veniam hic cumque non adipisci aliquam."
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (200):


{
    "data": {
        "id": "9ddaeeed-bc6b-45ed-81c6-cefb83ccab12",
        "name": "Ruby O'Conner Jr.",
        "description": "Laborum aliquam sit necessitatibus odit.",
        "created_at": "2024-12-31T09:12:49Z",
        "updated_at": "2024-12-31T09:12:49Z",
        "links": {
            "self": "http://prm-1.elitdevs.com/api/vaults/9ddaeeed-bc6b-45ed-81c6-cefb83ccab12"
        }
    }
}
 

Request      

PUT api/vaults/{id}

PATCH api/vaults/{id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the vault. Example: dignissimos

Body Parameters

name   string   

The name of the vault. Max 255 characters. Example: sit

description   string  optional  

The description of the vault. Max 65535 characters. Example: Qui veniam hic cumque non adipisci aliquam.

Delete a vault.

requires authentication

Destroys a vault object. Warning: everything in the vault will be immediately deleted.

Example request:
curl --request DELETE \
    "https://prm-1.elitdevs.com/api/vaults/labore" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
$client = new \GuzzleHttp\Client();
$url = 'https://prm-1.elitdevs.com/api/vaults/labore';
$response = $client->delete(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
const url = new URL(
    "https://prm-1.elitdevs.com/api/vaults/labore"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());

Example response (200):


{
    "deleted": true,
    "id": 1
}
 

Request      

DELETE api/vaults/{id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

id   string   

The ID of the vault. Example: labore