Coding agent documentation index Fetch the complete documentation index at: https://docs.worklittle.com/docs-agent-manifest.json Use this file to discover all available pages before exploring further.
Apply on your job board
Add a one-tap Apply button to your job board: show Worklittle jobs, save each user's profile once so they never re-enter their details, and apply with one call.
A job board or career app can let its users apply without leaving the site and without filling out employer forms. Each of your users becomes a Worklittle applicant once. After that, your Apply button sends one request with the job and their applicant_id, and Worklittle fills and submits the employer's own application. Your users must agree to you applying for them.
Install the agent skill
Paste this into your coding agent (Claude Code, Cursor, Codex, and others):
set up worklittle.com/SKILL.md
How it fits together
| Step | Your board | Worklittle |
| --- | --- | --- |
| 1. List jobs | Show results from `GET /jobs` and keep each job's `id` | Market-wide job index with search and filters |
| 2. Save the user's profile | Collect name, email, and resume once | `POST /v1/apply/profile` stores it and returns an `applicant_id` you reuse for every job |
| 3. User taps Apply | Send `job_id` and `applicant_id` | `POST /v1/apply` fills and submits the employer form |
| 4. Show status | Update the job card to Applying, Applied, or Needs answers | Webhook events or `GET /v1/apply/{session_id}` |
Your key needs jobs:read and jobs:apply. Use a company workspace key, or email [support@worklittle.com](mailto:support@worklittle.com) for a platform key, which only searches and applies and has per-user daily limits.
1. Show jobs
curl -s "https://api.worklittle.com/jobs?q=registered+nurse&location=Austin&posted_within_days=14&limit=20" \
-H "Authorization: Bearer $WORKLITTLE_API_KEY"
Every job from the Worklittle API can be applied to, so every listing gets an Apply button. Store id with the listing. Apply only takes Worklittle job ids, so if you show jobs from your own feed, find the matching Worklittle job first (for example GET /jobs?company=acme&title=registered+nurse) and keep its id. Search is free within a monthly quota. See Search jobs.
2. Save the user's profile once
Save each user's profile with Worklittle one time: name, email, location, and resume. Worklittle stores it and returns an applicant_id. Every later application reuses that saved profile, so the user never fills in their details or uploads a resume again. They just tap Apply.
Do this when the user signs up or first uploads a resume, and store the applicant_id on your user record.
curl -s -X POST "https://api.worklittle.com/v1/apply/profile" \
-H "Authorization: Bearer $WORKLITTLE_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"action": "save",
"name": "Alex Kim",
"email": "alex@example.com",
"city": "Austin", "state": "TX",
"resume_file": { "filename": "alex-kim.pdf", "content_base64": "JVBERi0x..." }
}'
The 201 response includes applicant_id, for example c3f19b20-7d41-4e8a-b2d6-90a5e7c1f348.
When the user edits their profile or uploads a new resume, send "action": "save" with the same applicant_id and only the changes. Every future application uses the updated profile. A 409 APPLICANT_EXISTS means that email already has an applicant (perhaps from another app); Worklittle emails the id to the user, and they can paste it into your board. See What is my applicant ID?.
3. The Apply button
curl -s -X POST "https://api.worklittle.com/v1/apply" \
-H "Authorization: Bearer $WORKLITTLE_API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: user_8812:4829105736" \
-d '{
"job_id": "4829105736",
"applicant_id": "c3f19b20-7d41-4e8a-b2d6-90a5e7c1f348",
"webhook_url": "https://board.example.com/hooks/worklittle"
}'
Save session_id with the user and job, and switch the button to Applying. Call it from your server, never from the browser, so your key stays secret. An Idempotency-Key per user and job makes double taps safe.
4. Show the result
| Event or status | Show the user |
| --- | --- |
| `queued`, `running` | Applying |
| `awaiting_input` | The `questions` as a short form. Send answers with `{ "action": "continue", "answers": { ... } }` |
| `completed` | Applied |
| `failed`, `stopped` | `stop_message`, with a link to `apply_url` |
| `apply.outcome.interview`, `offer`, `rejected` | The employer's response |
GET /v1/applications?applicant_id=... returns everything one user has applied to, for an "Applied" tab.
Cost and limits
- $0.20 per application, billed to your workspace. You decide whether to charge your users. Free when it fails on Worklittle's side or already_applied. - Each user may apply to one company up to 3 times in 30 days by default (max_per_company, up to 10). - Daily caps per key and per user return 429. See Rate limits. - Hosting one employer's own careers page instead? Use Embedded job board, which is free and needs no key.