The request
Reference for Get worker, HeadHoncho API v1. It is a read, sent to the base address https://api.headhoncho.app.
GET /api/v1/workers/{worker_id}
The key needs the Team area at read. An answered call costs 1 credit; a refusal costs nothing. See credits.
Send your key as Authorization: Bearer hh_live_.... See API keys.
Parameters
| Name | Kind | Required | Description | Example |
|---|---|---|---|---|
worker_id | id, in the path | Yes | The technician or subcontractor, from List technicians. | wrk_3b90 |
Try it with your key
Paste your key and change the values. The box builds the call as a cURL line and a fetch line, ready to copy. It never sends anything itself.
Your key stays in this page and is never sent anywhere. Copy the line below and run it yourself.
What comes back
The person: id, role, name, first_name, last_name, email, phone, active, is_team_lead, monthly_pay (a number, or null when none was agreed), hired_on, ended_on, business_name (subcontractors), default_cut (basis, value and a label, or null), job_types and any_job_type (true when there is no limit), claimed (a login is linked) and open_claim_id.
It never changes a record. It only reads the companies the key reaches.
Every field in the answer
Types are read from the example answer. Money is a plain number in the company's currency. A time carries its offset from UTC (Z is UTC). Ids are opaque text. A field with no line of its own here has its name spelled out; the common fields mean the same on every page.
| Field | Type | Meaning |
|---|---|---|
id | id (text) | The id of this record. Ids are opaque text: keep them exactly as given. |
role | text | The role: what this person does on a job. |
name | text | The name, as the app shows it. |
first_name | text | The first name. |
last_name | text | The last name. |
email | text | The email. |
phone | text | A phone number. Hidden when the key hides personal details. |
active | true or false | The active. |
is_team_lead | true or false | True when it is team lead. |
monthly_pay | value or null | The monthly pay. |
hired_on | date (YYYY-MM-DD) | The date it was hired. |
ended_on | value or null | The date it was ended. |
business_name | text | The business name. |
default_cut | object | The default cut. |
default_cut.basis | text | The basis. |
default_cut.value | money (number) | The value. In the company's currency. |
default_cut.label | text | The name the app shows for it. |
job_types | list of objects | The job types. |
job_types[].id | id (text) | The id of this record. Ids are opaque text: keep them exactly as given. |
job_types[].name | text | The name, as the app shows it. |
any_job_type | true or false | The any job type. |
claimed | true or false | The claimed. |
open_claim_id | value or null | The id of the open claim. |
What is left out
The balance, the dispatch groups, the text-message consent and the logins you could link are not here. They are money, messages and who can sign in, which stay in the app.
Errors that apply
| Code | Status | What it means |
|---|---|---|
| `missing_key` | 401 | Send your key as Authorization: Bearer hh_live_... |
| `unknown_key` | 401 | That key is not one we issued, or it was revoked. |
| `no_access` | 403 | This credential does not reach that. Ask the person who made it for access. |
| `not_found` | 404 | No such record in the companies this credential reaches. |
| `invalid` | 422 | Some fields were refused. See fields. |
| `no_credits` | 402 | Out of credits. Top up on Settings › Credits, or turn on auto top-up. |
Related
- List technicians: Everyone the company sends jobs to: technicians and subcontractors, with contact details, the job types they take and the cut they work on.
- The same records in the app: the Team panel.
- How the API fits together: the model, API keys, errors and the MCP server.