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_API_KEY}".

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

You can retrieve your token by visiting My Business > API Keys > Create Key.

Endpoints

Connect

GET
https://vereaze.com
/api/v1/connect
requires authentication

Confirm the connection

Headers

Authorization
Example:
Bearer {YOUR_API_KEY}
Content-Type
Example:
application/json
Accept
Example:
application/json
Example request:
curl --request GET \
    --get "https://vereaze.com/api/v1/connect" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
Example response:
{
    "id": 1,
    "name": "John Doe",
    "business": "My Business",
    "email": "[email protected]"
}

Get Users

GET
https://vereaze.com
/api/v1/users
requires authentication

Get a list of users

Headers

Authorization
Example:
Bearer {YOUR_API_KEY}
Content-Type
Example:
application/json
Accept
Example:
application/json

Query Parameters

id
integer

ID of the user.

Example:
17
name
string

Name of the user.

Example:
aperiam
email
string

Email of the user.

role
string

Role of the user.

Example:
fugiat
Example request:
curl --request GET \
    --get "https://vereaze.com/api/v1/users?id=17&name=aperiam&email=bmorissette%40example.net&role=fugiat" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
Example response:
[
 {
     "id": 1,
     "name": "John Doe",
     "email": "[email protected]",
     "role": "admin"
 },
 ...
]

Get Tasks

GET
https://vereaze.com
/api/v1/tasks
requires authentication

Get a list of tasks

Headers

Authorization
Example:
Bearer {YOUR_API_KEY}
Content-Type
Example:
application/json
Accept
Example:
application/json

Query Parameters

client_id
integer

ID of the client.

Example:
8
project_code
string

Code of the project.

Example:
qui
Example request:
curl --request GET \
    --get "https://vereaze.com/api/v1/tasks?client_id=8&project_code=qui" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
Example response:
[
 {
     "id": "TA-001",
     "task_number_full": "TA-001",
     "client_id": 1,
     "client_name": "Client 1",
     "project_code": "PRJ",
     "project_name": "Project 1",
     "current_status_id": 1,
     "current_status_name": "Created",
     "name": "Task 1",
     "description": "Task 1 description",
     "start_date": "2022-01-01",
     "due_date": "2022-01-01",
     "created_at": "2022-01-01",
     "updated_at": "2022-01-01",
 },
 ...
]

Create Task

POST
https://vereaze.com
/api/v1/task/create
requires authentication

Create a new task

Headers

Authorization
Example:
Bearer {YOUR_API_KEY}
Content-Type
Example:
application/json
Accept
Example:
application/json

Query Parameters

name
string

Name of the task.

Example:
omnis
description
string

Description of the task.

Example:
Autem voluptatem eius sunt aut officiis error.
status_id
integer

ID of the status.

Example:
8
client_id
integer

ID of the client.

Example:
20
project_code
string

Code of the project.

Example:
voluptatibus
Example request:
curl --request POST \
    "https://vereaze.com/api/v1/task/create?name=omnis&description=Autem+voluptatem+eius+sunt+aut+officiis+error.&status_id=8&client_id=20&project_code=voluptatibus" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
Example response:
{
     "id": "TA-001",
     "task_number_full": "TA-001",
     "client_id": 1,
     "client_name": "Client 1",
     "project_code": "PRJ",
     "project_name": "Project 1",
     "current_status_id": 1,
     "current_status_name": "Created",
     "name": "Task 1",
     "description": "Task 1 description",
     "start_date": "2022-01-01",
     "due_date": "2022-01-01",
     "created_at": "2022-01-01",
     "updated_at": "2022-01-01",
 }
{
    "message": "Task name is required."
}

Get Statuses

GET
https://vereaze.com
/api/v1/statuses
requires authentication

Get a list of statuses

Headers

Authorization
Example:
Bearer {YOUR_API_KEY}
Content-Type
Example:
application/json
Accept
Example:
application/json
Example request:
curl --request GET \
    --get "https://vereaze.com/api/v1/statuses" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
Example response:
[
  {
     "id": 1,
     "name": "Status Name",
  },
  ...
]

Get Projects

GET
https://vereaze.com
/api/v1/projects
requires authentication

