Pinpoint Applications API

Candidate applications moving through hiring workflows.

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/pinpoint-applications-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

pinpoint-applications-api-openapi.yml Raw ↑
openapi: 3.0.1
info:
  title: Pinpoint Applicants Applications API
  description: REST API for the Pinpoint applicant tracking system (ATS) and recruitment platform. The API adheres to the JSON:API specification and is served on a per-tenant basis. All requests must be made over HTTPS to https://{subdomain}.pinpointhq.com/api/v1, where {subdomain} matches the subdomain used to log in to Pinpoint. Authentication uses an X-API-KEY header generated from Settings > API & Webhooks. Requests and responses use the application/vnd.api+json media type. Not to be confused with AWS Pinpoint (customer engagement messaging) or Pinpoint (signal / data intelligence).
  termsOfService: https://www.pinpointhq.com/legal/
  contact:
    name: Pinpoint Support
    url: https://developers.pinpointhq.com/docs/introduction
  version: '1.0'
servers:
- url: https://{subdomain}.pinpointhq.com/api/v1
  description: Per-tenant Pinpoint API base URL.
  variables:
    subdomain:
      default: acme
      description: The subdomain used to log in to your Pinpoint account.
security:
- ApiKeyAuth: []
tags:
- name: Applications
  description: Candidate applications moving through hiring workflows.
paths:
  /applications:
    get:
      operationId: listApplications
      tags:
      - Applications
      summary: List applications
      parameters:
      - $ref: '#/components/parameters/PageNumber'
      - $ref: '#/components/parameters/PageSize'
      - $ref: '#/components/parameters/Sort'
      - $ref: '#/components/parameters/Include'
      - name: filter[job_id]
        in: query
        schema:
          type: integer
      - name: filter[stage_id]
        in: query
        schema:
          type: integer
      responses:
        '200':
          description: A list of applications.
          content:
            application/vnd.api+json:
              schema:
                $ref: '#/components/schemas/ApplicationCollection'
        '401':
          $ref: '#/components/responses/Unauthorized'
    post:
      operationId: createApplication
      tags:
      - Applications
      summary: Create application
      description: Creates an application for a job. Supports candidate name, email, phone, address, LinkedIn URL, a CV/document upload as a base64 payload, and custom attributes.
      requestBody:
        required: true
        content:
          application/vnd.api+json:
            schema:
              $ref: '#/components/schemas/ApplicationSingleWrite'
      responses:
        '201':
          description: The created application.
          content:
            application/vnd.api+json:
              schema:
                $ref: '#/components/schemas/ApplicationSingle'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
  /applications/{id}:
    parameters:
    - $ref: '#/components/parameters/ResourceId'
    get:
      operationId: getApplication
      tags:
      - Applications
      summary: Fetch application
      description: Fetch a single application. Related offers, candidates, jobs, and stages can be requested with the include parameter, and computationally expensive fields such as attachments via extra_fields.
      parameters:
      - $ref: '#/components/parameters/Include'
      - name: extra_fields[offers]
        in: query
        description: Request expensive fields such as attachments on included offers.
        schema:
          type: string
      responses:
        '200':
          description: The requested application.
          content:
            application/vnd.api+json:
              schema:
                $ref: '#/components/schemas/ApplicationSingle'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
    patch:
      operationId: updateApplication
      tags:
      - Applications
      summary: Update application
      requestBody:
        required: true
        content:
          application/vnd.api+json:
            schema:
              $ref: '#/components/schemas/ApplicationSingleWrite'
      responses:
        '200':
          description: The updated application.
          content:
            application/vnd.api+json:
              schema:
                $ref: '#/components/schemas/ApplicationSingle'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
    delete:
      operationId: destroyApplication
      tags:
      - Applications
      summary: Destroy application
      responses:
        '204':
          description: The application was deleted.
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
components:
  schemas:
    ApplicationSingleWrite:
      type: object
      properties:
        data:
          type: object
          properties:
            type:
              type: string
              example: applications
            id:
              type: string
            attributes:
              $ref: '#/components/schemas/ApplicationAttributes'
            relationships:
              type: object
              additionalProperties: true
    PaginationMeta:
      type: object
      properties:
        total_count:
          type: integer
        page_count:
          type: integer
    ApplicationSingle:
      type: object
      properties:
        data:
          $ref: '#/components/schemas/Application'
    Errors:
      type: object
      properties:
        errors:
          type: array
          items:
            type: object
            properties:
              status:
                type: string
              title:
                type: string
              detail:
                type: string
              source:
                type: object
                properties:
                  pointer:
                    type: string
    ApplicationCollection:
      type: object
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/Application'
        meta:
          $ref: '#/components/schemas/PaginationMeta'
    Application:
      type: object
      properties:
        type:
          type: string
          example: applications
        id:
          type: string
        attributes:
          $ref: '#/components/schemas/ApplicationAttributes'
        relationships:
          type: object
          additionalProperties: true
    ApplicationAttributes:
      type: object
      properties:
        first_name:
          type: string
        last_name:
          type: string
        email:
          type: string
        phone:
          type: string
        linkedin_url:
          type: string
        cv_base64:
          type: string
          description: Base64-encoded CV/document supplied on create.
        created_at:
          type: string
          format: date-time
        updated_at:
          type: string
          format: date-time
  parameters:
    PageNumber:
      name: page[number]
      in: query
      description: The page of results to return. Defaults to 1.
      schema:
        type: integer
        default: 1
    Sort:
      name: sort
      in: query
      description: Comma-separated sort fields (e.g. created_at, -updated_at). Prefix with a hyphen for descending order.
      schema:
        type: string
    ResourceId:
      name: id
      in: path
      required: true
      description: The resource identifier.
      schema:
        type: string
    Include:
      name: include
      in: query
      description: Comma-separated list of relationship paths to side-load, with dot notation for nested relationships (JSON:API includes).
      schema:
        type: string
    PageSize:
      name: page[size]
      in: query
      description: Number of results per page (0-1000). Defaults to 100.
      schema:
        type: integer
        minimum: 0
        maximum: 1000
        default: 100
  responses:
    NotFound:
      description: The requested resource was not found.
      content:
        application/vnd.api+json:
          schema:
            $ref: '#/components/schemas/Errors'
    UnprocessableEntity:
      description: Validation failed for the submitted resource.
      content:
        application/vnd.api+json:
          schema:
            $ref: '#/components/schemas/Errors'
    Unauthorized:
      description: Missing or invalid API key.
      content:
        application/vnd.api+json:
          schema:
            $ref: '#/components/schemas/Errors'
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: X-API-KEY
      description: API key generated in Settings > API & Webhooks > API Keys. Sent with every request as the X-API-KEY header. Missing or invalid keys return HTTP 401.