Managing Deliverables
Deliverables are the core work items in a Renovatr project. They come in two types: tasks (services/labour) and items (physical products/materials).
List Deliverables
curl https://beta.renovatr.app/api/v1/projects/1/deliverables \
-H "X-API-KEY: your-api-key-here"
Returns all deliverables for the project, including group information.
Get a Deliverable
curl https://beta.renovatr.app/api/v1/projects/1/deliverables/42 \
-H "X-API-KEY: your-api-key-here"
Create a Deliverable
curl -X POST https://beta.renovatr.app/api/v1/projects/1/deliverables \
-H "X-API-KEY: your-api-key-here" \
-H "Content-Type: application/json" \
-d '{
"type": "task",
"title": "Install kitchen tiles",
"description": "Lay 60x60 porcelain tiles in kitchen area",
"status": "pending",
"estimatedCost": 1500,
"subcontractorId": 3,
"groupId": 1
}'
Fields
| Field | Type | Required | Description |
|---|---|---|---|
type | string | Yes | task or item |
title | string | Yes | Deliverable title |
description | string | No | Detailed description |
status | string | No | pending, in_progress, completed, or cancelled |
estimatedCost | number | No | Estimated cost |
quantity | number | No | Quantity (default 1) |
commissionRate | number | No | Commission percentage |
subcontractorId | integer | No | Assigned subcontractor |
groupId | integer | No | Deliverable group ID |
startDate | string | No | ISO date string |
endDate | string | No | ISO date string |
Update a Deliverable
curl -X PATCH https://beta.renovatr.app/api/v1/projects/1/deliverables/42 \
-H "X-API-KEY: your-api-key-here" \
-H "Content-Type: application/json" \
-d '{
"status": "in_progress",
"estimatedCost": 1750
}'
Each update increments the deliverable's revision number and creates a revision history entry tracking which fields changed.
Delete a Deliverable
curl -X DELETE https://beta.renovatr.app/api/v1/projects/1/deliverables/42 \
-H "X-API-KEY: your-api-key-here"
Bulk Delete
curl -X POST https://beta.renovatr.app/api/v1/projects/1/deliverables/bulk-delete \
-H "X-API-KEY: your-api-key-here" \
-H "Content-Type: application/json" \
-d '{ "ids": [42, 43, 44] }'
Deliverable Groups
Deliverables can be organized into groups (e.g., "Kitchen", "Bathroom"). Groups are managed through the project settings in the Renovatr app. When creating or updating deliverables via the API, pass the groupId to assign them to a group.
Revision History
Every update to a deliverable creates a revision snapshot. The revision field on the deliverable shows the current version number. Revision history is available in the Renovatr app UI.