Skip to main content

How to get appointments by filter

This document is designed to help you fetch appointments using filter. This may be helpful in cases where you need to fetch appointments for:

  • Appointment keys (Keys or identifiers of appointments in DMS).
  • Created date (For appointments created within a date range)
  • Appointment date (For a range of dates when appointment is scheduled)
  • Customers (Filter using UUIDs of customer)
  • Appointments assigned to particular teams (Filter using UUIDs of teams)
  • Created by (Check what appointments were created by dealer app or web scheduler or API)
  • Appointment UUIDs (Appointments for a bunch of UUIDs)

To fetch appointments scheduled for a particular date, you first need your credentials. If you don't already have one, head over to the Authentication and Authorization page to see how you can request for credentials from us.

Request

HTTP request

POST  https://api.mykaarma.com/appointment/v2/department/{dealerDepartmentUUID}/list

Parameters

Path parameter:

Required path parameters for process :

Parameter NameTypeDescription
departmentUUIDstringUnique identifier of dealer's department

Authorization

This request requires the following authorization scopes:

ScopeLevelDescription
appointment.getDepartmentAuthorises client to get appointments for a department

Get appointments by appointment key

Pass the appointment keys as a list in the appointmentKeys field.

curl --location 'https://api.mykaarma.com/appointment/v2/department/{{department_uuid}}/list' \
--header 'accept: application/json' \
--header 'authorization: Basic {{basic_auth_header}}' \
--header 'Content-Type: application/json' \
--data '{
"appointmentKeys": [
"string"
],
"pageNumber": 1,
"pageSize": 10,
"sortAscending": true
}'

Get appointments for customers

Pass the customer UUIDs as a list in the customerUuids field.

curl --location 'https://api.mykaarma.com/appointment/v2/department/{{department_uuid}}/list' \
--header 'accept: application/json' \
--header 'authorization: Basic {{basic_auth_header}}' \
--header 'Content-Type: application/json' \
--data '{
"customerUuids": [
"string"
],
"pageNumber": 1,
"pageSize": 10,
"sortAscending": true
}'

Get appointments for UUIDs

Pass the appointment UUIDs as a list in the appointmentUuids field.

curl --location 'https://api.mykaarma.com/appointment/v2/department/{{department_uuid}}/list' \
--header 'accept: application/json' \
--header 'authorization: Basic {{basic_auth_header}}' \
--header 'Content-Type: application/json' \
--data '{
"appointmentUuids": [
"string"
],
"pageNumber": 1,
"pageSize": 10,
"sortAscending": true
}'

Get appointments for teams

Pass the team UUIDs as a list in the teamUuids field. To get UUIDs of team please refer to to get teams

curl --location 'https://api.mykaarma.com/appointment/v2/department/{{department_uuid}}/list' \
--header 'accept: application/json' \
--header 'authorization: Basic {{basic_auth_header}}' \
--header 'Content-Type: application/json' \
--data '{
"teamUuids": [
"string"
],
"pageNumber": 1,
"pageSize": 10,
"sortAscending": true
}'

Get appointments by appointment date

Pass startDate and endDate to get appointments in a date range

  • startDate (retrieve appointments based on scheduled date of the appt on or after this date)
  • endDate (Retrieve appointments based on scheduled date of the appt on or before this date)
curl --location 'https://api.mykaarma.com/appointment/v2/department/{{department_uuid}}/list' \
--header 'accept: application/json' \
--header 'authorization: Basic {{basic_header_auth}}' \
--header 'Content-Type: application/json' \
--data '{
"startDate": "2025-02-11",
"endDate": "2025-02-12",
"pageNumber": 2,
"pageSize": 10,
"sortAscending": true
}'

Get appointments by creation date

Pass startDate and endDate to get appointments in a date range

  • startCreatedDate (retrieve appointments created on or after this date)
  • endCreatedDate (retrieve appointments created on or before this date)
curl --location 'https://api.mykaarma.com/appointment/v2/department/{{department_uuid}}/list' \
--header 'accept: application/json' \
--header 'authorization: Basic {{basic_header_auth}}' \
--header 'Content-Type: application/json' \
--data '{
"startCreatedDate": "2025-02-11",
"endCreatedDate": "2025-02-12",
"pageNumber": 2,
"pageSize": 10,
"sortAscending": true
}'

Get appointments by creation source

Pass the creator that for which you would like to see the appointments. Possible values supported at the moment are:

  • dealerapp
  • online
  • DMS
  • API
curl --location 'https://api.mykaarma.com/appointment/v2/department/{{department_uuid}}/list' \
--header 'accept: application/json' \
--header 'authorization: Basic {{basic_header_auth}}' \
--header 'Content-Type: application/json' \
--data '{
"createdBy": "API",
"pageNumber": 2,
"pageSize": 10,
"sortAscending": true
}'

Note

  • In case more than one kind of filter is sent in request, the result will be end of this discussion.
  • This endpoint implements pagination and can only be used with page size of 100.