SMRT GraphQL API Documentation
This documentation offers a comprehensive documentation for the SMRT GraphQL API, providing full access to the SMRT point of sale software. Usage examples include, creating client signup forms, native apps, querying report data, pulling order information for sales tax reporting purposes, and much more!
To access the SMRT API, an 'Authorization' header with an API key is required. This key is available to businesses with an active subscription to SMRT Systems. For more information on our services and subscription details, please visit https://smrtsystems.com/.
Businesses interested in API integration can reach out to our support team at support@smrtsystems.com for an API key, applicable for both development and production use. This key is crucial for authenticating your API requests.
During the development phase, the API endpoint is https://apitesting.smrtapp.com/graphql, allowing certain public GraphQL queries without an API key for convenient testing. For production deployment, integrations shift to a unique business-specific subdomain, paired with a dedicated API key.
API Endpoints
https://apitesting.smrtapp.com/graphql/
Queries
business
Description
Information about the business that this graphql endpoint is referencing. The subdomain of *.smrtapp.com, will always match the subdomain of the business returned.
Response
Returns a Business
Example
Query
query Business {
business {
id
localId
shortId
subdomain
settings {
id
localId
mainDeliveryStore {
...StoreFragment
}
mainStore {
...StoreFragment
}
quickDetailingItemTypes {
...ItemTypeFragment
}
defaultPaymentMethod {
...PaymentMethodFragment
}
acceptedPaymentMethods {
...PaymentMethodFragment
}
logo
receiptLogo
POSNewOrderTabs
deliveryNewOrderTabs
statementGenerationDays
invoiceGenerationDays
acceptedCards
automaticSurcharges {
...AutomaticSurchargeFragment
}
detailingAttributes
marketingCampaigns {
...CampaignSettingFragment
}
welcomeNewCustomerCampaign {
...WelcomeNewCustomerCampaignFragment
}
thankYouCampaign {
...ThankYouCampaignFragment
}
arPastDueCampaign {
...ArPastDueCampaignFragment
}
counterToRouteCampaign {
...CounterToRouteCampaignFragment
}
monthlyNewsletterCampaign {
...MonthlyNewsletterCampaignFragment
}
happyAnniversaryCampaign {
...HappyAnniversaryCampaignFragment
}
inventoryReminderCampaign {
...InventoryReminderCampaignFragment
}
oneAndDoneCampaign {
...OneAndDoneCampaignFragment
}
marketingByDepartmentCampaign {
...MarketingByDepartmentCampaignFragment
}
thankYouTopSpendersCampaign {
...ThankYouTopSpendersCampaignFragment
}
newCustomerRetentionCampaign {
...NewCustomerRetentionCampaignFragment
}
customerSignupNoOrdersCampaign {
...CustomerSignupNoOrdersCampaignFragment
}
noOrdersSinceLastCampaign {
...NoOrdersSinceLastCampaignFragment
}
updateYourInformationCampaign {
...UpdateYourInformationCampaignFragment
}
quarterlyComforterCampaign {
...QuarterlyComforterCampaignFragment
}
thankYouNewReviewCampaign {
...ThankYouNewReviewCampaignFragment
}
lostBigCustomerCampaign {
...LostBigCustomerCampaignFragment
}
reviewGenerationCampaign {
...ReviewGenerationCampaignFragment
}
customCampaign {
...CustomCampaignFragment
}
snapshotEmailList {
...SnapshotEmailListFragment
}
businessName
dateFormat
countryCode
timeZone
locale
contactAddressLine
contactAddressState
contactAddressCity
contactAddressZip
contactPhone
logoUrl
noProductionDays
noDeliveryDays
specialHolidays
openDetailingWithCategory
customerFacingDomain
customSignupUrl
contactEmail
twilioAccountSid
twilioAuthToken
twilioPhone
twilioPhoneLookup
whatsAppEnabled
sendSmsOptOutInformation
userNameOnEmailSubject
payableEntity
emailFooter
lockerBuildingCode
communicationTemplatesId
vcardTemplate
newPickupScheduledInstructions
sendAutomatedMessages
sendStatementEmails
signupEmailRequired
signupGroupRequired
signupAutofillCity
signupAddressRequired
signupPhoneRequired
allowOrderSplitting
groupOnDetailingSplit
offerStoreDelivery
offerDeliverySchedulingInText
useStoreZipCodeForTax
summarizeByBillingCode
showSalesTaxBreakdownForStatementOrders
sumOrderTotalOnStatements
simplifiedPaymentReceipt
cashTotalRounding
hasLogo
isHotel
isHotelProcessor
isRoomGroupHotel
isLockers
isValet
isWholesaler
pickupUnpaidOrders
pressOnlyDiscount
scheduleWillCallAtAssembly
scheduleWillCallOnDueDate
dontIncludeOrdersInDeliveryListBeforeDueDate
geoFencingEnabled
allowSubDeliveryAccountScheduling
allowSubAccountToTriggerMasterDelivery
sendAutopayReceipts
sendDeliveryAppointmentConfirmation
showDeliveryNotPaid
deliveryAppLoadListSortDescending
requireSignatureOnDelivery
requirePhotoOnDelivery
showSubRouteForDeliveryStop
genericLaundryBagMode
rushNotificationsHour
websiteDisplayText
shouldShowWebsiteOnReceipts
showAgentOnBagTag
assemblyEvenOnly
voiceAssemblyEnabled
inspectPriceAtAssembly
assemblyPrintFinancialReceiptForDeliveryCustomer
assemblyAlwaysPrintFinancialReceipt
printFinancialTicketOutsideAssembly
keepRackAssignmentOnOrderSplit
complexLotControl
overrideDueDateWithNextDelivery
autoSelectDeliveryReturnLocation
defaultDetailingTab
autoOpenAnnotationType
requireInvoiceInDetailing
displayTooManyDetailedItemsWarning
assemblyIcon
alignAssemblyIcon
newCustomerTicketIcon
newCustomerBottomTicketIcon
customerNameOnTicketBottom
pieceCountOnTicketBottom
customerPhoneOnTicket
showRoomInfoBelowAddress
laundryLicense
summarizedItemTable
showLogoOnReceipts
logoOnReceiptHeight
receiptLogoName
showPriceOnAssembly
paymentReceiptShowSignatureLine
receiptsNameShort
newLocationOnTicket
showRouteOfSameDayDelivery
itemDetailsOnTicket
itemDetailsOnOrderReceipt
newOrderPrintCount
printRetailReceipts
printDropTicketOnOrderSplit
printTicketOnOrderCloseCount
noStoreContactInfoOnReceipts
noPricingOnOrderReceipts
receiptsFooter
thermalReceiptFooter
ticketReceiptFooter
showEmailOnReceipts
showWebsiteOnReceipts
invoicePayableLine
invoiceTerms
isRestorationAccount
offerDemandDelivery
autoAddNewCustomerToWillCallRoute
groupItemDetailsByRoomNumber
merchantBatchCloseTime
saveCardsOnFile
amexSeparately
maxAutopayAmount
maxPaymentAmountWarning
autopayTerms
autopayStatements
autopayBatchStrategy
invoiceDueDays
consolidateInvoiceItemDetails
invoiceShowOrderDetails
invoiceHideOrderInfo
showDateOnStatement
callStatementInvoice
activitySummaryEnabled
attachPDFInStatementEmails
rewardsProgramEnabled
rewardsPointModifier
rewardsCurrencyModifier
rewardsConversionRequirement
rewardsRedeemAutomatically
rewardsEmailRequired
rewardsPhoneRequired
rewardsAddressRequired
rewardsCreditCardRequired
welcomeNotificationDisabled
autoTicketOnCustomerRegistration
autoTicketOnScheduledDelivery
sendCustomerUpdatedCCNotification
allowScheduleBothPickupAndDelivery
limitScheduleDeliveryToClosestRoute
allowRouteRegularCustomersToScheduleOnDemand
allowSameDaySchedulingEvenIfRouteStarted
experimentalPhotoUserExperienceOnWebsiteScheduler
priceListUpdateOrdersCondition
routeAgentPriority
commonOrdersAgent
isMailOrderPickups
lockerDropBinPickupMode
showYesRepliesInComm
autoReplyToYesRepliesInComm
customerWebsiteClothesTrackerTabEnabled
customerWebsiteWardrobeTabEnabled
customerWebsitePaymentTabEnabled
metalprogettiAssemblyLabelTemplate
metalprogettiSendRackSpaceToStorage
rushOrderSurcharge
rushOrderSurchargeTier2
sendNewOrderNotificationOnEveryVisit
includeReceiptInNewOrderNotification
printTempTagsForBarcodedItems
alwaysGenerateTemporaryBarcodes
zebraPrinterTemplate
epsonPrinterTemplate
forceOnlyBagFieldInput
detailingWithoutBarcodes
printLabelsWhenDuplicating
metalprogettiStripCharacters
autoDetailingEnabled
minItemBarcodeLength
maxItemBarcodeLength
quotesDeletionTimeFrame
minWashNFoldPrice
minWashNFoldWeight
washAndFoldWeightStations
departmentSpecificOrdersEnabled
manualPickupRestricted
displayDueDateInProductionModules
filterDetailingByItemTypes
automaticallyFilterReportsToEmployeesStore
payrollPeriod
payrollLastCloseDate
payrollFirstHalfCloseDate
payrollLastHalfCloseDate
payrollCloseDate
workweekStart
hoursUntilWeeklyOvertime
hoursUntilDailyOvertime
hoursUntilDailyDoubleTime
hoursUntilWeeklyNotification
hoursUntilDailyNotification
preventClockInBeforeTime
californiaOvertimeRules
promptForClockInOnLogin
overrideTimeClockWithUserDepartment
allowMobileAppClockIn
disableOverTimeNotifications
overnightClockOut
inventorySystemEnabled
inventorySystemEnabledProduction
permissionManageSystemSettings
permissionManageMarketing
permissionManageStationSettings
permissionAccessCustomerCredits
permissionAddCustomerDiscount
permissionAccessCustomerModule
permissionAccessDeliveryModule
permissionAccessAssemblyModule
permissionAccessSpottingModule
permissionAccessAlterAndRepairModule
permissionAccessAccountsReceivableModule
permissionAccessPressingModule
permissionAccessPriceListModule
permissionAccessCashBoxModule
permissionAccessTimeclockModule
permissionAccessPerformanceModule
permissionAccessWashAndFoldModule
permissionAccessInspectionModule
permissionAccessItemBaggingModule
permissionAccessFoldingAndBaggingModule
permissionAccessMessagesModule
permissionAccessRackingModule
permissionAccessRouteManagerModule
permissionAccessReportsModule
permissionAccessAdminReportsModule
permissionAccessIssueTrackerModule
permissionAccessSupportModule
permissionAccessEmployeeSettingsModule
permissionAccessBulkMarkinModule
permissionManualPriceEdits
permissionSpecialCareAfterOrderClose
permissionResetOrder
permissionRemoveItems
showStrikeThroughWhenReturned
usePieceCountTotalsOnTicket
taxHeaderString
includeTaxInPrice
dropDateOnAssemblyTicket
displayDepartmentOnTicket
displayCategoryOnTicket
displayPriceOnPickupSlip
useStoreSpecificOrderSequenceNumbers
showStoreSpecificOrderNumberOnTop
saleItemLedgerTrackingEnabled
inOnboarding
noCcCustomerText
pickupReminderOfferCancellations
pickupReminderEnabledForInactiveCustomers
offersRetailDelivery
regRouteQuestionChecked
pickupReminderHour24
pickupReminderIncludeDeliveries
deliveryCompleteConfirmation
defaultCustomerPaymentType
promptOnCardAvsFailure
minCardChargeAmount
defaultCustomerPriceList
cardSurcharging
cardSurchargeFixedPercentage
organizationNumber
fullstoryEnabled
initializedInferred
cashBoxMode
cashBoxModeProduction
displayExtendedStationReceiptInfo
displayExtendedZReportInfo
twilioMarketingNumber
campaignsEnabled
broadcastsEnabled
reviewModuleEnabled
defaultLanguage
weightUnit
segmentWriteKey
socialId
twilioReviewNumber
}
employeeSettings {
id
localId
mainDeliveryStore {
...StoreFragment
}
mainStore {
...StoreFragment
}
quickDetailingItemTypes {
...ItemTypeFragment
}
defaultPaymentMethod {
...PaymentMethodFragment
}
acceptedPaymentMethods {
...PaymentMethodFragment
}
logo
receiptLogo
POSNewOrderTabs
deliveryNewOrderTabs
statementGenerationDays
invoiceGenerationDays
acceptedCards
automaticSurcharges {
...AutomaticSurchargeFragment
}
detailingAttributes
marketingCampaigns {
...CampaignSettingFragment
}
welcomeNewCustomerCampaign {
...WelcomeNewCustomerCampaignFragment
}
thankYouCampaign {
...ThankYouCampaignFragment
}
arPastDueCampaign {
...ArPastDueCampaignFragment
}
counterToRouteCampaign {
...CounterToRouteCampaignFragment
}
monthlyNewsletterCampaign {
...MonthlyNewsletterCampaignFragment
}
happyAnniversaryCampaign {
...HappyAnniversaryCampaignFragment
}
inventoryReminderCampaign {
...InventoryReminderCampaignFragment
}
oneAndDoneCampaign {
...OneAndDoneCampaignFragment
}
marketingByDepartmentCampaign {
...MarketingByDepartmentCampaignFragment
}
thankYouTopSpendersCampaign {
...ThankYouTopSpendersCampaignFragment
}
newCustomerRetentionCampaign {
...NewCustomerRetentionCampaignFragment
}
customerSignupNoOrdersCampaign {
...CustomerSignupNoOrdersCampaignFragment
}
noOrdersSinceLastCampaign {
...NoOrdersSinceLastCampaignFragment
}
updateYourInformationCampaign {
...UpdateYourInformationCampaignFragment
}
quarterlyComforterCampaign {
...QuarterlyComforterCampaignFragment
}
thankYouNewReviewCampaign {
...ThankYouNewReviewCampaignFragment
}
lostBigCustomerCampaign {
...LostBigCustomerCampaignFragment
}
reviewGenerationCampaign {
...ReviewGenerationCampaignFragment
}
customCampaign {
...CustomCampaignFragment
}
snapshotEmailList {
...SnapshotEmailListFragment
}
businessName
dateFormat
countryCode
timeZone
locale
contactAddressLine
contactAddressState
contactAddressCity
contactAddressZip
contactPhone
logoUrl
noProductionDays
noDeliveryDays
specialHolidays
openDetailingWithCategory
customerFacingDomain
customSignupUrl
contactEmail
twilioAccountSid
twilioAuthToken
twilioPhone
twilioPhoneLookup
whatsAppEnabled
sendSmsOptOutInformation
userNameOnEmailSubject
payableEntity
emailFooter
lockerBuildingCode
communicationTemplatesId
vcardTemplate
newPickupScheduledInstructions
sendAutomatedMessages
sendStatementEmails
signupEmailRequired
signupGroupRequired
signupAutofillCity
signupAddressRequired
signupPhoneRequired
allowOrderSplitting
groupOnDetailingSplit
offerStoreDelivery
offerDeliverySchedulingInText
useStoreZipCodeForTax
summarizeByBillingCode
showSalesTaxBreakdownForStatementOrders
sumOrderTotalOnStatements
simplifiedPaymentReceipt
cashTotalRounding
hasLogo
isHotel
isHotelProcessor
isRoomGroupHotel
isLockers
isValet
isWholesaler
pickupUnpaidOrders
pressOnlyDiscount
scheduleWillCallAtAssembly
scheduleWillCallOnDueDate
dontIncludeOrdersInDeliveryListBeforeDueDate
geoFencingEnabled
allowSubDeliveryAccountScheduling
allowSubAccountToTriggerMasterDelivery
sendAutopayReceipts
sendDeliveryAppointmentConfirmation
showDeliveryNotPaid
deliveryAppLoadListSortDescending
requireSignatureOnDelivery
requirePhotoOnDelivery
showSubRouteForDeliveryStop
genericLaundryBagMode
rushNotificationsHour
websiteDisplayText
shouldShowWebsiteOnReceipts
showAgentOnBagTag
assemblyEvenOnly
voiceAssemblyEnabled
inspectPriceAtAssembly
assemblyPrintFinancialReceiptForDeliveryCustomer
assemblyAlwaysPrintFinancialReceipt
printFinancialTicketOutsideAssembly
keepRackAssignmentOnOrderSplit
complexLotControl
overrideDueDateWithNextDelivery
autoSelectDeliveryReturnLocation
defaultDetailingTab
autoOpenAnnotationType
requireInvoiceInDetailing
displayTooManyDetailedItemsWarning
assemblyIcon
alignAssemblyIcon
newCustomerTicketIcon
newCustomerBottomTicketIcon
customerNameOnTicketBottom
pieceCountOnTicketBottom
customerPhoneOnTicket
showRoomInfoBelowAddress
laundryLicense
summarizedItemTable
showLogoOnReceipts
logoOnReceiptHeight
receiptLogoName
showPriceOnAssembly
paymentReceiptShowSignatureLine
receiptsNameShort
newLocationOnTicket
showRouteOfSameDayDelivery
itemDetailsOnTicket
itemDetailsOnOrderReceipt
newOrderPrintCount
printRetailReceipts
printDropTicketOnOrderSplit
printTicketOnOrderCloseCount
noStoreContactInfoOnReceipts
noPricingOnOrderReceipts
receiptsFooter
thermalReceiptFooter
ticketReceiptFooter
showEmailOnReceipts
showWebsiteOnReceipts
invoicePayableLine
invoiceTerms
isRestorationAccount
offerDemandDelivery
autoAddNewCustomerToWillCallRoute
groupItemDetailsByRoomNumber
merchantBatchCloseTime
saveCardsOnFile
amexSeparately
maxAutopayAmount
maxPaymentAmountWarning
autopayTerms
autopayStatements
autopayBatchStrategy
invoiceDueDays
consolidateInvoiceItemDetails
invoiceShowOrderDetails
invoiceHideOrderInfo
showDateOnStatement
callStatementInvoice
activitySummaryEnabled
attachPDFInStatementEmails
rewardsProgramEnabled
rewardsPointModifier
rewardsCurrencyModifier
rewardsConversionRequirement
rewardsRedeemAutomatically
rewardsEmailRequired
rewardsPhoneRequired
rewardsAddressRequired
rewardsCreditCardRequired
welcomeNotificationDisabled
autoTicketOnCustomerRegistration
autoTicketOnScheduledDelivery
sendCustomerUpdatedCCNotification
allowScheduleBothPickupAndDelivery
limitScheduleDeliveryToClosestRoute
allowRouteRegularCustomersToScheduleOnDemand
allowSameDaySchedulingEvenIfRouteStarted
experimentalPhotoUserExperienceOnWebsiteScheduler
priceListUpdateOrdersCondition
routeAgentPriority
commonOrdersAgent
isMailOrderPickups
lockerDropBinPickupMode
showYesRepliesInComm
autoReplyToYesRepliesInComm
customerWebsiteClothesTrackerTabEnabled
customerWebsiteWardrobeTabEnabled
customerWebsitePaymentTabEnabled
metalprogettiAssemblyLabelTemplate
metalprogettiSendRackSpaceToStorage
rushOrderSurcharge
rushOrderSurchargeTier2
sendNewOrderNotificationOnEveryVisit
includeReceiptInNewOrderNotification
printTempTagsForBarcodedItems
alwaysGenerateTemporaryBarcodes
zebraPrinterTemplate
epsonPrinterTemplate
forceOnlyBagFieldInput
detailingWithoutBarcodes
printLabelsWhenDuplicating
metalprogettiStripCharacters
autoDetailingEnabled
minItemBarcodeLength
maxItemBarcodeLength
quotesDeletionTimeFrame
minWashNFoldPrice
minWashNFoldWeight
washAndFoldWeightStations
departmentSpecificOrdersEnabled
manualPickupRestricted
displayDueDateInProductionModules
filterDetailingByItemTypes
automaticallyFilterReportsToEmployeesStore
payrollPeriod
payrollLastCloseDate
payrollFirstHalfCloseDate
payrollLastHalfCloseDate
payrollCloseDate
workweekStart
hoursUntilWeeklyOvertime
hoursUntilDailyOvertime
hoursUntilDailyDoubleTime
hoursUntilWeeklyNotification
hoursUntilDailyNotification
preventClockInBeforeTime
californiaOvertimeRules
promptForClockInOnLogin
overrideTimeClockWithUserDepartment
allowMobileAppClockIn
disableOverTimeNotifications
overnightClockOut
inventorySystemEnabled
inventorySystemEnabledProduction
permissionManageSystemSettings
permissionManageMarketing
permissionManageStationSettings
permissionAccessCustomerCredits
permissionAddCustomerDiscount
permissionAccessCustomerModule
permissionAccessDeliveryModule
permissionAccessAssemblyModule
permissionAccessSpottingModule
permissionAccessAlterAndRepairModule
permissionAccessAccountsReceivableModule
permissionAccessPressingModule
permissionAccessPriceListModule
permissionAccessCashBoxModule
permissionAccessTimeclockModule
permissionAccessPerformanceModule
permissionAccessWashAndFoldModule
permissionAccessInspectionModule
permissionAccessItemBaggingModule
permissionAccessFoldingAndBaggingModule
permissionAccessMessagesModule
permissionAccessRackingModule
permissionAccessRouteManagerModule
permissionAccessReportsModule
permissionAccessAdminReportsModule
permissionAccessIssueTrackerModule
permissionAccessSupportModule
permissionAccessEmployeeSettingsModule
permissionAccessBulkMarkinModule
permissionManualPriceEdits
permissionSpecialCareAfterOrderClose
permissionResetOrder
permissionRemoveItems
showStrikeThroughWhenReturned
usePieceCountTotalsOnTicket
taxHeaderString
includeTaxInPrice
dropDateOnAssemblyTicket
displayDepartmentOnTicket
displayCategoryOnTicket
displayPriceOnPickupSlip
useStoreSpecificOrderSequenceNumbers
showStoreSpecificOrderNumberOnTop
saleItemLedgerTrackingEnabled
inOnboarding
noCcCustomerText
pickupReminderOfferCancellations
pickupReminderEnabledForInactiveCustomers
offersRetailDelivery
regRouteQuestionChecked
pickupReminderHour24
pickupReminderIncludeDeliveries
deliveryCompleteConfirmation
defaultCustomerPaymentType
promptOnCardAvsFailure
minCardChargeAmount
defaultCustomerPriceList
cardSurcharging
cardSurchargeFixedPercentage
organizationNumber
fullstoryEnabled
initializedInferred
cashBoxMode
cashBoxModeProduction
displayExtendedStationReceiptInfo
displayExtendedZReportInfo
twilioMarketingNumber
campaignsEnabled
broadcastsEnabled
reviewModuleEnabled
defaultLanguage
weightUnit
segmentWriteKey
socialId
twilioReviewNumber
}
stores {
id
localId
agentId
agentType
name
isStripeEnabled
merchant {
...MerchantFragment
}
phone
address
city
state
zip
latitude
longitude
externalStoreIdentifier
googlePlaceId
stations {
...StationFragment
}
hasCounterStation
}
storesForCurrentBrand {
id
localId
agentId
agentType
name
isStripeEnabled
merchant {
...MerchantFragment
}
phone
address
city
state
zip
latitude
longitude
externalStoreIdentifier
googlePlaceId
stations {
...StationFragment
}
hasCounterStation
}
communicationTemplatesList {
id
localId
name
categories {
...CommunicationTemplateCategoryFragment
}
}
contactCommunicationTemplates {
id
localId
name
categories {
...CommunicationTemplateCategoryFragment
}
}
employees {
id
localId
name
firstName
}
routes {
id
localId
agentId
agentType
name
merchant {
...MerchantFragment
}
isStripeEnabled
type
isSubRoute
masterRouteId
pickupCutoffHours
deliveryCutoffHours
autoOptimize
}
routesOnDate {
id
localId
agentId
agentType
name
merchant {
...MerchantFragment
}
isStripeEnabled
type
isSubRoute
masterRouteId
pickupCutoffHours
deliveryCutoffHours
autoOptimize
}
groups {
id
localId
agentId
agentType
name
merchant {
...MerchantFragment
}
isStripeEnabled
hasOwnAgent
isGroupStop
isMasterBilling
customers {
...CustomerFragment
}
}
notes {
id
localId
date
customer {
...CustomerFragment
}
message
mainCategory
subCategory
status
saleId
itemId
lastUpdated
dueDate
assignee {
...UserFragment
}
photos {
...PhotoFragment
}
}
brands {
id
localId
name
brandId
settings {
...SettingsFragment
}
agents {
...AgentFragment
}
isWalled
}
agents {
id
localId
name
agentId
agentType
isStripeEnabled
merchant {
...MerchantFragment
}
}
holidays {
id
localId
date
noProduction
noDelivery
dayOfWeek
}
itemCategories {
id
localId
name
sort
description
disabled
isRetail
}
itemTypes {
id
localId
name
category {
...ItemCategoryFragment
}
active
isDisabledInCustomerApp
price
priceDisplay
showInDetailing
description
departmentId
defaultImageUrl
}
subscriptions {
id
localId
name
category {
...ItemCategoryFragment
}
active
isDisabledInCustomerApp
price
priceDisplay
showInDetailing
description
departmentId
defaultImageUrl
}
taxRates {
id
localId
objectId
rate
}
paymentMethods {
id
localId
name
disabled
}
taxConfigurationRules {
id
localId
sort
parentRule
isDisabled
isDefault
name
rate
useAutoTaxJar
addressSpecific
zipCondition
departmentCondition
agentCondition
}
itemValidationRules {
id
localId
name
requiredFields
requiredSpecialCares
itemTypeCondition
departmentCondition
sort
isDisabled
}
itemFields {
id
localId
name
}
financialDepartments {
id
localId
name
showInCustomerScheduler
}
specialCares {
id
localId
name
}
alertTypes {
id
localId
name
active
}
alertSubTypes {
id
localId
masterTypeId
name
prefTicket
prefCustomer
prefDelivery
prefPressing
prefInspection
prefSpotting
prefAlteration
prefWashing
mpOffloadArm
active
}
chatRooms {
id
localId
name
specialRoomType
isPrivate
userIds
agents
usersAllowedToPost
isNotificationsRoom
isRequired
chatMessages {
...ChatMessageFragment
}
}
customerFields {
id
localId
fieldType
label
possibleValues
shownProfile
shownPosSignUp
shownCustomerWebsite
shownCustomerWebsiteSignUp
elasticKey
disabled
isRequired
}
usesPaymentSystem
getCustomer {
id
localId
name
futureAppointments {
...AppointmentFragment
}
settings {
...SettingsFragment
}
group {
...GroupFragment
}
agent {
...AgentFragment
}
routeHolds {
...CustomerRouteHoldFragment
}
driverInstructions
preferences
goodOnlineAccountStanding
addresses {
...CustomerAddressFragment
}
defaultAddress {
...CustomerAddressFragment
}
defaultDeliveryAddress {
...CustomerAddressFragment
}
isMasterDeliveryAccount
creditCardIFrameURL
authenticatedCustomerSiteLink
creditCard {
...CreditCardFragment
}
datesForSchedulingAppointment {
...ScheduleDateFragment
}
unpaidOrders {
...UnpaidOrdersFragment
}
finishedPayments {
...PaymentReceiptFragment
}
customerBookings {
...CustomerBookingFragment
}
stagingDetailedCustomerOrder {
...DetailedCustomerOrderFragment
}
readyBags {
...CustomerBagFragment
}
isRouteCustomer
customerRelationship
deliveryStop
demographic
apiTokenForCustomer
activePromotions {
...PromotionFragment
}
subscription {
...CustomerSubscriptionFragment
}
subscriptionUsage {
...SubscriptionUsageFragment
}
kioskAccessCode
email
cellPhone
cellPhoneDisplay
homePhone
activePhone
firstName
lastName
companyName
fullName
store {
...StoreFragment
}
customFields {
...CustomerFieldValueFragment
}
isInSignupProcess
paymentStatus {
...PaymentStatusFragment
}
wardrobeCategories {
...ItemCategoryFragment
}
wardrobeItems {
...OrderItemFragment
}
paymentPreference
rewardPoints
rewards {
...RewardFragment
}
missingRewardSettingCriteria
isSubBilling
deliveryNotes {
...NoteFragment
}
communication {
...CommunicationFragment
}
}
getCustomers {
id
localId
name
futureAppointments {
...AppointmentFragment
}
settings {
...SettingsFragment
}
group {
...GroupFragment
}
agent {
...AgentFragment
}
routeHolds {
...CustomerRouteHoldFragment
}
driverInstructions
preferences
goodOnlineAccountStanding
addresses {
...CustomerAddressFragment
}
defaultAddress {
...CustomerAddressFragment
}
defaultDeliveryAddress {
...CustomerAddressFragment
}
isMasterDeliveryAccount
creditCardIFrameURL
authenticatedCustomerSiteLink
creditCard {
...CreditCardFragment
}
datesForSchedulingAppointment {
...ScheduleDateFragment
}
unpaidOrders {
...UnpaidOrdersFragment
}
finishedPayments {
...PaymentReceiptFragment
}
customerBookings {
...CustomerBookingFragment
}
stagingDetailedCustomerOrder {
...DetailedCustomerOrderFragment
}
readyBags {
...CustomerBagFragment
}
isRouteCustomer
customerRelationship
deliveryStop
demographic
apiTokenForCustomer
activePromotions {
...PromotionFragment
}
subscription {
...CustomerSubscriptionFragment
}
subscriptionUsage {
...SubscriptionUsageFragment
}
kioskAccessCode
email
cellPhone
cellPhoneDisplay
homePhone
activePhone
firstName
lastName
companyName
fullName
store {
...StoreFragment
}
customFields {
...CustomerFieldValueFragment
}
isInSignupProcess
paymentStatus {
...PaymentStatusFragment
}
wardrobeCategories {
...ItemCategoryFragment
}
wardrobeItems {
...OrderItemFragment
}
paymentPreference
rewardPoints
rewards {
...RewardFragment
}
missingRewardSettingCriteria
isSubBilling
deliveryNotes {
...NoteFragment
}
communication {
...CommunicationFragment
}
}
getOrder {
id
localId
displayId
date
dueDate
deliveredDate
customer {
...CustomerFragment
}
pickupStore {
...StoreFragment
}
dropStore {
...StoreFragment
}
isPickup
isDelivery
hasChangedReturnLocation
isPaid
isPaidForDelivery
buyPrice
pieceCount
status
items {
...OrderItemFragment
}
bags {
...OrderBagFragment
}
customerProvidedDetails {
...DetailedCustomerOrderFragment
}
customerOrderStatusText
receiptLink
lastPaymentWasDeclined
}
getAppointment {
id
localId
startTime
endTime
timeSlot {
...TimeSlotFragment
}
scheduledBy {
...ActorFragment
}
scheduledAt
route {
...RouteFragment
}
driverInstructions
cleaningInstructions
departments {
...FinancialDepartmentFragment
}
customer {
...CustomerFragment
}
address {
...CustomerAddressFragment
}
driver {
...UserFragment
}
regular
anytime
status
appointmentLinkId
photos {
...PhotoFragment
}
lockerCode
locationLabel
vehicleStatus {
...DeliveryVehicleStatusFragment
}
stopNumber
deliveryPhoto {
...PhotoFragment
}
}
queryReports {
id
localId
columns {
...QueryReportsResultColumnFragment
}
values
totalCount
kpi {
...QueryReportsResultKPIValueFragment
}
}
productionStationStatistics {
id
localId
hours
pieces
ppoh
value
}
merchants {
id
localId
name
gateway
agentIds
}
surcharges {
id
localId
name
disabled
}
customPriceLists {
id
localId
name
}
marketingEmailTemplates {
id
localId
name
subject
jsonTemplate
htmlTemplate
hasPromotion
}
marketingBroadcasts {
id
localId
name
subject
broadcastType
message
customerInclusionKpiIdList
customerExclusionKpiIdList
emailTemplateId
status
dateCreated
dateSent
emailHtmlTemplate
sentBy
scheduledBy
scheduledDate
promotion
autoApplyPromo
optimizeEmailDelivery
}
marketingFilters {
id
localId
report
title
total
}
stripePublishableKey
promotions {
id
localId
name
couponCode
customerCouponCode
disabled
validForMarketing
}
lockers {
id
localId
address {
...CustomerAddressFragment
}
}
geoFences {
id
localId
name
brand {
...BrandFragment
}
route {
...RouteFragment
}
polygon
color
isDisabled
createdAt
}
uniqueTwilioErrors {
id
localId
name
}
}
}
Response
{
"data": {
"business": {
"id": "4",
"localId": "4",
"shortId": 987,
"subdomain": "xyz789",
"settings": Settings,
"employeeSettings": Settings,
"stores": [Store],
"storesForCurrentBrand": [Store],
"communicationTemplatesList": [
CommunicationTemplates
],
"contactCommunicationTemplates": CommunicationTemplates,
"employees": [User],
"routes": [Route],
"routesOnDate": [Route],
"groups": [Group],
"notes": [Note],
"brands": [Brand],
"agents": [Agent],
"holidays": [Holiday],
"itemCategories": [ItemCategory],
"itemTypes": [ItemType],
"subscriptions": [ItemType],
"taxRates": [TaxRate],
"paymentMethods": [PaymentMethod],
"taxConfigurationRules": [TaxConfigurationRule],
"itemValidationRules": [ItemValidationRule],
"itemFields": [ItemField],
"financialDepartments": [FinancialDepartment],
"specialCares": [SpecialCare],
"alertTypes": [AlertType],
"alertSubTypes": [AlertSubType],
"chatRooms": [ChatRoom],
"customerFields": [CustomerField],
"usesPaymentSystem": true,
"getCustomer": Customer,
"getCustomers": [Customer],
"getOrder": Order,
"getAppointment": Appointment,
"queryReports": QueryReportsResult,
"productionStationStatistics": ProductionStationStatistics,
"merchants": [Merchant],
"surcharges": [Surcharge],
"customPriceLists": [PriceList],
"marketingEmailTemplates": [MarketingEmailTemplate],
"marketingBroadcasts": [MarketingBroadcast],
"marketingFilters": [MarketingFilterResponse],
"stripePublishableKey": "xyz789",
"promotions": [Promotion],
"lockers": [Locker],
"geoFences": [GeoFence],
"uniqueTwilioErrors": [UniqueTwilioError]
}
}
}
businessReviews
Description
Returns all business reviews for multiple locations
Response
Returns a LocationReviews!
Example
Query
query BusinessReviews(
$pageSize: Int,
$pageToken: String,
$orderBy: String
) {
businessReviews(
pageSize: $pageSize,
pageToken: $pageToken,
orderBy: $orderBy
) {
id
localId
locationReviews {
id
localId
name
review {
...ReviewFragment
}
}
nextPageToken
}
}
Variables
{
"pageSize": 987,
"pageToken": "abc123",
"orderBy": "abc123"
}
Response
{
"data": {
"businessReviews": {
"id": 4,
"localId": "4",
"locationReviews": [LocationReview],
"nextPageToken": "abc123"
}
}
}
currentCustomer
Description
The currently authenticated customer. If one of the customer authentication mutations was previously used, this query will return that customer, as present in the session cookie.
Response
Returns a Customer
Example
Query
query CurrentCustomer {
currentCustomer {
id
localId
name
futureAppointments {
id
localId
startTime
endTime
timeSlot {
...TimeSlotFragment
}
scheduledBy {
...ActorFragment
}
scheduledAt
route {
...RouteFragment
}
driverInstructions
cleaningInstructions
departments {
...FinancialDepartmentFragment
}
customer {
...CustomerFragment
}
address {
...CustomerAddressFragment
}
driver {
...UserFragment
}
regular
anytime
status
appointmentLinkId
photos {
...PhotoFragment
}
lockerCode
locationLabel
vehicleStatus {
...DeliveryVehicleStatusFragment
}
stopNumber
deliveryPhoto {
...PhotoFragment
}
}
settings {
id
localId
mainDeliveryStore {
...StoreFragment
}
mainStore {
...StoreFragment
}
quickDetailingItemTypes {
...ItemTypeFragment
}
defaultPaymentMethod {
...PaymentMethodFragment
}
acceptedPaymentMethods {
...PaymentMethodFragment
}
logo
receiptLogo
POSNewOrderTabs
deliveryNewOrderTabs
statementGenerationDays
invoiceGenerationDays
acceptedCards
automaticSurcharges {
...AutomaticSurchargeFragment
}
detailingAttributes
marketingCampaigns {
...CampaignSettingFragment
}
welcomeNewCustomerCampaign {
...WelcomeNewCustomerCampaignFragment
}
thankYouCampaign {
...ThankYouCampaignFragment
}
arPastDueCampaign {
...ArPastDueCampaignFragment
}
counterToRouteCampaign {
...CounterToRouteCampaignFragment
}
monthlyNewsletterCampaign {
...MonthlyNewsletterCampaignFragment
}
happyAnniversaryCampaign {
...HappyAnniversaryCampaignFragment
}
inventoryReminderCampaign {
...InventoryReminderCampaignFragment
}
oneAndDoneCampaign {
...OneAndDoneCampaignFragment
}
marketingByDepartmentCampaign {
...MarketingByDepartmentCampaignFragment
}
thankYouTopSpendersCampaign {
...ThankYouTopSpendersCampaignFragment
}
newCustomerRetentionCampaign {
...NewCustomerRetentionCampaignFragment
}
customerSignupNoOrdersCampaign {
...CustomerSignupNoOrdersCampaignFragment
}
noOrdersSinceLastCampaign {
...NoOrdersSinceLastCampaignFragment
}
updateYourInformationCampaign {
...UpdateYourInformationCampaignFragment
}
quarterlyComforterCampaign {
...QuarterlyComforterCampaignFragment
}
thankYouNewReviewCampaign {
...ThankYouNewReviewCampaignFragment
}
lostBigCustomerCampaign {
...LostBigCustomerCampaignFragment
}
reviewGenerationCampaign {
...ReviewGenerationCampaignFragment
}
customCampaign {
...CustomCampaignFragment
}
snapshotEmailList {
...SnapshotEmailListFragment
}
businessName
dateFormat
countryCode
timeZone
locale
contactAddressLine
contactAddressState
contactAddressCity
contactAddressZip
contactPhone
logoUrl
noProductionDays
noDeliveryDays
specialHolidays
openDetailingWithCategory
customerFacingDomain
customSignupUrl
contactEmail
twilioAccountSid
twilioAuthToken
twilioPhone
twilioPhoneLookup
whatsAppEnabled
sendSmsOptOutInformation
userNameOnEmailSubject
payableEntity
emailFooter
lockerBuildingCode
communicationTemplatesId
vcardTemplate
newPickupScheduledInstructions
sendAutomatedMessages
sendStatementEmails
signupEmailRequired
signupGroupRequired
signupAutofillCity
signupAddressRequired
signupPhoneRequired
allowOrderSplitting
groupOnDetailingSplit
offerStoreDelivery
offerDeliverySchedulingInText
useStoreZipCodeForTax
summarizeByBillingCode
showSalesTaxBreakdownForStatementOrders
sumOrderTotalOnStatements
simplifiedPaymentReceipt
cashTotalRounding
hasLogo
isHotel
isHotelProcessor
isRoomGroupHotel
isLockers
isValet
isWholesaler
pickupUnpaidOrders
pressOnlyDiscount
scheduleWillCallAtAssembly
scheduleWillCallOnDueDate
dontIncludeOrdersInDeliveryListBeforeDueDate
geoFencingEnabled
allowSubDeliveryAccountScheduling
allowSubAccountToTriggerMasterDelivery
sendAutopayReceipts
sendDeliveryAppointmentConfirmation
showDeliveryNotPaid
deliveryAppLoadListSortDescending
requireSignatureOnDelivery
requirePhotoOnDelivery
showSubRouteForDeliveryStop
genericLaundryBagMode
rushNotificationsHour
websiteDisplayText
shouldShowWebsiteOnReceipts
showAgentOnBagTag
assemblyEvenOnly
voiceAssemblyEnabled
inspectPriceAtAssembly
assemblyPrintFinancialReceiptForDeliveryCustomer
assemblyAlwaysPrintFinancialReceipt
printFinancialTicketOutsideAssembly
keepRackAssignmentOnOrderSplit
complexLotControl
overrideDueDateWithNextDelivery
autoSelectDeliveryReturnLocation
defaultDetailingTab
autoOpenAnnotationType
requireInvoiceInDetailing
displayTooManyDetailedItemsWarning
assemblyIcon
alignAssemblyIcon
newCustomerTicketIcon
newCustomerBottomTicketIcon
customerNameOnTicketBottom
pieceCountOnTicketBottom
customerPhoneOnTicket
showRoomInfoBelowAddress
laundryLicense
summarizedItemTable
showLogoOnReceipts
logoOnReceiptHeight
receiptLogoName
showPriceOnAssembly
paymentReceiptShowSignatureLine
receiptsNameShort
newLocationOnTicket
showRouteOfSameDayDelivery
itemDetailsOnTicket
itemDetailsOnOrderReceipt
newOrderPrintCount
printRetailReceipts
printDropTicketOnOrderSplit
printTicketOnOrderCloseCount
noStoreContactInfoOnReceipts
noPricingOnOrderReceipts
receiptsFooter
thermalReceiptFooter
ticketReceiptFooter
showEmailOnReceipts
showWebsiteOnReceipts
invoicePayableLine
invoiceTerms
isRestorationAccount
offerDemandDelivery
autoAddNewCustomerToWillCallRoute
groupItemDetailsByRoomNumber
merchantBatchCloseTime
saveCardsOnFile
amexSeparately
maxAutopayAmount
maxPaymentAmountWarning
autopayTerms
autopayStatements
autopayBatchStrategy
invoiceDueDays
consolidateInvoiceItemDetails
invoiceShowOrderDetails
invoiceHideOrderInfo
showDateOnStatement
callStatementInvoice
activitySummaryEnabled
attachPDFInStatementEmails
rewardsProgramEnabled
rewardsPointModifier
rewardsCurrencyModifier
rewardsConversionRequirement
rewardsRedeemAutomatically
rewardsEmailRequired
rewardsPhoneRequired
rewardsAddressRequired
rewardsCreditCardRequired
welcomeNotificationDisabled
autoTicketOnCustomerRegistration
autoTicketOnScheduledDelivery
sendCustomerUpdatedCCNotification
allowScheduleBothPickupAndDelivery
limitScheduleDeliveryToClosestRoute
allowRouteRegularCustomersToScheduleOnDemand
allowSameDaySchedulingEvenIfRouteStarted
experimentalPhotoUserExperienceOnWebsiteScheduler
priceListUpdateOrdersCondition
routeAgentPriority
commonOrdersAgent
isMailOrderPickups
lockerDropBinPickupMode
showYesRepliesInComm
autoReplyToYesRepliesInComm
customerWebsiteClothesTrackerTabEnabled
customerWebsiteWardrobeTabEnabled
customerWebsitePaymentTabEnabled
metalprogettiAssemblyLabelTemplate
metalprogettiSendRackSpaceToStorage
rushOrderSurcharge
rushOrderSurchargeTier2
sendNewOrderNotificationOnEveryVisit
includeReceiptInNewOrderNotification
printTempTagsForBarcodedItems
alwaysGenerateTemporaryBarcodes
zebraPrinterTemplate
epsonPrinterTemplate
forceOnlyBagFieldInput
detailingWithoutBarcodes
printLabelsWhenDuplicating
metalprogettiStripCharacters
autoDetailingEnabled
minItemBarcodeLength
maxItemBarcodeLength
quotesDeletionTimeFrame
minWashNFoldPrice
minWashNFoldWeight
washAndFoldWeightStations
departmentSpecificOrdersEnabled
manualPickupRestricted
displayDueDateInProductionModules
filterDetailingByItemTypes
automaticallyFilterReportsToEmployeesStore
payrollPeriod
payrollLastCloseDate
payrollFirstHalfCloseDate
payrollLastHalfCloseDate
payrollCloseDate
workweekStart
hoursUntilWeeklyOvertime
hoursUntilDailyOvertime
hoursUntilDailyDoubleTime
hoursUntilWeeklyNotification
hoursUntilDailyNotification
preventClockInBeforeTime
californiaOvertimeRules
promptForClockInOnLogin
overrideTimeClockWithUserDepartment
allowMobileAppClockIn
disableOverTimeNotifications
overnightClockOut
inventorySystemEnabled
inventorySystemEnabledProduction
permissionManageSystemSettings
permissionManageMarketing
permissionManageStationSettings
permissionAccessCustomerCredits
permissionAddCustomerDiscount
permissionAccessCustomerModule
permissionAccessDeliveryModule
permissionAccessAssemblyModule
permissionAccessSpottingModule
permissionAccessAlterAndRepairModule
permissionAccessAccountsReceivableModule
permissionAccessPressingModule
permissionAccessPriceListModule
permissionAccessCashBoxModule
permissionAccessTimeclockModule
permissionAccessPerformanceModule
permissionAccessWashAndFoldModule
permissionAccessInspectionModule
permissionAccessItemBaggingModule
permissionAccessFoldingAndBaggingModule
permissionAccessMessagesModule
permissionAccessRackingModule
permissionAccessRouteManagerModule
permissionAccessReportsModule
permissionAccessAdminReportsModule
permissionAccessIssueTrackerModule
permissionAccessSupportModule
permissionAccessEmployeeSettingsModule
permissionAccessBulkMarkinModule
permissionManualPriceEdits
permissionSpecialCareAfterOrderClose
permissionResetOrder
permissionRemoveItems
showStrikeThroughWhenReturned
usePieceCountTotalsOnTicket
taxHeaderString
includeTaxInPrice
dropDateOnAssemblyTicket
displayDepartmentOnTicket
displayCategoryOnTicket
displayPriceOnPickupSlip
useStoreSpecificOrderSequenceNumbers
showStoreSpecificOrderNumberOnTop
saleItemLedgerTrackingEnabled
inOnboarding
noCcCustomerText
pickupReminderOfferCancellations
pickupReminderEnabledForInactiveCustomers
offersRetailDelivery
regRouteQuestionChecked
pickupReminderHour24
pickupReminderIncludeDeliveries
deliveryCompleteConfirmation
defaultCustomerPaymentType
promptOnCardAvsFailure
minCardChargeAmount
defaultCustomerPriceList
cardSurcharging
cardSurchargeFixedPercentage
organizationNumber
fullstoryEnabled
initializedInferred
cashBoxMode
cashBoxModeProduction
displayExtendedStationReceiptInfo
displayExtendedZReportInfo
twilioMarketingNumber
campaignsEnabled
broadcastsEnabled
reviewModuleEnabled
defaultLanguage
weightUnit
segmentWriteKey
socialId
twilioReviewNumber
}
group {
id
localId
agentId
agentType
name
merchant {
...MerchantFragment
}
isStripeEnabled
hasOwnAgent
isGroupStop
isMasterBilling
customers {
...CustomerFragment
}
}
agent {
id
localId
name
agentId
agentType
isStripeEnabled
merchant {
...MerchantFragment
}
}
routeHolds {
id
localId
startDate
endDate
}
driverInstructions
preferences
goodOnlineAccountStanding
addresses {
id
localId
name
streetAddress
streetAddress2
city
state
zip
country
latitude
longitude
skipVerification
manualLocation
note
photo {
...PhotoFragment
}
}
defaultAddress {
id
localId
name
streetAddress
streetAddress2
city
state
zip
country
latitude
longitude
skipVerification
manualLocation
note
photo {
...PhotoFragment
}
}
defaultDeliveryAddress {
id
localId
name
streetAddress
streetAddress2
city
state
zip
country
latitude
longitude
skipVerification
manualLocation
note
photo {
...PhotoFragment
}
}
isMasterDeliveryAccount
creditCardIFrameURL
authenticatedCustomerSiteLink
creditCard {
id
localId
type
last4
expm
expy
status {
...CreditCardStatusFragment
}
}
datesForSchedulingAppointment {
id
localId
date
timeSlots {
...TimeSlotFragment
}
}
unpaidOrders {
id
localId
orders {
...OrderFragment
}
duePayment {
...DuePaymentFragment
}
}
finishedPayments {
id
localId
total
date
receiptLink
}
customerBookings {
id
localId
pickupAppointment {
...AppointmentFragment
}
deliveryAppointment {
...AppointmentFragment
}
detailedCustomerOrder {
...DetailedCustomerOrderFragment
}
orders {
...OrderFragment
}
pickupDateDisplay
deliveryDateDisplay
pickupDateTitle
deliveryDateTitle
statusText
status
progress
bookingDate
lockerId
lockerLabel
}
stagingDetailedCustomerOrder {
id
localId
customer {
...CustomerFragment
}
isStaging
detailedItemData {
...DetailedItemDataFragment
}
}
readyBags {
id
localId
barcode
display
order {
...OrderFragment
}
location {
...RackLogFragment
}
}
isRouteCustomer
customerRelationship
deliveryStop
demographic
apiTokenForCustomer
activePromotions {
id
localId
name
couponCode
customerCouponCode
disabled
validForMarketing
}
subscription {
id
localId
pending {
...CustomerSubscriptionEntryFragment
}
active {
...CustomerSubscriptionEntryFragment
}
log {
...CustomerSubscriptionLogFragment
}
renewalDate
}
subscriptionUsage {
id
localId
type
limit
usage
}
kioskAccessCode
email
cellPhone
cellPhoneDisplay
homePhone
activePhone
firstName
lastName
companyName
fullName
store {
id
localId
agentId
agentType
name
isStripeEnabled
merchant {
...MerchantFragment
}
phone
address
city
state
zip
latitude
longitude
externalStoreIdentifier
googlePlaceId
stations {
...StationFragment
}
hasCounterStation
}
customFields {
id
localId
label
value
}
isInSignupProcess
paymentStatus {
id
localId
paymentReference
paymentStatus
}
wardrobeCategories {
id
localId
name
sort
description
disabled
isRetail
}
wardrobeItems {
id
localId
type {
...ItemTypeFragment
}
barcode
brandDisplay
itemStatus {
...ItemStatusFragment
}
colors {
...ColorFragment
}
photo {
...PhotoFragment
}
}
paymentPreference
rewardPoints
rewards {
id
localId
date
amount
status
expiryDate
redeemDate
}
missingRewardSettingCriteria
isSubBilling
deliveryNotes {
id
localId
date
customer {
...CustomerFragment
}
message
mainCategory
subCategory
status
saleId
itemId
lastUpdated
dueDate
assignee {
...UserFragment
}
photos {
...PhotoFragment
}
}
communication {
id
localId
direction
type
date
subject
staff {
...UserFragment
}
contactFlag
body
}
}
}
Response
{
"data": {
"currentCustomer": {
"id": 4,
"localId": 4,
"name": "abc123",
"futureAppointments": [Appointment],
"settings": Settings,
"group": Group,
"agent": Agent,
"routeHolds": [CustomerRouteHold],
"driverInstructions": "xyz789",
"preferences": [4],
"goodOnlineAccountStanding": false,
"addresses": [CustomerAddress],
"defaultAddress": CustomerAddress,
"defaultDeliveryAddress": CustomerAddress,
"isMasterDeliveryAccount": false,
"creditCardIFrameURL": "abc123",
"authenticatedCustomerSiteLink": "abc123",
"creditCard": CreditCard,
"datesForSchedulingAppointment": [ScheduleDate],
"unpaidOrders": UnpaidOrders,
"finishedPayments": [PaymentReceipt],
"customerBookings": [CustomerBooking],
"stagingDetailedCustomerOrder": DetailedCustomerOrder,
"readyBags": [CustomerBag],
"isRouteCustomer": true,
"customerRelationship": "STORE_ONLY",
"deliveryStop": 123,
"demographic": 987,
"apiTokenForCustomer": "xyz789",
"activePromotions": [Promotion],
"subscription": CustomerSubscription,
"subscriptionUsage": [SubscriptionUsage],
"kioskAccessCode": "abc123",
"email": "abc123",
"cellPhone": "xyz789",
"cellPhoneDisplay": "abc123",
"homePhone": "xyz789",
"activePhone": "abc123",
"firstName": "xyz789",
"lastName": "xyz789",
"companyName": "xyz789",
"fullName": "xyz789",
"store": Store,
"customFields": [CustomerFieldValue],
"isInSignupProcess": false,
"paymentStatus": PaymentStatus,
"wardrobeCategories": [ItemCategory],
"wardrobeItems": [OrderItem],
"paymentPreference": "AUTOPAY",
"rewardPoints": 123.45,
"rewards": [Reward],
"missingRewardSettingCriteria": ["ADD_EMAIL_CRITERIA"],
"isSubBilling": false,
"deliveryNotes": [Note],
"communication": [Communication]
}
}
}
currentStation
Description
The station the user is signed into
Response
Returns a Station
Example
Query
query CurrentStation {
currentStation {
id
localId
name
store {
id
localId
agentId
agentType
name
isStripeEnabled
merchant {
...MerchantFragment
}
phone
address
city
state
zip
latitude
longitude
externalStoreIdentifier
googlePlaceId
stations {
...StationFragment
}
hasCounterStation
}
type {
id
localId
name
category
}
lastUsed
deliveryVehicle {
id
localId
name
typeName
}
}
}
Response
{
"data": {
"currentStation": {
"id": "4",
"localId": "4",
"name": "xyz789",
"store": Store,
"type": StationType,
"lastUsed": "2007-12-03T10:15:30Z",
"deliveryVehicle": Rack
}
}
}
currentStore
Description
The store the user is signed into, or the default store if not set.
Response
Returns a Store
Example
Query
query CurrentStore {
currentStore {
id
localId
agentId
agentType
name
isStripeEnabled
merchant {
id
localId
name
gateway
agentIds
}
phone
address
city
state
zip
latitude
longitude
externalStoreIdentifier
googlePlaceId
stations {
id
localId
name
store {
...StoreFragment
}
type {
...StationTypeFragment
}
lastUsed
deliveryVehicle {
...RackFragment
}
}
hasCounterStation
}
}
Response
{
"data": {
"currentStore": {
"id": 4,
"localId": "4",
"agentId": "4",
"agentType": "abc123",
"name": "abc123",
"isStripeEnabled": false,
"merchant": Merchant,
"phone": "abc123",
"address": "xyz789",
"city": "xyz789",
"state": "abc123",
"zip": "abc123",
"latitude": 987.65,
"longitude": 123.45,
"externalStoreIdentifier": "abc123",
"googlePlaceId": "abc123",
"stations": [Station],
"hasCounterStation": false
}
}
}
currentUser
Description
The currently authenticated user. This is normally an employee of the business, but if an API key is used, this will return the API user instead. Lastly, if a customer is authenticated rather than a user, this endpoint will return null.
Response
Returns a User
Example
Query
query CurrentUser {
currentUser {
id
localId
name
firstName
}
}
Response
{
"data": {
"currentUser": {
"id": "4",
"localId": 4,
"name": "xyz789",
"firstName": "xyz789"
}
}
}
customerCountFromMarketingFilter
Description
Gets number of customers that will receive a marketing broadcast/campaign
Response
Returns an Int!
Example
Query
query CustomerCountFromMarketingFilter(
$customerInclusionKpiIdList: [String]!,
$customerExclusionKpiIdList: [String]!
) {
customerCountFromMarketingFilter(
customerInclusionKpiIdList: $customerInclusionKpiIdList,
customerExclusionKpiIdList: $customerExclusionKpiIdList
)
}
Variables
{
"customerInclusionKpiIdList": ["abc123"],
"customerExclusionKpiIdList": ["abc123"]
}
Response
{"data": {"customerCountFromMarketingFilter": 987}}
customerPreferences
Description
A list of customer preference sections
Response
Returns [CustomerPreferenceSection!]!
Example
Query
query CustomerPreferences {
customerPreferences {
id
localId
type
name
options {
id
localId
name
}
hideCustomerPreference
}
}
Response
{
"data": {
"customerPreferences": [
{
"id": "4",
"localId": 4,
"type": "abc123",
"name": "xyz789",
"options": [CustomerPreference],
"hideCustomerPreference": false
}
]
}
}
customerStop
Description
Returns stop data for a delivery appointment
Response
Returns a CustomerStop
Arguments
Name | Description |
---|---|
id - ID!
|
The ID of the stop. Same as an appointment ID |
Example
Query
query CustomerStop($id: ID!) {
customerStop(id: $id) {
id
localId
appointment {
id
localId
startTime
endTime
timeSlot {
...TimeSlotFragment
}
scheduledBy {
...ActorFragment
}
scheduledAt
route {
...RouteFragment
}
driverInstructions
cleaningInstructions
departments {
...FinancialDepartmentFragment
}
customer {
...CustomerFragment
}
address {
...CustomerAddressFragment
}
driver {
...UserFragment
}
regular
anytime
status
appointmentLinkId
photos {
...PhotoFragment
}
lockerCode
locationLabel
vehicleStatus {
...DeliveryVehicleStatusFragment
}
stopNumber
deliveryPhoto {
...PhotoFragment
}
}
customer {
id
localId
name
futureAppointments {
...AppointmentFragment
}
settings {
...SettingsFragment
}
group {
...GroupFragment
}
agent {
...AgentFragment
}
routeHolds {
...CustomerRouteHoldFragment
}
driverInstructions
preferences
goodOnlineAccountStanding
addresses {
...CustomerAddressFragment
}
defaultAddress {
...CustomerAddressFragment
}
defaultDeliveryAddress {
...CustomerAddressFragment
}
isMasterDeliveryAccount
creditCardIFrameURL
authenticatedCustomerSiteLink
creditCard {
...CreditCardFragment
}
datesForSchedulingAppointment {
...ScheduleDateFragment
}
unpaidOrders {
...UnpaidOrdersFragment
}
finishedPayments {
...PaymentReceiptFragment
}
customerBookings {
...CustomerBookingFragment
}
stagingDetailedCustomerOrder {
...DetailedCustomerOrderFragment
}
readyBags {
...CustomerBagFragment
}
isRouteCustomer
customerRelationship
deliveryStop
demographic
apiTokenForCustomer
activePromotions {
...PromotionFragment
}
subscription {
...CustomerSubscriptionFragment
}
subscriptionUsage {
...SubscriptionUsageFragment
}
kioskAccessCode
email
cellPhone
cellPhoneDisplay
homePhone
activePhone
firstName
lastName
companyName
fullName
store {
...StoreFragment
}
customFields {
...CustomerFieldValueFragment
}
isInSignupProcess
paymentStatus {
...PaymentStatusFragment
}
wardrobeCategories {
...ItemCategoryFragment
}
wardrobeItems {
...OrderItemFragment
}
paymentPreference
rewardPoints
rewards {
...RewardFragment
}
missingRewardSettingCriteria
isSubBilling
deliveryNotes {
...NoteFragment
}
communication {
...CommunicationFragment
}
}
orders {
id
localId
displayId
date
dueDate
deliveredDate
customer {
...CustomerFragment
}
pickupStore {
...StoreFragment
}
dropStore {
...StoreFragment
}
isPickup
isDelivery
hasChangedReturnLocation
isPaid
isPaidForDelivery
buyPrice
pieceCount
status
items {
...OrderItemFragment
}
bags {
...OrderBagFragment
}
customerProvidedDetails {
...DetailedCustomerOrderFragment
}
customerOrderStatusText
receiptLink
lastPaymentWasDeclined
}
}
}
Variables
{"id": 4}
Response
{
"data": {
"customerStop": {
"id": 4,
"localId": 4,
"appointment": Appointment,
"customer": Customer,
"orders": [Order]
}
}
}
customerStops
Description
Returns delivery stops for a given route and day
Response
Returns [CustomerStop!]!
Example
Query
query CustomerStops(
$routeId: ID!,
$date: DateTime!
) {
customerStops(
routeId: $routeId,
date: $date
) {
id
localId
appointment {
id
localId
startTime
endTime
timeSlot {
...TimeSlotFragment
}
scheduledBy {
...ActorFragment
}
scheduledAt
route {
...RouteFragment
}
driverInstructions
cleaningInstructions
departments {
...FinancialDepartmentFragment
}
customer {
...CustomerFragment
}
address {
...CustomerAddressFragment
}
driver {
...UserFragment
}
regular
anytime
status
appointmentLinkId
photos {
...PhotoFragment
}
lockerCode
locationLabel
vehicleStatus {
...DeliveryVehicleStatusFragment
}
stopNumber
deliveryPhoto {
...PhotoFragment
}
}
customer {
id
localId
name
futureAppointments {
...AppointmentFragment
}
settings {
...SettingsFragment
}
group {
...GroupFragment
}
agent {
...AgentFragment
}
routeHolds {
...CustomerRouteHoldFragment
}
driverInstructions
preferences
goodOnlineAccountStanding
addresses {
...CustomerAddressFragment
}
defaultAddress {
...CustomerAddressFragment
}
defaultDeliveryAddress {
...CustomerAddressFragment
}
isMasterDeliveryAccount
creditCardIFrameURL
authenticatedCustomerSiteLink
creditCard {
...CreditCardFragment
}
datesForSchedulingAppointment {
...ScheduleDateFragment
}
unpaidOrders {
...UnpaidOrdersFragment
}
finishedPayments {
...PaymentReceiptFragment
}
customerBookings {
...CustomerBookingFragment
}
stagingDetailedCustomerOrder {
...DetailedCustomerOrderFragment
}
readyBags {
...CustomerBagFragment
}
isRouteCustomer
customerRelationship
deliveryStop
demographic
apiTokenForCustomer
activePromotions {
...PromotionFragment
}
subscription {
...CustomerSubscriptionFragment
}
subscriptionUsage {
...SubscriptionUsageFragment
}
kioskAccessCode
email
cellPhone
cellPhoneDisplay
homePhone
activePhone
firstName
lastName
companyName
fullName
store {
...StoreFragment
}
customFields {
...CustomerFieldValueFragment
}
isInSignupProcess
paymentStatus {
...PaymentStatusFragment
}
wardrobeCategories {
...ItemCategoryFragment
}
wardrobeItems {
...OrderItemFragment
}
paymentPreference
rewardPoints
rewards {
...RewardFragment
}
missingRewardSettingCriteria
isSubBilling
deliveryNotes {
...NoteFragment
}
communication {
...CommunicationFragment
}
}
orders {
id
localId
displayId
date
dueDate
deliveredDate
customer {
...CustomerFragment
}
pickupStore {
...StoreFragment
}
dropStore {
...StoreFragment
}
isPickup
isDelivery
hasChangedReturnLocation
isPaid
isPaidForDelivery
buyPrice
pieceCount
status
items {
...OrderItemFragment
}
bags {
...OrderBagFragment
}
customerProvidedDetails {
...DetailedCustomerOrderFragment
}
customerOrderStatusText
receiptLink
lastPaymentWasDeclined
}
}
}
Variables
{
"routeId": 4,
"date": "2007-12-03T10:15:30Z"
}
Response
{
"data": {
"customerStops": [
{
"id": 4,
"localId": "4",
"appointment": Appointment,
"customer": Customer,
"orders": [Order]
}
]
}
}
googleAccounts
Description
List of Google accounts
Response
Returns [GoogleAccount]!
Example
Query
query GoogleAccounts {
googleAccounts {
id
localId
name
locations {
id
localId
name
address
storeCode
placeId
}
}
}
Response
{
"data": {
"googleAccounts": [
{
"id": "4",
"localId": "4",
"name": "abc123",
"locations": [GoogleLocation]
}
]
}
}
node
Description
Retrieve any object given an id in the graph. Required by React Relay.
nodes
Description
Retrieve multiple objects given ids in the graph. Required by React Relay.
preAllocatedOrderIds
Description
Returns a list of allocated order ids to use
publicBusiness
Description
Returns data about the current business / brand that should be available for non authenticated users. The business / brand is determined by the current subdomain of *.smrtapp.com
Response
Returns a PublicBusiness!
Example
Query
query PublicBusiness {
publicBusiness {
id
businessName
logoUrl
phoneNumber
streetAddress
cityAddress
zipAddress
stateAddress
signupAddressRequired
signupEmailRequired
customerFields {
id
localId
fieldType
label
possibleValues
shownProfile
shownPosSignUp
shownCustomerWebsite
shownCustomerWebsiteSignUp
elasticKey
disabled
isRequired
}
defaultLanguage
fullstoryEnabled
settings {
localId
id
customSignupUrl
}
localId
}
}
Response
{
"data": {
"publicBusiness": {
"id": "4",
"businessName": "xyz789",
"logoUrl": "abc123",
"phoneNumber": "xyz789",
"streetAddress": "xyz789",
"cityAddress": "xyz789",
"zipAddress": "xyz789",
"stateAddress": "xyz789",
"signupAddressRequired": true,
"signupEmailRequired": false,
"customerFields": [CustomerField],
"defaultLanguage": "abc123",
"fullstoryEnabled": true,
"settings": PublicBusinessSetting,
"localId": "4"
}
}
}
rackByLockerCode
Description
Returns an address given a locker code. Also updates customer default address if locker address is found.
Response
Returns a RackByLockerCodeResponse!
Example
Query
query RackByLockerCode(
$customerId: ID!,
$lockerCode: String!
) {
rackByLockerCode(
customerId: $customerId,
lockerCode: $lockerCode
) {
id
localId
rack {
id
localId
address {
...CustomerAddressFragment
}
lockerOnRoute
}
address {
id
localId
name
streetAddress
streetAddress2
city
state
zip
country
latitude
longitude
skipVerification
manualLocation
note
photo {
...PhotoFragment
}
}
locationLabel
}
}
Variables
{
"customerId": "4",
"lockerCode": "abc123"
}
Response
{
"data": {
"rackByLockerCode": {
"id": 4,
"localId": "4",
"rack": RackCfg,
"address": CustomerAddress,
"locationLabel": "abc123"
}
}
}
stationTypes
Description
Get a list of possible station types
Response
Returns [StationType]!
Example
Query
query StationTypes {
stationTypes {
id
localId
name
category
}
}
Response
{
"data": {
"stationTypes": [
{
"id": 4,
"localId": 4,
"name": "xyz789",
"category": "abc123"
}
]
}
}
Mutations
addCustomerToRoute
Description
Adds a customer to a route
Response
Returns a Customer
Arguments
Name | Description |
---|---|
customerId - ID!
|
|
routeId - ID!
|
|
preference - CustomerDeliveryPreferenceEnum!
|
Example
Query
mutation AddCustomerToRoute(
$customerId: ID!,
$routeId: ID!,
$preference: CustomerDeliveryPreferenceEnum!
) {
addCustomerToRoute(
customerId: $customerId,
routeId: $routeId,
preference: $preference
) {
id
localId
name
futureAppointments {
id
localId
startTime
endTime
timeSlot {
...TimeSlotFragment
}
scheduledBy {
...ActorFragment
}
scheduledAt
route {
...RouteFragment
}
driverInstructions
cleaningInstructions
departments {
...FinancialDepartmentFragment
}
customer {
...CustomerFragment
}
address {
...CustomerAddressFragment
}
driver {
...UserFragment
}
regular
anytime
status
appointmentLinkId
photos {
...PhotoFragment
}
lockerCode
locationLabel
vehicleStatus {
...DeliveryVehicleStatusFragment
}
stopNumber
deliveryPhoto {
...PhotoFragment
}
}
settings {
id
localId
mainDeliveryStore {
...StoreFragment
}
mainStore {
...StoreFragment
}
quickDetailingItemTypes {
...ItemTypeFragment
}
defaultPaymentMethod {
...PaymentMethodFragment
}
acceptedPaymentMethods {
...PaymentMethodFragment
}
logo
receiptLogo
POSNewOrderTabs
deliveryNewOrderTabs
statementGenerationDays
invoiceGenerationDays
acceptedCards
automaticSurcharges {
...AutomaticSurchargeFragment
}
detailingAttributes
marketingCampaigns {
...CampaignSettingFragment
}
welcomeNewCustomerCampaign {
...WelcomeNewCustomerCampaignFragment
}
thankYouCampaign {
...ThankYouCampaignFragment
}
arPastDueCampaign {
...ArPastDueCampaignFragment
}
counterToRouteCampaign {
...CounterToRouteCampaignFragment
}
monthlyNewsletterCampaign {
...MonthlyNewsletterCampaignFragment
}
happyAnniversaryCampaign {
...HappyAnniversaryCampaignFragment
}
inventoryReminderCampaign {
...InventoryReminderCampaignFragment
}
oneAndDoneCampaign {
...OneAndDoneCampaignFragment
}
marketingByDepartmentCampaign {
...MarketingByDepartmentCampaignFragment
}
thankYouTopSpendersCampaign {
...ThankYouTopSpendersCampaignFragment
}
newCustomerRetentionCampaign {
...NewCustomerRetentionCampaignFragment
}
customerSignupNoOrdersCampaign {
...CustomerSignupNoOrdersCampaignFragment
}
noOrdersSinceLastCampaign {
...NoOrdersSinceLastCampaignFragment
}
updateYourInformationCampaign {
...UpdateYourInformationCampaignFragment
}
quarterlyComforterCampaign {
...QuarterlyComforterCampaignFragment
}
thankYouNewReviewCampaign {
...ThankYouNewReviewCampaignFragment
}
lostBigCustomerCampaign {
...LostBigCustomerCampaignFragment
}
reviewGenerationCampaign {
...ReviewGenerationCampaignFragment
}
customCampaign {
...CustomCampaignFragment
}
snapshotEmailList {
...SnapshotEmailListFragment
}
businessName
dateFormat
countryCode
timeZone
locale
contactAddressLine
contactAddressState
contactAddressCity
contactAddressZip
contactPhone
logoUrl
noProductionDays
noDeliveryDays
specialHolidays
openDetailingWithCategory
customerFacingDomain
customSignupUrl
contactEmail
twilioAccountSid
twilioAuthToken
twilioPhone
twilioPhoneLookup
whatsAppEnabled
sendSmsOptOutInformation
userNameOnEmailSubject
payableEntity
emailFooter
lockerBuildingCode
communicationTemplatesId
vcardTemplate
newPickupScheduledInstructions
sendAutomatedMessages
sendStatementEmails
signupEmailRequired
signupGroupRequired
signupAutofillCity
signupAddressRequired
signupPhoneRequired
allowOrderSplitting
groupOnDetailingSplit
offerStoreDelivery
offerDeliverySchedulingInText
useStoreZipCodeForTax
summarizeByBillingCode
showSalesTaxBreakdownForStatementOrders
sumOrderTotalOnStatements
simplifiedPaymentReceipt
cashTotalRounding
hasLogo
isHotel
isHotelProcessor
isRoomGroupHotel
isLockers
isValet
isWholesaler
pickupUnpaidOrders
pressOnlyDiscount
scheduleWillCallAtAssembly
scheduleWillCallOnDueDate
dontIncludeOrdersInDeliveryListBeforeDueDate
geoFencingEnabled
allowSubDeliveryAccountScheduling
allowSubAccountToTriggerMasterDelivery
sendAutopayReceipts
sendDeliveryAppointmentConfirmation
showDeliveryNotPaid
deliveryAppLoadListSortDescending
requireSignatureOnDelivery
requirePhotoOnDelivery
showSubRouteForDeliveryStop
genericLaundryBagMode
rushNotificationsHour
websiteDisplayText
shouldShowWebsiteOnReceipts
showAgentOnBagTag
assemblyEvenOnly
voiceAssemblyEnabled
inspectPriceAtAssembly
assemblyPrintFinancialReceiptForDeliveryCustomer
assemblyAlwaysPrintFinancialReceipt
printFinancialTicketOutsideAssembly
keepRackAssignmentOnOrderSplit
complexLotControl
overrideDueDateWithNextDelivery
autoSelectDeliveryReturnLocation
defaultDetailingTab
autoOpenAnnotationType
requireInvoiceInDetailing
displayTooManyDetailedItemsWarning
assemblyIcon
alignAssemblyIcon
newCustomerTicketIcon
newCustomerBottomTicketIcon
customerNameOnTicketBottom
pieceCountOnTicketBottom
customerPhoneOnTicket
showRoomInfoBelowAddress
laundryLicense
summarizedItemTable
showLogoOnReceipts
logoOnReceiptHeight
receiptLogoName
showPriceOnAssembly
paymentReceiptShowSignatureLine
receiptsNameShort
newLocationOnTicket
showRouteOfSameDayDelivery
itemDetailsOnTicket
itemDetailsOnOrderReceipt
newOrderPrintCount
printRetailReceipts
printDropTicketOnOrderSplit
printTicketOnOrderCloseCount
noStoreContactInfoOnReceipts
noPricingOnOrderReceipts
receiptsFooter
thermalReceiptFooter
ticketReceiptFooter
showEmailOnReceipts
showWebsiteOnReceipts
invoicePayableLine
invoiceTerms
isRestorationAccount
offerDemandDelivery
autoAddNewCustomerToWillCallRoute
groupItemDetailsByRoomNumber
merchantBatchCloseTime
saveCardsOnFile
amexSeparately
maxAutopayAmount
maxPaymentAmountWarning
autopayTerms
autopayStatements
autopayBatchStrategy
invoiceDueDays
consolidateInvoiceItemDetails
invoiceShowOrderDetails
invoiceHideOrderInfo
showDateOnStatement
callStatementInvoice
activitySummaryEnabled
attachPDFInStatementEmails
rewardsProgramEnabled
rewardsPointModifier
rewardsCurrencyModifier
rewardsConversionRequirement
rewardsRedeemAutomatically
rewardsEmailRequired
rewardsPhoneRequired
rewardsAddressRequired
rewardsCreditCardRequired
welcomeNotificationDisabled
autoTicketOnCustomerRegistration
autoTicketOnScheduledDelivery
sendCustomerUpdatedCCNotification
allowScheduleBothPickupAndDelivery
limitScheduleDeliveryToClosestRoute
allowRouteRegularCustomersToScheduleOnDemand
allowSameDaySchedulingEvenIfRouteStarted
experimentalPhotoUserExperienceOnWebsiteScheduler
priceListUpdateOrdersCondition
routeAgentPriority
commonOrdersAgent
isMailOrderPickups
lockerDropBinPickupMode
showYesRepliesInComm
autoReplyToYesRepliesInComm
customerWebsiteClothesTrackerTabEnabled
customerWebsiteWardrobeTabEnabled
customerWebsitePaymentTabEnabled
metalprogettiAssemblyLabelTemplate
metalprogettiSendRackSpaceToStorage
rushOrderSurcharge
rushOrderSurchargeTier2
sendNewOrderNotificationOnEveryVisit
includeReceiptInNewOrderNotification
printTempTagsForBarcodedItems
alwaysGenerateTemporaryBarcodes
zebraPrinterTemplate
epsonPrinterTemplate
forceOnlyBagFieldInput
detailingWithoutBarcodes
printLabelsWhenDuplicating
metalprogettiStripCharacters
autoDetailingEnabled
minItemBarcodeLength
maxItemBarcodeLength
quotesDeletionTimeFrame
minWashNFoldPrice
minWashNFoldWeight
washAndFoldWeightStations
departmentSpecificOrdersEnabled
manualPickupRestricted
displayDueDateInProductionModules
filterDetailingByItemTypes
automaticallyFilterReportsToEmployeesStore
payrollPeriod
payrollLastCloseDate
payrollFirstHalfCloseDate
payrollLastHalfCloseDate
payrollCloseDate
workweekStart
hoursUntilWeeklyOvertime
hoursUntilDailyOvertime
hoursUntilDailyDoubleTime
hoursUntilWeeklyNotification
hoursUntilDailyNotification
preventClockInBeforeTime
californiaOvertimeRules
promptForClockInOnLogin
overrideTimeClockWithUserDepartment
allowMobileAppClockIn
disableOverTimeNotifications
overnightClockOut
inventorySystemEnabled
inventorySystemEnabledProduction
permissionManageSystemSettings
permissionManageMarketing
permissionManageStationSettings
permissionAccessCustomerCredits
permissionAddCustomerDiscount
permissionAccessCustomerModule
permissionAccessDeliveryModule
permissionAccessAssemblyModule
permissionAccessSpottingModule
permissionAccessAlterAndRepairModule
permissionAccessAccountsReceivableModule
permissionAccessPressingModule
permissionAccessPriceListModule
permissionAccessCashBoxModule
permissionAccessTimeclockModule
permissionAccessPerformanceModule
permissionAccessWashAndFoldModule
permissionAccessInspectionModule
permissionAccessItemBaggingModule
permissionAccessFoldingAndBaggingModule
permissionAccessMessagesModule
permissionAccessRackingModule
permissionAccessRouteManagerModule
permissionAccessReportsModule
permissionAccessAdminReportsModule
permissionAccessIssueTrackerModule
permissionAccessSupportModule
permissionAccessEmployeeSettingsModule
permissionAccessBulkMarkinModule
permissionManualPriceEdits
permissionSpecialCareAfterOrderClose
permissionResetOrder
permissionRemoveItems
showStrikeThroughWhenReturned
usePieceCountTotalsOnTicket
taxHeaderString
includeTaxInPrice
dropDateOnAssemblyTicket
displayDepartmentOnTicket
displayCategoryOnTicket
displayPriceOnPickupSlip
useStoreSpecificOrderSequenceNumbers
showStoreSpecificOrderNumberOnTop
saleItemLedgerTrackingEnabled
inOnboarding
noCcCustomerText
pickupReminderOfferCancellations
pickupReminderEnabledForInactiveCustomers
offersRetailDelivery
regRouteQuestionChecked
pickupReminderHour24
pickupReminderIncludeDeliveries
deliveryCompleteConfirmation
defaultCustomerPaymentType
promptOnCardAvsFailure
minCardChargeAmount
defaultCustomerPriceList
cardSurcharging
cardSurchargeFixedPercentage
organizationNumber
fullstoryEnabled
initializedInferred
cashBoxMode
cashBoxModeProduction
displayExtendedStationReceiptInfo
displayExtendedZReportInfo
twilioMarketingNumber
campaignsEnabled
broadcastsEnabled
reviewModuleEnabled
defaultLanguage
weightUnit
segmentWriteKey
socialId
twilioReviewNumber
}
group {
id
localId
agentId
agentType
name
merchant {
...MerchantFragment
}
isStripeEnabled
hasOwnAgent
isGroupStop
isMasterBilling
customers {
...CustomerFragment
}
}
agent {
id
localId
name
agentId
agentType
isStripeEnabled
merchant {
...MerchantFragment
}
}
routeHolds {
id
localId
startDate
endDate
}
driverInstructions
preferences
goodOnlineAccountStanding
addresses {
id
localId
name
streetAddress
streetAddress2
city
state
zip
country
latitude
longitude
skipVerification
manualLocation
note
photo {
...PhotoFragment
}
}
defaultAddress {
id
localId
name
streetAddress
streetAddress2
city
state
zip
country
latitude
longitude
skipVerification
manualLocation
note
photo {
...PhotoFragment
}
}
defaultDeliveryAddress {
id
localId
name
streetAddress
streetAddress2
city
state
zip
country
latitude
longitude
skipVerification
manualLocation
note
photo {
...PhotoFragment
}
}
isMasterDeliveryAccount
creditCardIFrameURL
authenticatedCustomerSiteLink
creditCard {
id
localId
type
last4
expm
expy
status {
...CreditCardStatusFragment
}
}
datesForSchedulingAppointment {
id
localId
date
timeSlots {
...TimeSlotFragment
}
}
unpaidOrders {
id
localId
orders {
...OrderFragment
}
duePayment {
...DuePaymentFragment
}
}
finishedPayments {
id
localId
total
date
receiptLink
}
customerBookings {
id
localId
pickupAppointment {
...AppointmentFragment
}
deliveryAppointment {
...AppointmentFragment
}
detailedCustomerOrder {
...DetailedCustomerOrderFragment
}
orders {
...OrderFragment
}
pickupDateDisplay
deliveryDateDisplay
pickupDateTitle
deliveryDateTitle
statusText
status
progress
bookingDate
lockerId
lockerLabel
}
stagingDetailedCustomerOrder {
id
localId
customer {
...CustomerFragment
}
isStaging
detailedItemData {
...DetailedItemDataFragment
}
}
readyBags {
id
localId
barcode
display
order {
...OrderFragment
}
location {
...RackLogFragment
}
}
isRouteCustomer
customerRelationship
deliveryStop
demographic
apiTokenForCustomer
activePromotions {
id
localId
name
couponCode
customerCouponCode
disabled
validForMarketing
}
subscription {
id
localId
pending {
...CustomerSubscriptionEntryFragment
}
active {
...CustomerSubscriptionEntryFragment
}
log {
...CustomerSubscriptionLogFragment
}
renewalDate
}
subscriptionUsage {
id
localId
type
limit
usage
}
kioskAccessCode
email
cellPhone
cellPhoneDisplay
homePhone
activePhone
firstName
lastName
companyName
fullName
store {
id
localId
agentId
agentType
name
isStripeEnabled
merchant {
...MerchantFragment
}
phone
address
city
state
zip
latitude
longitude
externalStoreIdentifier
googlePlaceId
stations {
...StationFragment
}
hasCounterStation
}
customFields {
id
localId
label
value
}
isInSignupProcess
paymentStatus {
id
localId
paymentReference
paymentStatus
}
wardrobeCategories {
id
localId
name
sort
description
disabled
isRetail
}
wardrobeItems {
id
localId
type {
...ItemTypeFragment
}
barcode
brandDisplay
itemStatus {
...ItemStatusFragment
}
colors {
...ColorFragment
}
photo {
...PhotoFragment
}
}
paymentPreference
rewardPoints
rewards {
id
localId
date
amount
status
expiryDate
redeemDate
}
missingRewardSettingCriteria
isSubBilling
deliveryNotes {
id
localId
date
customer {
...CustomerFragment
}
message
mainCategory
subCategory
status
saleId
itemId
lastUpdated
dueDate
assignee {
...UserFragment
}
photos {
...PhotoFragment
}
}
communication {
id
localId
direction
type
date
subject
staff {
...UserFragment
}
contactFlag
body
}
}
}
Variables
{
"customerId": "4",
"routeId": 4,
"preference": "NO_PREFERENCE"
}
Response
{
"data": {
"addCustomerToRoute": {
"id": "4",
"localId": "4",
"name": "xyz789",
"futureAppointments": [Appointment],
"settings": Settings,
"group": Group,
"agent": Agent,
"routeHolds": [CustomerRouteHold],
"driverInstructions": "xyz789",
"preferences": ["4"],
"goodOnlineAccountStanding": true,
"addresses": [CustomerAddress],
"defaultAddress": CustomerAddress,
"defaultDeliveryAddress": CustomerAddress,
"isMasterDeliveryAccount": true,
"creditCardIFrameURL": "abc123",
"authenticatedCustomerSiteLink": "xyz789",
"creditCard": CreditCard,
"datesForSchedulingAppointment": [ScheduleDate],
"unpaidOrders": UnpaidOrders,
"finishedPayments": [PaymentReceipt],
"customerBookings": [CustomerBooking],
"stagingDetailedCustomerOrder": DetailedCustomerOrder,
"readyBags": [CustomerBag],
"isRouteCustomer": false,
"customerRelationship": "STORE_ONLY",
"deliveryStop": 123,
"demographic": 123,
"apiTokenForCustomer": "xyz789",
"activePromotions": [Promotion],
"subscription": CustomerSubscription,
"subscriptionUsage": [SubscriptionUsage],
"kioskAccessCode": "abc123",
"email": "xyz789",
"cellPhone": "abc123",
"cellPhoneDisplay": "abc123",
"homePhone": "xyz789",
"activePhone": "abc123",
"firstName": "xyz789",
"lastName": "xyz789",
"companyName": "abc123",
"fullName": "xyz789",
"store": Store,
"customFields": [CustomerFieldValue],
"isInSignupProcess": true,
"paymentStatus": PaymentStatus,
"wardrobeCategories": [ItemCategory],
"wardrobeItems": [OrderItem],
"paymentPreference": "AUTOPAY",
"rewardPoints": 987.65,
"rewards": [Reward],
"missingRewardSettingCriteria": ["ADD_EMAIL_CRITERIA"],
"isSubBilling": true,
"deliveryNotes": [Note],
"communication": [Communication]
}
}
}
addUserToChatRoom
Description
Add a chat user to a room
Response
Returns a Boolean!
Example
Query
mutation AddUserToChatRoom(
$roomId: ID!,
$userId: ID!
) {
addUserToChatRoom(
roomId: $roomId,
userId: $userId
)
}
Variables
{"roomId": 4, "userId": 4}
Response
{"data": {"addUserToChatRoom": true}}
appendSpecialChatMessageContent
Description
If a chat message contains any special info like item or customer barcodes this endpoint will transform the message replacing the barcodes with links
Response
Returns a String!
Arguments
Name | Description |
---|---|
message - String!
|
The original message to process |
Example
Query
mutation AppendSpecialChatMessageContent($message: String!) {
appendSpecialChatMessageContent(message: $message)
}
Variables
{"message": "xyz789"}
Response
{
"data": {
"appendSpecialChatMessageContent": "xyz789"
}
}
applyPromotion
Description
Applies promotion code to customer. Requires access level: Customer or Admin
Response
Returns a Boolean!
Example
Query
mutation ApplyPromotion(
$customerId: ID,
$promotionToApply: String
) {
applyPromotion(
customerId: $customerId,
promotionToApply: $promotionToApply
)
}
Variables
{
"customerId": "4",
"promotionToApply": "xyz789"
}
Response
{"data": {"applyPromotion": false}}
buildRouteAction
Description
Creates a customer stop given bag barcode, route and day
Response
Returns a BuildRoute!
Arguments
Name | Description |
---|---|
input - BuildRouteActionInput!
|
Example
Query
mutation BuildRouteAction($input: BuildRouteActionInput!) {
buildRouteAction(input: $input) {
id
localId
barcode
extraMessage
customerName
}
}
Variables
{"input": BuildRouteActionInput}
Response
{
"data": {
"buildRouteAction": {
"id": 4,
"localId": 4,
"barcode": "abc123",
"extraMessage": "abc123",
"customerName": "abc123"
}
}
}
cancelAppointment
Description
Cancel an appointment. Requires access level: Customer or Admin
Response
Returns a Boolean
Arguments
Name | Description |
---|---|
appointmentId - ID!
|
The ID of the appointment to cancel |
Example
Query
mutation CancelAppointment($appointmentId: ID!) {
cancelAppointment(appointmentId: $appointmentId)
}
Variables
{"appointmentId": "4"}
Response
{"data": {"cancelAppointment": false}}
cancelCustomerSubscription
Description
Cancels a subscription by setting the status to 'cancelled', but also sets the end date to the end of the month during which time it will remain active. Requires access level: Customer or Admin
Response
Returns a CustomerSubscription
Arguments
Name | Description |
---|---|
customerId - ID!
|
A customer id |
status - SubscriptionStatusEnum!
|
The status of the subscription to cancel |
Example
Query
mutation CancelCustomerSubscription(
$customerId: ID!,
$status: SubscriptionStatusEnum!
) {
cancelCustomerSubscription(
customerId: $customerId,
status: $status
) {
id
localId
pending {
id
localId
saleId
price
start
end
}
active {
id
localId
saleId
price
start
end
}
log {
id
localId
date
event
description
user {
...UserFragment
}
}
renewalDate
}
}
Variables
{"customerId": 4, "status": "pending"}
Response
{
"data": {
"cancelCustomerSubscription": {
"id": 4,
"localId": "4",
"pending": CustomerSubscriptionEntry,
"active": CustomerSubscriptionEntry,
"log": [CustomerSubscriptionLog],
"renewalDate": "2007-12-03T10:15:30Z"
}
}
}
changeStopOrderDeliveryAction
Description
Changes the order of a delivery stop
Response
Returns a Boolean!
Arguments
Name | Description |
---|---|
input - ChangeStopOrderDeliveryActionInput!
|
Example
Query
mutation ChangeStopOrderDeliveryAction($input: ChangeStopOrderDeliveryActionInput!) {
changeStopOrderDeliveryAction(input: $input)
}
Variables
{"input": ChangeStopOrderDeliveryActionInput}
Response
{"data": {"changeStopOrderDeliveryAction": false}}
clearCurrentCustomer
Response
Returns a Boolean
Example
Query
mutation ClearCurrentCustomer {
clearCurrentCustomer
}
Response
{"data": {"clearCurrentCustomer": false}}
completeStopDeliveryAction
Description
Marks a delivery stop completed. Requires a valid Delivery station cookie
Response
Returns a CustomerStop!
Arguments
Name | Description |
---|---|
input - CompleteStopDeliveryActionInput!
|
Example
Query
mutation CompleteStopDeliveryAction($input: CompleteStopDeliveryActionInput!) {
completeStopDeliveryAction(input: $input) {
id
localId
appointment {
id
localId
startTime
endTime
timeSlot {
...TimeSlotFragment
}
scheduledBy {
...ActorFragment
}
scheduledAt
route {
...RouteFragment
}
driverInstructions
cleaningInstructions
departments {
...FinancialDepartmentFragment
}
customer {
...CustomerFragment
}
address {
...CustomerAddressFragment
}
driver {
...UserFragment
}
regular
anytime
status
appointmentLinkId
photos {
...PhotoFragment
}
lockerCode
locationLabel
vehicleStatus {
...DeliveryVehicleStatusFragment
}
stopNumber
deliveryPhoto {
...PhotoFragment
}
}
customer {
id
localId
name
futureAppointments {
...AppointmentFragment
}
settings {
...SettingsFragment
}
group {
...GroupFragment
}
agent {
...AgentFragment
}
routeHolds {
...CustomerRouteHoldFragment
}
driverInstructions
preferences
goodOnlineAccountStanding
addresses {
...CustomerAddressFragment
}
defaultAddress {
...CustomerAddressFragment
}
defaultDeliveryAddress {
...CustomerAddressFragment
}
isMasterDeliveryAccount
creditCardIFrameURL
authenticatedCustomerSiteLink
creditCard {
...CreditCardFragment
}
datesForSchedulingAppointment {
...ScheduleDateFragment
}
unpaidOrders {
...UnpaidOrdersFragment
}
finishedPayments {
...PaymentReceiptFragment
}
customerBookings {
...CustomerBookingFragment
}
stagingDetailedCustomerOrder {
...DetailedCustomerOrderFragment
}
readyBags {
...CustomerBagFragment
}
isRouteCustomer
customerRelationship
deliveryStop
demographic
apiTokenForCustomer
activePromotions {
...PromotionFragment
}
subscription {
...CustomerSubscriptionFragment
}
subscriptionUsage {
...SubscriptionUsageFragment
}
kioskAccessCode
email
cellPhone
cellPhoneDisplay
homePhone
activePhone
firstName
lastName
companyName
fullName
store {
...StoreFragment
}
customFields {
...CustomerFieldValueFragment
}
isInSignupProcess
paymentStatus {
...PaymentStatusFragment
}
wardrobeCategories {
...ItemCategoryFragment
}
wardrobeItems {
...OrderItemFragment
}
paymentPreference
rewardPoints
rewards {
...RewardFragment
}
missingRewardSettingCriteria
isSubBilling
deliveryNotes {
...NoteFragment
}
communication {
...CommunicationFragment
}
}
orders {
id
localId
displayId
date
dueDate
deliveredDate
customer {
...CustomerFragment
}
pickupStore {
...StoreFragment
}
dropStore {
...StoreFragment
}
isPickup
isDelivery
hasChangedReturnLocation
isPaid
isPaidForDelivery
buyPrice
pieceCount
status
items {
...OrderItemFragment
}
bags {
...OrderBagFragment
}
customerProvidedDetails {
...DetailedCustomerOrderFragment
}
customerOrderStatusText
receiptLink
lastPaymentWasDeclined
}
}
}
Variables
{"input": CompleteStopDeliveryActionInput}
Response
{
"data": {
"completeStopDeliveryAction": {
"id": 4,
"localId": "4",
"appointment": Appointment,
"customer": Customer,
"orders": [Order]
}
}
}
createAndSetStation
Description
Create a new station given a store and station type. On success, the secret key is returned that the client should store in the cookie 'smrt_stkey' for authentication. If your IP is not whitelisted, you must provide a user entered auth code as argument. Simply try the endpoint and on error, ask the user to input an auth code. The endpoint will also give an error if the auth key is invalid.
Response
Returns a String!
Arguments
Name | Description |
---|---|
stationTypeId - String!
|
The station type (StationType_x_y) of the station that you want to create |
storeId - String!
|
The store id (Store_x_y) of the store that you want to assign this station to |
authCode - String
|
For a non whitelisted IP, you must provide an auth code to create a station. This can be fetched manually in the admin panel. |
name - String
|
Optional name of the station. If not provided, a name will be auto generated |
Example
Query
mutation CreateAndSetStation(
$stationTypeId: String!,
$storeId: String!,
$authCode: String,
$name: String
) {
createAndSetStation(
stationTypeId: $stationTypeId,
storeId: $storeId,
authCode: $authCode,
name: $name
)
}
Variables
{
"stationTypeId": "abc123",
"storeId": "abc123",
"authCode": "abc123",
"name": "xyz789"
}
Response
{"data": {"createAndSetStation": "xyz789"}}
createAuthCodesForSettingStation
Description
Generate 5 one-time authentication codes for setting up stations. Requires access level: Sr Manager
Response
Returns [String]!
Example
Query
mutation CreateAuthCodesForSettingStation {
createAuthCodesForSettingStation
}
Response
{
"data": {
"createAuthCodesForSettingStation": [
"xyz789"
]
}
}
createCardSetupIntent
Description
Creates a Stripe Setup Intent, returns the Stripe client secret. Requires access level: Customer or Admin
createCustomer
Description
Creates a customer. Requires access level: Admin
Response
Returns a Customer
Arguments
Name | Description |
---|---|
input - CustomerInput!
|
Customer to create |
agentId - String
|
The associated agent ID |
Example
Query
mutation CreateCustomer(
$input: CustomerInput!,
$agentId: String
) {
createCustomer(
input: $input,
agentId: $agentId
) {
id
localId
name
futureAppointments {
id
localId
startTime
endTime
timeSlot {
...TimeSlotFragment
}
scheduledBy {
...ActorFragment
}
scheduledAt
route {
...RouteFragment
}
driverInstructions
cleaningInstructions
departments {
...FinancialDepartmentFragment
}
customer {
...CustomerFragment
}
address {
...CustomerAddressFragment
}
driver {
...UserFragment
}
regular
anytime
status
appointmentLinkId
photos {
...PhotoFragment
}
lockerCode
locationLabel
vehicleStatus {
...DeliveryVehicleStatusFragment
}
stopNumber
deliveryPhoto {
...PhotoFragment
}
}
settings {
id
localId
mainDeliveryStore {
...StoreFragment
}
mainStore {
...StoreFragment
}
quickDetailingItemTypes {
...ItemTypeFragment
}
defaultPaymentMethod {
...PaymentMethodFragment
}
acceptedPaymentMethods {
...PaymentMethodFragment
}
logo
receiptLogo
POSNewOrderTabs
deliveryNewOrderTabs
statementGenerationDays
invoiceGenerationDays
acceptedCards
automaticSurcharges {
...AutomaticSurchargeFragment
}
detailingAttributes
marketingCampaigns {
...CampaignSettingFragment
}
welcomeNewCustomerCampaign {
...WelcomeNewCustomerCampaignFragment
}
thankYouCampaign {
...ThankYouCampaignFragment
}
arPastDueCampaign {
...ArPastDueCampaignFragment
}
counterToRouteCampaign {
...CounterToRouteCampaignFragment
}
monthlyNewsletterCampaign {
...MonthlyNewsletterCampaignFragment
}
happyAnniversaryCampaign {
...HappyAnniversaryCampaignFragment
}
inventoryReminderCampaign {
...InventoryReminderCampaignFragment
}
oneAndDoneCampaign {
...OneAndDoneCampaignFragment
}
marketingByDepartmentCampaign {
...MarketingByDepartmentCampaignFragment
}
thankYouTopSpendersCampaign {
...ThankYouTopSpendersCampaignFragment
}
newCustomerRetentionCampaign {
...NewCustomerRetentionCampaignFragment
}
customerSignupNoOrdersCampaign {
...CustomerSignupNoOrdersCampaignFragment
}
noOrdersSinceLastCampaign {
...NoOrdersSinceLastCampaignFragment
}
updateYourInformationCampaign {
...UpdateYourInformationCampaignFragment
}
quarterlyComforterCampaign {
...QuarterlyComforterCampaignFragment
}
thankYouNewReviewCampaign {
...ThankYouNewReviewCampaignFragment
}
lostBigCustomerCampaign {
...LostBigCustomerCampaignFragment
}
reviewGenerationCampaign {
...ReviewGenerationCampaignFragment
}
customCampaign {
...CustomCampaignFragment
}
snapshotEmailList {
...SnapshotEmailListFragment
}
businessName
dateFormat
countryCode
timeZone
locale
contactAddressLine
contactAddressState
contactAddressCity
contactAddressZip
contactPhone
logoUrl
noProductionDays
noDeliveryDays
specialHolidays
openDetailingWithCategory
customerFacingDomain
customSignupUrl
contactEmail
twilioAccountSid
twilioAuthToken
twilioPhone
twilioPhoneLookup
whatsAppEnabled
sendSmsOptOutInformation
userNameOnEmailSubject
payableEntity
emailFooter
lockerBuildingCode
communicationTemplatesId
vcardTemplate
newPickupScheduledInstructions
sendAutomatedMessages
sendStatementEmails
signupEmailRequired
signupGroupRequired
signupAutofillCity
signupAddressRequired
signupPhoneRequired
allowOrderSplitting
groupOnDetailingSplit
offerStoreDelivery
offerDeliverySchedulingInText
useStoreZipCodeForTax
summarizeByBillingCode
showSalesTaxBreakdownForStatementOrders
sumOrderTotalOnStatements
simplifiedPaymentReceipt
cashTotalRounding
hasLogo
isHotel
isHotelProcessor
isRoomGroupHotel
isLockers
isValet
isWholesaler
pickupUnpaidOrders
pressOnlyDiscount
scheduleWillCallAtAssembly
scheduleWillCallOnDueDate
dontIncludeOrdersInDeliveryListBeforeDueDate
geoFencingEnabled
allowSubDeliveryAccountScheduling
allowSubAccountToTriggerMasterDelivery
sendAutopayReceipts
sendDeliveryAppointmentConfirmation
showDeliveryNotPaid
deliveryAppLoadListSortDescending
requireSignatureOnDelivery
requirePhotoOnDelivery
showSubRouteForDeliveryStop
genericLaundryBagMode
rushNotificationsHour
websiteDisplayText
shouldShowWebsiteOnReceipts
showAgentOnBagTag
assemblyEvenOnly
voiceAssemblyEnabled
inspectPriceAtAssembly
assemblyPrintFinancialReceiptForDeliveryCustomer
assemblyAlwaysPrintFinancialReceipt
printFinancialTicketOutsideAssembly
keepRackAssignmentOnOrderSplit
complexLotControl
overrideDueDateWithNextDelivery
autoSelectDeliveryReturnLocation
defaultDetailingTab
autoOpenAnnotationType
requireInvoiceInDetailing
displayTooManyDetailedItemsWarning
assemblyIcon
alignAssemblyIcon
newCustomerTicketIcon
newCustomerBottomTicketIcon
customerNameOnTicketBottom
pieceCountOnTicketBottom
customerPhoneOnTicket
showRoomInfoBelowAddress
laundryLicense
summarizedItemTable
showLogoOnReceipts
logoOnReceiptHeight
receiptLogoName
showPriceOnAssembly
paymentReceiptShowSignatureLine
receiptsNameShort
newLocationOnTicket
showRouteOfSameDayDelivery
itemDetailsOnTicket
itemDetailsOnOrderReceipt
newOrderPrintCount
printRetailReceipts
printDropTicketOnOrderSplit
printTicketOnOrderCloseCount
noStoreContactInfoOnReceipts
noPricingOnOrderReceipts
receiptsFooter
thermalReceiptFooter
ticketReceiptFooter
showEmailOnReceipts
showWebsiteOnReceipts
invoicePayableLine
invoiceTerms
isRestorationAccount
offerDemandDelivery
autoAddNewCustomerToWillCallRoute
groupItemDetailsByRoomNumber
merchantBatchCloseTime
saveCardsOnFile
amexSeparately
maxAutopayAmount
maxPaymentAmountWarning
autopayTerms
autopayStatements
autopayBatchStrategy
invoiceDueDays
consolidateInvoiceItemDetails
invoiceShowOrderDetails
invoiceHideOrderInfo
showDateOnStatement
callStatementInvoice
activitySummaryEnabled
attachPDFInStatementEmails
rewardsProgramEnabled
rewardsPointModifier
rewardsCurrencyModifier
rewardsConversionRequirement
rewardsRedeemAutomatically
rewardsEmailRequired
rewardsPhoneRequired
rewardsAddressRequired
rewardsCreditCardRequired
welcomeNotificationDisabled
autoTicketOnCustomerRegistration
autoTicketOnScheduledDelivery
sendCustomerUpdatedCCNotification
allowScheduleBothPickupAndDelivery
limitScheduleDeliveryToClosestRoute
allowRouteRegularCustomersToScheduleOnDemand
allowSameDaySchedulingEvenIfRouteStarted
experimentalPhotoUserExperienceOnWebsiteScheduler
priceListUpdateOrdersCondition
routeAgentPriority
commonOrdersAgent
isMailOrderPickups
lockerDropBinPickupMode
showYesRepliesInComm
autoReplyToYesRepliesInComm
customerWebsiteClothesTrackerTabEnabled
customerWebsiteWardrobeTabEnabled
customerWebsitePaymentTabEnabled
metalprogettiAssemblyLabelTemplate
metalprogettiSendRackSpaceToStorage
rushOrderSurcharge
rushOrderSurchargeTier2
sendNewOrderNotificationOnEveryVisit
includeReceiptInNewOrderNotification
printTempTagsForBarcodedItems
alwaysGenerateTemporaryBarcodes
zebraPrinterTemplate
epsonPrinterTemplate
forceOnlyBagFieldInput
detailingWithoutBarcodes
printLabelsWhenDuplicating
metalprogettiStripCharacters
autoDetailingEnabled
minItemBarcodeLength
maxItemBarcodeLength
quotesDeletionTimeFrame
minWashNFoldPrice
minWashNFoldWeight
washAndFoldWeightStations
departmentSpecificOrdersEnabled
manualPickupRestricted
displayDueDateInProductionModules
filterDetailingByItemTypes
automaticallyFilterReportsToEmployeesStore
payrollPeriod
payrollLastCloseDate
payrollFirstHalfCloseDate
payrollLastHalfCloseDate
payrollCloseDate
workweekStart
hoursUntilWeeklyOvertime
hoursUntilDailyOvertime
hoursUntilDailyDoubleTime
hoursUntilWeeklyNotification
hoursUntilDailyNotification
preventClockInBeforeTime
californiaOvertimeRules
promptForClockInOnLogin
overrideTimeClockWithUserDepartment
allowMobileAppClockIn
disableOverTimeNotifications
overnightClockOut
inventorySystemEnabled
inventorySystemEnabledProduction
permissionManageSystemSettings
permissionManageMarketing
permissionManageStationSettings
permissionAccessCustomerCredits
permissionAddCustomerDiscount
permissionAccessCustomerModule
permissionAccessDeliveryModule
permissionAccessAssemblyModule
permissionAccessSpottingModule
permissionAccessAlterAndRepairModule
permissionAccessAccountsReceivableModule
permissionAccessPressingModule
permissionAccessPriceListModule
permissionAccessCashBoxModule
permissionAccessTimeclockModule
permissionAccessPerformanceModule
permissionAccessWashAndFoldModule
permissionAccessInspectionModule
permissionAccessItemBaggingModule
permissionAccessFoldingAndBaggingModule
permissionAccessMessagesModule
permissionAccessRackingModule
permissionAccessRouteManagerModule
permissionAccessReportsModule
permissionAccessAdminReportsModule
permissionAccessIssueTrackerModule
permissionAccessSupportModule
permissionAccessEmployeeSettingsModule
permissionAccessBulkMarkinModule
permissionManualPriceEdits
permissionSpecialCareAfterOrderClose
permissionResetOrder
permissionRemoveItems
showStrikeThroughWhenReturned
usePieceCountTotalsOnTicket
taxHeaderString
includeTaxInPrice
dropDateOnAssemblyTicket
displayDepartmentOnTicket
displayCategoryOnTicket
displayPriceOnPickupSlip
useStoreSpecificOrderSequenceNumbers
showStoreSpecificOrderNumberOnTop
saleItemLedgerTrackingEnabled
inOnboarding
noCcCustomerText
pickupReminderOfferCancellations
pickupReminderEnabledForInactiveCustomers
offersRetailDelivery
regRouteQuestionChecked
pickupReminderHour24
pickupReminderIncludeDeliveries
deliveryCompleteConfirmation
defaultCustomerPaymentType
promptOnCardAvsFailure
minCardChargeAmount
defaultCustomerPriceList
cardSurcharging
cardSurchargeFixedPercentage
organizationNumber
fullstoryEnabled
initializedInferred
cashBoxMode
cashBoxModeProduction
displayExtendedStationReceiptInfo
displayExtendedZReportInfo
twilioMarketingNumber
campaignsEnabled
broadcastsEnabled
reviewModuleEnabled
defaultLanguage
weightUnit
segmentWriteKey
socialId
twilioReviewNumber
}
group {
id
localId
agentId
agentType
name
merchant {
...MerchantFragment
}
isStripeEnabled
hasOwnAgent
isGroupStop
isMasterBilling
customers {
...CustomerFragment
}
}
agent {
id
localId
name
agentId
agentType
isStripeEnabled
merchant {
...MerchantFragment
}
}
routeHolds {
id
localId
startDate
endDate
}
driverInstructions
preferences
goodOnlineAccountStanding
addresses {
id
localId
name
streetAddress
streetAddress2
city
state
zip
country
latitude
longitude
skipVerification
manualLocation
note
photo {
...PhotoFragment
}
}
defaultAddress {
id
localId
name
streetAddress
streetAddress2
city
state
zip
country
latitude
longitude
skipVerification
manualLocation
note
photo {
...PhotoFragment
}
}
defaultDeliveryAddress {
id
localId
name
streetAddress
streetAddress2
city
state
zip
country
latitude
longitude
skipVerification
manualLocation
note
photo {
...PhotoFragment
}
}
isMasterDeliveryAccount
creditCardIFrameURL
authenticatedCustomerSiteLink
creditCard {
id
localId
type
last4
expm
expy
status {
...CreditCardStatusFragment
}
}
datesForSchedulingAppointment {
id
localId
date
timeSlots {
...TimeSlotFragment
}
}
unpaidOrders {
id
localId
orders {
...OrderFragment
}
duePayment {
...DuePaymentFragment
}
}
finishedPayments {
id
localId
total
date
receiptLink
}
customerBookings {
id
localId
pickupAppointment {
...AppointmentFragment
}
deliveryAppointment {
...AppointmentFragment
}
detailedCustomerOrder {
...DetailedCustomerOrderFragment
}
orders {
...OrderFragment
}
pickupDateDisplay
deliveryDateDisplay
pickupDateTitle
deliveryDateTitle
statusText
status
progress
bookingDate
lockerId
lockerLabel
}
stagingDetailedCustomerOrder {
id
localId
customer {
...CustomerFragment
}
isStaging
detailedItemData {
...DetailedItemDataFragment
}
}
readyBags {
id
localId
barcode
display
order {
...OrderFragment
}
location {
...RackLogFragment
}
}
isRouteCustomer
customerRelationship
deliveryStop
demographic
apiTokenForCustomer
activePromotions {
id
localId
name
couponCode
customerCouponCode
disabled
validForMarketing
}
subscription {
id
localId
pending {
...CustomerSubscriptionEntryFragment
}
active {
...CustomerSubscriptionEntryFragment
}
log {
...CustomerSubscriptionLogFragment
}
renewalDate
}
subscriptionUsage {
id
localId
type
limit
usage
}
kioskAccessCode
email
cellPhone
cellPhoneDisplay
homePhone
activePhone
firstName
lastName
companyName
fullName
store {
id
localId
agentId
agentType
name
isStripeEnabled
merchant {
...MerchantFragment
}
phone
address
city
state
zip
latitude
longitude
externalStoreIdentifier
googlePlaceId
stations {
...StationFragment
}
hasCounterStation
}
customFields {
id
localId
label
value
}
isInSignupProcess
paymentStatus {
id
localId
paymentReference
paymentStatus
}
wardrobeCategories {
id
localId
name
sort
description
disabled
isRetail
}
wardrobeItems {
id
localId
type {
...ItemTypeFragment
}
barcode
brandDisplay
itemStatus {
...ItemStatusFragment
}
colors {
...ColorFragment
}
photo {
...PhotoFragment
}
}
paymentPreference
rewardPoints
rewards {
id
localId
date
amount
status
expiryDate
redeemDate
}
missingRewardSettingCriteria
isSubBilling
deliveryNotes {
id
localId
date
customer {
...CustomerFragment
}
message
mainCategory
subCategory
status
saleId
itemId
lastUpdated
dueDate
assignee {
...UserFragment
}
photos {
...PhotoFragment
}
}
communication {
id
localId
direction
type
date
subject
staff {
...UserFragment
}
contactFlag
body
}
}
}
Variables
{
"input": CustomerInput,
"agentId": "abc123"
}
Response
{
"data": {
"createCustomer": {
"id": 4,
"localId": "4",
"name": "xyz789",
"futureAppointments": [Appointment],
"settings": Settings,
"group": Group,
"agent": Agent,
"routeHolds": [CustomerRouteHold],
"driverInstructions": "xyz789",
"preferences": [4],
"goodOnlineAccountStanding": false,
"addresses": [CustomerAddress],
"defaultAddress": CustomerAddress,
"defaultDeliveryAddress": CustomerAddress,
"isMasterDeliveryAccount": true,
"creditCardIFrameURL": "abc123",
"authenticatedCustomerSiteLink": "xyz789",
"creditCard": CreditCard,
"datesForSchedulingAppointment": [ScheduleDate],
"unpaidOrders": UnpaidOrders,
"finishedPayments": [PaymentReceipt],
"customerBookings": [CustomerBooking],
"stagingDetailedCustomerOrder": DetailedCustomerOrder,
"readyBags": [CustomerBag],
"isRouteCustomer": false,
"customerRelationship": "STORE_ONLY",
"deliveryStop": 987,
"demographic": 987,
"apiTokenForCustomer": "abc123",
"activePromotions": [Promotion],
"subscription": CustomerSubscription,
"subscriptionUsage": [SubscriptionUsage],
"kioskAccessCode": "abc123",
"email": "xyz789",
"cellPhone": "abc123",
"cellPhoneDisplay": "abc123",
"homePhone": "xyz789",
"activePhone": "xyz789",
"firstName": "xyz789",
"lastName": "xyz789",
"companyName": "abc123",
"fullName": "abc123",
"store": Store,
"customFields": [CustomerFieldValue],
"isInSignupProcess": true,
"paymentStatus": PaymentStatus,
"wardrobeCategories": [ItemCategory],
"wardrobeItems": [OrderItem],
"paymentPreference": "AUTOPAY",
"rewardPoints": 123.45,
"rewards": [Reward],
"missingRewardSettingCriteria": ["ADD_EMAIL_CRITERIA"],
"isSubBilling": true,
"deliveryNotes": [Note],
"communication": [Communication]
}
}
}
createDefaultMarketingReport
Description
Creates a default marketing report
Response
Returns a Boolean
Arguments
Name | Description |
---|---|
marketingReport - MarketingReportInput!
|
The marketing report to create |
Example
Query
mutation CreateDefaultMarketingReport($marketingReport: MarketingReportInput!) {
createDefaultMarketingReport(marketingReport: $marketingReport)
}
Variables
{"marketingReport": MarketingReportInput}
Response
{"data": {"createDefaultMarketingReport": false}}
createNotificationForEmployees
Description
Send a notification to specified employees. Requires access level: Production
Response
Returns a Boolean!
Example
Query
mutation CreateNotificationForEmployees(
$text: String!,
$employees: [ID]!
) {
createNotificationForEmployees(
text: $text,
employees: $employees
)
}
Variables
{
"text": "abc123",
"employees": ["4"]
}
Response
{"data": {"createNotificationForEmployees": false}}
createPayment
Description
Creates a payment
Response
Returns a PaymentStatus!
Arguments
Name | Description |
---|---|
input - CreatePaymentInput!
|
Example
Query
mutation CreatePayment($input: CreatePaymentInput!) {
createPayment(input: $input) {
id
localId
paymentReference
paymentStatus
}
}
Variables
{"input": CreatePaymentInput}
Response
{
"data": {
"createPayment": {
"id": "4",
"localId": 4,
"paymentReference": "abc123",
"paymentStatus": "AUTHORIZED"
}
}
}
createPhoto
Description
Creates a photo from a base64 string
Response
Returns a Photo
Arguments
Name | Description |
---|---|
input - PhotoInput!
|
Example
Query
mutation CreatePhoto($input: PhotoInput!) {
createPhoto(input: $input) {
id
localId
status
thumbnailUrl
smallUrl
largeUrl
description
}
}
Variables
{"input": PhotoInput}
Response
{
"data": {
"createPhoto": {
"id": "4",
"localId": "4",
"status": "xyz789",
"thumbnailUrl": "abc123",
"smallUrl": "xyz789",
"largeUrl": "abc123",
"description": "abc123"
}
}
}
deactivateAccount
Description
Deactivates customer account. Requires access level: Sales Clerk
Response
Returns an ID!
Example
Query
mutation DeactivateAccount(
$customerId: ID!,
$subCategoryId: ID!,
$description: String
) {
deactivateAccount(
customerId: $customerId,
subCategoryId: $subCategoryId,
description: $description
)
}
Variables
{
"customerId": "4",
"subCategoryId": 4,
"description": "abc123"
}
Response
{"data": {"deactivateAccount": 4}}
deleteMarketingBroadcast
Description
Delete a marketing broadcast.
Response
Returns an ID
Arguments
Name | Description |
---|---|
broadcastId - ID!
|
Id of the marketing broadcast to delete |
Example
Query
mutation DeleteMarketingBroadcast($broadcastId: ID!) {
deleteMarketingBroadcast(broadcastId: $broadcastId)
}
Variables
{"broadcastId": 4}
Response
{"data": {"deleteMarketingBroadcast": 4}}
deleteMarketingEmailTemplate
Description
Delete an marketing email template.
Example
Query
mutation DeleteMarketingEmailTemplate($templateId: ID!) {
deleteMarketingEmailTemplate(templateId: $templateId)
}
Variables
{"templateId": "4"}
Response
{
"data": {
"deleteMarketingEmailTemplate": "4"
}
}
deleteReviewReply
Description
Deletes a reply to a review
deleteRouteHold
Description
Delete a customer route hold. Requires access level: Sr Manager
Response
Returns an ID
Example
Query
mutation DeleteRouteHold(
$customerId: ID!,
$input: ID!
) {
deleteRouteHold(
customerId: $customerId,
input: $input
)
}
Variables
{"customerId": "4", "input": 4}
Response
{"data": {"deleteRouteHold": 4}}
deleteTaxConfigurationRule
Description
Delete a tax configuration rule. Requires access level: Sr Manager
deliverBagDeliveryAction
Description
Delivers a bag to its customer. Requires a valid Delivery station cookie
Response
Returns a CustomerStop!
Arguments
Name | Description |
---|---|
input - DeliverBagDeliveryActionInput!
|
Example
Query
mutation DeliverBagDeliveryAction($input: DeliverBagDeliveryActionInput!) {
deliverBagDeliveryAction(input: $input) {
id
localId
appointment {
id
localId
startTime
endTime
timeSlot {
...TimeSlotFragment
}
scheduledBy {
...ActorFragment
}
scheduledAt
route {
...RouteFragment
}
driverInstructions
cleaningInstructions
departments {
...FinancialDepartmentFragment
}
customer {
...CustomerFragment
}
address {
...CustomerAddressFragment
}
driver {
...UserFragment
}
regular
anytime
status
appointmentLinkId
photos {
...PhotoFragment
}
lockerCode
locationLabel
vehicleStatus {
...DeliveryVehicleStatusFragment
}
stopNumber
deliveryPhoto {
...PhotoFragment
}
}
customer {
id
localId
name
futureAppointments {
...AppointmentFragment
}
settings {
...SettingsFragment
}
group {
...GroupFragment
}
agent {
...AgentFragment
}
routeHolds {
...CustomerRouteHoldFragment
}
driverInstructions
preferences
goodOnlineAccountStanding
addresses {
...CustomerAddressFragment
}
defaultAddress {
...CustomerAddressFragment
}
defaultDeliveryAddress {
...CustomerAddressFragment
}
isMasterDeliveryAccount
creditCardIFrameURL
authenticatedCustomerSiteLink
creditCard {
...CreditCardFragment
}
datesForSchedulingAppointment {
...ScheduleDateFragment
}
unpaidOrders {
...UnpaidOrdersFragment
}
finishedPayments {
...PaymentReceiptFragment
}
customerBookings {
...CustomerBookingFragment
}
stagingDetailedCustomerOrder {
...DetailedCustomerOrderFragment
}
readyBags {
...CustomerBagFragment
}
isRouteCustomer
customerRelationship
deliveryStop
demographic
apiTokenForCustomer
activePromotions {
...PromotionFragment
}
subscription {
...CustomerSubscriptionFragment
}
subscriptionUsage {
...SubscriptionUsageFragment
}
kioskAccessCode
email
cellPhone
cellPhoneDisplay
homePhone
activePhone
firstName
lastName
companyName
fullName
store {
...StoreFragment
}
customFields {
...CustomerFieldValueFragment
}
isInSignupProcess
paymentStatus {
...PaymentStatusFragment
}
wardrobeCategories {
...ItemCategoryFragment
}
wardrobeItems {
...OrderItemFragment
}
paymentPreference
rewardPoints
rewards {
...RewardFragment
}
missingRewardSettingCriteria
isSubBilling
deliveryNotes {
...NoteFragment
}
communication {
...CommunicationFragment
}
}
orders {
id
localId
displayId
date
dueDate
deliveredDate
customer {
...CustomerFragment
}
pickupStore {
...StoreFragment
}
dropStore {
...StoreFragment
}
isPickup
isDelivery
hasChangedReturnLocation
isPaid
isPaidForDelivery
buyPrice
pieceCount
status
items {
...OrderItemFragment
}
bags {
...OrderBagFragment
}
customerProvidedDetails {
...DetailedCustomerOrderFragment
}
customerOrderStatusText
receiptLink
lastPaymentWasDeclined
}
}
}
Variables
{"input": DeliverBagDeliveryActionInput}
Response
{
"data": {
"deliverBagDeliveryAction": {
"id": "4",
"localId": 4,
"appointment": Appointment,
"customer": Customer,
"orders": [Order]
}
}
}
disconnectGoogleAccount
Description
Disconnects the Google account from the Business
Response
Returns a Boolean!
Example
Query
mutation DisconnectGoogleAccount {
disconnectGoogleAccount
}
Response
{"data": {"disconnectGoogleAccount": true}}
getAdminApiToken
Description
Create or get an existing JWT admin API Token. This token does not expire unless revoked. Requires access level: Admin
Response
Returns a String!
Example
Query
mutation GetAdminApiToken {
getAdminApiToken
}
Response
{"data": {"getAdminApiToken": "abc123"}}
getBeefreeApiToken
Description
Create or get an existing Beefree API Token. Requires access level: Admin
Response
Returns a String!
Example
Query
mutation GetBeefreeApiToken {
getBeefreeApiToken
}
Response
{"data": {"getBeefreeApiToken": "abc123"}}
loadBagDeliveryAction
Description
Loads a bag into a delivery van. Requires a valid Delivery station cookie
Response
Returns a CustomerStop!
Arguments
Name | Description |
---|---|
input - LoadBagDeliveryActionInput!
|
Example
Query
mutation LoadBagDeliveryAction($input: LoadBagDeliveryActionInput!) {
loadBagDeliveryAction(input: $input) {
id
localId
appointment {
id
localId
startTime
endTime
timeSlot {
...TimeSlotFragment
}
scheduledBy {
...ActorFragment
}
scheduledAt
route {
...RouteFragment
}
driverInstructions
cleaningInstructions
departments {
...FinancialDepartmentFragment
}
customer {
...CustomerFragment
}
address {
...CustomerAddressFragment
}
driver {
...UserFragment
}
regular
anytime
status
appointmentLinkId
photos {
...PhotoFragment
}
lockerCode
locationLabel
vehicleStatus {
...DeliveryVehicleStatusFragment
}
stopNumber
deliveryPhoto {
...PhotoFragment
}
}
customer {
id
localId
name
futureAppointments {
...AppointmentFragment
}
settings {
...SettingsFragment
}
group {
...GroupFragment
}
agent {
...AgentFragment
}
routeHolds {
...CustomerRouteHoldFragment
}
driverInstructions
preferences
goodOnlineAccountStanding
addresses {
...CustomerAddressFragment
}
defaultAddress {
...CustomerAddressFragment
}
defaultDeliveryAddress {
...CustomerAddressFragment
}
isMasterDeliveryAccount
creditCardIFrameURL
authenticatedCustomerSiteLink
creditCard {
...CreditCardFragment
}
datesForSchedulingAppointment {
...ScheduleDateFragment
}
unpaidOrders {
...UnpaidOrdersFragment
}
finishedPayments {
...PaymentReceiptFragment
}
customerBookings {
...CustomerBookingFragment
}
stagingDetailedCustomerOrder {
...DetailedCustomerOrderFragment
}
readyBags {
...CustomerBagFragment
}
isRouteCustomer
customerRelationship
deliveryStop
demographic
apiTokenForCustomer
activePromotions {
...PromotionFragment
}
subscription {
...CustomerSubscriptionFragment
}
subscriptionUsage {
...SubscriptionUsageFragment
}
kioskAccessCode
email
cellPhone
cellPhoneDisplay
homePhone
activePhone
firstName
lastName
companyName
fullName
store {
...StoreFragment
}
customFields {
...CustomerFieldValueFragment
}
isInSignupProcess
paymentStatus {
...PaymentStatusFragment
}
wardrobeCategories {
...ItemCategoryFragment
}
wardrobeItems {
...OrderItemFragment
}
paymentPreference
rewardPoints
rewards {
...RewardFragment
}
missingRewardSettingCriteria
isSubBilling
deliveryNotes {
...NoteFragment
}
communication {
...CommunicationFragment
}
}
orders {
id
localId
displayId
date
dueDate
deliveredDate
customer {
...CustomerFragment
}
pickupStore {
...StoreFragment
}
dropStore {
...StoreFragment
}
isPickup
isDelivery
hasChangedReturnLocation
isPaid
isPaidForDelivery
buyPrice
pieceCount
status
items {
...OrderItemFragment
}
bags {
...OrderBagFragment
}
customerProvidedDetails {
...DetailedCustomerOrderFragment
}
customerOrderStatusText
receiptLink
lastPaymentWasDeclined
}
}
}
Variables
{"input": LoadBagDeliveryActionInput}
Response
{
"data": {
"loadBagDeliveryAction": {
"id": "4",
"localId": "4",
"appointment": Appointment,
"customer": Customer,
"orders": [Order]
}
}
}
mailgunValidateEmail
Description
Validates an email address using the Mailgun API
mpKioskSendPaymentLink
Description
Sends payment link to customer for ready & unpaid orders
pickupOrdersHeimacKiosk
Description
Pickup orders through Heimac Kiosk
Example
Query
mutation PickupOrdersHeimacKiosk($barcodes: [String]!) {
pickupOrdersHeimacKiosk(barcodes: $barcodes)
}
Variables
{"barcodes": ["abc123"]}
Response
{"data": {"pickupOrdersHeimacKiosk": false}}
prepareChatUser
Description
To be called before connecting to chat socket to ensure appropriate data exists
Response
Returns a Boolean!
Example
Query
mutation PrepareChatUser {
prepareChatUser
}
Response
{"data": {"prepareChatUser": false}}
prepareKioskTicketsForPayment
Description
Extracts finished tickets to new orders to allow for partial payment and pickup from a 24/7 kiosk. Returns the number of splits performed.
putAlertSubType
Description
Creates or updates an Alert Sub Type
Response
Returns an AlertSubType
Arguments
Name | Description |
---|---|
input - AlertSubTypeInput!
|
Example
Query
mutation PutAlertSubType($input: AlertSubTypeInput!) {
putAlertSubType(input: $input) {
id
localId
masterTypeId
name
prefTicket
prefCustomer
prefDelivery
prefPressing
prefInspection
prefSpotting
prefAlteration
prefWashing
mpOffloadArm
active
}
}
Variables
{"input": AlertSubTypeInput}
Response
{
"data": {
"putAlertSubType": {
"id": "4",
"localId": "4",
"masterTypeId": 4,
"name": "abc123",
"prefTicket": true,
"prefCustomer": true,
"prefDelivery": true,
"prefPressing": true,
"prefInspection": false,
"prefSpotting": false,
"prefAlteration": false,
"prefWashing": true,
"mpOffloadArm": "xyz789",
"active": false
}
}
}
putAppointment
Description
Create or update an Appointment. Requires access level: Customer or Admin
Response
Returns an Appointment!
Arguments
Name | Description |
---|---|
input - AppointmentInput!
|
An Appointment to create or update |
isPickup - Boolean
|
Must be set if scheduling both pickup and delivery |
Example
Query
mutation PutAppointment(
$input: AppointmentInput!,
$isPickup: Boolean
) {
putAppointment(
input: $input,
isPickup: $isPickup
) {
id
localId
startTime
endTime
timeSlot {
id
localId
start
end
routeId
}
scheduledBy {
id
localId
name
}
scheduledAt
route {
id
localId
agentId
agentType
name
merchant {
...MerchantFragment
}
isStripeEnabled
type
isSubRoute
masterRouteId
pickupCutoffHours
deliveryCutoffHours
autoOptimize
}
driverInstructions
cleaningInstructions
departments {
id
localId
name
showInCustomerScheduler
}
customer {
id
localId
name
futureAppointments {
...AppointmentFragment
}
settings {
...SettingsFragment
}
group {
...GroupFragment
}
agent {
...AgentFragment
}
routeHolds {
...CustomerRouteHoldFragment
}
driverInstructions
preferences
goodOnlineAccountStanding
addresses {
...CustomerAddressFragment
}
defaultAddress {
...CustomerAddressFragment
}
defaultDeliveryAddress {
...CustomerAddressFragment
}
isMasterDeliveryAccount
creditCardIFrameURL
authenticatedCustomerSiteLink
creditCard {
...CreditCardFragment
}
datesForSchedulingAppointment {
...ScheduleDateFragment
}
unpaidOrders {
...UnpaidOrdersFragment
}
finishedPayments {
...PaymentReceiptFragment
}
customerBookings {
...CustomerBookingFragment
}
stagingDetailedCustomerOrder {
...DetailedCustomerOrderFragment
}
readyBags {
...CustomerBagFragment
}
isRouteCustomer
customerRelationship
deliveryStop
demographic
apiTokenForCustomer
activePromotions {
...PromotionFragment
}
subscription {
...CustomerSubscriptionFragment
}
subscriptionUsage {
...SubscriptionUsageFragment
}
kioskAccessCode
email
cellPhone
cellPhoneDisplay
homePhone
activePhone
firstName
lastName
companyName
fullName
store {
...StoreFragment
}
customFields {
...CustomerFieldValueFragment
}
isInSignupProcess
paymentStatus {
...PaymentStatusFragment
}
wardrobeCategories {
...ItemCategoryFragment
}
wardrobeItems {
...OrderItemFragment
}
paymentPreference
rewardPoints
rewards {
...RewardFragment
}
missingRewardSettingCriteria
isSubBilling
deliveryNotes {
...NoteFragment
}
communication {
...CommunicationFragment
}
}
address {
id
localId
name
streetAddress
streetAddress2
city
state
zip
country
latitude
longitude
skipVerification
manualLocation
note
photo {
...PhotoFragment
}
}
driver {
id
localId
name
firstName
}
regular
anytime
status
appointmentLinkId
photos {
id
localId
status
thumbnailUrl
smallUrl
largeUrl
description
}
lockerCode
locationLabel
vehicleStatus {
id
localId
driverName
driverPhone
lastPositionAt
currentLatitude
currentLongitude
stopsLeft
}
stopNumber
deliveryPhoto {
id
localId
status
thumbnailUrl
smallUrl
largeUrl
description
}
}
}
Variables
{"input": AppointmentInput, "isPickup": true}
Response
{
"data": {
"putAppointment": {
"id": 4,
"localId": "4",
"startTime": "2007-12-03T10:15:30Z",
"endTime": "2007-12-03T10:15:30Z",
"timeSlot": TimeSlot,
"scheduledBy": Actor,
"scheduledAt": "2007-12-03T10:15:30Z",
"route": Route,
"driverInstructions": "abc123",
"cleaningInstructions": "xyz789",
"departments": [FinancialDepartment],
"customer": Customer,
"address": CustomerAddress,
"driver": User,
"regular": true,
"anytime": true,
"status": "incomplete",
"appointmentLinkId": 4,
"photos": [Photo],
"lockerCode": 4,
"locationLabel": "4",
"vehicleStatus": DeliveryVehicleStatus,
"stopNumber": 987,
"deliveryPhoto": Photo
}
}
}
putBrand
Description
Update or Create brand. Requires access level: Sr Manager
Response
Returns a Brand!
Arguments
Name | Description |
---|---|
input - BrandInput!
|
A brand to create/update |
Example
Query
mutation PutBrand($input: BrandInput!) {
putBrand(input: $input) {
id
localId
name
brandId
settings {
id
localId
mainDeliveryStore {
...StoreFragment
}
mainStore {
...StoreFragment
}
quickDetailingItemTypes {
...ItemTypeFragment
}
defaultPaymentMethod {
...PaymentMethodFragment
}
acceptedPaymentMethods {
...PaymentMethodFragment
}
logo
receiptLogo
POSNewOrderTabs
deliveryNewOrderTabs
statementGenerationDays
invoiceGenerationDays
acceptedCards
automaticSurcharges {
...AutomaticSurchargeFragment
}
detailingAttributes
marketingCampaigns {
...CampaignSettingFragment
}
welcomeNewCustomerCampaign {
...WelcomeNewCustomerCampaignFragment
}
thankYouCampaign {
...ThankYouCampaignFragment
}
arPastDueCampaign {
...ArPastDueCampaignFragment
}
counterToRouteCampaign {
...CounterToRouteCampaignFragment
}
monthlyNewsletterCampaign {
...MonthlyNewsletterCampaignFragment
}
happyAnniversaryCampaign {
...HappyAnniversaryCampaignFragment
}
inventoryReminderCampaign {
...InventoryReminderCampaignFragment
}
oneAndDoneCampaign {
...OneAndDoneCampaignFragment
}
marketingByDepartmentCampaign {
...MarketingByDepartmentCampaignFragment
}
thankYouTopSpendersCampaign {
...ThankYouTopSpendersCampaignFragment
}
newCustomerRetentionCampaign {
...NewCustomerRetentionCampaignFragment
}
customerSignupNoOrdersCampaign {
...CustomerSignupNoOrdersCampaignFragment
}
noOrdersSinceLastCampaign {
...NoOrdersSinceLastCampaignFragment
}
updateYourInformationCampaign {
...UpdateYourInformationCampaignFragment
}
quarterlyComforterCampaign {
...QuarterlyComforterCampaignFragment
}
thankYouNewReviewCampaign {
...ThankYouNewReviewCampaignFragment
}
lostBigCustomerCampaign {
...LostBigCustomerCampaignFragment
}
reviewGenerationCampaign {
...ReviewGenerationCampaignFragment
}
customCampaign {
...CustomCampaignFragment
}
snapshotEmailList {
...SnapshotEmailListFragment
}
businessName
dateFormat
countryCode
timeZone
locale
contactAddressLine
contactAddressState
contactAddressCity
contactAddressZip
contactPhone
logoUrl
noProductionDays
noDeliveryDays
specialHolidays
openDetailingWithCategory
customerFacingDomain
customSignupUrl
contactEmail
twilioAccountSid
twilioAuthToken
twilioPhone
twilioPhoneLookup
whatsAppEnabled
sendSmsOptOutInformation
userNameOnEmailSubject
payableEntity
emailFooter
lockerBuildingCode
communicationTemplatesId
vcardTemplate
newPickupScheduledInstructions
sendAutomatedMessages
sendStatementEmails
signupEmailRequired
signupGroupRequired
signupAutofillCity
signupAddressRequired
signupPhoneRequired
allowOrderSplitting
groupOnDetailingSplit
offerStoreDelivery
offerDeliverySchedulingInText
useStoreZipCodeForTax
summarizeByBillingCode
showSalesTaxBreakdownForStatementOrders
sumOrderTotalOnStatements
simplifiedPaymentReceipt
cashTotalRounding
hasLogo
isHotel
isHotelProcessor
isRoomGroupHotel
isLockers
isValet
isWholesaler
pickupUnpaidOrders
pressOnlyDiscount
scheduleWillCallAtAssembly
scheduleWillCallOnDueDate
dontIncludeOrdersInDeliveryListBeforeDueDate
geoFencingEnabled
allowSubDeliveryAccountScheduling
allowSubAccountToTriggerMasterDelivery
sendAutopayReceipts
sendDeliveryAppointmentConfirmation
showDeliveryNotPaid
deliveryAppLoadListSortDescending
requireSignatureOnDelivery
requirePhotoOnDelivery
showSubRouteForDeliveryStop
genericLaundryBagMode
rushNotificationsHour
websiteDisplayText
shouldShowWebsiteOnReceipts
showAgentOnBagTag
assemblyEvenOnly
voiceAssemblyEnabled
inspectPriceAtAssembly
assemblyPrintFinancialReceiptForDeliveryCustomer
assemblyAlwaysPrintFinancialReceipt
printFinancialTicketOutsideAssembly
keepRackAssignmentOnOrderSplit
complexLotControl
overrideDueDateWithNextDelivery
autoSelectDeliveryReturnLocation
defaultDetailingTab
autoOpenAnnotationType
requireInvoiceInDetailing
displayTooManyDetailedItemsWarning
assemblyIcon
alignAssemblyIcon
newCustomerTicketIcon
newCustomerBottomTicketIcon
customerNameOnTicketBottom
pieceCountOnTicketBottom
customerPhoneOnTicket
showRoomInfoBelowAddress
laundryLicense
summarizedItemTable
showLogoOnReceipts
logoOnReceiptHeight
receiptLogoName
showPriceOnAssembly
paymentReceiptShowSignatureLine
receiptsNameShort
newLocationOnTicket
showRouteOfSameDayDelivery
itemDetailsOnTicket
itemDetailsOnOrderReceipt
newOrderPrintCount
printRetailReceipts
printDropTicketOnOrderSplit
printTicketOnOrderCloseCount
noStoreContactInfoOnReceipts
noPricingOnOrderReceipts
receiptsFooter
thermalReceiptFooter
ticketReceiptFooter
showEmailOnReceipts
showWebsiteOnReceipts
invoicePayableLine
invoiceTerms
isRestorationAccount
offerDemandDelivery
autoAddNewCustomerToWillCallRoute
groupItemDetailsByRoomNumber
merchantBatchCloseTime
saveCardsOnFile
amexSeparately
maxAutopayAmount
maxPaymentAmountWarning
autopayTerms
autopayStatements
autopayBatchStrategy
invoiceDueDays
consolidateInvoiceItemDetails
invoiceShowOrderDetails
invoiceHideOrderInfo
showDateOnStatement
callStatementInvoice
activitySummaryEnabled
attachPDFInStatementEmails
rewardsProgramEnabled
rewardsPointModifier
rewardsCurrencyModifier
rewardsConversionRequirement
rewardsRedeemAutomatically
rewardsEmailRequired
rewardsPhoneRequired
rewardsAddressRequired
rewardsCreditCardRequired
welcomeNotificationDisabled
autoTicketOnCustomerRegistration
autoTicketOnScheduledDelivery
sendCustomerUpdatedCCNotification
allowScheduleBothPickupAndDelivery
limitScheduleDeliveryToClosestRoute
allowRouteRegularCustomersToScheduleOnDemand
allowSameDaySchedulingEvenIfRouteStarted
experimentalPhotoUserExperienceOnWebsiteScheduler
priceListUpdateOrdersCondition
routeAgentPriority
commonOrdersAgent
isMailOrderPickups
lockerDropBinPickupMode
showYesRepliesInComm
autoReplyToYesRepliesInComm
customerWebsiteClothesTrackerTabEnabled
customerWebsiteWardrobeTabEnabled
customerWebsitePaymentTabEnabled
metalprogettiAssemblyLabelTemplate
metalprogettiSendRackSpaceToStorage
rushOrderSurcharge
rushOrderSurchargeTier2
sendNewOrderNotificationOnEveryVisit
includeReceiptInNewOrderNotification
printTempTagsForBarcodedItems
alwaysGenerateTemporaryBarcodes
zebraPrinterTemplate
epsonPrinterTemplate
forceOnlyBagFieldInput
detailingWithoutBarcodes
printLabelsWhenDuplicating
metalprogettiStripCharacters
autoDetailingEnabled
minItemBarcodeLength
maxItemBarcodeLength
quotesDeletionTimeFrame
minWashNFoldPrice
minWashNFoldWeight
washAndFoldWeightStations
departmentSpecificOrdersEnabled
manualPickupRestricted
displayDueDateInProductionModules
filterDetailingByItemTypes
automaticallyFilterReportsToEmployeesStore
payrollPeriod
payrollLastCloseDate
payrollFirstHalfCloseDate
payrollLastHalfCloseDate
payrollCloseDate
workweekStart
hoursUntilWeeklyOvertime
hoursUntilDailyOvertime
hoursUntilDailyDoubleTime
hoursUntilWeeklyNotification
hoursUntilDailyNotification
preventClockInBeforeTime
californiaOvertimeRules
promptForClockInOnLogin
overrideTimeClockWithUserDepartment
allowMobileAppClockIn
disableOverTimeNotifications
overnightClockOut
inventorySystemEnabled
inventorySystemEnabledProduction
permissionManageSystemSettings
permissionManageMarketing
permissionManageStationSettings
permissionAccessCustomerCredits
permissionAddCustomerDiscount
permissionAccessCustomerModule
permissionAccessDeliveryModule
permissionAccessAssemblyModule
permissionAccessSpottingModule
permissionAccessAlterAndRepairModule
permissionAccessAccountsReceivableModule
permissionAccessPressingModule
permissionAccessPriceListModule
permissionAccessCashBoxModule
permissionAccessTimeclockModule
permissionAccessPerformanceModule
permissionAccessWashAndFoldModule
permissionAccessInspectionModule
permissionAccessItemBaggingModule
permissionAccessFoldingAndBaggingModule
permissionAccessMessagesModule
permissionAccessRackingModule
permissionAccessRouteManagerModule
permissionAccessReportsModule
permissionAccessAdminReportsModule
permissionAccessIssueTrackerModule
permissionAccessSupportModule
permissionAccessEmployeeSettingsModule
permissionAccessBulkMarkinModule
permissionManualPriceEdits
permissionSpecialCareAfterOrderClose
permissionResetOrder
permissionRemoveItems
showStrikeThroughWhenReturned
usePieceCountTotalsOnTicket
taxHeaderString
includeTaxInPrice
dropDateOnAssemblyTicket
displayDepartmentOnTicket
displayCategoryOnTicket
displayPriceOnPickupSlip
useStoreSpecificOrderSequenceNumbers
showStoreSpecificOrderNumberOnTop
saleItemLedgerTrackingEnabled
inOnboarding
noCcCustomerText
pickupReminderOfferCancellations
pickupReminderEnabledForInactiveCustomers
offersRetailDelivery
regRouteQuestionChecked
pickupReminderHour24
pickupReminderIncludeDeliveries
deliveryCompleteConfirmation
defaultCustomerPaymentType
promptOnCardAvsFailure
minCardChargeAmount
defaultCustomerPriceList
cardSurcharging
cardSurchargeFixedPercentage
organizationNumber
fullstoryEnabled
initializedInferred
cashBoxMode
cashBoxModeProduction
displayExtendedStationReceiptInfo
displayExtendedZReportInfo
twilioMarketingNumber
campaignsEnabled
broadcastsEnabled
reviewModuleEnabled
defaultLanguage
weightUnit
segmentWriteKey
socialId
twilioReviewNumber
}
agents {
id
localId
name
agentId
agentType
isStripeEnabled
merchant {
...MerchantFragment
}
}
isWalled
}
}
Variables
{"input": BrandInput}
Response
{
"data": {
"putBrand": {
"id": 4,
"localId": "4",
"name": "xyz789",
"brandId": "xyz789",
"settings": Settings,
"agents": [Agent],
"isWalled": false
}
}
}
putChatRoom
Description
Create or update a chat room. Requires access level: Sr Manager
Response
Returns a ChatRoom!
Arguments
Name | Description |
---|---|
input - ChatRoomInput!
|
A chat room to create/update |
Example
Query
mutation PutChatRoom($input: ChatRoomInput!) {
putChatRoom(input: $input) {
id
localId
name
specialRoomType
isPrivate
userIds
agents
usersAllowedToPost
isNotificationsRoom
isRequired
chatMessages {
id
localId
roomId
userId
text
createDate
}
}
}
Variables
{"input": ChatRoomInput}
Response
{
"data": {
"putChatRoom": {
"id": 4,
"localId": "4",
"name": "abc123",
"specialRoomType": "xyz789",
"isPrivate": false,
"userIds": ["4"],
"agents": ["4"],
"usersAllowedToPost": ["4"],
"isNotificationsRoom": false,
"isRequired": true,
"chatMessages": [ChatMessage]
}
}
}
putContactLogEmail
Description
Sends a message to the customer using the contact log. Requires access level: Customer or Admin
Response
Returns a Boolean
Example
Query
mutation PutContactLogEmail(
$customerId: ID!,
$subject: String,
$message: String
) {
putContactLogEmail(
customerId: $customerId,
subject: $subject,
message: $message
)
}
Variables
{
"customerId": "4",
"subject": "abc123",
"message": "xyz789"
}
Response
{"data": {"putContactLogEmail": false}}
putCreditCard
Description
Updates a customer's credit card. Responds with 'added' or 'updated'. For Stripe only id and customerId is mandatory. Requires access level: Customer or Admin
Response
Returns a String!
Arguments
Name | Description |
---|---|
customerId - ID!
|
A customer id |
id - String!
|
A credit card ID |
type - CreditCardTypeEnum
|
A credit card type |
last4 - Int
|
Last 4 digits of the credit card number |
expiryMonth - Int
|
Month of expiry (1-12) |
expiryYear - Int
|
Year of expiry in 4 digits |
addedBy - CreditCardAddedByEnum
|
By whom the card was added, defaults to customer |
Example
Query
mutation PutCreditCard(
$customerId: ID!,
$id: String!,
$type: CreditCardTypeEnum,
$last4: Int,
$expiryMonth: Int,
$expiryYear: Int,
$addedBy: CreditCardAddedByEnum
) {
putCreditCard(
customerId: $customerId,
id: $id,
type: $type,
last4: $last4,
expiryMonth: $expiryMonth,
expiryYear: $expiryYear,
addedBy: $addedBy
)
}
Variables
{
"customerId": "4",
"id": "abc123",
"type": "visa",
"last4": 987,
"expiryMonth": 123,
"expiryYear": 123,
"addedBy": "customer"
}
Response
{"data": {"putCreditCard": "abc123"}}
putCustomer
Description
Updates a customer. Requires access level: Customer or Admin
Response
Returns a Customer
Arguments
Name | Description |
---|---|
customerId - ID
|
A customer id (optional, defaults to logged in user) |
input - CustomerInput!
|
Customer fields to update |
promotionToApply - String
|
A coupon code to apply to the customer |
Example
Query
mutation PutCustomer(
$customerId: ID,
$input: CustomerInput!,
$promotionToApply: String
) {
putCustomer(
customerId: $customerId,
input: $input,
promotionToApply: $promotionToApply
) {
id
localId
name
futureAppointments {
id
localId
startTime
endTime
timeSlot {
...TimeSlotFragment
}
scheduledBy {
...ActorFragment
}
scheduledAt
route {
...RouteFragment
}
driverInstructions
cleaningInstructions
departments {
...FinancialDepartmentFragment
}
customer {
...CustomerFragment
}
address {
...CustomerAddressFragment
}
driver {
...UserFragment
}
regular
anytime
status
appointmentLinkId
photos {
...PhotoFragment
}
lockerCode
locationLabel
vehicleStatus {
...DeliveryVehicleStatusFragment
}
stopNumber
deliveryPhoto {
...PhotoFragment
}
}
settings {
id
localId
mainDeliveryStore {
...StoreFragment
}
mainStore {
...StoreFragment
}
quickDetailingItemTypes {
...ItemTypeFragment
}
defaultPaymentMethod {
...PaymentMethodFragment
}
acceptedPaymentMethods {
...PaymentMethodFragment
}
logo
receiptLogo
POSNewOrderTabs
deliveryNewOrderTabs
statementGenerationDays
invoiceGenerationDays
acceptedCards
automaticSurcharges {
...AutomaticSurchargeFragment
}
detailingAttributes
marketingCampaigns {
...CampaignSettingFragment
}
welcomeNewCustomerCampaign {
...WelcomeNewCustomerCampaignFragment
}
thankYouCampaign {
...ThankYouCampaignFragment
}
arPastDueCampaign {
...ArPastDueCampaignFragment
}
counterToRouteCampaign {
...CounterToRouteCampaignFragment
}
monthlyNewsletterCampaign {
...MonthlyNewsletterCampaignFragment
}
happyAnniversaryCampaign {
...HappyAnniversaryCampaignFragment
}
inventoryReminderCampaign {
...InventoryReminderCampaignFragment
}
oneAndDoneCampaign {
...OneAndDoneCampaignFragment
}
marketingByDepartmentCampaign {
...MarketingByDepartmentCampaignFragment
}
thankYouTopSpendersCampaign {
...ThankYouTopSpendersCampaignFragment
}
newCustomerRetentionCampaign {
...NewCustomerRetentionCampaignFragment
}
customerSignupNoOrdersCampaign {
...CustomerSignupNoOrdersCampaignFragment
}
noOrdersSinceLastCampaign {
...NoOrdersSinceLastCampaignFragment
}
updateYourInformationCampaign {
...UpdateYourInformationCampaignFragment
}
quarterlyComforterCampaign {
...QuarterlyComforterCampaignFragment
}
thankYouNewReviewCampaign {
...ThankYouNewReviewCampaignFragment
}
lostBigCustomerCampaign {
...LostBigCustomerCampaignFragment
}
reviewGenerationCampaign {
...ReviewGenerationCampaignFragment
}
customCampaign {
...CustomCampaignFragment
}
snapshotEmailList {
...SnapshotEmailListFragment
}
businessName
dateFormat
countryCode
timeZone
locale
contactAddressLine
contactAddressState
contactAddressCity
contactAddressZip
contactPhone
logoUrl
noProductionDays
noDeliveryDays
specialHolidays
openDetailingWithCategory
customerFacingDomain
customSignupUrl
contactEmail
twilioAccountSid
twilioAuthToken
twilioPhone
twilioPhoneLookup
whatsAppEnabled
sendSmsOptOutInformation
userNameOnEmailSubject
payableEntity
emailFooter
lockerBuildingCode
communicationTemplatesId
vcardTemplate
newPickupScheduledInstructions
sendAutomatedMessages
sendStatementEmails
signupEmailRequired
signupGroupRequired
signupAutofillCity
signupAddressRequired
signupPhoneRequired
allowOrderSplitting
groupOnDetailingSplit
offerStoreDelivery
offerDeliverySchedulingInText
useStoreZipCodeForTax
summarizeByBillingCode
showSalesTaxBreakdownForStatementOrders
sumOrderTotalOnStatements
simplifiedPaymentReceipt
cashTotalRounding
hasLogo
isHotel
isHotelProcessor
isRoomGroupHotel
isLockers
isValet
isWholesaler
pickupUnpaidOrders
pressOnlyDiscount
scheduleWillCallAtAssembly
scheduleWillCallOnDueDate
dontIncludeOrdersInDeliveryListBeforeDueDate
geoFencingEnabled
allowSubDeliveryAccountScheduling
allowSubAccountToTriggerMasterDelivery
sendAutopayReceipts
sendDeliveryAppointmentConfirmation
showDeliveryNotPaid
deliveryAppLoadListSortDescending
requireSignatureOnDelivery
requirePhotoOnDelivery
showSubRouteForDeliveryStop
genericLaundryBagMode
rushNotificationsHour
websiteDisplayText
shouldShowWebsiteOnReceipts
showAgentOnBagTag
assemblyEvenOnly
voiceAssemblyEnabled
inspectPriceAtAssembly
assemblyPrintFinancialReceiptForDeliveryCustomer
assemblyAlwaysPrintFinancialReceipt
printFinancialTicketOutsideAssembly
keepRackAssignmentOnOrderSplit
complexLotControl
overrideDueDateWithNextDelivery
autoSelectDeliveryReturnLocation
defaultDetailingTab
autoOpenAnnotationType
requireInvoiceInDetailing
displayTooManyDetailedItemsWarning
assemblyIcon
alignAssemblyIcon
newCustomerTicketIcon
newCustomerBottomTicketIcon
customerNameOnTicketBottom
pieceCountOnTicketBottom
customerPhoneOnTicket
showRoomInfoBelowAddress
laundryLicense
summarizedItemTable
showLogoOnReceipts
logoOnReceiptHeight
receiptLogoName
showPriceOnAssembly
paymentReceiptShowSignatureLine
receiptsNameShort
newLocationOnTicket
showRouteOfSameDayDelivery
itemDetailsOnTicket
itemDetailsOnOrderReceipt
newOrderPrintCount
printRetailReceipts
printDropTicketOnOrderSplit
printTicketOnOrderCloseCount
noStoreContactInfoOnReceipts
noPricingOnOrderReceipts
receiptsFooter
thermalReceiptFooter
ticketReceiptFooter
showEmailOnReceipts
showWebsiteOnReceipts
invoicePayableLine
invoiceTerms
isRestorationAccount
offerDemandDelivery
autoAddNewCustomerToWillCallRoute
groupItemDetailsByRoomNumber
merchantBatchCloseTime
saveCardsOnFile
amexSeparately
maxAutopayAmount
maxPaymentAmountWarning
autopayTerms
autopayStatements
autopayBatchStrategy
invoiceDueDays
consolidateInvoiceItemDetails
invoiceShowOrderDetails
invoiceHideOrderInfo
showDateOnStatement
callStatementInvoice
activitySummaryEnabled
attachPDFInStatementEmails
rewardsProgramEnabled
rewardsPointModifier
rewardsCurrencyModifier
rewardsConversionRequirement
rewardsRedeemAutomatically
rewardsEmailRequired
rewardsPhoneRequired
rewardsAddressRequired
rewardsCreditCardRequired
welcomeNotificationDisabled
autoTicketOnCustomerRegistration
autoTicketOnScheduledDelivery
sendCustomerUpdatedCCNotification
allowScheduleBothPickupAndDelivery
limitScheduleDeliveryToClosestRoute
allowRouteRegularCustomersToScheduleOnDemand
allowSameDaySchedulingEvenIfRouteStarted
experimentalPhotoUserExperienceOnWebsiteScheduler
priceListUpdateOrdersCondition
routeAgentPriority
commonOrdersAgent
isMailOrderPickups
lockerDropBinPickupMode
showYesRepliesInComm
autoReplyToYesRepliesInComm
customerWebsiteClothesTrackerTabEnabled
customerWebsiteWardrobeTabEnabled
customerWebsitePaymentTabEnabled
metalprogettiAssemblyLabelTemplate
metalprogettiSendRackSpaceToStorage
rushOrderSurcharge
rushOrderSurchargeTier2
sendNewOrderNotificationOnEveryVisit
includeReceiptInNewOrderNotification
printTempTagsForBarcodedItems
alwaysGenerateTemporaryBarcodes
zebraPrinterTemplate
epsonPrinterTemplate
forceOnlyBagFieldInput
detailingWithoutBarcodes
printLabelsWhenDuplicating
metalprogettiStripCharacters
autoDetailingEnabled
minItemBarcodeLength
maxItemBarcodeLength
quotesDeletionTimeFrame
minWashNFoldPrice
minWashNFoldWeight
washAndFoldWeightStations
departmentSpecificOrdersEnabled
manualPickupRestricted
displayDueDateInProductionModules
filterDetailingByItemTypes
automaticallyFilterReportsToEmployeesStore
payrollPeriod
payrollLastCloseDate
payrollFirstHalfCloseDate
payrollLastHalfCloseDate
payrollCloseDate
workweekStart
hoursUntilWeeklyOvertime
hoursUntilDailyOvertime
hoursUntilDailyDoubleTime
hoursUntilWeeklyNotification
hoursUntilDailyNotification
preventClockInBeforeTime
californiaOvertimeRules
promptForClockInOnLogin
overrideTimeClockWithUserDepartment
allowMobileAppClockIn
disableOverTimeNotifications
overnightClockOut
inventorySystemEnabled
inventorySystemEnabledProduction
permissionManageSystemSettings
permissionManageMarketing
permissionManageStationSettings
permissionAccessCustomerCredits
permissionAddCustomerDiscount
permissionAccessCustomerModule
permissionAccessDeliveryModule
permissionAccessAssemblyModule
permissionAccessSpottingModule
permissionAccessAlterAndRepairModule
permissionAccessAccountsReceivableModule
permissionAccessPressingModule
permissionAccessPriceListModule
permissionAccessCashBoxModule
permissionAccessTimeclockModule
permissionAccessPerformanceModule
permissionAccessWashAndFoldModule
permissionAccessInspectionModule
permissionAccessItemBaggingModule
permissionAccessFoldingAndBaggingModule
permissionAccessMessagesModule
permissionAccessRackingModule
permissionAccessRouteManagerModule
permissionAccessReportsModule
permissionAccessAdminReportsModule
permissionAccessIssueTrackerModule
permissionAccessSupportModule
permissionAccessEmployeeSettingsModule
permissionAccessBulkMarkinModule
permissionManualPriceEdits
permissionSpecialCareAfterOrderClose
permissionResetOrder
permissionRemoveItems
showStrikeThroughWhenReturned
usePieceCountTotalsOnTicket
taxHeaderString
includeTaxInPrice
dropDateOnAssemblyTicket
displayDepartmentOnTicket
displayCategoryOnTicket
displayPriceOnPickupSlip
useStoreSpecificOrderSequenceNumbers
showStoreSpecificOrderNumberOnTop
saleItemLedgerTrackingEnabled
inOnboarding
noCcCustomerText
pickupReminderOfferCancellations
pickupReminderEnabledForInactiveCustomers
offersRetailDelivery
regRouteQuestionChecked
pickupReminderHour24
pickupReminderIncludeDeliveries
deliveryCompleteConfirmation
defaultCustomerPaymentType
promptOnCardAvsFailure
minCardChargeAmount
defaultCustomerPriceList
cardSurcharging
cardSurchargeFixedPercentage
organizationNumber
fullstoryEnabled
initializedInferred
cashBoxMode
cashBoxModeProduction
displayExtendedStationReceiptInfo
displayExtendedZReportInfo
twilioMarketingNumber
campaignsEnabled
broadcastsEnabled
reviewModuleEnabled
defaultLanguage
weightUnit
segmentWriteKey
socialId
twilioReviewNumber
}
group {
id
localId
agentId
agentType
name
merchant {
...MerchantFragment
}
isStripeEnabled
hasOwnAgent
isGroupStop
isMasterBilling
customers {
...CustomerFragment
}
}
agent {
id
localId
name
agentId
agentType
isStripeEnabled
merchant {
...MerchantFragment
}
}
routeHolds {
id
localId
startDate
endDate
}
driverInstructions
preferences
goodOnlineAccountStanding
addresses {
id
localId
name
streetAddress
streetAddress2
city
state
zip
country
latitude
longitude
skipVerification
manualLocation
note
photo {
...PhotoFragment
}
}
defaultAddress {
id
localId
name
streetAddress
streetAddress2
city
state
zip
country
latitude
longitude
skipVerification
manualLocation
note
photo {
...PhotoFragment
}
}
defaultDeliveryAddress {
id
localId
name
streetAddress
streetAddress2
city
state
zip
country
latitude
longitude
skipVerification
manualLocation
note
photo {
...PhotoFragment
}
}
isMasterDeliveryAccount
creditCardIFrameURL
authenticatedCustomerSiteLink
creditCard {
id
localId
type
last4
expm
expy
status {
...CreditCardStatusFragment
}
}
datesForSchedulingAppointment {
id
localId
date
timeSlots {
...TimeSlotFragment
}
}
unpaidOrders {
id
localId
orders {
...OrderFragment
}
duePayment {
...DuePaymentFragment
}
}
finishedPayments {
id
localId
total
date
receiptLink
}
customerBookings {
id
localId
pickupAppointment {
...AppointmentFragment
}
deliveryAppointment {
...AppointmentFragment
}
detailedCustomerOrder {
...DetailedCustomerOrderFragment
}
orders {
...OrderFragment
}
pickupDateDisplay
deliveryDateDisplay
pickupDateTitle
deliveryDateTitle
statusText
status
progress
bookingDate
lockerId
lockerLabel
}
stagingDetailedCustomerOrder {
id
localId
customer {
...CustomerFragment
}
isStaging
detailedItemData {
...DetailedItemDataFragment
}
}
readyBags {
id
localId
barcode
display
order {
...OrderFragment
}
location {
...RackLogFragment
}
}
isRouteCustomer
customerRelationship
deliveryStop
demographic
apiTokenForCustomer
activePromotions {
id
localId
name
couponCode
customerCouponCode
disabled
validForMarketing
}
subscription {
id
localId
pending {
...CustomerSubscriptionEntryFragment
}
active {
...CustomerSubscriptionEntryFragment
}
log {
...CustomerSubscriptionLogFragment
}
renewalDate
}
subscriptionUsage {
id
localId
type
limit
usage
}
kioskAccessCode
email
cellPhone
cellPhoneDisplay
homePhone
activePhone
firstName
lastName
companyName
fullName
store {
id
localId
agentId
agentType
name
isStripeEnabled
merchant {
...MerchantFragment
}
phone
address
city
state
zip
latitude
longitude
externalStoreIdentifier
googlePlaceId
stations {
...StationFragment
}
hasCounterStation
}
customFields {
id
localId
label
value
}
isInSignupProcess
paymentStatus {
id
localId
paymentReference
paymentStatus
}
wardrobeCategories {
id
localId
name
sort
description
disabled
isRetail
}
wardrobeItems {
id
localId
type {
...ItemTypeFragment
}
barcode
brandDisplay
itemStatus {
...ItemStatusFragment
}
colors {
...ColorFragment
}
photo {
...PhotoFragment
}
}
paymentPreference
rewardPoints
rewards {
id
localId
date
amount
status
expiryDate
redeemDate
}
missingRewardSettingCriteria
isSubBilling
deliveryNotes {
id
localId
date
customer {
...CustomerFragment
}
message
mainCategory
subCategory
status
saleId
itemId
lastUpdated
dueDate
assignee {
...UserFragment
}
photos {
...PhotoFragment
}
}
communication {
id
localId
direction
type
date
subject
staff {
...UserFragment
}
contactFlag
body
}
}
}
Variables
{
"customerId": "4",
"input": CustomerInput,
"promotionToApply": "xyz789"
}
Response
{
"data": {
"putCustomer": {
"id": "4",
"localId": "4",
"name": "abc123",
"futureAppointments": [Appointment],
"settings": Settings,
"group": Group,
"agent": Agent,
"routeHolds": [CustomerRouteHold],
"driverInstructions": "abc123",
"preferences": [4],
"goodOnlineAccountStanding": true,
"addresses": [CustomerAddress],
"defaultAddress": CustomerAddress,
"defaultDeliveryAddress": CustomerAddress,
"isMasterDeliveryAccount": true,
"creditCardIFrameURL": "xyz789",
"authenticatedCustomerSiteLink": "abc123",
"creditCard": CreditCard,
"datesForSchedulingAppointment": [ScheduleDate],
"unpaidOrders": UnpaidOrders,
"finishedPayments": [PaymentReceipt],
"customerBookings": [CustomerBooking],
"stagingDetailedCustomerOrder": DetailedCustomerOrder,
"readyBags": [CustomerBag],
"isRouteCustomer": true,
"customerRelationship": "STORE_ONLY",
"deliveryStop": 123,
"demographic": 123,
"apiTokenForCustomer": "xyz789",
"activePromotions": [Promotion],
"subscription": CustomerSubscription,
"subscriptionUsage": [SubscriptionUsage],
"kioskAccessCode": "abc123",
"email": "abc123",
"cellPhone": "abc123",
"cellPhoneDisplay": "xyz789",
"homePhone": "xyz789",
"activePhone": "xyz789",
"firstName": "xyz789",
"lastName": "xyz789",
"companyName": "xyz789",
"fullName": "abc123",
"store": Store,
"customFields": [CustomerFieldValue],
"isInSignupProcess": true,
"paymentStatus": PaymentStatus,
"wardrobeCategories": [ItemCategory],
"wardrobeItems": [OrderItem],
"paymentPreference": "AUTOPAY",
"rewardPoints": 987.65,
"rewards": [Reward],
"missingRewardSettingCriteria": ["ADD_EMAIL_CRITERIA"],
"isSubBilling": false,
"deliveryNotes": [Note],
"communication": [Communication]
}
}
}
putCustomerAddresses
Description
Updates a customer's addresses. Requires access level: Customer or Admin
Response
Returns a PutCustomerAddressesResponse
Arguments
Name | Description |
---|---|
customerId - ID
|
A customer id (optional, defaults to logged in user) |
defaultName - String
|
The default address name. Must be one of Billing | Home | Business | Other |
addresses - [CustomerAddressInput]!
|
A list of addresses |
updateDeliveries - Boolean
|
If true, also update addresses for currently scheduled deliveries |
Example
Query
mutation PutCustomerAddresses(
$customerId: ID,
$defaultName: String,
$addresses: [CustomerAddressInput]!,
$updateDeliveries: Boolean
) {
putCustomerAddresses(
customerId: $customerId,
defaultName: $defaultName,
addresses: $addresses,
updateDeliveries: $updateDeliveries
) {
id
localId
info
addresses {
id
localId
name
streetAddress
streetAddress2
city
state
zip
country
latitude
longitude
skipVerification
manualLocation
note
photo {
...PhotoFragment
}
}
}
}
Variables
{
"customerId": "4",
"defaultName": "xyz789",
"addresses": [CustomerAddressInput],
"updateDeliveries": true
}
Response
{
"data": {
"putCustomerAddresses": {
"id": "4",
"localId": "4",
"info": "xyz789",
"addresses": [CustomerAddress]
}
}
}
putCustomerField
Description
Creates or updates a customer field
Response
Returns a CustomerField
Arguments
Name | Description |
---|---|
input - CustomerFieldInput!
|
Example
Query
mutation PutCustomerField($input: CustomerFieldInput!) {
putCustomerField(input: $input) {
id
localId
fieldType
label
possibleValues
shownProfile
shownPosSignUp
shownCustomerWebsite
shownCustomerWebsiteSignUp
elasticKey
disabled
isRequired
}
}
Variables
{"input": CustomerFieldInput}
Response
{
"data": {
"putCustomerField": {
"id": 4,
"localId": 4,
"fieldType": "text",
"label": "xyz789",
"possibleValues": ["xyz789"],
"shownProfile": true,
"shownPosSignUp": true,
"shownCustomerWebsite": false,
"shownCustomerWebsiteSignUp": false,
"elasticKey": "xyz789",
"disabled": true,
"isRequired": false
}
}
}
putCustomerPreferences
Description
Updates a customer's preferences. Requires access level: Customer or Admin
Response
Returns [ID]!
Example
Query
mutation PutCustomerPreferences(
$customerId: ID!,
$preferenceIds: [ID]!
) {
putCustomerPreferences(
customerId: $customerId,
preferenceIds: $preferenceIds
)
}
Variables
{"customerId": 4, "preferenceIds": ["4"]}
Response
{"data": {"putCustomerPreferences": [4]}}
putDetailedOrder
Description
Create a detailed customer order. Requires access level: Customer or Admin
Response
Returns a DetailedCustomerOrder!
Arguments
Name | Description |
---|---|
customerId - String!
|
A customer id |
order - DetailedCustomerOrderInput
|
Details for the order, provided directly by customer |
Example
Query
mutation PutDetailedOrder(
$customerId: String!,
$order: DetailedCustomerOrderInput
) {
putDetailedOrder(
customerId: $customerId,
order: $order
) {
id
localId
customer {
id
localId
name
futureAppointments {
...AppointmentFragment
}
settings {
...SettingsFragment
}
group {
...GroupFragment
}
agent {
...AgentFragment
}
routeHolds {
...CustomerRouteHoldFragment
}
driverInstructions
preferences
goodOnlineAccountStanding
addresses {
...CustomerAddressFragment
}
defaultAddress {
...CustomerAddressFragment
}
defaultDeliveryAddress {
...CustomerAddressFragment
}
isMasterDeliveryAccount
creditCardIFrameURL
authenticatedCustomerSiteLink
creditCard {
...CreditCardFragment
}
datesForSchedulingAppointment {
...ScheduleDateFragment
}
unpaidOrders {
...UnpaidOrdersFragment
}
finishedPayments {
...PaymentReceiptFragment
}
customerBookings {
...CustomerBookingFragment
}
stagingDetailedCustomerOrder {
...DetailedCustomerOrderFragment
}
readyBags {
...CustomerBagFragment
}
isRouteCustomer
customerRelationship
deliveryStop
demographic
apiTokenForCustomer
activePromotions {
...PromotionFragment
}
subscription {
...CustomerSubscriptionFragment
}
subscriptionUsage {
...SubscriptionUsageFragment
}
kioskAccessCode
email
cellPhone
cellPhoneDisplay
homePhone
activePhone
firstName
lastName
companyName
fullName
store {
...StoreFragment
}
customFields {
...CustomerFieldValueFragment
}
isInSignupProcess
paymentStatus {
...PaymentStatusFragment
}
wardrobeCategories {
...ItemCategoryFragment
}
wardrobeItems {
...OrderItemFragment
}
paymentPreference
rewardPoints
rewards {
...RewardFragment
}
missingRewardSettingCriteria
isSubBilling
deliveryNotes {
...NoteFragment
}
communication {
...CommunicationFragment
}
}
isStaging
detailedItemData {
id
localId
description
photo {
...PhotoFragment
}
annotations {
...AnnotationFragment
}
}
}
}
Variables
{
"customerId": "xyz789",
"order": DetailedCustomerOrderInput
}
Response
{
"data": {
"putDetailedOrder": {
"id": 4,
"localId": "4",
"customer": Customer,
"isStaging": false,
"detailedItemData": [DetailedItemData]
}
}
}
putGeoFence
Description
Creates or updates a geo-fence
Response
Returns a GeoFence!
Arguments
Name | Description |
---|---|
input - GeoFenceInput!
|
Example
Query
mutation PutGeoFence($input: GeoFenceInput!) {
putGeoFence(input: $input) {
id
localId
name
brand {
id
localId
name
brandId
settings {
...SettingsFragment
}
agents {
...AgentFragment
}
isWalled
}
route {
id
localId
agentId
agentType
name
merchant {
...MerchantFragment
}
isStripeEnabled
type
isSubRoute
masterRouteId
pickupCutoffHours
deliveryCutoffHours
autoOptimize
}
polygon
color
isDisabled
createdAt
}
}
Variables
{"input": GeoFenceInput}
Response
{
"data": {
"putGeoFence": {
"id": 4,
"localId": 4,
"name": "abc123",
"brand": Brand,
"route": Route,
"polygon": [123.45],
"color": "abc123",
"isDisabled": false,
"createdAt": "2007-12-03T10:15:30Z"
}
}
}
putImportOrder
Description
Creates an import order. Requires access level: Customer or Admin
Response
Returns an Order
Example
Query
mutation PutImportOrder(
$customerId: ID!,
$agentId: String,
$amount: String,
$status: String,
$comment: String
) {
putImportOrder(
customerId: $customerId,
agentId: $agentId,
amount: $amount,
status: $status,
comment: $comment
) {
id
localId
displayId
date
dueDate
deliveredDate
customer {
id
localId
name
futureAppointments {
...AppointmentFragment
}
settings {
...SettingsFragment
}
group {
...GroupFragment
}
agent {
...AgentFragment
}
routeHolds {
...CustomerRouteHoldFragment
}
driverInstructions
preferences
goodOnlineAccountStanding
addresses {
...CustomerAddressFragment
}
defaultAddress {
...CustomerAddressFragment
}
defaultDeliveryAddress {
...CustomerAddressFragment
}
isMasterDeliveryAccount
creditCardIFrameURL
authenticatedCustomerSiteLink
creditCard {
...CreditCardFragment
}
datesForSchedulingAppointment {
...ScheduleDateFragment
}
unpaidOrders {
...UnpaidOrdersFragment
}
finishedPayments {
...PaymentReceiptFragment
}
customerBookings {
...CustomerBookingFragment
}
stagingDetailedCustomerOrder {
...DetailedCustomerOrderFragment
}
readyBags {
...CustomerBagFragment
}
isRouteCustomer
customerRelationship
deliveryStop
demographic
apiTokenForCustomer
activePromotions {
...PromotionFragment
}
subscription {
...CustomerSubscriptionFragment
}
subscriptionUsage {
...SubscriptionUsageFragment
}
kioskAccessCode
email
cellPhone
cellPhoneDisplay
homePhone
activePhone
firstName
lastName
companyName
fullName
store {
...StoreFragment
}
customFields {
...CustomerFieldValueFragment
}
isInSignupProcess
paymentStatus {
...PaymentStatusFragment
}
wardrobeCategories {
...ItemCategoryFragment
}
wardrobeItems {
...OrderItemFragment
}
paymentPreference
rewardPoints
rewards {
...RewardFragment
}
missingRewardSettingCriteria
isSubBilling
deliveryNotes {
...NoteFragment
}
communication {
...CommunicationFragment
}
}
pickupStore {
id
localId
agentId
agentType
name
isStripeEnabled
merchant {
...MerchantFragment
}
phone
address
city
state
zip
latitude
longitude
externalStoreIdentifier
googlePlaceId
stations {
...StationFragment
}
hasCounterStation
}
dropStore {
id
localId
agentId
agentType
name
isStripeEnabled
merchant {
...MerchantFragment
}
phone
address
city
state
zip
latitude
longitude
externalStoreIdentifier
googlePlaceId
stations {
...StationFragment
}
hasCounterStation
}
isPickup
isDelivery
hasChangedReturnLocation
isPaid
isPaidForDelivery
buyPrice
pieceCount
status
items {
id
localId
type {
...ItemTypeFragment
}
barcode
brandDisplay
itemStatus {
...ItemStatusFragment
}
colors {
...ColorFragment
}
photo {
...PhotoFragment
}
}
bags {
id
localId
barcode
label
items {
...OrderItemFragment
}
rack {
...RackFragment
}
isReturnedToCustomer
rackLocation {
...RackLogFragment
}
bagPackagingType
}
customerProvidedDetails {
id
localId
customer {
...CustomerFragment
}
isStaging
detailedItemData {
...DetailedItemDataFragment
}
}
customerOrderStatusText
receiptLink
lastPaymentWasDeclined
}
}
Variables
{
"customerId": "4",
"agentId": "xyz789",
"amount": "xyz789",
"status": "abc123",
"comment": "xyz789"
}
Response
{
"data": {
"putImportOrder": {
"id": "4",
"localId": "4",
"displayId": "4",
"date": "2007-12-03T10:15:30Z",
"dueDate": "2007-12-03T10:15:30Z",
"deliveredDate": "2007-12-03T10:15:30Z",
"customer": Customer,
"pickupStore": Store,
"dropStore": Store,
"isPickup": true,
"isDelivery": true,
"hasChangedReturnLocation": false,
"isPaid": true,
"isPaidForDelivery": false,
"buyPrice": 987.65,
"pieceCount": 987,
"status": "disabled",
"items": [OrderItem],
"bags": [OrderBag],
"customerProvidedDetails": DetailedCustomerOrder,
"customerOrderStatusText": "xyz789",
"receiptLink": "xyz789",
"lastPaymentWasDeclined": true
}
}
}
putItemCategories
Description
Update or Create item categories. Requires access level: Sr Manager
Response
Returns [ItemCategory]!
Arguments
Name | Description |
---|---|
input - [ItemCategoryInput]!
|
A list of item categories to create/update |
Example
Query
mutation PutItemCategories($input: [ItemCategoryInput]!) {
putItemCategories(input: $input) {
id
localId
name
sort
description
disabled
isRetail
}
}
Variables
{"input": [ItemCategoryInput]}
Response
{
"data": {
"putItemCategories": [
{
"id": "4",
"localId": 4,
"name": "abc123",
"sort": 987,
"description": "xyz789",
"disabled": false,
"isRetail": true
}
]
}
}
putItemValidationRule
Description
Create or update an item validation rule. Requires access level: Sr Manager
Response
Returns an ItemValidationRule!
Arguments
Name | Description |
---|---|
input - ItemValidationRuleInput!
|
A rule to create/update |
Example
Query
mutation PutItemValidationRule($input: ItemValidationRuleInput!) {
putItemValidationRule(input: $input) {
id
localId
name
requiredFields
requiredSpecialCares
itemTypeCondition
departmentCondition
sort
isDisabled
}
}
Variables
{"input": ItemValidationRuleInput}
Response
{
"data": {
"putItemValidationRule": {
"id": "4",
"localId": 4,
"name": "xyz789",
"requiredFields": ["abc123"],
"requiredSpecialCares": ["abc123"],
"itemTypeCondition": ["xyz789"],
"departmentCondition": ["abc123"],
"sort": 123,
"isDisabled": true
}
}
}
putMarketingBroadcast
Description
Creates or updates a marketing broadcast
Response
Returns a MarketingBroadcast
Arguments
Name | Description |
---|---|
input - MarketingBroadcastInput!
|
Example
Query
mutation PutMarketingBroadcast($input: MarketingBroadcastInput!) {
putMarketingBroadcast(input: $input) {
id
localId
name
subject
broadcastType
message
customerInclusionKpiIdList
customerExclusionKpiIdList
emailTemplateId
status
dateCreated
dateSent
emailHtmlTemplate
sentBy
scheduledBy
scheduledDate
promotion
autoApplyPromo
optimizeEmailDelivery
}
}
Variables
{"input": MarketingBroadcastInput}
Response
{
"data": {
"putMarketingBroadcast": {
"id": 4,
"localId": "4",
"name": "xyz789",
"subject": "abc123",
"broadcastType": "xyz789",
"message": "xyz789",
"customerInclusionKpiIdList": [
"abc123"
],
"customerExclusionKpiIdList": [
"abc123"
],
"emailTemplateId": "abc123",
"status": "abc123",
"dateCreated": 123.45,
"dateSent": "xyz789",
"emailHtmlTemplate": "abc123",
"sentBy": "abc123",
"scheduledBy": "xyz789",
"scheduledDate": "abc123",
"promotion": "abc123",
"autoApplyPromo": false,
"optimizeEmailDelivery": true
}
}
}
putMarketingEmailTemplate
Description
Creates or updates a marketing email template
Response
Returns a MarketingEmailTemplate
Arguments
Name | Description |
---|---|
input - MarketingEmailTemplateInput!
|
Example
Query
mutation PutMarketingEmailTemplate($input: MarketingEmailTemplateInput!) {
putMarketingEmailTemplate(input: $input) {
id
localId
name
subject
jsonTemplate
htmlTemplate
hasPromotion
}
}
Variables
{"input": MarketingEmailTemplateInput}
Response
{
"data": {
"putMarketingEmailTemplate": {
"id": 4,
"localId": 4,
"name": "xyz789",
"subject": "abc123",
"jsonTemplate": "abc123",
"htmlTemplate": "xyz789",
"hasPromotion": true
}
}
}
putRouteHold
Description
Update or Create a customer route hold. Requires access level: Sales Clerk
Response
Returns a CustomerRouteHold!
Arguments
Name | Description |
---|---|
customerId - ID!
|
Id of the customer to create/update a route hold for |
input - CustomerRouteHoldInput!
|
A route hold to create/update |
Example
Query
mutation PutRouteHold(
$customerId: ID!,
$input: CustomerRouteHoldInput!
) {
putRouteHold(
customerId: $customerId,
input: $input
) {
id
localId
startDate
endDate
}
}
Variables
{"customerId": 4, "input": CustomerRouteHoldInput}
Response
{
"data": {
"putRouteHold": {
"id": 4,
"localId": 4,
"startDate": "abc123",
"endDate": "abc123"
}
}
}
putStorePlaceId
Description
Creates or updates a store place id
Response
Returns a Boolean!
Example
Query
mutation PutStorePlaceId(
$placeId: ID!,
$storesToAdd: [ID]!,
$storesToRemove: [ID]!
) {
putStorePlaceId(
placeId: $placeId,
storesToAdd: $storesToAdd,
storesToRemove: $storesToRemove
)
}
Variables
{
"placeId": "4",
"storesToAdd": [4],
"storesToRemove": ["4"]
}
Response
{"data": {"putStorePlaceId": false}}
putTaxConfigurationRule
Description
Update or Create a tax configuration rule. Requires access level: Sr Manager
Response
Returns a TaxConfigurationRule!
Arguments
Name | Description |
---|---|
input - TaxConfigurationRuleInput!
|
A rule to create/update |
Example
Query
mutation PutTaxConfigurationRule($input: TaxConfigurationRuleInput!) {
putTaxConfigurationRule(input: $input) {
id
localId
sort
parentRule
isDisabled
isDefault
name
rate
useAutoTaxJar
addressSpecific
zipCondition
departmentCondition
agentCondition
}
}
Variables
{"input": TaxConfigurationRuleInput}
Response
{
"data": {
"putTaxConfigurationRule": {
"id": "4",
"localId": 4,
"sort": 123,
"parentRule": "4",
"isDisabled": false,
"isDefault": false,
"name": "abc123",
"rate": 987.65,
"useAutoTaxJar": true,
"addressSpecific": false,
"zipCondition": "abc123",
"departmentCondition": ["abc123"],
"agentCondition": ["xyz789"]
}
}
}
redeemReward
Description
Redeems a reward for a customer
removeCustomerFromRoute
Description
Removes a customer from their current route
Response
Returns a Boolean
Arguments
Name | Description |
---|---|
customerId - ID!
|
|
preference - CustomerDeliveryPreferenceEnum
|
New delivery preference (optional, defaults to NO_PREFERENCE) |
Example
Query
mutation RemoveCustomerFromRoute(
$customerId: ID!,
$preference: CustomerDeliveryPreferenceEnum
) {
removeCustomerFromRoute(
customerId: $customerId,
preference: $preference
)
}
Variables
{"customerId": 4, "preference": "NO_PREFERENCE"}
Response
{"data": {"removeCustomerFromRoute": true}}
removeUserFromChatRoom
Description
Remove a chat user from a room
Response
Returns a Boolean!
Example
Query
mutation RemoveUserFromChatRoom(
$roomId: ID!,
$userId: ID!
) {
removeUserFromChatRoom(
roomId: $roomId,
userId: $userId
)
}
Variables
{"roomId": 4, "userId": 4}
Response
{"data": {"removeUserFromChatRoom": false}}
requestMagicLink
Description
Takes an email and sends a magic link to the email address
requestRouteRegular
Description
A customer requests to be assigned to a regular route. Requires access level: Customer
Response
Returns a Boolean
Example
Query
mutation RequestRouteRegular {
requestRouteRegular
}
Response
{"data": {"requestRouteRegular": true}}
scheduleMarketingBroadcast
Description
Schedules a marketing broadcast
Response
Returns a Boolean
Arguments
Name | Description |
---|---|
marketingBroadcast - MarketingBroadcastInput!
|
The broadcast to schedule |
Example
Query
mutation ScheduleMarketingBroadcast($marketingBroadcast: MarketingBroadcastInput!) {
scheduleMarketingBroadcast(marketingBroadcast: $marketingBroadcast)
}
Variables
{"marketingBroadcast": MarketingBroadcastInput}
Response
{"data": {"scheduleMarketingBroadcast": true}}
selectCustomerSubscription
Description
Creates a subscription invoice & sets the subscription status to 'pending'. Requires access level: Customer or Admin
Response
Returns a CustomerSubscription
Example
Query
mutation SelectCustomerSubscription(
$customerId: ID!,
$subscriptionId: ID!
) {
selectCustomerSubscription(
customerId: $customerId,
subscriptionId: $subscriptionId
) {
id
localId
pending {
id
localId
saleId
price
start
end
}
active {
id
localId
saleId
price
start
end
}
log {
id
localId
date
event
description
user {
...UserFragment
}
}
renewalDate
}
}
Variables
{"customerId": "4", "subscriptionId": 4}
Response
{
"data": {
"selectCustomerSubscription": {
"id": 4,
"localId": 4,
"pending": CustomerSubscriptionEntry,
"active": CustomerSubscriptionEntry,
"log": [CustomerSubscriptionLog],
"renewalDate": "2007-12-03T10:15:30Z"
}
}
}
sendCustomerMessage
Description
Sends a message from a customer to the cleaner and adds it to the contact log
Example
Query
mutation SendCustomerMessage(
$customerId: ID!,
$message: String!
) {
sendCustomerMessage(
customerId: $customerId,
message: $message
)
}
Variables
{
"customerId": "4",
"message": "xyz789"
}
Response
{"data": {"sendCustomerMessage": false}}
sendCustomerNegativeFeedback
Description
Sends a negative feedback on an order from a customer to the cleaner and adds it to the contact log
Example
Query
mutation SendCustomerNegativeFeedback(
$customerId: ID!,
$message: String!
) {
sendCustomerNegativeFeedback(
customerId: $customerId,
message: $message
)
}
Variables
{"customerId": 4, "message": "xyz789"}
Response
{"data": {"sendCustomerNegativeFeedback": true}}
sendCustomerPasswordResetLink
Description
Sends a password reset email to the provided customer
Example
Query
mutation SendCustomerPasswordResetLink($customerId: ID!) {
sendCustomerPasswordResetLink(customerId: $customerId)
}
Variables
{"customerId": "4"}
Response
{"data": {"sendCustomerPasswordResetLink": true}}
sendCustomerSignupText
Description
Sends a text with a signup link to a provided customer phone number.
Response
Returns a Boolean
Example
Query
mutation SendCustomerSignupText(
$phone: String!,
$fromKiosk: Boolean
) {
sendCustomerSignupText(
phone: $phone,
fromKiosk: $fromKiosk
)
}
Variables
{"phone": "xyz789", "fromKiosk": false}
Response
{"data": {"sendCustomerSignupText": false}}
sendFeedbackClickTracking
Description
Send feedback click tracking for Feedback Email/Sms
Response
Returns a Boolean!
Arguments
Name | Description |
---|---|
feedbackClickTracking - FeedbackClickTrackingInput!
|
Example
Query
mutation SendFeedbackClickTracking($feedbackClickTracking: FeedbackClickTrackingInput!) {
sendFeedbackClickTracking(feedbackClickTracking: $feedbackClickTracking)
}
Variables
{"feedbackClickTracking": FeedbackClickTrackingInput}
Response
{"data": {"sendFeedbackClickTracking": true}}
sendKioskAlreadyInUseText
Description
Sends a text that the kiosk is already in use to a provided customer phone number.
sendMarketingBroadcast
Description
Sends a marketing broadcast
Response
Returns a Boolean
Arguments
Name | Description |
---|---|
marketingBroadcast - MarketingBroadcastInput!
|
The broadcast to send |
Example
Query
mutation SendMarketingBroadcast($marketingBroadcast: MarketingBroadcastInput!) {
sendMarketingBroadcast(marketingBroadcast: $marketingBroadcast)
}
Variables
{"marketingBroadcast": MarketingBroadcastInput}
Response
{"data": {"sendMarketingBroadcast": false}}
sendReviewReply
Description
Sends a reply to a review
Response
Returns a ReviewReply
Example
Query
mutation SendReviewReply(
$reviewId: String!,
$reviewName: String!,
$reply: String!
) {
sendReviewReply(
reviewId: $reviewId,
reviewName: $reviewName,
reply: $reply
) {
id
localId
comment
updateTime
replierName
}
}
Variables
{
"reviewId": "xyz789",
"reviewName": "abc123",
"reply": "abc123"
}
Response
{
"data": {
"sendReviewReply": {
"id": "4",
"localId": "4",
"comment": "abc123",
"updateTime": "abc123",
"replierName": "xyz789"
}
}
}
sendTestMarketingBroadcast
Description
Sends a test marketing broadcast
Response
Returns a Boolean
Arguments
Name | Description |
---|---|
input - MarketingBroadcastInput!
|
The test broadcast to send |
Example
Query
mutation SendTestMarketingBroadcast($input: MarketingBroadcastInput!) {
sendTestMarketingBroadcast(input: $input)
}
Variables
{"input": MarketingBroadcastInput}
Response
{"data": {"sendTestMarketingBroadcast": true}}
setCurrentCustomer
Response
Returns a Customer
Arguments
Name | Description |
---|---|
customerId - ID!
|
A customer ID to be logged in |
Example
Query
mutation SetCurrentCustomer($customerId: ID!) {
setCurrentCustomer(customerId: $customerId) {
id
localId
name
futureAppointments {
id
localId
startTime
endTime
timeSlot {
...TimeSlotFragment
}
scheduledBy {
...ActorFragment
}
scheduledAt
route {
...RouteFragment
}
driverInstructions
cleaningInstructions
departments {
...FinancialDepartmentFragment
}
customer {
...CustomerFragment
}
address {
...CustomerAddressFragment
}
driver {
...UserFragment
}
regular
anytime
status
appointmentLinkId
photos {
...PhotoFragment
}
lockerCode
locationLabel
vehicleStatus {
...DeliveryVehicleStatusFragment
}
stopNumber
deliveryPhoto {
...PhotoFragment
}
}
settings {
id
localId
mainDeliveryStore {
...StoreFragment
}
mainStore {
...StoreFragment
}
quickDetailingItemTypes {
...ItemTypeFragment
}
defaultPaymentMethod {
...PaymentMethodFragment
}
acceptedPaymentMethods {
...PaymentMethodFragment
}
logo
receiptLogo
POSNewOrderTabs
deliveryNewOrderTabs
statementGenerationDays
invoiceGenerationDays
acceptedCards
automaticSurcharges {
...AutomaticSurchargeFragment
}
detailingAttributes
marketingCampaigns {
...CampaignSettingFragment
}
welcomeNewCustomerCampaign {
...WelcomeNewCustomerCampaignFragment
}
thankYouCampaign {
...ThankYouCampaignFragment
}
arPastDueCampaign {
...ArPastDueCampaignFragment
}
counterToRouteCampaign {
...CounterToRouteCampaignFragment
}
monthlyNewsletterCampaign {
...MonthlyNewsletterCampaignFragment
}
happyAnniversaryCampaign {
...HappyAnniversaryCampaignFragment
}
inventoryReminderCampaign {
...InventoryReminderCampaignFragment
}
oneAndDoneCampaign {
...OneAndDoneCampaignFragment
}
marketingByDepartmentCampaign {
...MarketingByDepartmentCampaignFragment
}
thankYouTopSpendersCampaign {
...ThankYouTopSpendersCampaignFragment
}
newCustomerRetentionCampaign {
...NewCustomerRetentionCampaignFragment
}
customerSignupNoOrdersCampaign {
...CustomerSignupNoOrdersCampaignFragment
}
noOrdersSinceLastCampaign {
...NoOrdersSinceLastCampaignFragment
}
updateYourInformationCampaign {
...UpdateYourInformationCampaignFragment
}
quarterlyComforterCampaign {
...QuarterlyComforterCampaignFragment
}
thankYouNewReviewCampaign {
...ThankYouNewReviewCampaignFragment
}
lostBigCustomerCampaign {
...LostBigCustomerCampaignFragment
}
reviewGenerationCampaign {
...ReviewGenerationCampaignFragment
}
customCampaign {
...CustomCampaignFragment
}
snapshotEmailList {
...SnapshotEmailListFragment
}
businessName
dateFormat
countryCode
timeZone
locale
contactAddressLine
contactAddressState
contactAddressCity
contactAddressZip
contactPhone
logoUrl
noProductionDays
noDeliveryDays
specialHolidays
openDetailingWithCategory
customerFacingDomain
customSignupUrl
contactEmail
twilioAccountSid
twilioAuthToken
twilioPhone
twilioPhoneLookup
whatsAppEnabled
sendSmsOptOutInformation
userNameOnEmailSubject
payableEntity
emailFooter
lockerBuildingCode
communicationTemplatesId
vcardTemplate
newPickupScheduledInstructions
sendAutomatedMessages
sendStatementEmails
signupEmailRequired
signupGroupRequired
signupAutofillCity
signupAddressRequired
signupPhoneRequired
allowOrderSplitting
groupOnDetailingSplit
offerStoreDelivery
offerDeliverySchedulingInText
useStoreZipCodeForTax
summarizeByBillingCode
showSalesTaxBreakdownForStatementOrders
sumOrderTotalOnStatements
simplifiedPaymentReceipt
cashTotalRounding
hasLogo
isHotel
isHotelProcessor
isRoomGroupHotel
isLockers
isValet
isWholesaler
pickupUnpaidOrders
pressOnlyDiscount
scheduleWillCallAtAssembly
scheduleWillCallOnDueDate
dontIncludeOrdersInDeliveryListBeforeDueDate
geoFencingEnabled
allowSubDeliveryAccountScheduling
allowSubAccountToTriggerMasterDelivery
sendAutopayReceipts
sendDeliveryAppointmentConfirmation
showDeliveryNotPaid
deliveryAppLoadListSortDescending
requireSignatureOnDelivery
requirePhotoOnDelivery
showSubRouteForDeliveryStop
genericLaundryBagMode
rushNotificationsHour
websiteDisplayText
shouldShowWebsiteOnReceipts
showAgentOnBagTag
assemblyEvenOnly
voiceAssemblyEnabled
inspectPriceAtAssembly
assemblyPrintFinancialReceiptForDeliveryCustomer
assemblyAlwaysPrintFinancialReceipt
printFinancialTicketOutsideAssembly
keepRackAssignmentOnOrderSplit
complexLotControl
overrideDueDateWithNextDelivery
autoSelectDeliveryReturnLocation
defaultDetailingTab
autoOpenAnnotationType
requireInvoiceInDetailing
displayTooManyDetailedItemsWarning
assemblyIcon
alignAssemblyIcon
newCustomerTicketIcon
newCustomerBottomTicketIcon
customerNameOnTicketBottom
pieceCountOnTicketBottom
customerPhoneOnTicket
showRoomInfoBelowAddress
laundryLicense
summarizedItemTable
showLogoOnReceipts
logoOnReceiptHeight
receiptLogoName
showPriceOnAssembly
paymentReceiptShowSignatureLine
receiptsNameShort
newLocationOnTicket
showRouteOfSameDayDelivery
itemDetailsOnTicket
itemDetailsOnOrderReceipt
newOrderPrintCount
printRetailReceipts
printDropTicketOnOrderSplit
printTicketOnOrderCloseCount
noStoreContactInfoOnReceipts
noPricingOnOrderReceipts
receiptsFooter
thermalReceiptFooter
ticketReceiptFooter
showEmailOnReceipts
showWebsiteOnReceipts
invoicePayableLine
invoiceTerms
isRestorationAccount
offerDemandDelivery
autoAddNewCustomerToWillCallRoute
groupItemDetailsByRoomNumber
merchantBatchCloseTime
saveCardsOnFile
amexSeparately
maxAutopayAmount
maxPaymentAmountWarning
autopayTerms
autopayStatements
autopayBatchStrategy
invoiceDueDays
consolidateInvoiceItemDetails
invoiceShowOrderDetails
invoiceHideOrderInfo
showDateOnStatement
callStatementInvoice
activitySummaryEnabled
attachPDFInStatementEmails
rewardsProgramEnabled
rewardsPointModifier
rewardsCurrencyModifier
rewardsConversionRequirement
rewardsRedeemAutomatically
rewardsEmailRequired
rewardsPhoneRequired
rewardsAddressRequired
rewardsCreditCardRequired
welcomeNotificationDisabled
autoTicketOnCustomerRegistration
autoTicketOnScheduledDelivery
sendCustomerUpdatedCCNotification
allowScheduleBothPickupAndDelivery
limitScheduleDeliveryToClosestRoute
allowRouteRegularCustomersToScheduleOnDemand
allowSameDaySchedulingEvenIfRouteStarted
experimentalPhotoUserExperienceOnWebsiteScheduler
priceListUpdateOrdersCondition
routeAgentPriority
commonOrdersAgent
isMailOrderPickups
lockerDropBinPickupMode
showYesRepliesInComm
autoReplyToYesRepliesInComm
customerWebsiteClothesTrackerTabEnabled
customerWebsiteWardrobeTabEnabled
customerWebsitePaymentTabEnabled
metalprogettiAssemblyLabelTemplate
metalprogettiSendRackSpaceToStorage
rushOrderSurcharge
rushOrderSurchargeTier2
sendNewOrderNotificationOnEveryVisit
includeReceiptInNewOrderNotification
printTempTagsForBarcodedItems
alwaysGenerateTemporaryBarcodes
zebraPrinterTemplate
epsonPrinterTemplate
forceOnlyBagFieldInput
detailingWithoutBarcodes
printLabelsWhenDuplicating
metalprogettiStripCharacters
autoDetailingEnabled
minItemBarcodeLength
maxItemBarcodeLength
quotesDeletionTimeFrame
minWashNFoldPrice
minWashNFoldWeight
washAndFoldWeightStations
departmentSpecificOrdersEnabled
manualPickupRestricted
displayDueDateInProductionModules
filterDetailingByItemTypes
automaticallyFilterReportsToEmployeesStore
payrollPeriod
payrollLastCloseDate
payrollFirstHalfCloseDate
payrollLastHalfCloseDate
payrollCloseDate
workweekStart
hoursUntilWeeklyOvertime
hoursUntilDailyOvertime
hoursUntilDailyDoubleTime
hoursUntilWeeklyNotification
hoursUntilDailyNotification
preventClockInBeforeTime
californiaOvertimeRules
promptForClockInOnLogin
overrideTimeClockWithUserDepartment
allowMobileAppClockIn
disableOverTimeNotifications
overnightClockOut
inventorySystemEnabled
inventorySystemEnabledProduction
permissionManageSystemSettings
permissionManageMarketing
permissionManageStationSettings
permissionAccessCustomerCredits
permissionAddCustomerDiscount
permissionAccessCustomerModule
permissionAccessDeliveryModule
permissionAccessAssemblyModule
permissionAccessSpottingModule
permissionAccessAlterAndRepairModule
permissionAccessAccountsReceivableModule
permissionAccessPressingModule
permissionAccessPriceListModule
permissionAccessCashBoxModule
permissionAccessTimeclockModule
permissionAccessPerformanceModule
permissionAccessWashAndFoldModule
permissionAccessInspectionModule
permissionAccessItemBaggingModule
permissionAccessFoldingAndBaggingModule
permissionAccessMessagesModule
permissionAccessRackingModule
permissionAccessRouteManagerModule
permissionAccessReportsModule
permissionAccessAdminReportsModule
permissionAccessIssueTrackerModule
permissionAccessSupportModule
permissionAccessEmployeeSettingsModule
permissionAccessBulkMarkinModule
permissionManualPriceEdits
permissionSpecialCareAfterOrderClose
permissionResetOrder
permissionRemoveItems
showStrikeThroughWhenReturned
usePieceCountTotalsOnTicket
taxHeaderString
includeTaxInPrice
dropDateOnAssemblyTicket
displayDepartmentOnTicket
displayCategoryOnTicket
displayPriceOnPickupSlip
useStoreSpecificOrderSequenceNumbers
showStoreSpecificOrderNumberOnTop
saleItemLedgerTrackingEnabled
inOnboarding
noCcCustomerText
pickupReminderOfferCancellations
pickupReminderEnabledForInactiveCustomers
offersRetailDelivery
regRouteQuestionChecked
pickupReminderHour24
pickupReminderIncludeDeliveries
deliveryCompleteConfirmation
defaultCustomerPaymentType
promptOnCardAvsFailure
minCardChargeAmount
defaultCustomerPriceList
cardSurcharging
cardSurchargeFixedPercentage
organizationNumber
fullstoryEnabled
initializedInferred
cashBoxMode
cashBoxModeProduction
displayExtendedStationReceiptInfo
displayExtendedZReportInfo
twilioMarketingNumber
campaignsEnabled
broadcastsEnabled
reviewModuleEnabled
defaultLanguage
weightUnit
segmentWriteKey
socialId
twilioReviewNumber
}
group {
id
localId
agentId
agentType
name
merchant {
...MerchantFragment
}
isStripeEnabled
hasOwnAgent
isGroupStop
isMasterBilling
customers {
...CustomerFragment
}
}
agent {
id
localId
name
agentId
agentType
isStripeEnabled
merchant {
...MerchantFragment
}
}
routeHolds {
id
localId
startDate
endDate
}
driverInstructions
preferences
goodOnlineAccountStanding
addresses {
id
localId
name
streetAddress
streetAddress2
city
state
zip
country
latitude
longitude
skipVerification
manualLocation
note
photo {
...PhotoFragment
}
}
defaultAddress {
id
localId
name
streetAddress
streetAddress2
city
state
zip
country
latitude
longitude
skipVerification
manualLocation
note
photo {
...PhotoFragment
}
}
defaultDeliveryAddress {
id
localId
name
streetAddress
streetAddress2
city
state
zip
country
latitude
longitude
skipVerification
manualLocation
note
photo {
...PhotoFragment
}
}
isMasterDeliveryAccount
creditCardIFrameURL
authenticatedCustomerSiteLink
creditCard {
id
localId
type
last4
expm
expy
status {
...CreditCardStatusFragment
}
}
datesForSchedulingAppointment {
id
localId
date
timeSlots {
...TimeSlotFragment
}
}
unpaidOrders {
id
localId
orders {
...OrderFragment
}
duePayment {
...DuePaymentFragment
}
}
finishedPayments {
id
localId
total
date
receiptLink
}
customerBookings {
id
localId
pickupAppointment {
...AppointmentFragment
}
deliveryAppointment {
...AppointmentFragment
}
detailedCustomerOrder {
...DetailedCustomerOrderFragment
}
orders {
...OrderFragment
}
pickupDateDisplay
deliveryDateDisplay
pickupDateTitle
deliveryDateTitle
statusText
status
progress
bookingDate
lockerId
lockerLabel
}
stagingDetailedCustomerOrder {
id
localId
customer {
...CustomerFragment
}
isStaging
detailedItemData {
...DetailedItemDataFragment
}
}
readyBags {
id
localId
barcode
display
order {
...OrderFragment
}
location {
...RackLogFragment
}
}
isRouteCustomer
customerRelationship
deliveryStop
demographic
apiTokenForCustomer
activePromotions {
id
localId
name
couponCode
customerCouponCode
disabled
validForMarketing
}
subscription {
id
localId
pending {
...CustomerSubscriptionEntryFragment
}
active {
...CustomerSubscriptionEntryFragment
}
log {
...CustomerSubscriptionLogFragment
}
renewalDate
}
subscriptionUsage {
id
localId
type
limit
usage
}
kioskAccessCode
email
cellPhone
cellPhoneDisplay
homePhone
activePhone
firstName
lastName
companyName
fullName
store {
id
localId
agentId
agentType
name
isStripeEnabled
merchant {
...MerchantFragment
}
phone
address
city
state
zip
latitude
longitude
externalStoreIdentifier
googlePlaceId
stations {
...StationFragment
}
hasCounterStation
}
customFields {
id
localId
label
value
}
isInSignupProcess
paymentStatus {
id
localId
paymentReference
paymentStatus
}
wardrobeCategories {
id
localId
name
sort
description
disabled
isRetail
}
wardrobeItems {
id
localId
type {
...ItemTypeFragment
}
barcode
brandDisplay
itemStatus {
...ItemStatusFragment
}
colors {
...ColorFragment
}
photo {
...PhotoFragment
}
}
paymentPreference
rewardPoints
rewards {
id
localId
date
amount
status
expiryDate
redeemDate
}
missingRewardSettingCriteria
isSubBilling
deliveryNotes {
id
localId
date
customer {
...CustomerFragment
}
message
mainCategory
subCategory
status
saleId
itemId
lastUpdated
dueDate
assignee {
...UserFragment
}
photos {
...PhotoFragment
}
}
communication {
id
localId
direction
type
date
subject
staff {
...UserFragment
}
contactFlag
body
}
}
}
Variables
{"customerId": "4"}
Response
{
"data": {
"setCurrentCustomer": {
"id": 4,
"localId": "4",
"name": "xyz789",
"futureAppointments": [Appointment],
"settings": Settings,
"group": Group,
"agent": Agent,
"routeHolds": [CustomerRouteHold],
"driverInstructions": "abc123",
"preferences": [4],
"goodOnlineAccountStanding": true,
"addresses": [CustomerAddress],
"defaultAddress": CustomerAddress,
"defaultDeliveryAddress": CustomerAddress,
"isMasterDeliveryAccount": false,
"creditCardIFrameURL": "xyz789",
"authenticatedCustomerSiteLink": "abc123",
"creditCard": CreditCard,
"datesForSchedulingAppointment": [ScheduleDate],
"unpaidOrders": UnpaidOrders,
"finishedPayments": [PaymentReceipt],
"customerBookings": [CustomerBooking],
"stagingDetailedCustomerOrder": DetailedCustomerOrder,
"readyBags": [CustomerBag],
"isRouteCustomer": false,
"customerRelationship": "STORE_ONLY",
"deliveryStop": 123,
"demographic": 123,
"apiTokenForCustomer": "abc123",
"activePromotions": [Promotion],
"subscription": CustomerSubscription,
"subscriptionUsage": [SubscriptionUsage],
"kioskAccessCode": "abc123",
"email": "xyz789",
"cellPhone": "xyz789",
"cellPhoneDisplay": "xyz789",
"homePhone": "abc123",
"activePhone": "xyz789",
"firstName": "xyz789",
"lastName": "abc123",
"companyName": "abc123",
"fullName": "xyz789",
"store": Store,
"customFields": [CustomerFieldValue],
"isInSignupProcess": true,
"paymentStatus": PaymentStatus,
"wardrobeCategories": [ItemCategory],
"wardrobeItems": [OrderItem],
"paymentPreference": "AUTOPAY",
"rewardPoints": 123.45,
"rewards": [Reward],
"missingRewardSettingCriteria": ["ADD_EMAIL_CRITERIA"],
"isSubBilling": false,
"deliveryNotes": [Note],
"communication": [Communication]
}
}
}
setStation
Description
Try to assign this computer to a station. On success, the secret key is returned that the client should store in the cookie 'smrt_stkey' for authentication. If your IP is not whitelisted, you must provide a user entered auth code as argument. Simply try the endpoint and on error, ask the user to input an auth code. The endpoint will also give an error if the auth key is invalid.
Response
Returns a String!
Example
Query
mutation SetStation(
$stationId: String!,
$authCode: String
) {
setStation(
stationId: $stationId,
authCode: $authCode
)
}
Variables
{
"stationId": "xyz789",
"authCode": "abc123"
}
Response
{"data": {"setStation": "xyz789"}}
sortDeliveryStops
Description
Sort delivery stops
Response
Returns [Customer]!
Example
Query
mutation SortDeliveryStops(
$routeId: ID!,
$sortedStopIds: [ID]!
) {
sortDeliveryStops(
routeId: $routeId,
sortedStopIds: $sortedStopIds
) {
id
localId
name
futureAppointments {
id
localId
startTime
endTime
timeSlot {
...TimeSlotFragment
}
scheduledBy {
...ActorFragment
}
scheduledAt
route {
...RouteFragment
}
driverInstructions
cleaningInstructions
departments {
...FinancialDepartmentFragment
}
customer {
...CustomerFragment
}
address {
...CustomerAddressFragment
}
driver {
...UserFragment
}
regular
anytime
status
appointmentLinkId
photos {
...PhotoFragment
}
lockerCode
locationLabel
vehicleStatus {
...DeliveryVehicleStatusFragment
}
stopNumber
deliveryPhoto {
...PhotoFragment
}
}
settings {
id
localId
mainDeliveryStore {
...StoreFragment
}
mainStore {
...StoreFragment
}
quickDetailingItemTypes {
...ItemTypeFragment
}
defaultPaymentMethod {
...PaymentMethodFragment
}
acceptedPaymentMethods {
...PaymentMethodFragment
}
logo
receiptLogo
POSNewOrderTabs
deliveryNewOrderTabs
statementGenerationDays
invoiceGenerationDays
acceptedCards
automaticSurcharges {
...AutomaticSurchargeFragment
}
detailingAttributes
marketingCampaigns {
...CampaignSettingFragment
}
welcomeNewCustomerCampaign {
...WelcomeNewCustomerCampaignFragment
}
thankYouCampaign {
...ThankYouCampaignFragment
}
arPastDueCampaign {
...ArPastDueCampaignFragment
}
counterToRouteCampaign {
...CounterToRouteCampaignFragment
}
monthlyNewsletterCampaign {
...MonthlyNewsletterCampaignFragment
}
happyAnniversaryCampaign {
...HappyAnniversaryCampaignFragment
}
inventoryReminderCampaign {
...InventoryReminderCampaignFragment
}
oneAndDoneCampaign {
...OneAndDoneCampaignFragment
}
marketingByDepartmentCampaign {
...MarketingByDepartmentCampaignFragment
}
thankYouTopSpendersCampaign {
...ThankYouTopSpendersCampaignFragment
}
newCustomerRetentionCampaign {
...NewCustomerRetentionCampaignFragment
}
customerSignupNoOrdersCampaign {
...CustomerSignupNoOrdersCampaignFragment
}
noOrdersSinceLastCampaign {
...NoOrdersSinceLastCampaignFragment
}
updateYourInformationCampaign {
...UpdateYourInformationCampaignFragment
}
quarterlyComforterCampaign {
...QuarterlyComforterCampaignFragment
}
thankYouNewReviewCampaign {
...ThankYouNewReviewCampaignFragment
}
lostBigCustomerCampaign {
...LostBigCustomerCampaignFragment
}
reviewGenerationCampaign {
...ReviewGenerationCampaignFragment
}
customCampaign {
...CustomCampaignFragment
}
snapshotEmailList {
...SnapshotEmailListFragment
}
businessName
dateFormat
countryCode
timeZone
locale
contactAddressLine
contactAddressState
contactAddressCity
contactAddressZip
contactPhone
logoUrl
noProductionDays
noDeliveryDays
specialHolidays
openDetailingWithCategory
customerFacingDomain
customSignupUrl
contactEmail
twilioAccountSid
twilioAuthToken
twilioPhone
twilioPhoneLookup
whatsAppEnabled
sendSmsOptOutInformation
userNameOnEmailSubject
payableEntity
emailFooter
lockerBuildingCode
communicationTemplatesId
vcardTemplate
newPickupScheduledInstructions
sendAutomatedMessages
sendStatementEmails
signupEmailRequired
signupGroupRequired
signupAutofillCity
signupAddressRequired
signupPhoneRequired
allowOrderSplitting
groupOnDetailingSplit
offerStoreDelivery
offerDeliverySchedulingInText
useStoreZipCodeForTax
summarizeByBillingCode
showSalesTaxBreakdownForStatementOrders
sumOrderTotalOnStatements
simplifiedPaymentReceipt
cashTotalRounding
hasLogo
isHotel
isHotelProcessor
isRoomGroupHotel
isLockers
isValet
isWholesaler
pickupUnpaidOrders
pressOnlyDiscount
scheduleWillCallAtAssembly
scheduleWillCallOnDueDate
dontIncludeOrdersInDeliveryListBeforeDueDate
geoFencingEnabled
allowSubDeliveryAccountScheduling
allowSubAccountToTriggerMasterDelivery
sendAutopayReceipts
sendDeliveryAppointmentConfirmation
showDeliveryNotPaid
deliveryAppLoadListSortDescending
requireSignatureOnDelivery
requirePhotoOnDelivery
showSubRouteForDeliveryStop
genericLaundryBagMode
rushNotificationsHour
websiteDisplayText
shouldShowWebsiteOnReceipts
showAgentOnBagTag
assemblyEvenOnly
voiceAssemblyEnabled
inspectPriceAtAssembly
assemblyPrintFinancialReceiptForDeliveryCustomer
assemblyAlwaysPrintFinancialReceipt
printFinancialTicketOutsideAssembly
keepRackAssignmentOnOrderSplit
complexLotControl
overrideDueDateWithNextDelivery
autoSelectDeliveryReturnLocation
defaultDetailingTab
autoOpenAnnotationType
requireInvoiceInDetailing
displayTooManyDetailedItemsWarning
assemblyIcon
alignAssemblyIcon
newCustomerTicketIcon
newCustomerBottomTicketIcon
customerNameOnTicketBottom
pieceCountOnTicketBottom
customerPhoneOnTicket
showRoomInfoBelowAddress
laundryLicense
summarizedItemTable
showLogoOnReceipts
logoOnReceiptHeight
receiptLogoName
showPriceOnAssembly
paymentReceiptShowSignatureLine
receiptsNameShort
newLocationOnTicket
showRouteOfSameDayDelivery
itemDetailsOnTicket
itemDetailsOnOrderReceipt
newOrderPrintCount
printRetailReceipts
printDropTicketOnOrderSplit
printTicketOnOrderCloseCount
noStoreContactInfoOnReceipts
noPricingOnOrderReceipts
receiptsFooter
thermalReceiptFooter
ticketReceiptFooter
showEmailOnReceipts
showWebsiteOnReceipts
invoicePayableLine
invoiceTerms
isRestorationAccount
offerDemandDelivery
autoAddNewCustomerToWillCallRoute
groupItemDetailsByRoomNumber
merchantBatchCloseTime
saveCardsOnFile
amexSeparately
maxAutopayAmount
maxPaymentAmountWarning
autopayTerms
autopayStatements
autopayBatchStrategy
invoiceDueDays
consolidateInvoiceItemDetails
invoiceShowOrderDetails
invoiceHideOrderInfo
showDateOnStatement
callStatementInvoice
activitySummaryEnabled
attachPDFInStatementEmails
rewardsProgramEnabled
rewardsPointModifier
rewardsCurrencyModifier
rewardsConversionRequirement
rewardsRedeemAutomatically
rewardsEmailRequired
rewardsPhoneRequired
rewardsAddressRequired
rewardsCreditCardRequired
welcomeNotificationDisabled
autoTicketOnCustomerRegistration
autoTicketOnScheduledDelivery
sendCustomerUpdatedCCNotification
allowScheduleBothPickupAndDelivery
limitScheduleDeliveryToClosestRoute
allowRouteRegularCustomersToScheduleOnDemand
allowSameDaySchedulingEvenIfRouteStarted
experimentalPhotoUserExperienceOnWebsiteScheduler
priceListUpdateOrdersCondition
routeAgentPriority
commonOrdersAgent
isMailOrderPickups
lockerDropBinPickupMode
showYesRepliesInComm
autoReplyToYesRepliesInComm
customerWebsiteClothesTrackerTabEnabled
customerWebsiteWardrobeTabEnabled
customerWebsitePaymentTabEnabled
metalprogettiAssemblyLabelTemplate
metalprogettiSendRackSpaceToStorage
rushOrderSurcharge
rushOrderSurchargeTier2
sendNewOrderNotificationOnEveryVisit
includeReceiptInNewOrderNotification
printTempTagsForBarcodedItems
alwaysGenerateTemporaryBarcodes
zebraPrinterTemplate
epsonPrinterTemplate
forceOnlyBagFieldInput
detailingWithoutBarcodes
printLabelsWhenDuplicating
metalprogettiStripCharacters
autoDetailingEnabled
minItemBarcodeLength
maxItemBarcodeLength
quotesDeletionTimeFrame
minWashNFoldPrice
minWashNFoldWeight
washAndFoldWeightStations
departmentSpecificOrdersEnabled
manualPickupRestricted
displayDueDateInProductionModules
filterDetailingByItemTypes
automaticallyFilterReportsToEmployeesStore
payrollPeriod
payrollLastCloseDate
payrollFirstHalfCloseDate
payrollLastHalfCloseDate
payrollCloseDate
workweekStart
hoursUntilWeeklyOvertime
hoursUntilDailyOvertime
hoursUntilDailyDoubleTime
hoursUntilWeeklyNotification
hoursUntilDailyNotification
preventClockInBeforeTime
californiaOvertimeRules
promptForClockInOnLogin
overrideTimeClockWithUserDepartment
allowMobileAppClockIn
disableOverTimeNotifications
overnightClockOut
inventorySystemEnabled
inventorySystemEnabledProduction
permissionManageSystemSettings
permissionManageMarketing
permissionManageStationSettings
permissionAccessCustomerCredits
permissionAddCustomerDiscount
permissionAccessCustomerModule
permissionAccessDeliveryModule
permissionAccessAssemblyModule
permissionAccessSpottingModule
permissionAccessAlterAndRepairModule
permissionAccessAccountsReceivableModule
permissionAccessPressingModule
permissionAccessPriceListModule
permissionAccessCashBoxModule
permissionAccessTimeclockModule
permissionAccessPerformanceModule
permissionAccessWashAndFoldModule
permissionAccessInspectionModule
permissionAccessItemBaggingModule
permissionAccessFoldingAndBaggingModule
permissionAccessMessagesModule
permissionAccessRackingModule
permissionAccessRouteManagerModule
permissionAccessReportsModule
permissionAccessAdminReportsModule
permissionAccessIssueTrackerModule
permissionAccessSupportModule
permissionAccessEmployeeSettingsModule
permissionAccessBulkMarkinModule
permissionManualPriceEdits
permissionSpecialCareAfterOrderClose
permissionResetOrder
permissionRemoveItems
showStrikeThroughWhenReturned
usePieceCountTotalsOnTicket
taxHeaderString
includeTaxInPrice
dropDateOnAssemblyTicket
displayDepartmentOnTicket
displayCategoryOnTicket
displayPriceOnPickupSlip
useStoreSpecificOrderSequenceNumbers
showStoreSpecificOrderNumberOnTop
saleItemLedgerTrackingEnabled
inOnboarding
noCcCustomerText
pickupReminderOfferCancellations
pickupReminderEnabledForInactiveCustomers
offersRetailDelivery
regRouteQuestionChecked
pickupReminderHour24
pickupReminderIncludeDeliveries
deliveryCompleteConfirmation
defaultCustomerPaymentType
promptOnCardAvsFailure
minCardChargeAmount
defaultCustomerPriceList
cardSurcharging
cardSurchargeFixedPercentage
organizationNumber
fullstoryEnabled
initializedInferred
cashBoxMode
cashBoxModeProduction
displayExtendedStationReceiptInfo
displayExtendedZReportInfo
twilioMarketingNumber
campaignsEnabled
broadcastsEnabled
reviewModuleEnabled
defaultLanguage
weightUnit
segmentWriteKey
socialId
twilioReviewNumber
}
group {
id
localId
agentId
agentType
name
merchant {
...MerchantFragment
}
isStripeEnabled
hasOwnAgent
isGroupStop
isMasterBilling
customers {
...CustomerFragment
}
}
agent {
id
localId
name
agentId
agentType
isStripeEnabled
merchant {
...MerchantFragment
}
}
routeHolds {
id
localId
startDate
endDate
}
driverInstructions
preferences
goodOnlineAccountStanding
addresses {
id
localId
name
streetAddress
streetAddress2
city
state
zip
country
latitude
longitude
skipVerification
manualLocation
note
photo {
...PhotoFragment
}
}
defaultAddress {
id
localId
name
streetAddress
streetAddress2
city
state
zip
country
latitude
longitude
skipVerification
manualLocation
note
photo {
...PhotoFragment
}
}
defaultDeliveryAddress {
id
localId
name
streetAddress
streetAddress2
city
state
zip
country
latitude
longitude
skipVerification
manualLocation
note
photo {
...PhotoFragment
}
}
isMasterDeliveryAccount
creditCardIFrameURL
authenticatedCustomerSiteLink
creditCard {
id
localId
type
last4
expm
expy
status {
...CreditCardStatusFragment
}
}
datesForSchedulingAppointment {
id
localId
date
timeSlots {
...TimeSlotFragment
}
}
unpaidOrders {
id
localId
orders {
...OrderFragment
}
duePayment {
...DuePaymentFragment
}
}
finishedPayments {
id
localId
total
date
receiptLink
}
customerBookings {
id
localId
pickupAppointment {
...AppointmentFragment
}
deliveryAppointment {
...AppointmentFragment
}
detailedCustomerOrder {
...DetailedCustomerOrderFragment
}
orders {
...OrderFragment
}
pickupDateDisplay
deliveryDateDisplay
pickupDateTitle
deliveryDateTitle
statusText
status
progress
bookingDate
lockerId
lockerLabel
}
stagingDetailedCustomerOrder {
id
localId
customer {
...CustomerFragment
}
isStaging
detailedItemData {
...DetailedItemDataFragment
}
}
readyBags {
id
localId
barcode
display
order {
...OrderFragment
}
location {
...RackLogFragment
}
}
isRouteCustomer
customerRelationship
deliveryStop
demographic
apiTokenForCustomer
activePromotions {
id
localId
name
couponCode
customerCouponCode
disabled
validForMarketing
}
subscription {
id
localId
pending {
...CustomerSubscriptionEntryFragment
}
active {
...CustomerSubscriptionEntryFragment
}
log {
...CustomerSubscriptionLogFragment
}
renewalDate
}
subscriptionUsage {
id
localId
type
limit
usage
}
kioskAccessCode
email
cellPhone
cellPhoneDisplay
homePhone
activePhone
firstName
lastName
companyName
fullName
store {
id
localId
agentId
agentType
name
isStripeEnabled
merchant {
...MerchantFragment
}
phone
address
city
state
zip
latitude
longitude
externalStoreIdentifier
googlePlaceId
stations {
...StationFragment
}
hasCounterStation
}
customFields {
id
localId
label
value
}
isInSignupProcess
paymentStatus {
id
localId
paymentReference
paymentStatus
}
wardrobeCategories {
id
localId
name
sort
description
disabled
isRetail
}
wardrobeItems {
id
localId
type {
...ItemTypeFragment
}
barcode
brandDisplay
itemStatus {
...ItemStatusFragment
}
colors {
...ColorFragment
}
photo {
...PhotoFragment
}
}
paymentPreference
rewardPoints
rewards {
id
localId
date
amount
status
expiryDate
redeemDate
}
missingRewardSettingCriteria
isSubBilling
deliveryNotes {
id
localId
date
customer {
...CustomerFragment
}
message
mainCategory
subCategory
status
saleId
itemId
lastUpdated
dueDate
assignee {
...UserFragment
}
photos {
...PhotoFragment
}
}
communication {
id
localId
direction
type
date
subject
staff {
...UserFragment
}
contactFlag
body
}
}
}
Variables
{"routeId": 4, "sortedStopIds": ["4"]}
Response
{
"data": {
"sortDeliveryStops": [
{
"id": "4",
"localId": 4,
"name": "xyz789",
"futureAppointments": [Appointment],
"settings": Settings,
"group": Group,
"agent": Agent,
"routeHolds": [CustomerRouteHold],
"driverInstructions": "abc123",
"preferences": ["4"],
"goodOnlineAccountStanding": false,
"addresses": [CustomerAddress],
"defaultAddress": CustomerAddress,
"defaultDeliveryAddress": CustomerAddress,
"isMasterDeliveryAccount": false,
"creditCardIFrameURL": "abc123",
"authenticatedCustomerSiteLink": "xyz789",
"creditCard": CreditCard,
"datesForSchedulingAppointment": [ScheduleDate],
"unpaidOrders": UnpaidOrders,
"finishedPayments": [PaymentReceipt],
"customerBookings": [CustomerBooking],
"stagingDetailedCustomerOrder": DetailedCustomerOrder,
"readyBags": [CustomerBag],
"isRouteCustomer": false,
"customerRelationship": "STORE_ONLY",
"deliveryStop": 987,
"demographic": 123,
"apiTokenForCustomer": "xyz789",
"activePromotions": [Promotion],
"subscription": CustomerSubscription,
"subscriptionUsage": [SubscriptionUsage],
"kioskAccessCode": "abc123",
"email": "abc123",
"cellPhone": "abc123",
"cellPhoneDisplay": "xyz789",
"homePhone": "abc123",
"activePhone": "xyz789",
"firstName": "abc123",
"lastName": "xyz789",
"companyName": "abc123",
"fullName": "abc123",
"store": Store,
"customFields": [CustomerFieldValue],
"isInSignupProcess": false,
"paymentStatus": PaymentStatus,
"wardrobeCategories": [ItemCategory],
"wardrobeItems": [OrderItem],
"paymentPreference": "AUTOPAY",
"rewardPoints": 123.45,
"rewards": [Reward],
"missingRewardSettingCriteria": ["ADD_EMAIL_CRITERIA"],
"isSubBilling": false,
"deliveryNotes": [Note],
"communication": [Communication]
}
]
}
}
sortItemValidationRules
Description
Sort item validation rules. Requires access level: Sr Manager
Response
Returns a Boolean
Arguments
Name | Description |
---|---|
sortedRuleIds - [ID]!
|
A list of sorted rule ids |
Example
Query
mutation SortItemValidationRules($sortedRuleIds: [ID]!) {
sortItemValidationRules(sortedRuleIds: $sortedRuleIds)
}
Variables
{"sortedRuleIds": ["4"]}
Response
{"data": {"sortItemValidationRules": false}}
sortTaxConfigurationRules
Description
Sort tax configuration rules. Requires access level: Sr Manager
Response
Returns a Boolean
Arguments
Name | Description |
---|---|
sortedRuleIds - [ID]!
|
A list of sorted rule ids |
Example
Query
mutation SortTaxConfigurationRules($sortedRuleIds: [ID]!) {
sortTaxConfigurationRules(sortedRuleIds: $sortedRuleIds)
}
Variables
{"sortedRuleIds": ["4"]}
Response
{"data": {"sortTaxConfigurationRules": false}}
startRouteOptimization
Description
Schedules a background job for automatic optimizing of a route.
Response
Returns a Boolean
Example
Query
mutation StartRouteOptimization(
$routeId: ID!,
$date: Int
) {
startRouteOptimization(
routeId: $routeId,
date: $date
)
}
Variables
{"routeId": "4", "date": 123}
Response
{"data": {"startRouteOptimization": false}}
startTextSignIn
Description
Takes either a phone number or an email and sends a sign in code to the user
Response
Returns a StartTextSignInResponse
Example
Query
mutation StartTextSignIn(
$phoneNumber: String,
$email: String
) {
startTextSignIn(
phoneNumber: $phoneNumber,
email: $email
) {
id
localId
phoneNumber
email
authProcess
}
}
Variables
{
"phoneNumber": "abc123",
"email": "xyz789"
}
Response
{
"data": {
"startTextSignIn": {
"id": "4",
"localId": 4,
"phoneNumber": "abc123",
"email": "xyz789",
"authProcess": "LOGIN_ONGOING"
}
}
}
stationSignIn
Description
Staff station sign-in. Requires a valid station cookie.
Response
Returns a User!
Arguments
Name | Description |
---|---|
signInMethod - StationSignInMethodEnum!
|
|
secret - String!
|
The user's password, pin code or badge barcode depending on the sign-in method |
username - String
|
Required if signing in with password |
Example
Query
mutation StationSignIn(
$signInMethod: StationSignInMethodEnum!,
$secret: String!,
$username: String
) {
stationSignIn(
signInMethod: $signInMethod,
secret: $secret,
username: $username
) {
id
localId
name
firstName
}
}
Variables
{
"signInMethod": "password",
"secret": "xyz789",
"username": "abc123"
}
Response
{
"data": {
"stationSignIn": {
"id": 4,
"localId": 4,
"name": "xyz789",
"firstName": "abc123"
}
}
}
terminatePayment
Description
Terminates an ongoing payment
Response
Returns a PaymentStatus!
Example
Query
mutation TerminatePayment(
$customerId: String!,
$paymentReference: String!
) {
terminatePayment(
customerId: $customerId,
paymentReference: $paymentReference
) {
id
localId
paymentReference
paymentStatus
}
}
Variables
{
"customerId": "abc123",
"paymentReference": "xyz789"
}
Response
{
"data": {
"terminatePayment": {
"id": 4,
"localId": 4,
"paymentReference": "xyz789",
"paymentStatus": "AUTHORIZED"
}
}
}
unloadTicketsOnMPArm
Description
Unload tickets for a specific arm
Response
Returns a Boolean
Example
Query
mutation UnloadTicketsOnMPArm(
$tickets: [String]!,
$unloadArm: String!
) {
unloadTicketsOnMPArm(
tickets: $tickets,
unloadArm: $unloadArm
)
}
Variables
{
"tickets": ["xyz789"],
"unloadArm": "abc123"
}
Response
{"data": {"unloadTicketsOnMPArm": true}}
updateHoliday
Description
Update or Create a holiday (set it open, closed or no delivery) Requires access level: Sr Manager
Response
Returns a Holiday!
Arguments
Name | Description |
---|---|
id - ID!
|
Id of the holiday to update |
input - HolidayInput!
|
The holiday data to update |
Example
Query
mutation UpdateHoliday(
$id: ID!,
$input: HolidayInput!
) {
updateHoliday(
id: $id,
input: $input
) {
id
localId
date
noProduction
noDelivery
dayOfWeek
}
}
Variables
{"id": 4, "input": HolidayInput}
Response
{
"data": {
"updateHoliday": {
"id": "4",
"localId": 4,
"date": "xyz789",
"noProduction": false,
"noDelivery": true,
"dayOfWeek": "abc123"
}
}
}
updatePhoto
Description
Updates an existing photo's description
Response
Returns a Photo
Arguments
Name | Description |
---|---|
input - UpdatePhotoInput!
|
Example
Query
mutation UpdatePhoto($input: UpdatePhotoInput!) {
updatePhoto(input: $input) {
id
localId
status
thumbnailUrl
smallUrl
largeUrl
description
}
}
Variables
{"input": UpdatePhotoInput}
Response
{
"data": {
"updatePhoto": {
"id": 4,
"localId": 4,
"status": "xyz789",
"thumbnailUrl": "abc123",
"smallUrl": "abc123",
"largeUrl": "xyz789",
"description": "abc123"
}
}
}
updateSettings
Description
Update settings, global to the business or a scope such as brand, group or customer. Returns a list of messages for user display.
Response
Returns [String]
Arguments
Name | Description |
---|---|
nodeId - ID!
|
Id of the node to update a setting for (a customer, business etc) |
input - SettingsInput!
|
the settings to update |
Example
Query
mutation UpdateSettings(
$nodeId: ID!,
$input: SettingsInput!
) {
updateSettings(
nodeId: $nodeId,
input: $input
)
}