Skip to content

Overview

The AutoLeap API uses the REST standard, which means you interact with it by making requests over HTTP.

A request usually includes:

  • An HTTP method (like GET or POST)
  • A path (the address of the resource)
  • Optional headers and parameters (in the path, query string, or request body)

When you send a request, the API responds with:

  • A status code (to indicate success or failure)
  • Response headers
  • Sometimes a response body with useful data

The API reference describes the method, path, and parameters for each endpoint, and includes sample requests and responses you can use as a guide.

Languages
Servers
Production
https://partnerapi.myautoleap.com/v2/

Authentication

Authenticate with the AutoLeap Partner API to obtain access tokens.
All other endpoints require a valid access token.

Operations

Profile

Retrieve partner profile details, including the companies and accounts you are authorized to access.

Operations

Customers

Retrieve and manage customer records for a given company.
Useful for syncing customer information across systems.

Operations

Vehicles

Retrieve and manage vehicles associated with customers.
Supports bulk creation and individual vehicle lookups.

Operations

Items

Access and manage items (parts, tires, labor, etc.) available within a company.
Includes bulk creation and detailed item retrieval.

Operations

Inventory Levels

View and update inventory levels for items across one or more locations.

Operations

Item Pricing

Retrieve and update pricing information for items.
Useful for keeping partner systems in sync with AutoLeap’s catalog pricing.

Operations

Appointments

Create and retrieve customer appointment requests across locations.
Enables seamless scheduling and booking integrations.

Operations

Create appointment request

Request

Creates Appointment Requests against the given Company and Location.

Security
BearerAuth
Bodyapplication/jsonrequired
companyIdstringrequired
Example: "374844"
locationIdstringrequired
Example: "364849"
startDateTimestring(date-time)required
Example: "2025-08-01T09:00:00Z"
endDateTimestring(date-time)required
Example: "2025-08-01T09:30:00Z"
dropOffOptionstring
Enum"dropOff""waitForIt""pickUp""requestCourtesy"
Example: "dropOff"
languagestring
Default "EN"
Enum"EN""FR"
Example: "EN"
sendConfirmationEmailboolean
isMarketingNotifEnabledboolean
isOperationalNotifEnabledboolean
customerobjectrequired
Example: {"firstName":"Jane","lastName":"Smith"}
vehicleobjectrequired
Example: {"make":"Toyota","model":"Corolla","year":2019}
servicesArray of objectsrequired
Example: [{"serviceId":"SVC123","title":"Oil change"}]
curl -i -X POST \
  https://partnerapi.myautoleap.com/v2/appointmentRequests/create \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "companyId": "374844",
    "locationId": "364849",
    "startDateTime": "2025-08-01T09:00:00Z",
    "endDateTime": "2025-08-01T09:30:00Z",
    "dropOffOption": "dropOff",
    "language": "EN",
    "customer": {
      "firstName": "Jane",
      "lastName": "Smith"
    },
    "vehicle": {
      "make": "Toyota",
      "model": "Corolla",
      "year": 2019
    },
    "services": [
      {
        "serviceId": "SVC123",
        "title": "Oil change"
      }
    ]
  }'

Responses

Appointment created (supports partial success)

Bodyapplication/json
successboolean
Example: true
messagestring
Example: "Request completed successfully"
dataobject
Example: {}
Response
application/json
{ "success": true, "message": "Request completed successfully", "data": {} }

Get appointment requests

Request

Fetches Appointment Requests for a given Company and Location.
Supports filtering by status, date ranges, and pagination.

Security
BearerAuth
Query
companyIdstringrequired

Identifier for the company.

locationIdstring

Identifier for the location.

statusstring

Filter by appointment status.

Enum"requested""confirmed""declined"
appointmentStartDatestring(date-time)

Filter by appointment start date (inclusive).
Supports ISO 8601 (e.g., YYYY-MM-DDThh:mm:ssZ) to filter with time precision or date-only (YYYY-MM-DD).

appointmentEndDatestring(date-time)

Filter by appointment end date (inclusive). Supports ISO 8601 (e.g., YYYY-MM-DDThh:mm:ssZ) to filter with time precision or date-only (YYYY-MM-DD).

updatedDateStartstring(date-time)

Filter by updated date range start. Supports ISO 8601 (e.g., YYYY-MM-DDThh:mm:ssZ) to filter with time precision or date-only (YYYY-MM-DD).

updatedDateEndstring(date-time)

Filter by updated date range end.Supports ISO 8601 (e.g., YYYY-MM-DDThh:mm:ssZ) to filter with time precision or date-only (YYYY-MM-DD)

createdDateStartstring(date-time)

Filter by created date range start. Supports ISO 8601 (e.g., YYYY-MM-DDThh:mm:ssZ) to filter with time precision or date-only (YYYY-MM-DD)

createdDateEndstring(date-time)

Filter by created date range end. Supports ISO 8601 (e.g., YYYY-MM-DDThh:mm:ssZ) to filter with time precision or date-only (YYYY-MM-DD)

sortstring

Property to sort by.

Enum"startDate""endDate"
sortDirectionstring

Sort direction.

Enum"ASC""DESC"
sizeinteger<= 100

Number of records per page (max 100).

Default 10
pageinteger

Page number (1-based).

Default 1
curl -i -X GET \
  'https://partnerapi.myautoleap.com/v2/appointmentRequests?companyId=string&locationId=string&status=requested&appointmentStartDate=2019-08-24T14%3A15%3A22Z&appointmentEndDate=2019-08-24T14%3A15%3A22Z&updatedDateStart=2019-08-24T14%3A15%3A22Z&updatedDateEnd=2019-08-24T14%3A15%3A22Z&createdDateStart=2019-08-24T14%3A15%3A22Z&createdDateEnd=2019-08-24T14%3A15%3A22Z&sort=startDate&sortDirection=ASC&size=10&page=1' \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>'

Responses

Paginated list of appointment requests

Bodyapplication/json
contentArray of objects(AppointmentRequestItem)
Example: [{"appointmentId":"24f6c184","companyId":"222221","locationId":"LOC11","code":"10120","status":"requested","type":"customer","description":"","declineReason":"","dropOffOption":"waitForIt","isVehicleDropOff":false,"startDateTime":"2024-02-04T15:00:00.000Z","customer":{"firstName":"John ","lastName":"Doe","phone":"6093851044","email":"john.doe@mail.com","zipCode":"10001"},"vehicle":{"name":"2012 Fiat 500 Abarth"},"serviceCategories":[{"name":"Brakes","services":[{"name":"Brake check"},{"details":"Want to get the brakes checked"}]}],"createdAt":"2024-02-01T08:55:21.804Z","updatedAt":"2025-07-18T03:42:58.800Z"}]
pageableobject(Pageable)
totalPagesinteger
Example: 1
totalElementsinteger
Example: 3
lastboolean
Example: true
sizeinteger
Example: 10
numberinteger
firstboolean
Example: true
sortobject(Sort)
Response
application/json
{ "content": [ { … } ], "pageable": { "sort": { … }, "offset": 0, "pageSize": 10, "pageNumber": 0, "paged": true, "unpaged": false }, "totalPages": 1, "totalElements": 3, "last": true, "size": 10, "number": 0, "first": true, "sort": { "unsorted": false, "sorted": true, "empty": false } }

Repair Orders

Retrieve detailed information about repair orders (ROs).
Supports fetching all orders or a specific order by RO number.

Operations

Payments

Access payment details linked to repair orders.
Useful for reconciling transactions and financial reporting.

Operations

Technician Timesheets

Retrieve detailed timesheet logs for technicians within a company and an optional location, filtered by a date range.

Operations