API reference

Custom GraphQL operations.

Declared in features/keystone/mutations/index.ts, served at /api/graphql. Commands take an idempotencyKey, write a DomainAuditEvent and a DomainOutboxEvent in the same transaction, and fail on key reuse with different data ("Lead edit idempotency key was reused with different details").

GroupOperations
Storefront readspublicInventoryVehicles, publicInventoryVehicle, publicInventoryVehicleRecord, publicInventoryCount, storefrontProfile
Public submissionssubmitInquiry, submitTestDrive, submitTradeIn, submitFinancing, submitServiceBooking
Customer accountregisterCustomerAccount, requestCustomerEmailVerification, confirmCustomerEmailVerification, cancelCustomerBooking, rescheduleCustomerBooking, customerRequestHistory, customerRequestDetail, customerPurchases, customerServiceHistory, customerServiceOrder, customerPayments, customerEmailLinkStatus
Workspace readsinventoryWorkspace, crmWorkspace, dealDeskWorkspace, dealWorkspace, dealLenderOffers, financeWorkspace, deliveryWorkspace, fixedOpsWorkspace, accountingWorkspace, operationalReport, auditSearch, domainTimeline, customerDuplicateCandidates
InventoryintakeInventoryVehicle, startInventoryAcquisition, transitionInventoryAcquisition, establishInventoryStock, moveInventoryStock, recordInventoryCost, openInventoryReconWorkItem, transitionInventoryReconWorkItem, updateInventoryMerchandisingDraft, updateInventoryVehicleDetails, submitInventoryMerchandising, decideInventoryMerchandising, recordInventoryFeedRun, addInventoryVehiclePhoto, arrangeInventoryVehiclePhotos, removeInventoryVehiclePhoto
CRMopenLead, updateLeadDetails, transitionLead, recordLeadInteraction, createLeadTask, completeTask, transferLeadOwnership, routeLead, configureLeadRoutingRule, enrollLeadCadence, advanceLeadCadence, manageSalesVisit, updateCustomerContact, updateCustomerCommunicationPreferences, mergeCustomers, linkCustomerHousehold, unlinkCustomerHousehold, updateTestDriveWorkflow, createWalkInTradeIn, recordTradeInAppraisal
Deals and deliverycreateDealPencil, saveDealWorksheet, presentDealWorksheet, acceptDealWorksheet, selectDealLenderOffer, reopenDealWorksheet, setDealTradeIn, transitionDeal, manageDeliveryCase, manageWeOweItem, completeDealDelivery
FinancequeueFinancingApplication, recordLenderSubmissionStatus, recordLenderDecision, openFinanceFollowUp, configureFinanceProduct, recordFinanceProductQuote, presentFinanceMenu, decideFinanceMenu, recordFinanceComplianceCheck, manageFinanceContractPackage, reviewFinancePrerequisites, manageFinanceFundingCase, recordCashDealDeposit, recordFinanceProductCancellation
Service and partstransitionServiceAppointment, openServiceOrder, recordServiceOrderEvidence, addServiceOrderLineItem, updateServiceOrderLineItem, removeServiceOrderLineItem, setServiceOrderTax, transitionServiceOrder, manageLaborOperation, configurePart, recordPartsMovement, managePartsPurchaseOrder
Payments and accountingcreatePaymentCheckout, requestPaymentRefund, reconcilePaymentTransaction, handlePaymentProviderWebhook, configureAccountingMapping, stageAccountingBatch, manageAccountingBatch
Organization and reportingchangeDealerMembership, configureRetentionPolicy, saveOperationalReport, runSavedReport, queueDueSavedReports, ensureDealershipOnboardingRecord, updateActiveUser, redirectToInit

Lists that are not command-only (for example Make, Model, ServicePackage, Role, DealerGroup, Rooftop, DealershipProfile, PaymentProvider, ApiKey, VehicleConditionReport, VehicleHistory) also use Keystone's generated CRUD.