🔗 Public API Overview
RepairMinder provides a public API for integrating with external systems. This overview covers common use cases and how to get started.
What is the Public API?
The API allows external systems to:
- Create orders automatically
- Add enquiries/leads
- Add devices to orders
- Look up order status
Getting Started
API Keys
To use the API, you need an API key:
- Go to Settings → API Keys
- Click Create API Key
- Give it a name (e.g., "Website Integration")
- Copy the key (it won't be shown again)
- Store securely
Authentication
Include your API key in request headers:
Authorization: Bearer your-api-key-here
Base URL
https://api.repairminder.com/api/public/
Common Use Cases
1. Automatically Add Orders
Use case: Your website or booking system creates repair orders automatically.
Endpoint: POST /api/public/orders
Example:
{
"customer_name": "John Smith",
"customer_email": "[email protected]",
"customer_phone": "07700900123",
"location_id": "loc_abc123",
"notes": "Screen replacement needed"
}
Response:
{
"success": true,
"order_id": "ord_xyz789",
"reference": "RM-10042"
}
2. Create Enquiries/Leads
Use case: Capture leads from external sources (website, advertising, etc.)
Endpoint: POST /api/public/enquiries
Example:
{
"customer_name": "Jane Doe",
"customer_email": "[email protected]",
"customer_phone": "07700900456",
"message": "How much to fix a cracked iPhone 15 screen?",
"source": "Google Ads"
}
3. Add Devices to Orders
Use case: Add device details after order creation.
Endpoint: POST /api/public/orders/{order_id}/devices
Example:
{
"brand": "Apple",
"model": "iPhone 15 Pro",
"serial": "ABC123XYZ",
"fault": "Cracked screen"
}
4. Look Up Order Status
Use case: Check order status from external system.
Endpoint: GET /api/public/orders/{order_id}
Response:
{
"order_id": "ord_xyz789",
"reference": "RM-10042",
"status": "in_progress",
"customer_name": "John Smith",
"created_at": "2025-12-24T10:30:00Z"
}
API Documentation
Full API documentation is available in your RepairMinder dashboard:
- Go to Settings → API Keys
- Click View API Documentation
- Browse available endpoints
- See request/response examples
Rate Limits
To ensure fair usage:
- 100 requests per minute per API key
- Exceeded limits return 429 status
Error Handling
API errors return JSON with details:
{
"success": false,
"error": "validation_error",
"message": "customer_email is required",
"field": "customer_email"
}
Common Error Codes
| Code | Meaning |
|---|---|
| 400 | Bad request (check your data) |
| 401 | Invalid or missing API key |
| 404 | Resource not found |
| 429 | Rate limit exceeded |
| 500 | Server error (contact support) |
Webhooks (Outgoing)
RepairMinder can also send data to your systems:
- Order status changes
- New enquiries
- Payment received
Configure webhooks in Settings → Integrations.
Security
Keep Keys Secure
- Never expose API keys in client-side code
- Use environment variables
- Rotate keys if compromised
IP Restrictions
Optionally restrict API access by IP:
- Edit the API key
- Add allowed IP addresses
- Requests from other IPs are rejected
Testing
Use test mode for development:
- Create a test API key
- Prefix requests with
/test/ - Data is isolated from production
Support
For API integration support:
- Check the full documentation in Settings
- Contact support with your integration details
- Include request/response examples when reporting issues
Next Steps
- WordPress - Pre-built WordPress integration
- Settings → API Keys - Manage your API keys