API Documentation
The Appliance Rentals Provider API lets you manage your product listings, set location-specific pricing, and view leads programmatically.
Base URL
https://www.appliancerentals.com/api/v2/provider
Provider access required
You must be an approved provider with an API key to use this API. Apply here.
Authentication
All API requests must include your API key in the X-API-Key header.
# Example request with authentication curl -X GET https://www.appliancerentals.com/api/v2/provider/products \ -H "Accept: application/json" \ -H "X-API-Key: ar_YOUR_API_KEY_HERE"
Your API key will be provided when your provider application is approved. Keep it secure—treat it like a password.
Rate Limits
API requests are rate-limited to prevent abuse.
| Limit | Details |
|---|---|
| 60 requests/minute | Per API key |
| 429 Too Many Requests | Returned when limit exceeded. Retry after 60 seconds. |
Error Handling
All errors return a consistent JSON structure:
{
"success": false,
"message": "Descriptive error message",
"errors": {
"field_name": ["Validation error details"]
}
}
| Status | Meaning |
|---|---|
| 200 | Success |
| 201 | Created |
| 401 | Invalid or missing API key |
| 403 | Not authorized (not your resource) |
| 404 | Resource not found |
| 422 | Validation error |
| 429 | Rate limit exceeded |
| 500 | Server error |
Products
/products
List all products for your account.
Response
{
"success": true,
"data": [
{
"id": 1,
"name": "Standard Washer",
"description": "Top-load washing machine, 4.5 cu ft",
"category": "washer",
"base_price": "45.00",
"image": "https://example.com/washer.jpg",
"is_active": true,
"created_at": "2026-02-01T12:00:00Z"
}
]
}
/products
Create a new product listing.
Request Body
| Field | Type | Required | Description |
|---|---|---|---|
| name | string | Yes | Product name (max 255 chars) |
| description | string | No | Product description |
| category_id | integer | No | Category ID (washer, dryer, etc.) |
| base_price | decimal | Yes | Monthly rental price |
| image | string | No | Image URL |
Example
curl -X POST https://www.appliancerentals.com/api/v2/provider/products \ -H "Content-Type: application/json" \ -H "Accept: application/json" \ -H "X-API-Key: ar_YOUR_API_KEY_HERE" \ -d '{ "name": "Standard Washer", "description": "Top-load washing machine, 4.5 cu ft", "base_price": 45.00, "category_id": 1 }'
/products/{`{id}`}
Update an existing product. Send only the fields you want to change.
curl -X PUT https://www.appliancerentals.com/api/v2/provider/products/1 \ -H "Content-Type: application/json" \ -H "X-API-Key: ar_YOUR_API_KEY_HERE" \ -d '{"base_price": 49.99}'
/products/{`{id}`}
Delete a product and all associated pricing.
curl -X DELETE https://www.appliancerentals.com/api/v2/provider/products/1 \
-H "X-API-Key: ar_YOUR_API_KEY_HERE"
Pricing
/products/{`{id}`}/pricing
Get location-specific pricing for a product.
{
"success": true,
"data": {
"product_id": 1,
"base_price": "45.00",
"pricing": [
{
"location_id": 33,
"location_name": "Circleville, OH",
"price": "50.00",
"is_available": true
}
]
}
}
/products/{`{id}`}/pricing
Set or update location-specific pricing for a product. Each entry in the pricing array creates or updates pricing for that location.
curl -X PUT https://www.appliancerentals.com/api/v2/provider/products/1/pricing \ -H "Content-Type: application/json" \ -H "X-API-Key: ar_YOUR_API_KEY_HERE" \ -d '{ "pricing": [ {"location_id": 33, "price": 50.00, "is_available": true}, {"location_id": 34, "price": 45.00, "is_available": true} ] }'
Leads
/leads
List leads sent to your account. Supports pagination and status filtering.
Query Parameters
| Param | Type | Description |
|---|---|---|
| status | string | Filter by status: pending, sent, accepted, rejected |
| page | integer | Page number (default: 1) |
| per_page | integer | Results per page (default: 20, max: 100) |
{
"success": true,
"data": [
{
"id": 42,
"status": "sent",
"product": "Standard Washer",
"customer": {
"first_name": "John",
"last_name": "Doe",
"email": "[email protected]",
"phone": "555-123-4567"
},
"sent_at": "2026-02-01T14:30:00Z",
"created_at": "2026-02-01T14:30:00Z"
}
],
"pagination": {
"current_page": 1,
"per_page": 20,
"total": 1
}
}
/leads/{`{id}`}
Get full details for a specific lead.
Need help?
If you have questions about the API or need support with your integration, contact us at [email protected].