Search API
Send a GET request to https://aitrainers.jobs/api/v1/jobs. All parameters are optional; with none, you get the 20 newest roles. It returns the same roles, in the same order, as the same filters on the job board.
| Parameter | Values | What it does |
|---|---|---|
q | Text, up to 100 characters | Words to look for in the title, platform name, languages and skills. Every word must appear. |
country | Two-letter ISO 3166-1 code, e.g. GB | Roles open to people who live in that country. Roles that don't say where they hire are included, after the ones that do. |
kind | One of the kinds listed below | Kind of work. Paid research studies are only returned with kind=research-studies, as on the job board. |
language | A language named in English, e.g. Spanish | Roles that need that language. |
min_pay | Number, 0 to 1000 | Lowest hourly pay in US dollars. A range counts at its midpoint. Roles without an hourly rate are left out. |
remote_worldwide | 1 or 0 | Only roles open to people in any country. |
no_experience | 1 or 0 | Only roles that need no previous experience. |
sort | new (default) or pay | Newest first, or highest hourly pay first. |
limit | 1 to 50, default 20 | How many roles to return. |
offset | 0 or more, default 0 | How many matching roles to skip, for the next page. |
Kinds of work: law (Law), medicine (Medicine & health), finance (Finance & accounting), coding (Coding), stem-math (Maths & STEM), multilingual (Languages & translation), education (Education & teaching), audio-speech (Voice & audio), data-labeling (Data annotation), rlhf-eval (AI evaluation & rating), writing (Writing), red-teaming (Red-teaming & safety), agentic-rl (Agents & RL tasks), robotics-data (Robotics data), research-studies (Studies & research).
A parameter with a value we don't accept gets a 400 response with an error message saying what's allowed. Parameters we don't know are ignored.
Example
curl "https://aitrainers.jobs/api/v1/jobs?country=GB&kind=law&limit=1" The response, from the list as it stood on 20 October 2026:
{
"count": 71,
"results": [
{
"title": "Legal & Policy Content Reviewer",
"platform": "alignerr",
"platform_name": "Alignerr",
"pay": "$20–40/hr",
"hourly_usd": {
"min": 20,
"max": 40
},
"countries": [
"GB"
],
"kinds": [
"law",
"rlhf-eval"
],
"languages": [
"English"
],
"posted": "2026-10-14",
"talent_pool": false,
"url": "https://aitrainers.jobs/jobs/legal-policy-content-reviewer-j71m4z"
}
],
"attribution": "aitrainers.jobs",
"terms": "https://aitrainers.jobs/legal/terms"
} The fields
count: how many roles match, across all pages.pay: the pay as the platform posts it, such as "$40–60/hr", "Up to $50/hr" or "$15 per task";nullwhen it isn't stated.hourly_usd: the hourly rate in US dollars, ornullwhen there's no hourly rate.minisnullfor an "up to" rate;maxisnullfor a range posted in another currency.countries:"worldwide", or the two-letter codes of the countries the role is open to. An empty list means the posting doesn't say.posted: the date the role was posted, or the date we first saw it when the platform doesn't give one;nullwhen it isn't known.talent_pool:truefor a pool the platform keeps open all the time, rather than a specific project.url: the role's page on aitrainers.jobs.
The API returns links to our job pages, not to the platforms. On those pages, some Apply links are referral links: see our referral disclosure.
Responses can be read from a web page on any site (CORS is open) and may be cached for five minutes.
MCP server
AI assistants and other clients that support the Model Context Protocol (MCP) can search the same list at:
https://aitrainers.jobs/mcp It uses the Streamable HTTP transport, replies with plain JSON (no streaming) and needs no sign-in. Where your client takes a configuration file, an entry like this adds it:
{
"mcpServers": {
"aitrainers-jobs": {
"type": "http",
"url": "https://aitrainers.jobs/mcp"
}
}
} File names and keys differ between clients, so check your client's documentation. In apps that add remote servers through a settings screen, enter the URL above and leave authentication empty.
It has two tools:
search_jobs: the same parameters as the API (min_payas a number,remote_worldwideandno_experienceas true or false), returning 10 roles unless you setlimit. The results come as readable text and as the same JSON the API returns.job_counts: how many roles are open by kind of work and by platform, for onecountryor for all.
It supports MCP protocol versions 2025-06-18, 2025-03-26 and 2024-11-05.
Bulk data
For pay figures rather than single roles, the pay tables by field, platform, country and language are on the open data page as CSV files.
Credit
The API and the MCP server are free to use. Please credit aitrainers.jobs and link to aitrainers.jobs where you show the results; each response includes an attribution field as a reminder. The roles themselves are the platforms' postings, and use of the site's listings is covered by our terms. The aggregate pay tables on open data are licensed under CC BY 4.0.
Fair use
There's no key and no sign-up. The list is updated from the platforms' job boards every hour, so please cache what you fetch rather than asking for the same thing again and again. If you need every role, page through with limit and offset at most once an hour. We may block traffic that puts a heavy load on the site.