Get a list of projects

Headers

Authorization
Example:
Bearer {YOUR_API_KEY}
Content-Type
Example:
application/json
Accept
Example:
application/json

Query Parameters

client_id
integer

ID of the client.

Example:
2
Example request:
curl --request GET \
    --get "https://vereaze.com/api/v1/projects?client_id=2" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
Example response:
[
  {
     "id": 4,
     "code": "PRJ",
     "name": "Project 1",
  },
  ...
]

Get Clients

GET
https://vereaze.com
/api/v1/clients
requires authentication

Get a list of clients

Headers

Authorization
Example:
Bearer {YOUR_API_KEY}
Content-Type
Example:
application/json
Accept
Example:
application/json
Example request:
curl --request GET \
    --get "https://vereaze.com/api/v1/clients" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
Example response:
[
  {
     "id": 1,
     "name": "Client 1",
  },
  ...
]

Get Invoices

GET
https://vereaze.com
/api/v1/invoices
requires authentication

Get a list of invoices

Headers

Authorization
Example:
Bearer {YOUR_API_KEY}
Content-Type
Example:
application/json
Accept
Example:
application/json

Query Parameters

client_id
integer

ID of the client.

Example:
14
Example request:
curl --request GET \
    --get "https://vereaze.com/api/v1/invoices?client_id=14" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
Example response:
[
  {
     "id": 1,
     "invoice_number": "INV-001",
     "client_id": 1,
     "client_name": "Client 1",
     "invoice_amount": 100.00,
     "invoice_paid": 0.00,
     "invoice_balance": 100.00,
     "invoice_updated_at": 2024-07-01
  },
  ...
]

Get Unpaid Invoices

GET
https://vereaze.com
/api/v1/invoices/unpaid
requires authentication

Get a list of unpaid invoices

Headers

Authorization
Example:
Bearer {YOUR_API_KEY}
Content-Type
Example:
application/json
Accept
Example:
application/json

Query Parameters

client_id
integer

ID of the client.

Example:
15
Example request:
curl --request GET \
    --get "https://vereaze.com/api/v1/invoices/unpaid?client_id=15" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
Example response:
[
  {
     "id": 1,
     "invoice_number": "INV-001",
     "client_id": 1,
     "client_name": "Client 1",
     "invoice_amount": 100.00,
     "invoice_paid": 0.00,
     "invoice_balance": 100.00,
  },
  ...
]

Get Paid Invoices

GET
https://vereaze.com
/api/v1/invoices/paid
requires authentication

Get a list of paid invoices

Headers

Authorization
Example:
Bearer {YOUR_API_KEY}
Content-Type
Example:
application/json
Accept
Example:
application/json

Query Parameters

client_id
integer

ID of the client.

Example:
7
Example request:
curl --request GET \
    --get "https://vereaze.com/api/v1/invoices/paid?client_id=7" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
Example response:
[
  {
     "id": 1,
     "invoice_number": "INV-001",
     "client_id": 1,
     "client_name": "Client 1",
     "invoice_amount": 100.00,
     "invoice_paid": 0.00,
     "invoice_balance": 100.00,
  },
  ...
]

Create Invoice

POST
https://vereaze.com
/api/v1/invoice/create
requires authentication

Create a new invoice

Headers

Authorization
Example:
Bearer {YOUR_API_KEY}
Content-Type
Example:
application/json
Accept
Example:
application/json

Body Parameters

Example request:
curl --request POST \
    "https://vereaze.com/api/v1/invoice/create" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"client_id\": 11,
    \"include_unbilled_time\": true,
    \"email_invoice_to_client\": false,
    \"item\": {
        \"description\": \"Sint et iure tempora reprehenderit aut tempore.\",
        \"quantity\": 8,
        \"item_cost\": 0.18919693
    }
}"
Example response:
{
     "id": 1,
     "invoice_number": "INV-001",
     "client_id": 1,
     "client_name": "Client 1",
     "invoice_amount": 100.00,
     "invoice_paid": 0.00,
     "invoice_balance": 100.00,
}
{
    "message": "Client ID is required"
}
{
    "message": "Invalid client ID"
}