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.
Glossary
Worklittle terms you will meet in these docs and in API responses, from job_id and cursor to Apply with AI, enrichment, scopes, and Jobs vs Business surfaces.
Identifiers and pagination
| Term | Meaning |
| --- | --- |
| `job_id` | Identifier for a job in the Worklittle index. Comes from a search or board response. Never construct one |
| `public_job_id` | The hosted id for an employer-published job, used on apply and board detail routes |
| `slug` | Human-readable job identifier on a company board, suitable for your own `/careers/{slug}` URLs |
| `company_slug` | Employer identifier in board paths and the `company` search filter, for example `stripe` |
| `candidate_id` | An ATS candidate row, scoped to one organization |
| `candidate_job_id` | A candidate's participation in one specific pipeline. Stage changes key on this, not on `candidate_id` |
| `session_id` | An Apply with AI browser run |
| `cursor` | Opaque pagination token. Pass `meta.next_cursor` back as `cursor`. Never parse or construct one |
| Delivery id | `Worklittle-Webhook-Id`, the dedupe key for webhook handlers |
Products and surfaces
| Term | Meaning | | --- | --- | | **Jobs** | The market-wide index plus candidate-facing apply and document tools. [Overview](/jobs/get-started/overview) | | **Worklittle Business** | The signed-in employer product at [https://worklittle.com/business](https://worklittle.com/business): posting, ATS, employees, HR ops, webhooks, keys, billing, usage, and limits. [Overview](/business/get-started/overview) | | **MCP** | Model Context Protocol server at `mcp.worklittle.com` exposing the API as tools. [Guide](/jobs/mcp) | | **Job board** | An employer's public listing surface at `/business/jobs/company/:company/...`, no API key required | | **Global index** | `GET /jobs`, the market-wide dataset spanning employers | | **ATS** | Applicant tracking system. Here it means your organization's private candidate pipeline | | **HRIS** | Human resources information system, the external system webhooks commonly sync into |
Data and enrichment
| Term | Meaning | | --- | --- | | **Enrichment** | Server-side processing that derives structured salary, location, seniority, and summary data from raw postings. Some runs once on first detail read and is cached afterwards | | `description_raw` | The unprocessed posting body. May be thin or absent depending on the source | | **Thin listing** | A posting that arrives with a title and little or no body. Do not infer requirements from one | | **List row versus detail** | List responses are snippets. Full responsibilities and qualifications require a detail fetch | | **Keywords** | Skill and technology terms extracted by `get_job_keywords`, with narrative prose removed. The right input for document tailoring | | **Geocoded location** | Structured coordinates on every job, which is what makes radius and map search possible | | `application_fields` | The employer's form schema on a hosted job, including required custom questions | | `features` | Per-organization board toggles such as `resume_autofill` and `similar_job_alerts` |
Apply and eligibility
| Term | Meaning | | --- | --- | | **Apply with AI** | A run that fills and submits an employer's own application form automatically by default. Bills AI token usage at published rates. Typical successful run ~$0.01–$0.03. No per-user concurrent cap; `queued` when the **200** global Browser Run slots are full | | `can_apply` | The only supported check for whether Apply with AI can run on a job | | **Hosted apply** | `POST /jobs/:id/apply` for jobs published on Worklittle. **$0.01** per successful submit | | **Board apply** | `POST /business/jobs/company/:company/jobs/:id/apply`, free and unauthenticated | | `closed_at` | Timestamp set when a catalog role has stopped accepting applications. Independent of eligibility. Not a future deadline | | `closes_at` | ATS application deadline on a catalog job, including future dates. Detail only. Same idea as Business Close date / `end_date` | | **Close date** | Worklittle Business form field (`close_date`). Maps to `end_date` / `accepting_applicants_until` on posted jobs, not to catalog `closed_at` | | **Bot denylist** | Server-side protection that permanently denies jobs whose forms repeatedly produce bot or spam handoffs, and temporarily cools down boards with several such jobs | | `auto_submit` | Ignored on API keys. Sessions started with a key always submit | | `proxy_contact_reasons` | Explanation of why a temporary email or SMS number was used for verification on a session | | **Applied jobs** | The key owner's personal tracked pipeline: `saved`, `in_progress`, `applied`, `interview`, `offer`, `rejected`, `withdrawn`, `skipped` |
Access and billing
| Term | Meaning | | --- | --- | | **API key** | An `sk-wl-api01-` secret, shown once at creation. Works for both REST and MCP | | **Scope** | Permission on a key: `jobs:read`, `jobs:apply`, `agent:tools`, `jobs:post`, `jobs:applications`, `webhooks:manage`, `documents:read`, `documents:write`, `employees:read` (`people:read` is reserved while People Search is off) | | **Metered** | A route that bills AI tokens on the organization wallet. Job search and most ATS calls are free within monthly quotas | | **402** | `PAYMENT_REQUIRED`. Billing card or spend limit blocked token usage. Never retry it | | **429** | `RATE_LIMITED` or `QUOTA_EXCEEDED`. Default key limit is 60 requests per minute | | **410** | `GONE`. Public People Search is temporarily disabled | | **Not signed in** | Limited product features. API keys and MCP require an account. Signed-in: Personal monthly free AI credit, Instant **$9.99/mo** with **$20/mo** AI credit, then Personal PAYG |