v4 Orders
POST /v4/orders
Create a single roof measurement order.
Request
json
{
"customerName": "John Smith",
"customerEmail": "john.smith@example.com",
"address": "123 Main Street, Austin, TX 78701",
"latitude": 30.2672,
"longitude": -97.7431,
"propertyType": "Residential",
"serviceId": "SERVICE_ID",
"rushOrder": false,
"pdfRequired": true,
"additionalInstructions": "Please include detached garage.",
"insuredName": "Jane Doe",
"claimNumber": "CLM-2026-001234",
"notes": "Internal reference: contract #4421",
"referenceImageUrl": "https://example.com/photos/123-main.jpg"
}| Field | Required | Notes |
|---|---|---|
customerName, customerEmail, address | Yes | Property owner and location |
serviceId | Yes | From GET /v4/services |
propertyType | Yes | Residential or Commercial |
latitude, longitude | No | Improves address resolution |
rushOrder, pdfRequired | No | Default false / true |
additionalInstructions, notes | No | Free text for the measurement team |
insuredName, claimNumber | No | Insurance metadata |
referenceImageUrl | No | Publicly reachable photo URL |
Response 201: the created order, including its orderId and status.
POST /v4/orders/bulk
Same body shape, as an array, up to 50 orders per call.
GET /v4/orders
Paged list of your orders.
bash
curl "https://sandboxclient-api.roofangle.com/v4/orders?page=1&pageSize=50" \
-H "Authorization: Bearer eyJhbGciOi..."GET
/v4/ordersPaste your sandbox credentials to run this request. The secret is held in memory for this tab only and is never stored. Need keys? Create a sandbox account.
GET /v4/orders/
Fetch one order by id, including current status.
GET
/v4/orders/%7BorderId%7DPaste your sandbox credentials to run this request. The secret is held in memory for this tab only and is never stored. Need keys? Create a sandbox account.
GET /v4/orders/by-customer
bash
curl "https://sandboxclient-api.roofangle.com/v4/orders/by-customer?email=customer@example.com" \
-H "Authorization: Bearer eyJhbGciOi..."GET
/v4/orders/by-customerPaste your sandbox credentials to run this request. The secret is held in memory for this tab only and is never stored. Need keys? Create a sandbox account.
Prefer webhooks over polling
Subscribe to order.delivered instead of polling order status. It is faster and cheaper for both sides.
