skill_id values your recruiters pick and send them as the mandate’s skills. These are helper endpoints: the sample mandate already uses real skill ids, so you can skip this and come back when you build your own skill list.
Missing skills
If search cannot find a skill, ask Record to add it withPOST /skill-requests and put it on the mandate as { "name": "Reach Truck Operation", "pending": true }. A pending skill is kept on the mandate but cannot be verified until the request is resolved. Track the request with GET /skill-requests/{request_id}.
Usage limits
Search and browse return at most 15,000 different skills per key per day, and more than 200 browse pages in an hour puts the key in cooldown. There is no bulk export: store only the skills your recruiters pick. See Limits.Endpoints
Search skills
GET /skills/search
Type-ahead: find skills by a few letters (e.g. “fork”) and keep the skill_id the recruiter picks.
Scope: skills:read
Can also return the common errors. Full schema
List skill domains
GET /skills/domains
The top of the skill tree: all primary domains, for a browse menu.
Scope: skills:read
List sub-domains
GET /skills/domains/{domain_id}/sub-domains
The sub-domains inside one domain.
Scope: skills:read
Can also return the common errors. Full schema
List skills in a sub-domain
GET /skills/sub-domains/{sub_domain_id}/skills
The skills inside one sub-domain, 50 per page (700 at most).
Scope: skills:read
Can also return the common errors. Full schema
Get a skill
GET /skills/{skill_id}
Fetch one skill by its skill_id.
Scope: skills:read
Can also return the common errors. Full schema
Look up skills
POST /skills/lookup
Check up to 50 skill ids you stored: still active, or not_found (removed)?
Scope: skills:read · Idempotency-Key: optional
Can also return idempotency errors (
IDEMPOTENCY_IN_PROGRESS, IDEMPOTENCY_KEY_REUSED) and the common errors. Full schema
Match text to skills
POST /skills/match
Turn free text into official skills; suggestion is auto (use it), confirm (ask the recruiter) or none.
Scope: skills:read · Idempotency-Key: optional
Can also return idempotency errors (
IDEMPOTENCY_IN_PROGRESS, IDEMPOTENCY_KEY_REUSED) and the common errors. Full schema
Extract skills from a job
POST /skills/extract
Suggest skills from a job title and description. Nothing is saved.
Scope: skills:read · Idempotency-Key: optional
Can also return idempotency errors (
IDEMPOTENCY_IN_PROGRESS, IDEMPOTENCY_KEY_REUSED) and the common errors. Full schema
Request a skill
POST /skill-requests
Ask Record to add a skill that search could not find. Returns request_id.
Scope: skills:request · Idempotency-Key: required
data.request_id for the next step.
Can also return idempotency errors (
IDEMPOTENCY_KEY_REQUIRED, IDEMPOTENCY_IN_PROGRESS, IDEMPOTENCY_KEY_REUSED) and the common errors. Full schema
List skill requests
GET /skill-requests
See every skill you asked for and where it stands.
Scope: skills:request
Get a skill request
GET /skill-requests/{request_id}
Check one skill request, for example whether Record approved it.
Scope: skills:request
Can also return the common errors. Full schema

