Carvoila API (2.0.0)

Download OpenAPI specification:

These are the API to integrate with the Carvoilà platform.

Authentication

Use your secret key directly as a Bearer token:

Authorization: Bearer your_secret_key_here

This document is generated from the platform's validation schemas — do not edit it by hand. Run pnpm openapi:generate to regenerate.

services

Service (vehicle transfer) management

List services

Retrieve the services of the authenticated organization, sorted by pickup timestamp (newest first).

Authorizations:
bearerAuth
query Parameters
page
integer >= 1
Default: 1

Page number for pagination

limit
integer [ 1 .. 100 ]
Default: 10

Number of services per page

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "totalPages": 0,
  • "page": 1,
  • "limit": 1
}

Create services

Create one or more services for a location of the authenticated organization. Only pickupTimeType FIXED is accepted; the pickup must be at least 6 hours in the future. Returns the IDs of the created services.

Authorizations:
bearerAuth
Request Body schema: application/json
required

Services to create

locationCode
required
string non-empty
required
Array of objects

Responses

Request samples

Content type
application/json
{
  • "locationCode": "string",
  • "services": [
    ]
}

Response samples

Content type
application/json
{
  • "data": [
    ]
}

Calculate service costs (quote)

Calculate the cost of one or more services without creating them. Returns the cost breakdown plus partner resale fields (markupAmount, vatAmount, partnerResaleTotal) when a markup is configured for the location.

Authorizations:
bearerAuth
Request Body schema: application/json
required

Services to quote

locationCode
required
string non-empty
required
Array of objects

Responses

Request samples

Content type
application/json
{
  • "locationCode": "string",
  • "services": [
    ]
}

Response samples

Content type
application/json
{
  • "data": [
    ]
}

Get service details

Retrieve a service of the authenticated organization.

Authorizations:
bearerAuth
path Parameters
id
required
string non-empty
Example: V1StGXR8_Z5jdHi6B-myT

Service ID (nanoid)

Responses

Response samples

Content type
application/json
{
  • "data": {
    }
}

Update a service

Update a service of the authenticated organization. Only services in WAITING or ACCEPTED status can be updated.

Authorizations:
bearerAuth
path Parameters
id
required
string non-empty
Example: V1StGXR8_Z5jdHi6B-myT

Service ID (nanoid)

Request Body schema: application/json
required

Updated service details

required
object
required
object
required
object
notes
string
additionalDriverActivitiesText
string

Responses

Request samples

Content type
application/json
{
  • "service": {
    },
  • "customer": {
    },
  • "vehicle": {
    },
  • "notes": "string",
  • "additionalDriverActivitiesText": "string"
}

Response samples

Content type
application/json
{
  • "data": {
    }
}

Cancel a service

Cancel a service of the authenticated organization. Only services in WAITING or ACCEPTED status can be canceled.

Authorizations:
bearerAuth
path Parameters
id
required
string non-empty
Example: V1StGXR8_Z5jdHi6B-myT

Service ID (nanoid)

Responses

Response samples

Content type
application/json
{
  • "code": "string",
  • "message": "string",
  • "details": [
    ]
}

locations

Organization locations

List organization locations

Retrieve the locations of the authenticated organization.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "totalCount": 0
}