The QuantFlow API.
QuantFlow publishes its open roles as JSON so you do not have to scrape the careers page. No API key, no sign-up, no rate limit on reads. The same data renders on /careers, so there is nothing to gate.
One request, no key.
Every endpoint is public, read-only and CORS-enabled, so it works from a browser, a server, or an agent tool call. Responses are cached for five minutes at the edge.
curl https://www.quant-flow.com/api/jobs
{
"object": "list",
"total": 3,
"limit": 50,
"offset": 0,
"data": [
{
"slug": "algorithmic-trader",
"title": "Algorithmic Trader",
"location": "Amsterdam, Netherlands",
"url": "https://www.quant-flow.com/careers/algorithmic-trader",
"apply_url": "https://www.quant-flow.com/apply?job=algorithmic-trader"
}
]
}Endpoints.
Three endpoints, each with a unique operation ID and a typed response schema in the OpenAPI document.
GET/api
Endpoint directory, with a link to the OpenAPI document.
curl https://www.quant-flow.com/apiGET/api/jobs
Open roles, newest first. Filter with q and location, page with limit and offset.
curl 'https://www.quant-flow.com/api/jobs?q=c%2B%2B&limit=10'GET/api/jobs/{slug}
One role by slug. Slugs come from listJobs.
curl https://www.quant-flow.com/api/jobs/algorithmic-traderEvery failure is JSON.
Including 404s and 405s. Branch on code; it is stable. message and hint are for humans and for agents deciding what to do next.
{
"code": "job_not_found",
"error": "job_not_found",
"message": "No open role is published with slug \"foo\".",
"hint": "List the current roles with GET /api/jobs. Roles are removed once filled.",
"docs": "https://www.quant-flow.com/developers"
}invalid_query_parameter400limit or offset is out of range.invalid_slug400The slug is missing or longer than 200 characters.job_not_found404No open role with that slug. Roles are removed once filled.unknown_endpoint404No endpoint is published at that path.method_not_allowed405The endpoint is read-only. Check the Allow header.rate_limited429Too many writes from one address. Applies to the form endpoints.upstream_unavailable502The job board is temporarily unreachable. Retry in a minute.Built to be called.
- Function calling. Every operation has a unique
operationId, a description, typed parameters and a response schema, so openapi.json converts to tool definitions without hand-editing. - Markdown. Every page on this site is available as markdown per acceptmarkdown.com: send
Accept: text/markdown, or append.mdto any path. - When to use QuantFlow. llms.txt names the jobs QuantFlow is right for, and the ones it is not.
- Confidential mandates. Most senior searches never appear on the API. An empty list is not an empty desk, so route the user to /contact rather than telling them QuantFlow is not hiring.
- Do not auto-submit. The apply and contact endpoints accept writes from people. Hand the user the link; do not post an application on their behalf.
Something missing from the API?
There is no ticketing system and no support tier. Email hello@quant-flow.com and a person answers. Breaking changes get a new major version and the old one keeps working; additive fields do not.
Get in touch →