Appointment
The Appointment object contains information about a scheduled service for one of your Customers for a specific Location.
GET/v3/appointment/:id
Find Appointment
Find one Appointment by id
URL parameters
- Name
id- Type
- string Required
- Description
- the id for the object to retrieve
Produces
The response content type: application/json
200 Response
- Name
data- Type
- object Required
- Description
- Appointment schema
- Name
success- Type
- boolean Required
- Description
- if successful, will be true. if not successful, will be false and message will contain a human readable error message
Properties for data object
- Name
allDay- Type
- boolean Required
- Description
- Name
attributionMessageId- Type
- string Required
- Description
- Name
attributionSource- Type
- one of: WorkRequestForm, AppointmentScheduler, Manual, FuzzyCampaignSMSDelivered, FuzzyCampaignEmailRead Required
- Description
- Name
automatedCampaignId- Type
- string Required
- Description
- Name
cancellationNote- Type
- string Required
- Description
- if the appointment was canceled
- Name
chatBotSessionId- Type
- string Required
- Description
- if the appointment was created via a chatbot session, this will be the related session
- Name
color- Type
- one of: aqua, black, blue, brown, gray, green, orange, purple, red, yellow Required
- Description
- Name
companyId- Type
- string Required
- Description
- Name
confirmationStatus- Type
- one of: Confirmed, Declined, NoResponse Required
- Description
- Name
confirmationSubject- Type
- string Required
- Description
- Name
confirmationTemplateIdentifier- Type
- string Required
- Description
- This could be a MesageTemplate id or a DefaultMessageTemplateIdentifier or a StarterMessageTemplateIdentifier
- Name
confirmationText- Type
- string Required
- Description
- Name
createdDate- Type
- string Required
- Description
- Name
customerEmailId- Type
- string Required
- Description
- Name
customerId- Type
- string Required
- Description
- Name
customerPhoneNumberId- Type
- string Required
- Description
- Name
duration- Type
- integer Required
- Description
- the calculated duration ))::bigint
- Name
endDate- Type
- string Required
- Description
- end date and time of the appointment
- Name
id- Type
- string Required
- Description
- Name
isRecurringParent- Type
- boolean Required
- Description
- Name
lastRecurrenceEndDate- Type
- string Required
- Description
- end date and time of the last recurrence for more efficient queries
- Name
legacyHydratedReminder- Type
- boolean Required
- Description
- Used to aid in backwards compatibility for prehydrated reminders and confirmations. False if reminder and confirmation text contains placeholders (new behavior). True if prehydrated (legacy behavior
- Name
locationId- Type
- string Required
- Description
- Name
meta- Type
- object Required
- Description
- the metadata about the most recent change to the row
- Name
metadata- Type
- object
- Description
- metadata reserved for customers to control
- Name
name- Type
- string Required
- Description
- name of the appointment like 'Oil change'
- Name
note- Type
- string Required
- Description
- notes for the appointment
- Name
oneTimeCampaignId- Type
- string Required
- Description
- Name
orderId- Type
- string Required
- Description
- Name
origin- Type
- one of: Shop, HQ, AppointmentScheduler, Concierge Required
- Description
- Name
originalEndDate- Type
- string Required
- Description
- the time this instance ends according to the recurrence data in the parent recurring event
- Name
originalStartDate- Type
- string Required
- Description
- the time this instance starts according to the recurrence data in the parent recurring event
- Name
publicId- Type
- string Required
- Description
- Name
recurring- Type
- boolean Required
- Description
- Name
recurringAppointmentId- Type
- string Required
- Description
- if the appointment was created from a recurring appointment
- Name
recurringExceptionId- Type
- string Required
- Description
- OR ("originalStartDate" IS NULL) THEN NULL ELSE "recurringAppointmentId" || '_' || (EXTRACT(EPOCH FROM timezone('UTC', "originalStartDate"))::bigint * 1000)::text END
- Name
reminderSubject- Type
- string Required
- Description
- Name
reminderTemplateIdentifier- Type
- string Required
- Description
- This could be a MesageTemplate id or a DefaultMessageTemplateIdentifier or a StarterMessageTemplateIdentifier
- Name
reminderText- Type
- string Required
- Description
- Name
removedFromRecurrency- Type
- boolean Required
- Description
- Name
rruleset- Type
- string Required
- Description
- Name
sendConfirmation- Type
- boolean Required
- Description
- Send confirmation notification at the moment of saving the appointment
- Name
sendReminder- Type
- boolean Required
- Description
- Send reminder will send a notification at some user-specified times before the appointment using scheduler
- Name
startDate- Type
- string Required
- Description
- start date and time of the appointment
- Name
updatedDate- Type
- string Required
- Description
- Name
useEmail- Type
- boolean Required
- Description
- In case we want to use email to send confirmation and/or reminder
- Name
useSMS- Type
- boolean Required
- Description
- In case we want to use email to send confirmation and/or reminder
- Name
vehicleId- Type
- string Required
- Description
Properties for meta object
- Name
userId- Type
- string
- Description
- the user id that made the most recent change
- Name
sessionId- Type
- string
- Description
- the session id for the most recent change
- Name
version- Type
- number
- Description
- a monotonically increasing number for the most recent change
4xx Response
- Name
code- Type
- string
- Description
- The error code
- Name
data- Type
- object
- Description
- An optional object containing relevant error data
- Name
documentation_url- Type
- string
- Description
- An optional link to the documentation for the error
- Name
message- Type
- string
- Description
- the error message if not successful
- Name
success- Type
- boolean Required
- Description
- if successful, will be true. if not successful, will be false and message will contain a human readable error message
5xx Response
- Name
code- Type
- string
- Description
- The error code
- Name
data- Type
- object
- Description
- An optional object containing relevant error data
- Name
documentation_url- Type
- string
- Description
- An optional link to the documentation for the error
- Name
message- Type
- string
- Description
- the error message if not successful
- Name
success- Type
- boolean Required
- Description
- if successful, will be true. if not successful, will be false and message will contain a human readable error message
Example Request
GET
/v3/appointment/:idcurl https://api.shopmonkey.cloud/v3/appointment/:id \
-H "Authorization: Bearer ${SM_TOKEN}"
Example Responseapplication/json
{
"data": {
"allDay": true,
"attributionMessageId": null,
"attributionSource": null,
"automatedCampaignId": null,
"cancellationNote": null,
"chatBotSessionId": null,
"color": "color",
"companyId": "companyId",
"confirmationStatus": "confirmationStatus",
"confirmationSubject": null,
"confirmationTemplateIdentifier": null,
"confirmationText": null,
"createdDate": "createdDate",
"customerEmailId": null,
"customerId": null,
"customerPhoneNumberId": null,
"duration": null,
"endDate": "endDate",
"id": "id",
"isRecurringParent": true,
"lastRecurrenceEndDate": null,
"legacyHydratedReminder": true,
"locationId": "locationId",
"meta": {
"userId": "userId",
"sessionId": "sessionId",
"version": 1
},
"name": "name",
"note": "note",
"oneTimeCampaignId": null,
"orderId": null,
"origin": "origin",
"originalEndDate": null,
"originalStartDate": null,
"publicId": "publicId",
"recurring": true,
"recurringAppointmentId": null,
"recurringExceptionId": null,
"reminderSubject": null,
"reminderTemplateIdentifier": null,
"reminderText": null,
"removedFromRecurrency": true,
"rruleset": null,
"sendConfirmation": true,
"sendReminder": true,
"startDate": "startDate",
"updatedDate": null,
"useEmail": true,
"useSMS": true,
"vehicleId": null
},
"success": true
}
GET/v3/appointment
List Appointments
Find all Appointments
Query String parameters
- Name
collate- Type
- boolean
- Description
- if set to true, use natural sort collation when used with orderBy
- Name
ids- Type
- array
- Description
- Name
limit- Type
- number
- Description
- the limit on the number of records to return
- Name
orderby- Type
- string
- Description
- the order instructions for the result
- Name
params- Type
- string
- Description
- additional request specific params
- Name
skip- Type
- number
- Description
- the number of records to skip for a paginated result
- Name
where- Type
- string
- Description
- an object to use for filtering the results
Produces
The response content type: application/json
200 Response
- Name
data- Type
- array Required
- Description
- an array of items
- Name
meta- Type
- object
- Description
- Name
success- Type
- boolean Required
- Description
- if successful, will be true. if not successful, will be false and message will contain a human readable error message
Properties for meta object
- Name
hasMore- Type
- boolean Required
- Description
- if there are more records available
- Name
total- Type
- number Required
- Description
- the total number of records
4xx Response
- Name
code- Type
- string
- Description
- The error code
- Name
data- Type
- object
- Description
- An optional object containing relevant error data
- Name
documentation_url- Type
- string
- Description
- An optional link to the documentation for the error
- Name
message- Type
- string
- Description
- the error message if not successful
- Name
success- Type
- boolean Required
- Description
- if successful, will be true. if not successful, will be false and message will contain a human readable error message
5xx Response
- Name
code- Type
- string
- Description
- The error code
- Name
data- Type
- object
- Description
- An optional object containing relevant error data
- Name
documentation_url- Type
- string
- Description
- An optional link to the documentation for the error
- Name
message- Type
- string
- Description
- the error message if not successful
- Name
success- Type
- boolean Required
- Description
- if successful, will be true. if not successful, will be false and message will contain a human readable error message
Example Request
GET
/v3/appointmentcurl https://api.shopmonkey.cloud/v3/appointment \
-H "Authorization: Bearer ${SM_TOKEN}"
Example Responseapplication/json
{
"data": [
{
"allDay": true,
"attributionMessageId": null,
"attributionSource": null,
"automatedCampaignId": null,
"cancellationNote": null,
"chatBotSessionId": null,
"color": "color",
"companyId": "companyId",
"confirmationStatus": "confirmationStatus",
"confirmationSubject": null,
"confirmationTemplateIdentifier": null,
"confirmationText": null,
"createdDate": "createdDate",
"customerEmailId": null,
"customerId": null,
"customerPhoneNumberId": null,
"duration": null,
"endDate": "endDate",
"id": "id",
"isRecurringParent": true,
"lastRecurrenceEndDate": null,
"legacyHydratedReminder": true,
"locationId": "locationId",
"name": "name",
"note": "note",
"oneTimeCampaignId": null,
"orderId": null,
"origin": "origin",
"originalEndDate": null,
"originalStartDate": null,
"publicId": "publicId",
"recurring": true,
"recurringAppointmentId": null,
"recurringExceptionId": null,
"reminderSubject": null,
"reminderTemplateIdentifier": null,
"reminderText": null,
"removedFromRecurrency": true,
"rruleset": null,
"sendConfirmation": true,
"sendReminder": true,
"startDate": "startDate",
"updatedDate": null,
"useEmail": true,
"useSMS": true,
"vehicleId": null,
"appointmentConfirmationDeliveries": [
{
"appointmentId": "appointmentId",
"companyId": "companyId",
"createdDate": "createdDate",
"id": "id",
"locationId": "locationId",
"updatedDate": null
}
],
"appointmentReminderDeliveries": [
{
"appointmentId": "appointmentId",
"companyId": "companyId",
"createdDate": "createdDate",
"id": "id",
"locationId": "locationId",
"reminderId": null,
"updatedDate": null
}
],
"automatedCampaign": {
"activatedDate": null,
"id": "id",
"name": "name"
},
"customer": {
"address1": null,
"address2": null,
"appointmentCount": 1,
"city": null,
"coalescedFirstNameOrCompanyName": null,
"companyId": "companyId",
"companyName": null,
"country": null,
"createdDate": "createdDate",
"customerType": "customerType",
"deferredServiceCount": 1,
"deleted": true,
"deletedDate": null,
"deletedReason": null,
"deletedUserId": null,
"discountPercent": 1,
"dotNumber": null,
"externalId": null,
"finixIdentityId": null,
"firstName": null,
"fleetId": null,
"gstExempt": true,
"hqCustomerId": null,
"hstExempt": true,
"id": "id",
"imported": true,
"laborMatrixId": null,
"laborRateId": null,
"lastName": null,
"lastTimeOrderWorked": null,
"locationIds": [
"locationIds"
],
"marketingOptIn": true,
"messageCount": 1,
"normalizedFirstName": null,
"normalizedLastName": null,
"normalizedName": null,
"note": "note",
"orderCount": 1,
"originLocationId": null,
"paymentTermId": null,
"postalCode": null,
"preferredContactMethod": null,
"preferredLanguage": "preferredLanguage",
"pricingMatrixId": null,
"pstExempt": true,
"publicId": "publicId",
"referralSourceId": null,
"showLaborHours": true,
"showLaborNote": true,
"showPartCostAndQuantity": true,
"showPartNote": true,
"showPartNumber": true,
"showSubcontractNote": true,
"state": null,
"statementCount": 1,
"taxExempt": true,
"transactionCount": 1,
"updatedDate": null,
"vehicleCount": 1,
"website": null,
"emails": [
{
"companyId": "companyId",
"createdDate": "createdDate",
"customerId": "customerId",
"email": "email",
"hqEmailId": null,
"id": "id",
"locationId": "locationId",
"marketingOptIn": true,
"primary": true,
"subscribed": true,
"updatedDate": null
}
],
"phoneNumbers": [
{
"carrierName": null,
"companyId": "companyId",
"country": null,
"createdDate": "createdDate",
"customerId": "customerId",
"extension": null,
"hqPhoneNumberId": null,
"id": "id",
"imported": true,
"locationId": "locationId",
"mobileCountryCode": null,
"mobileNetworkCode": null,
"number": "number",
"primary": true,
"type": null,
"updatedDate": null,
"userDefinedType": null
}
],
"customFields": {}
},
"oneTimeCampaign": {
"id": "id",
"name": "name",
"sentDate": null
},
"order": {
"allowCollectPayment": true,
"allowCustomerApplyCoupon": true,
"allowCustomerAuthorization": true,
"allowCustomerViewActivity": true,
"allowCustomerViewAuthorizations": true,
"allowCustomerViewInspections": true,
"allowCustomerViewMessages": true,
"appliedDiscountCents": 1,
"appliedDiscountPercent": 1,
"appliedDiscountValueType": "appliedDiscountValueType",
"appointmentDates": [
"2024-01-01T00:00:00.000Z"
],
"archived": true,
"assignedTechnicianIds": [
"assignedTechnicianIds"
],
"attributionMessageId": null,
"attributionSource": null,
"authorized": true,
"authorizedDate": null,
"automatedCampaignId": null,
"coalescedName": null,
"companyId": "companyId",
"complaint": null,
"completedAuthorizedLaborHours": 1,
"completedDate": null,
"completedLaborHours": 1,
"conversationId": null,
"createdDate": "createdDate",
"customerId": null,
"deferredServiceCount": 1,
"deleted": true,
"deletedDate": null,
"deletedReason": null,
"deletedUserId": null,
"depositFullyPaid": true,
"depositFullyPaidDate": null,
"discountCents": 1,
"discountPercent": 1,
"dueDate": null,
"emailId": null,
"epaCents": 1,
"externalNumber": null,
"feesCents": 1,
"fullyPaidDate": null,
"generatedCustomerName": null,
"generatedName": null,
"generatedVehicleName": null,
"gstCents": 1,
"hasPayments": true,
"hstCents": 1,
"id": "id",
"imported": true,
"inspectionCount": 1,
"inspectionReviewStatus": "inspectionReviewStatus",
"inspectionStatus": "inspectionStatus",
"invoiced": true,
"invoicedDate": null,
"invoiceLockState": "invoiceLockState",
"laborCents": 1,
"locationId": "locationId",
"messageCount": 1,
"messagedDate": null,
"mileageIn": null,
"mileageOut": null,
"name": null,
"number": "number",
"oneTimeCampaignId": null,
"orderCreatedDate": "orderCreatedDate",
"paid": true,
"paidCostCents": 1,
"partsCents": 1,
"paymentDueDate": null,
"paymentTermId": null,
"phoneNumberId": null,
"pstCents": 1,
"publicId": "publicId",
"purchaseOrderNumber": null,
"readOnly": true,
"readOnlyReason": null,
"recommendation": null,
"remainingCostCents": null,
"repairOrderDate": null,
"requestedDepositCents": 1,
"requireESignatureOnAuthorization": true,
"requireESignatureOnInspection": true,
"requireESignatureOnInvoice": true,
"sentToCarfax": true,
"serviceWriterId": null,
"shopSuppliesCents": 1,
"shopUnreadMessageCount": 1,
"statementId": null,
"status": "status",
"subcontractsCents": 1,
"taxCents": 1,
"taxConfigId": null,
"tiresCents": 1,
"totalAuthorizedLaborHours": 1,
"totalCostCents": 1,
"totalLaborHours": 1,
"transactionalFeeSubtotalCents": 1,
"transactionalFeeTotalCents": 1,
"transactionFeeConfigId": null,
"updatedDate": null,
"updatedSinceSignedInvoice": true,
"vehicleId": null,
"workflowStatusDate": "workflowStatusDate",
"workflowStatusId": null,
"workflowStatusPosition": null
},
"reminders": [
{
"appointmentId": "appointmentId",
"companyId": "companyId",
"createdByUserId": "createdByUserId",
"createdDate": "createdDate",
"id": "id",
"jobInstanceId": null,
"type": "type",
"updatedDate": null,
"value": 1
}
],
"technicians": [
{
"active": true,
"assignedServiceWriter": true,
"assignedTechnician": true,
"canTrackTime": true,
"canTrackTimeMobile": true,
"canTrackTimeWeb": true,
"color": "color",
"companyId": "companyId",
"companyIds": [
"companyIds"
],
"createdDate": "createdDate",
"currentLocationId": null,
"customPhotoId": null,
"customPhotoUrl": null,
"deactivatedByUserId": null,
"deactivatedDate": null,
"email": "email",
"firstName": "firstName",
"googlePhotoDisabled": true,
"googlePhotoUrl": null,
"hqAccess": true,
"id": "id",
"imported": true,
"laborRateId": null,
"lastName": "lastName",
"locationIds": [
"locationIds"
],
"phone": null,
"preferredLanguage": "preferredLanguage",
"requireEmailChange": true,
"roleIds": [
"roleIds"
],
"showInShop": true,
"updatedDate": null,
"visibleCompanyIds": [
"visibleCompanyIds"
],
"visibleLocationIds": [
"visibleLocationIds"
]
}
],
"vehicle": {
"appointmentCount": 1,
"baseId": null,
"bedLength": null,
"bodyStyle": null,
"bodyStyleId": null,
"coalescedVINorHIN": null,
"color": null,
"companyId": "companyId",
"computed_ymm": null,
"configurationStatus": null,
"createdDate": "createdDate",
"customPhoto": true,
"deferredServiceCount": 1,
"deleted": true,
"deletedDate": null,
"deletedReason": null,
"deletedUserId": null,
"drivetrain": null,
"drivetype": null,
"drivetypeId": null,
"drivingCondition": null,
"engine": null,
"engineId": null,
"externalId": null,
"frontTireSize": null,
"hin": null,
"hqVehicleId": null,
"id": "id",
"imported": true,
"lastServicedDate": null,
"length": null,
"lengthUnit": null,
"licensePlate": null,
"licensePlateCountry": "licensePlateCountry",
"licensePlateState": null,
"locationIds": [
"locationIds"
],
"make": null,
"makeId": null,
"messageCount": 1,
"mileage": null,
"mileageLogCount": 1,
"mileageUnit": "mileageUnit",
"model": null,
"modelId": null,
"name": null,
"note": "note",
"odometer": true,
"orderCount": 1,
"originLocationId": null,
"ownerCount": 1,
"preferredLaborGuide": "preferredLaborGuide",
"productionDate": null,
"rearTireSize": null,
"region": null,
"serial": null,
"size": "size",
"stockPhoto": true,
"submodel": null,
"submodelId": null,
"tirePressureLogCount": 1,
"transmission": null,
"transmissionId": null,
"transmissionMfrCode": null,
"transmissionSpeed": null,
"type": null,
"unit": null,
"updatedDate": null,
"vcdbId": null,
"vcdbVehicleId": null,
"vin": null,
"year": null
}
}
],
"success": true
}
POST/v3/appointment/search
Search Appointments
Search for Appointments
Body parameters
Consumes
The following content type is required: application/json
- Name
limit- Type
- number
- Description
- Name
orderBy- Type
- object
- Description
- Name
skip- Type
- number
- Description
- Name
where- Type
- object
- Description
Properties for orderBy object
- Name
startDate- Type
- one of: 'asc', 'desc' Required
- Description
Properties for where object
- Name
customerId- Type
- string
- Description
- Name
endDate- Type
- object
- Description
- Name
includeUnassigned- Type
- boolean
- Description
- Name
orderId- Type
- string
- Description
- Name
startDate- Type
- object
- Description
- Name
technicians- Type
- array
- Description
Properties for endDate object
- Name
gte- Type
- string
- Description
- Name
lte- Type
- string
- Description
Properties for startDate object
- Name
gte- Type
- string
- Description
- Name
lte- Type
- string
- Description
Produces
The response content type: application/json
200 Response
- Name
code- Type
- string
- Description
- The error code
- Name
data- Type
- array Required
- Description
- Name
documentation_url- Type
- string
- Description
- An optional link to the documentation for the error
- Name
message- Type
- string
- Description
- the error message if success = false
- Name
success- Type
- boolean Required
- Description
- if successful, will be true. if not successful, will be false and message will contain a human readable error message
4xx Response
- Name
code- Type
- string
- Description
- The error code
- Name
data- Type
- object
- Description
- An optional object containing relevant error data
- Name
documentation_url- Type
- string
- Description
- An optional link to the documentation for the error
- Name
message- Type
- string
- Description
- the error message if not successful
- Name
success- Type
- boolean Required
- Description
- if successful, will be true. if not successful, will be false and message will contain a human readable error message
5xx Response
- Name
code- Type
- string
- Description
- The error code
- Name
data- Type
- object
- Description
- An optional object containing relevant error data
- Name
documentation_url- Type
- string
- Description
- An optional link to the documentation for the error
- Name
message- Type
- string
- Description
- the error message if not successful
- Name
success- Type
- boolean Required
- Description
- if successful, will be true. if not successful, will be false and message will contain a human readable error message
Example Requestapplication/json
POST
/v3/appointment/searchcurl https://api.shopmonkey.cloud/v3/appointment/search \
-H "Authorization: Bearer ${SM_TOKEN}" \
-H 'Content-Type: application/json' \
--data '{}'
Example Responseapplication/json
{
"data": [
{
"allDay": true,
"attributionMessageId": null,
"attributionSource": null,
"automatedCampaignId": null,
"cancellationNote": null,
"chatBotSessionId": null,
"color": "color",
"companyId": "companyId",
"confirmationStatus": "confirmationStatus",
"confirmationSubject": null,
"confirmationTemplateIdentifier": null,
"confirmationText": null,
"createdDate": "createdDate",
"customerEmailId": null,
"customerId": null,
"customerPhoneNumberId": null,
"duration": null,
"endDate": "endDate",
"id": "id",
"isRecurringParent": true,
"lastRecurrenceEndDate": null,
"legacyHydratedReminder": true,
"locationId": "locationId",
"name": "name",
"note": "note",
"oneTimeCampaignId": null,
"orderId": null,
"origin": "origin",
"originalEndDate": null,
"originalStartDate": null,
"publicId": "publicId",
"recurring": true,
"recurringAppointmentId": null,
"recurringExceptionId": null,
"reminderSubject": null,
"reminderTemplateIdentifier": null,
"reminderText": null,
"removedFromRecurrency": true,
"rruleset": null,
"sendConfirmation": true,
"sendReminder": true,
"startDate": "startDate",
"updatedDate": null,
"useEmail": true,
"useSMS": true,
"vehicleId": null,
"appointmentConfirmationDeliveries": [
{
"appointmentId": "appointmentId",
"companyId": "companyId",
"createdDate": "createdDate",
"id": "id",
"locationId": "locationId",
"updatedDate": null
}
],
"appointmentReminderDeliveries": [
{
"appointmentId": "appointmentId",
"companyId": "companyId",
"createdDate": "createdDate",
"id": "id",
"locationId": "locationId",
"reminderId": null,
"updatedDate": null
}
],
"automatedCampaign": {
"activatedDate": null,
"id": "id",
"name": "name"
},
"customer": {
"address1": null,
"address2": null,
"appointmentCount": 1,
"city": null,
"coalescedFirstNameOrCompanyName": null,
"companyId": "companyId",
"companyName": null,
"country": null,
"createdDate": "createdDate",
"customerType": "customerType",
"deferredServiceCount": 1,
"deleted": true,
"deletedDate": null,
"deletedReason": null,
"deletedUserId": null,
"discountPercent": 1,
"dotNumber": null,
"externalId": null,
"finixIdentityId": null,
"firstName": null,
"fleetId": null,
"gstExempt": true,
"hqCustomerId": null,
"hstExempt": true,
"id": "id",
"imported": true,
"laborMatrixId": null,
"laborRateId": null,
"lastName": null,
"lastTimeOrderWorked": null,
"locationIds": [
"locationIds"
],
"marketingOptIn": true,
"messageCount": 1,
"normalizedFirstName": null,
"normalizedLastName": null,
"normalizedName": null,
"note": "note",
"orderCount": 1,
"originLocationId": null,
"paymentTermId": null,
"postalCode": null,
"preferredContactMethod": null,
"preferredLanguage": "preferredLanguage",
"pricingMatrixId": null,
"pstExempt": true,
"publicId": "publicId",
"referralSourceId": null,
"showLaborHours": true,
"showLaborNote": true,
"showPartCostAndQuantity": true,
"showPartNote": true,
"showPartNumber": true,
"showSubcontractNote": true,
"state": null,
"statementCount": 1,
"taxExempt": true,
"transactionCount": 1,
"updatedDate": null,
"vehicleCount": 1,
"website": null,
"emails": [
{
"companyId": "companyId",
"createdDate": "createdDate",
"customerId": "customerId",
"email": "email",
"hqEmailId": null,
"id": "id",
"locationId": "locationId",
"marketingOptIn": true,
"primary": true,
"subscribed": true,
"updatedDate": null
}
],
"phoneNumbers": [
{
"carrierName": null,
"companyId": "companyId",
"country": null,
"createdDate": "createdDate",
"customerId": "customerId",
"extension": null,
"hqPhoneNumberId": null,
"id": "id",
"imported": true,
"locationId": "locationId",
"mobileCountryCode": null,
"mobileNetworkCode": null,
"number": "number",
"primary": true,
"type": null,
"updatedDate": null,
"userDefinedType": null
}
],
"customFields": {}
},
"oneTimeCampaign": {
"id": "id",
"name": "name",
"sentDate": null
},
"order": {
"allowCollectPayment": true,
"allowCustomerApplyCoupon": true,
"allowCustomerAuthorization": true,
"allowCustomerViewActivity": true,
"allowCustomerViewAuthorizations": true,
"allowCustomerViewInspections": true,
"allowCustomerViewMessages": true,
"appliedDiscountCents": 1,
"appliedDiscountPercent": 1,
"appliedDiscountValueType": "appliedDiscountValueType",
"appointmentDates": [
"2024-01-01T00:00:00.000Z"
],
"archived": true,
"assignedTechnicianIds": [
"assignedTechnicianIds"
],
"attributionMessageId": null,
"attributionSource": null,
"authorized": true,
"authorizedDate": null,
"automatedCampaignId": null,
"coalescedName": null,
"companyId": "companyId",
"complaint": null,
"completedAuthorizedLaborHours": 1,
"completedDate": null,
"completedLaborHours": 1,
"conversationId": null,
"createdDate": "createdDate",
"customerId": null,
"deferredServiceCount": 1,
"deleted": true,
"deletedDate": null,
"deletedReason": null,
"deletedUserId": null,
"depositFullyPaid": true,
"depositFullyPaidDate": null,
"discountCents": 1,
"discountPercent": 1,
"dueDate": null,
"emailId": null,
"epaCents": 1,
"externalNumber": null,
"feesCents": 1,
"fullyPaidDate": null,
"generatedCustomerName": null,
"generatedName": null,
"generatedVehicleName": null,
"gstCents": 1,
"hasPayments": true,
"hstCents": 1,
"id": "id",
"imported": true,
"inspectionCount": 1,
"inspectionReviewStatus": "inspectionReviewStatus",
"inspectionStatus": "inspectionStatus",
"invoiced": true,
"invoicedDate": null,
"invoiceLockState": "invoiceLockState",
"laborCents": 1,
"locationId": "locationId",
"messageCount": 1,
"messagedDate": null,
"mileageIn": null,
"mileageOut": null,
"name": null,
"number": "number",
"oneTimeCampaignId": null,
"orderCreatedDate": "orderCreatedDate",
"paid": true,
"paidCostCents": 1,
"partsCents": 1,
"paymentDueDate": null,
"paymentTermId": null,
"phoneNumberId": null,
"pstCents": 1,
"publicId": "publicId",
"purchaseOrderNumber": null,
"readOnly": true,
"readOnlyReason": null,
"recommendation": null,
"remainingCostCents": null,
"repairOrderDate": null,
"requestedDepositCents": 1,
"requireESignatureOnAuthorization": true,
"requireESignatureOnInspection": true,
"requireESignatureOnInvoice": true,
"sentToCarfax": true,
"serviceWriterId": null,
"shopSuppliesCents": 1,
"shopUnreadMessageCount": 1,
"statementId": null,
"status": "status",
"subcontractsCents": 1,
"taxCents": 1,
"taxConfigId": null,
"tiresCents": 1,
"totalAuthorizedLaborHours": 1,
"totalCostCents": 1,
"totalLaborHours": 1,
"transactionalFeeSubtotalCents": 1,
"transactionalFeeTotalCents": 1,
"transactionFeeConfigId": null,
"updatedDate": null,
"updatedSinceSignedInvoice": true,
"vehicleId": null,
"workflowStatusDate": "workflowStatusDate",
"workflowStatusId": null,
"workflowStatusPosition": null
},
"reminders": [
{
"appointmentId": "appointmentId",
"companyId": "companyId",
"createdByUserId": "createdByUserId",
"createdDate": "createdDate",
"id": "id",
"jobInstanceId": null,
"type": "type",
"updatedDate": null,
"value": 1
}
],
"technicians": [
{
"active": true,
"assignedServiceWriter": true,
"assignedTechnician": true,
"canTrackTime": true,
"canTrackTimeMobile": true,
"canTrackTimeWeb": true,
"color": "color",
"companyId": "companyId",
"companyIds": [
"companyIds"
],
"createdDate": "createdDate",
"currentLocationId": null,
"customPhotoId": null,
"customPhotoUrl": null,
"deactivatedByUserId": null,
"deactivatedDate": null,
"email": "email",
"firstName": "firstName",
"googlePhotoDisabled": true,
"googlePhotoUrl": null,
"hqAccess": true,
"id": "id",
"imported": true,
"laborRateId": null,
"lastName": "lastName",
"locationIds": [
"locationIds"
],
"phone": null,
"preferredLanguage": "preferredLanguage",
"requireEmailChange": true,
"roleIds": [
"roleIds"
],
"showInShop": true,
"updatedDate": null,
"visibleCompanyIds": [
"visibleCompanyIds"
],
"visibleLocationIds": [
"visibleLocationIds"
]
}
],
"vehicle": {
"appointmentCount": 1,
"baseId": null,
"bedLength": null,
"bodyStyle": null,
"bodyStyleId": null,
"coalescedVINorHIN": null,
"color": null,
"companyId": "companyId",
"computed_ymm": null,
"configurationStatus": null,
"createdDate": "createdDate",
"customPhoto": true,
"deferredServiceCount": 1,
"deleted": true,
"deletedDate": null,
"deletedReason": null,
"deletedUserId": null,
"drivetrain": null,
"drivetype": null,
"drivetypeId": null,
"drivingCondition": null,
"engine": null,
"engineId": null,
"externalId": null,
"frontTireSize": null,
"hin": null,
"hqVehicleId": null,
"id": "id",
"imported": true,
"lastServicedDate": null,
"length": null,
"lengthUnit": null,
"licensePlate": null,
"licensePlateCountry": "licensePlateCountry",
"licensePlateState": null,
"locationIds": [
"locationIds"
],
"make": null,
"makeId": null,
"messageCount": 1,
"mileage": null,
"mileageLogCount": 1,
"mileageUnit": "mileageUnit",
"model": null,
"modelId": null,
"name": null,
"note": "note",
"odometer": true,
"orderCount": 1,
"originLocationId": null,
"ownerCount": 1,
"preferredLaborGuide": "preferredLaborGuide",
"productionDate": null,
"rearTireSize": null,
"region": null,
"serial": null,
"size": "size",
"stockPhoto": true,
"submodel": null,
"submodelId": null,
"tirePressureLogCount": 1,
"transmission": null,
"transmissionId": null,
"transmissionMfrCode": null,
"transmissionSpeed": null,
"type": null,
"unit": null,
"updatedDate": null,
"vcdbId": null,
"vcdbVehicleId": null,
"vin": null,
"year": null
}
}
],
"success": true
}
PUT/v3/appointment/:id
Update Appointment
Update one appointment
URL parameters
- Name
id- Type
- string Required
- Description
- the id or recurringExceptionId for the appointment
Body parameters
Consumes
The following content type is required: application/json
- Name
allDay- Type
- boolean
- Description
- Name
attributionMessageId- Type
- string
- Description
- Name
attributionSource- Type
- one of: WorkRequestForm, AppointmentScheduler, Manual, FuzzyCampaignSMSDelivered, FuzzyCampaignEmailRead
- Description
- Name
cancellationNote- Type
- string
- Description
- if the appointment was canceled
- Name
chatBotSessionId- Type
- string
- Description
- if the appointment was created via a chatbot session, this will be the related session
- Name
color- Type
- one of: aqua, black, blue, brown, gray, green, orange, purple, red, yellow
- Description
- Name
confirmationStatus- Type
- one of: Confirmed, Declined, NoResponse
- Description
- Name
confirmationSubject- Type
- string
- Description
- Name
confirmationTemplateIdentifier- Type
- string
- Description
- This could be a MesageTemplate id or a DefaultMessageTemplateIdentifier or a StarterMessageTemplateIdentifier
- Name
confirmationText- Type
- string
- Description
- Name
customerEmailId- Type
- string
- Description
- Name
customerId- Type
- string
- Description
- Name
customerPhoneNumberId- Type
- string
- Description
- Name
endDate- Type
- string
- Description
- end date and time of the appointment
- Name
legacyHydratedReminder- Type
- boolean
- Description
- Used to aid in backwards compatibility for prehydrated reminders and confirmations. False if reminder and confirmation text contains placeholders (new behavior). True if prehydrated (legacy behavior
- Name
name- Type
- string
- Description
- name of the appointment like 'Oil change'
- Name
note- Type
- string
- Description
- notes for the appointment
- Name
orderId- Type
- string
- Description
- Name
origin- Type
- one of: Shop, HQ, AppointmentScheduler, Concierge
- Description
- Name
recurring- Type
- boolean
- Description
- Name
reminderSubject- Type
- string
- Description
- Name
reminderTemplateIdentifier- Type
- string
- Description
- This could be a MesageTemplate id or a DefaultMessageTemplateIdentifier or a StarterMessageTemplateIdentifier
- Name
reminderText- Type
- string
- Description
- Name
removedFromRecurrency- Type
- boolean
- Description
- Name
sendConfirmation- Type
- boolean
- Description
- Send confirmation notification at the moment of saving the appointment
- Name
sendReminder- Type
- boolean
- Description
- Send reminder will send a notification at some user-specified times before the appointment using scheduler
- Name
startDate- Type
- string
- Description
- start date and time of the appointment
- Name
useEmail- Type
- boolean
- Description
- In case we want to use email to send confirmation and/or reminder
- Name
useSMS- Type
- boolean
- Description
- In case we want to use email to send confirmation and/or reminder
- Name
vehicleId- Type
- string
- Description
- Name
repeatCount- Type
- integer
- Description
- Name
repeatFrequency- Type
- object
- Description
- Name
repeatInterval- Type
- integer
- Description
- Name
repeatUntil- Type
- string
- Description
- Name
recurringAppointmentUpdateScope- Type
- one of: 'Current', 'CurrentAndSubsequent'
- Description
- Name
technicianIds- Type
- array
- Description
- Name
reminders- Type
- array
- Description
- Name
requestAppointmentConfirmation- Type
- boolean
- Description
- true if should request appointment confirmation/cancellation by customer
- Name
sendRescheduleConfirmation- Type
- boolean
- Description
- true if should send message for appointment rescheduled
Produces
The response content type: application/json
200 Response
- Name
code- Type
- string
- Description
- The error code
- Name
documentation_url- Type
- string
- Description
- An optional link to the documentation for the error
- Name
message- Type
- string
- Description
- the error message if success = false
- Name
success- Type
- boolean Required
- Description
- if successful, will be true. if not successful, will be false and message will contain a human readable error message
- Name
data- Type
- object Required
- Description
- Appointment schema
Properties for data object
- Name
allDay- Type
- boolean Required
- Description
- Name
attributionMessageId- Type
- string Required
- Description
- Name
attributionSource- Type
- one of: WorkRequestForm, AppointmentScheduler, Manual, FuzzyCampaignSMSDelivered, FuzzyCampaignEmailRead Required
- Description
- Name
automatedCampaignId- Type
- string Required
- Description
- Name
cancellationNote- Type
- string Required
- Description
- if the appointment was canceled
- Name
chatBotSessionId- Type
- string Required
- Description
- if the appointment was created via a chatbot session, this will be the related session
- Name
color- Type
- one of: aqua, black, blue, brown, gray, green, orange, purple, red, yellow Required
- Description
- Name
companyId- Type
- string Required
- Description
- Name
confirmationStatus- Type
- one of: Confirmed, Declined, NoResponse Required
- Description
- Name
confirmationSubject- Type
- string Required
- Description
- Name
confirmationTemplateIdentifier- Type
- string Required
- Description
- This could be a MesageTemplate id or a DefaultMessageTemplateIdentifier or a StarterMessageTemplateIdentifier
- Name
confirmationText- Type
- string Required
- Description
- Name
createdDate- Type
- string Required
- Description
- Name
customerEmailId- Type
- string Required
- Description
- Name
customerId- Type
- string Required
- Description
- Name
customerPhoneNumberId- Type
- string Required
- Description
- Name
duration- Type
- integer Required
- Description
- the calculated duration ))::bigint
- Name
endDate- Type
- string Required
- Description
- end date and time of the appointment
- Name
id- Type
- string Required
- Description
- Name
isRecurringParent- Type
- boolean Required
- Description
- Name
lastRecurrenceEndDate- Type
- string Required
- Description
- end date and time of the last recurrence for more efficient queries
- Name
legacyHydratedReminder- Type
- boolean Required
- Description
- Used to aid in backwards compatibility for prehydrated reminders and confirmations. False if reminder and confirmation text contains placeholders (new behavior). True if prehydrated (legacy behavior
- Name
locationId- Type
- string Required
- Description
- Name
name- Type
- string Required
- Description
- name of the appointment like 'Oil change'
- Name
note- Type
- string Required
- Description
- notes for the appointment
- Name
oneTimeCampaignId- Type
- string Required
- Description
- Name
orderId- Type
- string Required
- Description
- Name
origin- Type
- one of: Shop, HQ, AppointmentScheduler, Concierge Required
- Description
- Name
originalEndDate- Type
- string Required
- Description
- the time this instance ends according to the recurrence data in the parent recurring event
- Name
originalStartDate- Type
- string Required
- Description
- the time this instance starts according to the recurrence data in the parent recurring event
- Name
publicId- Type
- string Required
- Description
- Name
recurring- Type
- boolean Required
- Description
- Name
recurringAppointmentId- Type
- string Required
- Description
- if the appointment was created from a recurring appointment
- Name
recurringExceptionId- Type
- string Required
- Description
- OR ("originalStartDate" IS NULL) THEN NULL ELSE "recurringAppointmentId" || '_' || (EXTRACT(EPOCH FROM timezone('UTC', "originalStartDate"))::bigint * 1000)::text END
- Name
reminderSubject- Type
- string Required
- Description
- Name
reminderTemplateIdentifier- Type
- string Required
- Description
- This could be a MesageTemplate id or a DefaultMessageTemplateIdentifier or a StarterMessageTemplateIdentifier
- Name
reminderText- Type
- string Required
- Description
- Name
removedFromRecurrency- Type
- boolean Required
- Description
- Name
rruleset- Type
- string Required
- Description
- Name
sendConfirmation- Type
- boolean Required
- Description
- Send confirmation notification at the moment of saving the appointment
- Name
sendReminder- Type
- boolean Required
- Description
- Send reminder will send a notification at some user-specified times before the appointment using scheduler
- Name
startDate- Type
- string Required
- Description
- start date and time of the appointment
- Name
updatedDate- Type
- string Required
- Description
- Name
useEmail- Type
- boolean Required
- Description
- In case we want to use email to send confirmation and/or reminder
- Name
useSMS- Type
- boolean Required
- Description
- In case we want to use email to send confirmation and/or reminder
- Name
vehicleId- Type
- string Required
- Description
4xx Response
- Name
code- Type
- string
- Description
- The error code
- Name
data- Type
- object
- Description
- An optional object containing relevant error data
- Name
documentation_url- Type
- string
- Description
- An optional link to the documentation for the error
- Name
message- Type
- string
- Description
- the error message if not successful
- Name
success- Type
- boolean Required
- Description
- if successful, will be true. if not successful, will be false and message will contain a human readable error message
5xx Response
- Name
code- Type
- string
- Description
- The error code
- Name
data- Type
- object
- Description
- An optional object containing relevant error data
- Name
documentation_url- Type
- string
- Description
- An optional link to the documentation for the error
- Name
message- Type
- string
- Description
- the error message if not successful
- Name
success- Type
- boolean Required
- Description
- if successful, will be true. if not successful, will be false and message will contain a human readable error message
Example Requestapplication/json
PUT
/v3/appointment/:idcurl https://api.shopmonkey.cloud/v3/appointment/:id \
-H "Authorization: Bearer ${SM_TOKEN}" \
-X PUT -H 'Content-Type: application/json' \
--data '{}'
Example Responseapplication/json
{
"success": true,
"data": {
"allDay": true,
"attributionMessageId": null,
"attributionSource": null,
"automatedCampaignId": null,
"cancellationNote": null,
"chatBotSessionId": null,
"color": "color",
"companyId": "companyId",
"confirmationStatus": "confirmationStatus",
"confirmationSubject": null,
"confirmationTemplateIdentifier": null,
"confirmationText": null,
"createdDate": "createdDate",
"customerEmailId": null,
"customerId": null,
"customerPhoneNumberId": null,
"duration": null,
"endDate": "endDate",
"id": "id",
"isRecurringParent": true,
"lastRecurrenceEndDate": null,
"legacyHydratedReminder": true,
"locationId": "locationId",
"name": "name",
"note": "note",
"oneTimeCampaignId": null,
"orderId": null,
"origin": "origin",
"originalEndDate": null,
"originalStartDate": null,
"publicId": "publicId",
"recurring": true,
"recurringAppointmentId": null,
"recurringExceptionId": null,
"reminderSubject": null,
"reminderTemplateIdentifier": null,
"reminderText": null,
"removedFromRecurrency": true,
"rruleset": null,
"sendConfirmation": true,
"sendReminder": true,
"startDate": "startDate",
"updatedDate": null,
"useEmail": true,
"useSMS": true,
"vehicleId": null
}
}
POST/v3/appointment
Create
Create one
Body parameters
Consumes
The following content type is required: application/json
- Name
allDay- Type
- boolean
- Description
- Name
attributionMessageId- Type
- string
- Description
- Name
attributionSource- Type
- one of: WorkRequestForm, AppointmentScheduler, Manual, FuzzyCampaignSMSDelivered, FuzzyCampaignEmailRead
- Description
- Name
cancellationNote- Type
- string
- Description
- if the appointment was canceled
- Name
chatBotSessionId- Type
- string
- Description
- if the appointment was created via a chatbot session, this will be the related session
- Name
color- Type
- one of: aqua, black, blue, brown, gray, green, orange, purple, red, yellow Required
- Description
- Name
confirmationStatus- Type
- one of: Confirmed, Declined, NoResponse
- Description
- Name
confirmationSubject- Type
- string
- Description
- Name
confirmationTemplateIdentifier- Type
- string
- Description
- This could be a MesageTemplate id or a DefaultMessageTemplateIdentifier or a StarterMessageTemplateIdentifier
- Name
confirmationText- Type
- string
- Description
- Name
customerEmailId- Type
- string
- Description
- Name
customerId- Type
- string
- Description
- Name
customerPhoneNumberId- Type
- string
- Description
- Name
endDate- Type
- string Required
- Description
- end date and time of the appointment
- Name
legacyHydratedReminder- Type
- boolean
- Description
- Used to aid in backwards compatibility for prehydrated reminders and confirmations. False if reminder and confirmation text contains placeholders (new behavior). True if prehydrated (legacy behavior
- Name
name- Type
- string Required
- Description
- name of the appointment like 'Oil change'
- Name
note- Type
- string
- Description
- notes for the appointment
- Name
orderId- Type
- string
- Description
- Name
origin- Type
- one of: Shop, HQ, AppointmentScheduler, Concierge
- Description
- Name
recurring- Type
- boolean
- Description
- Name
reminderSubject- Type
- string
- Description
- Name
reminderTemplateIdentifier- Type
- string
- Description
- This could be a MesageTemplate id or a DefaultMessageTemplateIdentifier or a StarterMessageTemplateIdentifier
- Name
reminderText- Type
- string
- Description
- Name
removedFromRecurrency- Type
- boolean
- Description
- Name
sendConfirmation- Type
- boolean
- Description
- Send confirmation notification at the moment of saving the appointment
- Name
sendReminder- Type
- boolean
- Description
- Send reminder will send a notification at some user-specified times before the appointment using scheduler
- Name
startDate- Type
- string Required
- Description
- start date and time of the appointment
- Name
useEmail- Type
- boolean
- Description
- In case we want to use email to send confirmation and/or reminder
- Name
useSMS- Type
- boolean
- Description
- In case we want to use email to send confirmation and/or reminder
- Name
vehicleId- Type
- string
- Description
- Name
repeatCount- Type
- integer
- Description
- Name
repeatFrequency- Type
- object
- Description
- Name
repeatInterval- Type
- integer
- Description
- Name
repeatUntil- Type
- string
- Description
- Name
technicianIds- Type
- array
- Description
- Name
reminders- Type
- array
- Description
Produces
The response content type: application/json
200 Response
- Name
code- Type
- string
- Description
- The error code
- Name
documentation_url- Type
- string
- Description
- An optional link to the documentation for the error
- Name
message- Type
- string
- Description
- the error message if success = false
- Name
success- Type
- boolean Required
- Description
- if successful, will be true. if not successful, will be false and message will contain a human readable error message
- Name
data- Type
- object Required
- Description
- Appointment schema
Properties for data object
- Name
allDay- Type
- boolean Required
- Description
- Name
attributionMessageId- Type
- string Required
- Description
- Name
attributionSource- Type
- one of: WorkRequestForm, AppointmentScheduler, Manual, FuzzyCampaignSMSDelivered, FuzzyCampaignEmailRead Required
- Description
- Name
automatedCampaignId- Type
- string Required
- Description
- Name
cancellationNote- Type
- string Required
- Description
- if the appointment was canceled
- Name
chatBotSessionId- Type
- string Required
- Description
- if the appointment was created via a chatbot session, this will be the related session
- Name
color- Type
- one of: aqua, black, blue, brown, gray, green, orange, purple, red, yellow Required
- Description
- Name
companyId- Type
- string Required
- Description
- Name
confirmationStatus- Type
- one of: Confirmed, Declined, NoResponse Required
- Description
- Name
confirmationSubject- Type
- string Required
- Description
- Name
confirmationTemplateIdentifier- Type
- string Required
- Description
- This could be a MesageTemplate id or a DefaultMessageTemplateIdentifier or a StarterMessageTemplateIdentifier
- Name
confirmationText- Type
- string Required
- Description
- Name
createdDate- Type
- string Required
- Description
- Name
customerEmailId- Type
- string Required
- Description
- Name
customerId- Type
- string Required
- Description
- Name
customerPhoneNumberId- Type
- string Required
- Description
- Name
duration- Type
- integer Required
- Description
- the calculated duration ))::bigint
- Name
endDate- Type
- string Required
- Description
- end date and time of the appointment
- Name
id- Type
- string Required
- Description
- Name
isRecurringParent- Type
- boolean Required
- Description
- Name
lastRecurrenceEndDate- Type
- string Required
- Description
- end date and time of the last recurrence for more efficient queries
- Name
legacyHydratedReminder- Type
- boolean Required
- Description
- Used to aid in backwards compatibility for prehydrated reminders and confirmations. False if reminder and confirmation text contains placeholders (new behavior). True if prehydrated (legacy behavior
- Name
locationId- Type
- string Required
- Description
- Name
name- Type
- string Required
- Description
- name of the appointment like 'Oil change'
- Name
note- Type
- string Required
- Description
- notes for the appointment
- Name
oneTimeCampaignId- Type
- string Required
- Description
- Name
orderId- Type
- string Required
- Description
- Name
origin- Type
- one of: Shop, HQ, AppointmentScheduler, Concierge Required
- Description
- Name
originalEndDate- Type
- string Required
- Description
- the time this instance ends according to the recurrence data in the parent recurring event
- Name
originalStartDate- Type
- string Required
- Description
- the time this instance starts according to the recurrence data in the parent recurring event
- Name
publicId- Type
- string Required
- Description
- Name
recurring- Type
- boolean Required
- Description
- Name
recurringAppointmentId- Type
- string Required
- Description
- if the appointment was created from a recurring appointment
- Name
recurringExceptionId- Type
- string Required
- Description
- OR ("originalStartDate" IS NULL) THEN NULL ELSE "recurringAppointmentId" || '_' || (EXTRACT(EPOCH FROM timezone('UTC', "originalStartDate"))::bigint * 1000)::text END
- Name
reminderSubject- Type
- string Required
- Description
- Name
reminderTemplateIdentifier- Type
- string Required
- Description
- This could be a MesageTemplate id or a DefaultMessageTemplateIdentifier or a StarterMessageTemplateIdentifier
- Name
reminderText- Type
- string Required
- Description
- Name
removedFromRecurrency- Type
- boolean Required
- Description
- Name
rruleset- Type
- string Required
- Description
- Name
sendConfirmation- Type
- boolean Required
- Description
- Send confirmation notification at the moment of saving the appointment
- Name
sendReminder- Type
- boolean Required
- Description
- Send reminder will send a notification at some user-specified times before the appointment using scheduler
- Name
startDate- Type
- string Required
- Description
- start date and time of the appointment
- Name
updatedDate- Type
- string Required
- Description
- Name
useEmail- Type
- boolean Required
- Description
- In case we want to use email to send confirmation and/or reminder
- Name
useSMS- Type
- boolean Required
- Description
- In case we want to use email to send confirmation and/or reminder
- Name
vehicleId- Type
- string Required
- Description
4xx Response
- Name
code- Type
- string
- Description
- The error code
- Name
data- Type
- object
- Description
- An optional object containing relevant error data
- Name
documentation_url- Type
- string
- Description
- An optional link to the documentation for the error
- Name
message- Type
- string
- Description
- the error message if not successful
- Name
success- Type
- boolean Required
- Description
- if successful, will be true. if not successful, will be false and message will contain a human readable error message
5xx Response
- Name
code- Type
- string
- Description
- The error code
- Name
data- Type
- object
- Description
- An optional object containing relevant error data
- Name
documentation_url- Type
- string
- Description
- An optional link to the documentation for the error
- Name
message- Type
- string
- Description
- the error message if not successful
- Name
success- Type
- boolean Required
- Description
- if successful, will be true. if not successful, will be false and message will contain a human readable error message
Example Requestapplication/json
POST
/v3/appointmentcurl https://api.shopmonkey.cloud/v3/appointment \
-H "Authorization: Bearer ${SM_TOKEN}" \
-H 'Content-Type: application/json' \
--data '{ "color" : "value", "endDate" : "value", "name" : "value", "startDate" : "value" }'
Example Responseapplication/json
{
"success": true,
"data": {
"allDay": true,
"attributionMessageId": null,
"attributionSource": null,
"automatedCampaignId": null,
"cancellationNote": null,
"chatBotSessionId": null,
"color": "color",
"companyId": "companyId",
"confirmationStatus": "confirmationStatus",
"confirmationSubject": null,
"confirmationTemplateIdentifier": null,
"confirmationText": null,
"createdDate": "createdDate",
"customerEmailId": null,
"customerId": null,
"customerPhoneNumberId": null,
"duration": null,
"endDate": "endDate",
"id": "id",
"isRecurringParent": true,
"lastRecurrenceEndDate": null,
"legacyHydratedReminder": true,
"locationId": "locationId",
"name": "name",
"note": "note",
"oneTimeCampaignId": null,
"orderId": null,
"origin": "origin",
"originalEndDate": null,
"originalStartDate": null,
"publicId": "publicId",
"recurring": true,
"recurringAppointmentId": null,
"recurringExceptionId": null,
"reminderSubject": null,
"reminderTemplateIdentifier": null,
"reminderText": null,
"removedFromRecurrency": true,
"rruleset": null,
"sendConfirmation": true,
"sendReminder": true,
"startDate": "startDate",
"updatedDate": null,
"useEmail": true,
"useSMS": true,
"vehicleId": null
}
}
DELETE/v3/appointment/:id
Delete appointment
Delete appointment
URL parameters
- Name
id- Type
- string Required
- Description
- the id for the appointment
Produces
The response content type: application/json
200 Response
- Name
code- Type
- string
- Description
- The error code
- Name
documentation_url- Type
- string
- Description
- An optional link to the documentation for the error
- Name
message- Type
- string
- Description
- the error message if success = false
- Name
success- Type
- boolean Required
- Description
- if successful, will be true. if not successful, will be false and message will contain a human readable error message
- Name
data- Type
- null
- Description
4xx Response
- Name
code- Type
- string
- Description
- The error code
- Name
data- Type
- object
- Description
- An optional object containing relevant error data
- Name
documentation_url- Type
- string
- Description
- An optional link to the documentation for the error
- Name
message- Type
- string
- Description
- the error message if not successful
- Name
success- Type
- boolean Required
- Description
- if successful, will be true. if not successful, will be false and message will contain a human readable error message
5xx Response
- Name
code- Type
- string
- Description
- The error code
- Name
data- Type
- object
- Description
- An optional object containing relevant error data
- Name
documentation_url- Type
- string
- Description
- An optional link to the documentation for the error
- Name
message- Type
- string
- Description
- the error message if not successful
- Name
success- Type
- boolean Required
- Description
- if successful, will be true. if not successful, will be false and message will contain a human readable error message
Example Requestapplication/json
DELETE
/v3/appointment/:idcurl https://api.shopmonkey.cloud/v3/appointment/:id \
-H "Authorization: Bearer ${SM_TOKEN}" \
-X DELETE -H 'Content-Type: application/json' \
--data '{}'
Example Responseapplication/json
{
"success": true
}