Claims API

File and manage warranty claims programmatically

Claims API

Use the Claims API to submit warranty claims, upload evidence files, and query claim status.

Submit a claim

POST /api/public/claims/submit

Submits a claim against an existing policy. The claim is created with pending status and triggers email notifications to the customer and merchant.

Headers (recommended): X-Shopify-Shop-Domain, X-Shopify-Customer-Id

Required body fields:

  • policyId — the policy to file against
  • claimType — see claim types below
  • description — what happened
  • dateOfIncident — ISO date of the incident

Optional: additionalInfo

Claim types

ValueDescription
manufacturer_defectProduct failed due to manufacturing issue
accidental_damageDamaged by accident
wear_and_tearDegraded through normal use
spill_or_stainDamaged by liquid or staining
lost_or_stolenLost or stolen
otherOther reason

Returns claimId on success. If the policy has reached its claim limit, returns a CLAIM_LIMIT_REACHED error with details.

Submit a manual claim

POST /api/public/claims/submit-manual

Submits a claim without an existing policy. Used for merchant-initiated claims (e.g., from POS).

Required header: X-Shopify-Shop-Domain

Required body fields: customerEmail, customerName, productName, claimType, description, dateOfIncident

Optional: customerPhone, orderNumber, additionalInfo

Note Manual claims require merchant review to be linked to a policy in the dashboard.

Fetch claims for a policy

GET /api/public/claims/fetch?policy_id={policyId}

Required headers: X-Shopify-Shop-Domain, X-Shopify-Customer-Id

Returns all claims for the specified policy and customer, including claim number, status, type, reason, and dates.

Get claim evidence

GET /api/public/claims/{id}/evidence

Required headers: X-Shopify-Shop-Domain, X-Shopify-Customer-Id

Returns evidence files (photos, videos) attached to the claim.

Upload evidence files

POST /api/public/claims/upload-urls

Generates a presigned URL for uploading evidence directly to cloud storage.

Required body fields: fileName, fileType (MIME type), fileSize (bytes), claimId, fileCategory (photo or video)

File limits:

  • Photos (JPEG, PNG, GIF, WebP): max 10 MB
  • Videos (MP4, QuickTime, WebM): max 100 MB

Upload workflow:

  1. Call /claims/upload-urls to get a presigned URL
  2. PUT the file directly to that URL with the correct Content-Type header

Claim statuses

StatusDescription
pendingSubmitted, awaiting merchant review
approvedApproved by merchant
deniedDenied by merchant
in_reviewBeing actively reviewed
resolvedFully resolved (replacement, refund, etc.)

Book a Demo

See how myUmbrella can transform your warranty program

Choose a Time

Select a convenient time for your personalized demo

ESC

Start typing to search across all content

No results found

Try a different search term