Examples

Three common use cases for the Jobs API. All examples assume you have an API key. See creating one first.

Build a job board

Render filtered, verified job listings on your site.

JobsService.ListJobsService.Get
const res = await fetch(
  "https://api.useflan.app/flan.jobs.v1.JobsService/List",
  {
    method: "POST",
    headers: { "Content-Type": "application/json" },
    body: JSON.stringify({
      query: {
        filters: { country: "US", workMode: "remote" },
        limit: 25
      }
    })
  }
);
const { data, pagination } = await res.json();

AI job agent

Find a role and its neighbors, then surface recommendations.

JobsService.ListJobsService.GetSimilar
const role = await fetch(
  "/flan.jobs.v1.JobsService/List",
  {
    method: "POST",
    headers: { "Content-Type": "application/json" },
    body: JSON.stringify({ query: { query: userQuery, limit: 10 } })
  }
).then(r => r.json());
const similar = await fetch(
  "/flan.jobs.v1.JobsService/GetSimilar",
  {
    method: "POST",
    headers: { "Content-Type": "application/json" },
    body: JSON.stringify({ id: role.data[0].id, limit: 6 })
  }
).then(r => r.json());

Company hiring tracker

Track which companies are hiring, where, and how much.

CompaniesService.ListCompaniesService.ListJobs
const companies = await fetch(
  "/flan.companies.v1.CompaniesService/List",
  {
    method: "POST",
    headers: { "Content-Type": "application/json" },
    body: JSON.stringify({ limit: 25 })
  }
).then(r => r.json());
const jobs = await fetch(
  "/flan.companies.v1.CompaniesService/ListJobs",
  {
    method: "POST",
    headers: { "Content-Type": "application/json" },
    body: JSON.stringify({ id: companies.data[0].id, limit: 25 })
  }
).then(r => r.json());