Skip to main content

How to get appointments in myKaarma

This document is designed to help you understand how you can get appointments made in the myKaarma system. Let's get started.

How to get all appointments create/update events in myKaarma

The most efficient and our recommended approach would be webhooks. This would make sure that you get real time updates of all events related to appointments in mykaarma.

To catch up on the appointments that have already been made, contact apisupport@mykaarma.com.

For detailed documentation on how to enable webhooks for your integration please refer to this page.

If for some reason, webhooks subscription doesn't work for you and you would like to use our APIs, though we think you should still be using webhooks :), please check if you want to get appointments by:

Get appointments by UUID

If you already have the UUID (unique identifier of the appointment in myKaarma), please go through this page on how to get appointment by UUID.

Get appointments by customer

Need to find appointments for a particular customer? Please go through this page on how to get appointments by customer. Please note this would require you to first fetch UUID of the customer - details on the linked page.

Get appointments by appointment date

If your use case requires you to search appointments by appointment date. Please go through this page on how to get appointments by appointment date.

Get appointment for a particular repair order

If you want to find an appointment linked to a particular repair order, please go through this page on how to get appointment for a particular repair order. Please note this would require you to first UUID of the repair order - details on the linked page.

Get appointments by filter

If none of the above cases fit your use case, then you can try using the get appointments by filter method desribed in detail on this page. This will help you fetch appointments by

  • Appointment keys (Keys or identifiers of appointments in DMS).
  • Created date (Date when appointment was created)
  • 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)

Note this is a paginated endpoint with recommended limit of no more than 100 page size. We would advise to use this only if your use case is not satisfied by any of the other methods to get appointments.

The response of all the APIs to get appointments are similar.

Quick summary of get appointments by customer response fields

