hub.links
A customer's hub links, newest first: when each was made, when it expires or was revoked, and how often and when it was last opened. The link itself is never shown again. Owner or office only.
When to use it
Give a customer one page with everything they have with the shop: hub.createLink makes a link for one customer (shown once; send it yourself, Doing Work sends nothing). On it the customer sees their quotes, jobs, invoices with what is still owed, upcoming visits and requests, opens a quote, pays an invoice, asks to move or cancel a visit, and asks for new work (it arrives as a portal request).
What to tell the owner
Tell them what you found in plain words. Don't read back raw fields.
| Field | Type | Required |
|---|
customer_id | string (uuid) | yes |
Example
GET https://doingwork.work/v1/hub/links?customer_id=00000000-0000-4000-8000-000000000000
Output
| Field | Type | Always there |
|---|
links | array | yes |
links[].link_id | string (uuid) | yes |
links[].customer_id | string (uuid) | yes |
links[].created_by | string (uuid) | yes |
links[].created_at | string (date-time) | yes |
links[].expires_at | string (date-time) | yes |
links[].revoked_at | ['string', 'null', ' ', '(', 'd', 'a', 't', 'e', '-', 't', 'i', 'm', 'e', ')'] | yes |
links[].last_opened_at | ['string', 'null', ' ', '(', 'd', 'a', 't', 'e', '-', 't', 'i', 'm', 'e', ')'] | yes |
links[].opens | integer | yes |
links[].live | boolean | yes |
{
"links": [
{
"link_id": "00000000-0000-4000-8000-000000000000",
"customer_id": "00000000-0000-4000-8000-000000000000",
"created_by": "00000000-0000-4000-8000-000000000000",
"created_at": "...",
"expires_at": "...",
"revoked_at": "...",
"last_opened_at": "...",
"opens": 1,
"live": true
}
]
}
Errors
| Code | Status | What to do |
|---|
invalid_input, invalid_token, rate_limited | | Can happen on any call. See errors. |