po.get
A purchase order with its lines, what was received (in job cost) and the supplier's bill. Owner or office.
| |
|---|
| Who | Agents can call this |
| REST | GET /v1/purchase-orders/get |
| MCP tool | po_get |
| Writes | no |
| Area | Shop |
When to use it
A purchase order with its lines, what was received (in job cost) and the supplier's bill. Owner or office.
What to tell the owner
Tell them what you found in plain words. Don't read back raw fields.
| Field | Type | Required |
|---|
po_id | string (uuid) | yes |
Example
GET https://doingwork.work/v1/purchase-orders/get?po_id=00000000-0000-4000-8000-000000000000
Output
| Field | Type | Always there |
|---|
po_id | string (uuid) | yes |
shop_id | string (uuid) | yes |
number | integer | yes |
vendor_id | string (uuid) | yes |
vendor_name | string | yes |
job_id | string (uuid) | yes |
status | string (one of draft, ordered, partial, received, cancelled) | yes |
note | ['string', 'null'] | yes |
ordered_at | ['string', 'null', ' ', '(', 'd', 'a', 't', 'e', '-', 't', 'i', 'm', 'e', ')'] | yes |
total_minor | integer | yes |
received_cost_minor | integer | yes |
bill_minor | ['integer', 'null'] | yes |
bill_ref | ['string', 'null'] | yes |
bill_difference_minor | ['integer', 'null'] | yes |
lines | array | yes |
lines[].line_id | string (uuid) | yes |
lines[].line_no | integer | yes |
lines[].name | string | yes |
lines[].unit | string | yes |
lines[].quantity | number | yes |
lines[].unit_cost_minor | integer | yes |
lines[].unit_price_minor | ['integer', 'null'] | yes |
lines[].taxable | boolean | yes |
lines[].received_quantity | number | yes |
lines[].cost_minor | integer | yes |
lines[].received_cost_minor | integer | yes |
created_at | string (date-time) | yes |
{
"po_id": "00000000-0000-4000-8000-000000000000",
"shop_id": "00000000-0000-4000-8000-000000000000",
"number": 1,
"vendor_id": "00000000-0000-4000-8000-000000000000",
"vendor_name": "...",
"job_id": "00000000-0000-4000-8000-000000000000",
"status": "draft",
"note": "...",
"ordered_at": "...",
"total_minor": 50000,
"received_cost_minor": 50000,
"bill_minor": "...",
"bill_ref": "...",
"bill_difference_minor": "...",
"lines": [
{
"line_id": "00000000-0000-4000-8000-000000000000",
"line_no": 1,
"name": "Ruiz Plumbing",
"unit": "...",
"quantity": "...",
"unit_cost_minor": 50000,
"unit_price_minor": "...",
"taxable": true,
"received_quantity": "...",
"cost_minor": 50000,
"received_cost_minor": 50000
}
],
"created_at": "..."
}
Errors
| Code | Status | What to do |
|---|
invalid_input, invalid_token, rate_limited | | Can happen on any call. See errors. |