# FAQ

### How do I get an API key?

Self-service sign-up is not open yet. [Contact us](https://jobs-database.de/contact) and we will
set you up. Plans are listed on the [pricing page](https://jobs-database.de/pricing).

### Am I charged per request or per job?

Per job returned. Each job in a successful response counts once against your monthly allowance.
Errors, `404`s and empty pages cost nothing. See [Errors & limits](/api-documentation/errors-and-limits#monthly-allowance).

### When does my allowance reset?

On the 1st of every month at 00:00 UTC. Unused jobs do not carry over.

### Are job descriptions included?

No. The API serves the 25 fields in the [Field reference](/api-documentation/field-reference); descriptions are not
among them.

### Are the `ai_` fields generated by AI?

No. The prefix comes from the fantastic.jobs field names we follow. Employment type, work
arrangement and salary are taken from the posting. Salaries are as posted — never converted
between currencies or annualised.

### Can I filter by location, date or salary?

Not in the API today. `GET /v1/search` matches the title or company name only. Filter on the
returned fields in your own code.

### Are search results ranked by relevance?

No. Results are ordered by job `id` ascending, the same as `GET /v1/jobs`.

### Can I see the same job twice while paging?

No. Pages are ordered by `id` and the cursor marks the last `id` you received, so a walk never
repeats a job.

### Do cursors expire?

No. A cursor holds no server-side state; you can resume a walk later with the last
`next_cursor` you received.

### Can I pass my key as a query parameter?

No. The key is read only from the `X-API-Key` header.

### Can I call the API from browser JavaScript?

Not from a web page on another site: the API sends no CORS headers. Call it from your server,
which also keeps your key private.

### Is there a machine-readable spec?

Yes — an OpenAPI 3.1 file:
[openapi.yaml](https://jobs-database.de/api-documentation/openapi.yaml). The whole documentation
is also available for LLM tools as
[llms.txt](https://jobs-database.de/api-documentation/llms.txt).

### Is there a sandbox or "try it" console?

Not yet. Use the copy-paste examples in the [Quick start](/api-documentation/quickstart) and the
[API Reference](/api-documentation/api).