Parameter NameDescription
uuidUnique identifier used by mykaarma to uniquely identify each appointment
customerInformation.firstNameFirstName of the customer
customerInformation.lastNamelastName of the customer
customerInformation.companycompany name of the customer provided if the customer is a BUSINESS customer
customerInformation.isBusinessTrue if the customer is a business customer
customerInformation.customerKeyKey or identifier of the customer in DMS
customerInformation.confirmationPhonePhone number of the customer where confirmation text to be sent
customerInformation.confirmationEmailThe email of the customer where confirmation email to be sent
customerInformation.custLocaleThe preferred language of the customer
customerInformation.uuidUnique identifier of the customer in myKaarma
vehicleInformation.vehicleKeyUnique identifier used by DMS to uniquely identify each vehicle, used by mykaarma to lookup vehicles in DMS databases for various purposes like updation, deletion, booking appointment etc.
vehicleInformation.uuidUnique identifier used by mykaarma in addition to vehicles.id, used for uniquely identifying vehicles over API calls(for read, write, update, delete purposes) without revealing their database id that is vehicles.id
vehicleInformation.yearthe year when the vehicle was manufactured
vehicleInformation.makethe brand of the vehicle
vehicleInformation.engineengine description of the vehicle
vehicleInformation.trimtrim description of the vehicle
vehicleInformation.modelmodel of the vehicle
vehicleInformation.vinVIN of the vehicle
vehicleInformation.isValidIndicates whether the customer currently owns the vehicle.
orderInformation.uuidUUID (unique identifier in myKaarma) of the repair order associated with this appointment
orderInformation.orderNumberNumber of the repair order associated with this appointment
orderInformation.orderDateDate of the repair order associated with this appointment
orderInformation.orderTypeType of the repair order associated with this appointment
dealerUuidUUID (unique identifier in myKaarma) of the dealer
assignedAdvisorUuidUUID (unique identifier in myKaarma) of the advisor to which appointment is assigned
creatorAdvisorUuidUUID (unique identifier in myKaarma) of the advisor who created the appointment
assignedAdvisorDmsDepartmentCodeDispatch code in DMS of the advisor to whom appointment is assigned.
datetime stamp when appointment was created in YYYY-MM-DD HH:MM:SS format in PST timezone
preferredDatedate of the appointment in YYYY-MM-DD format
startTimeStart time of the appointment in YYYY-MM-DD HH:MM:SS format. This is dealership timezone.
endTimeEnd time of the appointment in YYYY-MM-DD HH:MM:SS format. This is dealership timezone.
transportOption.uuidUUID (unique identifier in myKaarma) of the transport option associated to appointment
transportOption.altTransportationcustom name of the transport option associated to appointment
transportOption.bookingIdID from third party if the loaner is booked in third party like TSD,etc.
transportOption.bookInThirdPartyThis would be true if loaner is booked in third party like TSD,etc.
transportOption.bookingStartDateStart date of the booking in third party like TSD, etc.
transportOption.bookingEndDateEnd date of the booking in third party like TSD, etc.
transportOption.bookingIsManualIs booking done manually in third party
transportOption.bookingIsValidIs booking in the third party valid?
transportOption.loanerSmartLinkA link provided by third party to access loaner.
transportOption.transportationname of the transport option associated to appointment
transportOption.subTransportOptionUuidUUID of the subtransport option associated to appointment like Loaner in PnD.
appointmentKeyKey or identifier in DMS of the appointment
mileageTextcustom name of the transport option associated to appointment
recallrecall associated to appointment
platformPlatform from which appointment was created like dealer app, web scheduler, DMS, etc.
appointmentSourceSource from which appointment was created like dealer, DMS, API ,etc.
newStatusstatus of the appointment at this moment
commentsNotes from customer for this appointment
internalNotesNotes from dealership personel for this appointment
isCancelledIs the appointment cancelled?
reminderCountNumber of times the reminder has been sent for this appointment
serviceListA list of line items associated with the appointment
serviceList.uuidUUID of the opcode/service in this line item
serviceList.opCodeName of the opcode/service in this line item
serviceList.laborOpCodeUnique code of the opcode/service in this line item
serviceList.descriptionDescription of the line item
serviceList.operationTypeWhat is the type of service. The default is OPCODE. It can be OPCODE, SERVICEMENU, SERVICEMOTORSMAINTENANCEMENU, SERVICEMOTORSLINEITEM, SERVICEMOTORSINDICATOR.
serviceList.laborTotalTotal labor price of the opcode/service in this line item
serviceList.partsTotalTotal parts price of the opcode/service in this line item
serviceList.shopFeesPrice of the shop of the opcode/service in this line item
serviceList.taxesTaxes to be applied for the opcode/service in this line item
serviceList.pricePrice of the line item
serviceList.isValidWhether the line item is valid or has been canceled
serviceList.payTypeWhat is the pay type of the line item, ex. Customer, Warranty, Internal, etc.
serviceList.sortOrderDefines at what place in the list will the line item show
serviceList.parentOpcodeUuidString
serviceList.menuUuidThis is valid only for menus and not opcodes. Unique identifier of the menu
serviceList.recallIDID of the recall associated with the line item
serviceList.durationInMins`String
serviceList.isCustomConcernThis tells whether the opcode/service is present at dealership or there is a custom request from customer
serviceList.isDealerAddedLineString
skillListA list of skills needed for the appointment
skillList.uuidUUID of the skill
skillList.nameName of the skill
skillList.dealerUuidUUID of the dealership associated with the skill
skillList.departmentUuidUUID of the department associated with the skill
skillList.operationListList of opcodes/services associated with the skill
skillList.isValidWhether skill is valid or not
appointmentCommunicationPreferencesPreferences for communication like confirmation and reminder for the appointment
appointmentCommunicationPreferences.emailConfirmationWhether to send appointment confirmation email or not
appointmentCommunicationPreferences.textConfirmationWhether to send appointment confirmation text or not
appointmentCommunicationPreferences.emailReminderWhether to send appointment reminder email or not
appointmentCommunicationPreferences.textReminderWhether to send appointment reminder text or not
appointmentCommunicationPreferences.confirmationEmailEmail to which confirmation has to be sent for the appointment
appointmentCommunicationPreferences.textConfirmationPhone number to which confirmation has to be sent for the appointment
appointmentCommunicationPreferences.sendCommunicationToDAWhether to send appointment communication copies to dealer associate
teamUuidUUID of the team associated with appointment
dispatchCodeDispatch code associated to appointment
customerVehicleInspectionIdID of the vehicle inspection
sarmetaData.dmsMetaData.typeType of DMS event associated with this metaData - PUSH or PULL
sarmetaData.dmsMetaData.titleWhat happened for this DMS event - SUCCESS or FAILURE
sarmetaData.dmsMetaData.descriptionDetail of the DMS event
sarmetaData.dmsMetaData.vehicleUuidUUID of the vehicle
sarmetaData.dmsMetaData.dealerAssociateIdUUID of the dealer associate
sarmetaData.appointmentDataKey value pair map to store appointment metadata