Search developers by location, role, skills, and languages

post/v1/search

Request

  • Base URL: https://api.githunt.ai
  • URL: https://api.githunt.ai/v1/search
  • Auth: one of:
    • HTTP bearer
    • API key in header X-Api-Key

Request body

locationstring
rolestring
skillsstring[]
languagesstring[]
minExperienceYearsinteger
isHireableboolean
strictSkillsboolean
includeUnlocatedboolean

When true, also search candidates indexed with no stated location. Their location is unknown, so they are returned as screening leads and can never be counted as geographically verified; meta.coverage.unlocated_included marks a response that contains them.

maxResultsinteger
offsetinteger

Number of top-ranked candidates to skip, for paging. Use with maxResults to fetch the next page. Consecutive pages never overlap.

excludeLoginsstring[]

GitHub logins to leave out of results, e.g. candidates already seen in a prior call. Use for dedup across searches. Case-insensitive; invalid entries are dropped rather than rejected.

excludeLocationsstring[]

Countries or cities to exclude, matched the same way as the location parameter (aliases and native names included).

locationsstring[]

Additional cities/countries to search in one call, freeform like location, merged with it (max 10 combined). Live GitHub crawl only covers the first location; further locations are served from the candidate pool only. At least one of location, locations, or regions is required.

regionsstring[]

Named region shortcuts that expand to their member countries, merged with location/locations (max 10 combined locations after expansion; extras are dropped). Case-insensitive. A request whose region names are all unknown and that carries no location is rejected with invalid_request.

organizationsstring[]

GitHub org logins to check candidates' employer affinity against. Boosts matching candidates' rank unless requireOrgAffinity is true.

sectorsstring[]

Industry sectors to check candidates' employer affinity against, via GitHunt's employer graph (public GitHub orgs mapped to companies and sectors).

requireOrgAffinityboolean

When true, only return candidates matching one of the given organizations/sectors (hard filter) instead of just boosting their rank.

domainsstring[]

Domain vocabulary packs to score candidates' repos/bio against for subject-matter evidence (e.g. core payments-processing terminology, not just the word "payments").

excludeListstring

Name of a seen list (see /v1/lists) whose logins are merged into excludeLogins for this search, so a rerun of the same brief never returns candidates the account already recorded. Only permanent seen entries and claims that have not expired are excluded: an interrupted run's candidates are rediscoverable as soon as the claim lapses. The server-side list is bounded at 5000 eligible logins rather than the 500-entry client cap; meta.exclude_list.truncated reports when that bound was hit. An unknown list is a not_found before any quota is charged, so create the list first with an empty POST /v1/lists/{name}/logins.

Example request

{
  "location": "Poland",
  "role": "backend",
  "skills": [
    "go",
    "kubernetes"
  ],
  "languages": [
    "Go"
  ],
  "excludeLogins": [
    "octocat",
    "torvalds"
  ],
  "excludeLocations": [
    "India"
  ],
  "excludeUtcOffsets": {
    "min": 0,
    "max": 5
  },
  "locations": [
    "Berlin",
    "Warsaw"
  ],
  "regions": [
    "apac"
  ],
  "organizations": [
    "stripe",
    "adyen"
  ],
  "sectors": [
    "payments"
  ],
  "domains": [
    "payments"
  ],
  "skillRecency": [
    {
      "skill": "Scala",
      "usedWithinYears": 3
    }
  ],
  "excludeList": "vami-scala-payments"
}

Response

Search results

successtrue

Example response

{
  "data": {
    "results": [
      {
        "inferred_utc_offset": {
          "offset": -10
        }
      }
    ]
  },
  "meta": {
    "dataSource": "candidate_pool",
    "quota": {
      "month": "2026-07",
      "cost": 1,
      "rollover": 340
    }
  }
}

Changes

No recorded changes to this operation across all 1 revision of this API.