API Documentation
The Sheltr Claims Engine API lets you submit product protection claims, get AI-powered damage assessments, fraud detection scoring, and auto-approve/deny decisions in seconds.
Overview
Base URL: https://sheltr-crsk.polsia.app
All request and response bodies are JSON. Include Content-Type: application/json in your headers.
Authentication
API endpoints require your merchant API key. Pass it as:
X-API-Key: sk_sheltr_your_api_key_here
Or as a Bearer token:
Authorization: Bearer sk_sheltr_your_api_key_here
Quick Start
Submit your first claim in 3 steps:
# 1. Register your merchant account
curl -X POST https://sheltr-crsk.polsia.app/api/merchants/register \
-H "Content-Type: application/json" \
-d '{"email":"you@company.com","password":"secure123","company_name":"Acme"}'
# 2. Save your API key from the response
# 3. Submit a claim
curl -X POST https://sheltr-crsk.polsia.app/api/claims \
-H "Content-Type: application/json" \
-H "X-API-Key: sk_sheltr_YOUR_KEY" \
-d '{
"customer_email": "customer@email.com",
"damage_photo_url": "https://example.com/photo.jpg",
"damage_description": "Screen cracked after drop",
"purchase_price": 299.99
}'
Register Merchant
POST
/api/merchants/register
Create a new merchant account. Returns an API key for authenticating future requests.
Request Body
| Field | Type | Required | Description |
|---|---|---|---|
string | Yes | Merchant email address | |
| password | string | Yes | Account password |
| company_name | string | Yes | Business name |
Login
POST
/api/merchants/login
Log in and retrieve your API key.
Update Settings
PUT
/api/merchants/settings
Adjust AI decision thresholds for your account.
Auth:
X-Session-TokenRequest Body
| Field | Type | Default | Description |
|---|---|---|---|
| auto_approve_below_score | number | 0.30 | Claims with fraud score below this are auto-approved |
| auto_deny_above_score | number | 0.80 | Claims with fraud score above this are auto-denied |
| max_auto_approve_value | number | 500 | Maximum $ value for auto-approval |
| require_photo | boolean | true | Require damage photo for claims |
Submit Claim
POST
/api/claims
Submit a product protection claim for AI assessment. Returns damage analysis, fraud score, decision, and next steps.
Auth:
X-API-KeyRequest Body
| Field | Type | Required | Description |
|---|---|---|---|
| customer_email | string | Yes | Customer's email address |
| damage_photo_url | string | * | URL of damage photo (* required if merchant requires photo) |
| damage_description | string | No | Customer's description of the damage |
| customer_name | string | No | Customer's name |
| product_id | integer | No | Sheltr product ID |
| product_external_id | string | No | Your system's product ID |
| purchase_date | date | No | Date of purchase (ISO 8601) |
| purchase_price | number | No | Original purchase price |
Response
{
"claim": {
"id": 1,
"claim_number": "SH-M1K2N3-A4B5C6",
"status": "approved"
},
"assessment": {
"damage_type": "screen_crack",
"damage_severity": "severe",
"confidence": 0.92,
"description": "Visible spider-web crack pattern on phone screen..."
},
"fraud": {
"score": 0.1,
"signals": []
},
"decision": {
"result": "approved",
"reasoning": "Auto-approved: Low fraud risk, damage confirmed...",
"resolution": "repair"
},
"next_steps": [
"Repair center will be assigned within 24 hours",
"Customer will receive shipping label via email"
]
}
List Claims
GET
/api/claims
List all claims for your merchant account. Supports filtering by status.
Auth:
X-API-KeyQuery Parameters
| Param | Type | Description |
|---|---|---|
| status | string | Filter: approved, denied, review, pending |
| limit | integer | Results per page (default 50) |
| offset | integer | Skip N results for pagination |
Get Claim Details
GET
/api/claims/:id
Get full details for a specific claim. Can use claim ID or claim number.
Auth:
X-API-KeyOverride Decision
PUT
/api/claims/:id/decision
Manually override the AI decision for a claim. Useful for claims flagged for review.
Auth:
X-API-KeyRequest Body
| Field | Type | Required | Description |
|---|---|---|---|
| decision | string | Yes | "approved" or "denied" |
| resolution_type | string | No | "repair", "replacement", or "refund" |
| reasoning | string | No | Reason for the override |
Create Product
POST
/api/products
Register a product for warranty tracking. Use external_id to sync with your system.
Auth:
X-API-KeyList Products
GET
/api/products
List all registered products for your merchant account.
Auth:
X-API-Key