Freshteam Applicants API

Applicants (candidates) and candidate sources (ATS).

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/freshteam-applicants-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no email required.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

freshteam-applicants-api-openapi.yml Raw ↑
openapi: 3.0.3
info:
  title: Freshteam Applicants API
  description: 'The Freshteam API is the REST interface to Freshworks'' HR and applicant tracking (ATS) product. It covers the HRIS core (employees, custom fields, and organization structure), time-off (leave), recruiting (job postings), the ATS (applicants and candidate sources), and onboarding (new hires). Requests target an account-specific base, https://{domain}.freshteam.com/api, where {domain} is your Freshteam subdomain, and carry an account API token as a Bearer credential (generated in the UI under API Settings). List endpoints are paginated with page, sort, and sort_type query parameters and return total-objects, total-pages, and link response headers.

    STATUS - Freshworks has announced the end-of-life of Freshteam. New subscriptions and renewals are halted starting March 7, 2026; existing customers retain access, and thus API access, only through the end of their subscription term (reported through approximately April 2027). This document models the publicly documented API as it exists during the sunset window; new customers cannot obtain access.'
  version: '1.0'
  contact:
    name: Freshworks - Freshteam
    url: https://developers.freshteam.com/api/
servers:
- url: https://{domain}.freshteam.com/api
  description: Account-specific Freshteam API base
  variables:
    domain:
      default: your-account
      description: Your Freshteam account subdomain.
security:
- bearerAuth: []
tags:
- name: Applicants
  description: Applicants (candidates) and candidate sources (ATS).
paths:
  /job_postings/{id}/applicants:
    post:
      operationId: createApplicant
      tags:
      - Applicants
      summary: Create an applicant for a job posting
      description: Adds an applicant (candidate) to the specified job posting.
      parameters:
      - $ref: '#/components/parameters/IdPath'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Applicant'
      responses:
        '201':
          description: The created applicant.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Applicant'
        '401':
          $ref: '#/components/responses/Unauthorized'
  /candidate_sources:
    get:
      operationId: listCandidateSources
      tags:
      - Applicants
      summary: List candidate sources
      responses:
        '200':
          description: A list of candidate sources.
          content:
            application/json:
              schema:
                type: array
                items:
                  type: object
        '401':
          $ref: '#/components/responses/Unauthorized'
    post:
      operationId: createCandidateSource
      tags:
      - Applicants
      summary: Create a candidate source
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                name:
                  type: string
      responses:
        '201':
          description: The created candidate source.
          content:
            application/json:
              schema:
                type: object
        '401':
          $ref: '#/components/responses/Unauthorized'
components:
  parameters:
    IdPath:
      name: id
      in: path
      required: true
      description: The resource identifier.
      schema:
        type: integer
        format: int64
  responses:
    Unauthorized:
      description: Authentication failed or the API token is missing or invalid.
  schemas:
    Applicant:
      type: object
      properties:
        id:
          type: integer
          format: int64
        first_name:
          type: string
        last_name:
          type: string
        email:
          type: string
          format: email
        mobile:
          type: string
        source_id:
          type: integer
          format: int64
        resume:
          type: string
          description: URL or base64 payload of the candidate resume.
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: 'Account API token generated in the Freshteam UI under API Settings, passed as Authorization: Bearer YOUR_API_TOKEN.'