Add to Workshop
Add an inventory item or quantity to the workshop.
Endpointโ
POST /v1/workshop
Authenticationโ
Requires an API key with the products:write scope.
Request Bodyโ
| Field | Type | Required | Description |
|---|---|---|---|
product_id | integer | Yes | The product ID |
inventory_id | integer | No | Specific inventory item ID (for item-level tracking) |
quantity | integer | No | Quantity to add (for group-level tracking, default: 1) |
reason | string | No | maintenance, repair, cleaning, other |
scheduled_start_at | string | No | When to start (ISO 8601). If not provided, starts immediately |
scheduled_end_at | string | No | When to end (ISO 8601) |
auto_complete | boolean | No | Auto-complete when scheduled_end_at is reached (default: false) |
start_immediately | boolean | No | Start now even if scheduled_start_at is provided (default: true) |
note | string | No | Initial note to add (max 1000 characters) |
Responseโ
Success (201 Created)โ
{
"data": {
"id": 5,
"product": {
"id": 5,
"name": "Mountain Bike"
},
"variation": {
"id": 3,
"name": "Large, Red"
},
"inventory": {
"id": 12,
"identifier": "Bike #5",
"unique_identifier": "SN-00012"
},
"quantity": 1,
"status": "in_workshop",
"reason": "repair",
"scheduled_start_at": null,
"scheduled_end_at": "2026-02-05T17:00:00+00:00",
"auto_complete": false,
"added_to_workshop_at": "2026-02-01T09:00:00+00:00",
"removed_from_workshop_at": null,
"is_overdue": false,
"notes_count": 1,
"created_at": "2026-02-01T09:00:00+00:00",
"updated_at": "2026-02-01T09:00:00+00:00"
},
"meta": {
"request_id": "req_abc123",
"timestamp": "2026-02-01T09:00:00+00:00"
}
}
Example Requestsโ
Send Specific Item to Workshop Immediatelyโ
curl -X POST "https://app.equipdash.com/api/v1/workshop" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"product_id": 5,
"inventory_id": 12,
"reason": "repair",
"scheduled_end_at": "2026-02-05T17:00:00Z",
"note": "Broken brake cable - needs replacement"
}'
Schedule Item for Future Workshopโ
curl -X POST "https://app.equipdash.com/api/v1/workshop" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"product_id": 5,
"inventory_id": 12,
"reason": "maintenance",
"scheduled_start_at": "2026-02-10T09:00:00Z",
"scheduled_end_at": "2026-02-10T17:00:00Z",
"auto_complete": true,
"start_immediately": false
}'
Add Quantity to Workshop (Group-Level)โ
curl -X POST "https://app.equipdash.com/api/v1/workshop" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"product_id": 10,
"quantity": 5,
"reason": "cleaning"
}'
Errorsโ
| Status | Code | Description |
|---|---|---|
| 401 | authentication_required | No API key provided |
| 403 | insufficient_scope | API key lacks products:write scope |
| 404 | resource_not_found | Product not found |
| 422 | validation_error | Invalid request data |
Common Validation Errorsโ
- Product not found: Product doesn't exist or doesn't belong to your account
- Inventory item not found: Inventory doesn't exist or doesn't belong to this product
- Item already in workshop: The specific inventory item is already in the workshop
- Item is picked up: Cannot send a currently picked-up item to workshop