Skip to content

Error codes

HTTP 200 with errCode = 0 means business success. The errCode values below come from the Go Error.go constants (identical to the errCode in response JSON).

Retries: only 920xxx and clearly recoverable cases such as 720404 (token expired) are worth retrying; for other codes fix the request parameters or business state first. See outbound retry rules.

801034 = no extended-warranty items, nothing to insure. 801035 (“warranty cancellation not supported”) is an unused constant. The current policy is that both shipping protection and extended warranty can be cancelled only before shipment, via CancelServiceOrder; for exceptional post-shipment needs contact the product and business teams.

CodeDescriptionRetryableCommon endpoints
720401Failed to obtain tokenCase by caseRequest an access token
720402Failed to verify tokenNoOutbound endpoints requiring Bearer
720404Token expiredYesRe-request a token
720405Failed to refresh tokenCase by caseRequest token
720406Failed to generate appSecret (legacy server message reads “appSecrect”)NoRequest token
720407Invalid appId parameter / failed to generate appNoRequest token
720408App not foundNoRequest token; check the AppAuth
CodeDescriptionRetryableCommon endpoints
801001Currency errorNoQuote, sync order, cancellation — anything with currency
801002Unsupported storefront platformNoSync platform order
801003Data comparison mismatchNoSync endpoints
801004ID mismatchNoSync, cancellation
801005Shipment data already exists; cannot cancel (only orders without synced shipments can be cancelled)NoCancel coverage (service order)
801011Quote record not foundNoSync platform order (referencing a quote)
801012Quote ownership mismatchNoSync platform order
801013Quote errorNoCart quote
801014Failed to parse an amountNoQuote / sync / cancellation with amount fields
801015Already insured; no need to insure againNoSync platform order
801016Already cancelled; cannot insure againNoSync platform order
801017Already paid; no need to pay againNoSync platform order
801018Refund failed; cancellation failedCase by caseCancel coverage
801021Risk-control record not foundNoQuote, sync order
801022No shipping-protection item; nothing to insureNoSync platform order
801023No shipment informationNoSync shipment, claims
801024Shipment synced but order unpaid; becomes pending-underwriting after paymentNoSync shipment
801025No underwriting action neededNoSync platform order
801026Empty rate; cannot complete the quoteNoCart quote
801027Shipping-protection price exceeds the maximum coverageNoQuote, sync order
801028Shipping-protection price is at or below the minimum coverageNoQuote, sync order
801029Shipping-protection premium is 0; possibly no insurable itemNoQuote, sync order
801030shop auth not foundNoAuth-related outbound endpoints
801031Failed to get the shipping-protection service switchCase by caseQuote
801032Shipping-protection service is not enabledNoQuote, sync order
801033Shipping protection: order created before app installationNoSync platform order
801034No extended-warranty item; nothing to insureNoSync platform order
801035Warranty cancellation not supported—Unused constant; should not appear in production
801036Refund record already existsNoCancel coverage

These codes indicate transient failures or concurrency conflicts; retrying with exponential backoff is recommended (a retry still requires HTTP 200 and an errCode check):

CodeDescriptionRetryableCommon endpoints
920000Network connection timed outYesAll outbound
920001Connection refusedYesAll outbound
920002Connection resetYesAll outbound
920003Connection abortedYesAll outbound
920004DNS resolution failedYesAll outbound
920005TLS handshake failedYesAll outbound
920020Service busyYesAll outbound
920021Rate limitedYes (slow down)All outbound
920022Temporarily out of resourcesYesAll outbound
920023Internal server errorYesAll outbound
920024Service temporarily unavailableYesAll outbound
920025Gateway timeoutYesAll outbound
920026System under maintenanceYesAll outbound
920040Data modified (optimistic lock)YesAll outbound
920041Resource lockedYesAll outbound
920042Transaction conflictYesAll outbound
920043Deadlock detectedYesAll outbound
920060Database connection failedYesAll outbound
920061Redis connection failedYesAll outbound
920062Message-queue connection failedYesAll outbound
920063Object-storage connection failedYesAll outbound
920064Third-party service timeoutYesAll outbound
920065Third-party service transient errorYesAll outbound
920080Data synchronization in progressYesAll outbound
920081Cache staleYesAll outbound
920082Version conflictYesAll outbound

Delay auto-compensation error codes (design draft)

Section titled “Delay auto-compensation error codes (design draft)”
CodeDescriptionRetryableCommon endpoints
801046Grant already confirmed for this claim; do not confirm twiceNoGrant confirmation
801047Claim state does not allow grant confirmation (not pending-grant)NoGrant confirmation
801048Grant-instruction callback URL not configured; points / gift card unavailableNoGrant instruction callback