subs.list
Subcontractors on a job, or on every job in the shop: status invited, joined, expired or removed, when they last opened their page. The link is never shown again. Owner or office only.
When to use it
Subcontractors on a job, or on every job in the shop: status invited, joined, expired or removed, when they last opened their page. The link is never shown again.
What to tell the owner
Tell them what you found in plain words. Don't read back raw fields.
| Field | Type | Required |
|---|
job_id | string (uuid) | no |
shop_id | string (uuid) | no |
include_removed | boolean | no |
Example
GET https://doingwork.work/v1/subs?job_id=00000000-0000-4000-8000-000000000000&shop_id=00000000-0000-4000-8000-000000000000&include_removed=True
Output
| Field | Type | Always there |
|---|
subcontractors | array | yes |
subcontractors[].subcontractor_id | string (uuid) | yes |
subcontractors[].job_id | string (uuid) | yes |
subcontractors[].company_name | string | yes |
subcontractors[].contact_name | ['string', 'null'] | yes |
subcontractors[].email | string | yes |
subcontractors[].trade | ['string', 'null'] | yes |
subcontractors[].scope_note | ['string', 'null'] | yes |
subcontractors[].status | string | yes |
subcontractors[].created_by | string (uuid) | yes |
subcontractors[].created_at | string (date-time) | yes |
subcontractors[].expires_at | string (date-time) | yes |
subcontractors[].joined_at | ['string', 'null', ' ', '(', 'd', 'a', 't', 'e', '-', 't', 'i', 'm', 'e', ')'] | yes |
subcontractors[].removed_at | ['string', 'null', ' ', '(', 'd', 'a', 't', 'e', '-', 't', 'i', 'm', 'e', ')'] | yes |
subcontractors[].last_opened_at | ['string', 'null', ' ', '(', 'd', 'a', 't', 'e', '-', 't', 'i', 'm', 'e', ')'] | yes |
subcontractors[].opens | integer | yes |
{
"subcontractors": [
{
"subcontractor_id": "00000000-0000-4000-8000-000000000000",
"job_id": "00000000-0000-4000-8000-000000000000",
"company_name": "...",
"contact_name": "...",
"email": "owner@example.com",
"trade": "...",
"scope_note": "...",
"status": "...",
"created_by": "00000000-0000-4000-8000-000000000000",
"created_at": "...",
"expires_at": "...",
"joined_at": "...",
"removed_at": "...",
"last_opened_at": "...",
"opens": 1
}
]
}
Errors
| Code | Status | What to do |
|---|
invalid_input, invalid_token, rate_limited | | Can happen on any call. See errors. |