Finch Employer API

The Employer API from Finch — 7 operation(s) for employer.

OpenAPI Specification

finch-employer-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Finch Auth Employer API
  description: Finch is a unified employment API that lets developers integrate with HRIS, payroll, and benefits systems through a single interface. The API exposes Company, Directory, Individual, Employment, Payment, Pay Statement, and Benefits resources, plus Sandbox endpoints for testing.
  version: '2024-04-01'
  contact:
    name: Finch
    url: https://www.tryfinch.com/
servers:
- url: https://api.tryfinch.com
  description: Finch API
security:
- bearerAuth: []
tags:
- name: Employer
paths:
  /employer/company:
    get:
      operationId: getCompany
      summary: Get connected company information
      responses:
        '200':
          description: Company record
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Company'
      tags:
      - Employer
  /employer/directory:
    get:
      operationId: listDirectory
      summary: List employees in the company directory
      parameters:
      - name: limit
        in: query
        schema:
          type: integer
      - name: offset
        in: query
        schema:
          type: integer
      responses:
        '200':
          description: Paginated directory
          content:
            application/json:
              schema:
                type: object
                properties:
                  paging:
                    $ref: '#/components/schemas/Paging'
                  individuals:
                    type: array
                    items:
                      $ref: '#/components/schemas/IndividualSummary'
      tags:
      - Employer
  /employer/individual:
    post:
      operationId: getIndividuals
      summary: Get individual records (PII)
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                requests:
                  type: array
                  items:
                    type: object
                    properties:
                      individual_id:
                        type: string
      responses:
        '200':
          description: Individual records
          content:
            application/json:
              schema:
                type: object
                properties:
                  responses:
                    type: array
                    items:
                      $ref: '#/components/schemas/Individual'
      tags:
      - Employer
  /employer/employment:
    post:
      operationId: getEmployment
      summary: Get employment records
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                requests:
                  type: array
                  items:
                    type: object
                    properties:
                      individual_id:
                        type: string
      responses:
        '200':
          description: Employment records
          content:
            application/json:
              schema:
                type: object
                properties:
                  responses:
                    type: array
                    items:
                      $ref: '#/components/schemas/Employment'
      tags:
      - Employer
  /employer/payment:
    get:
      operationId: listPayments
      summary: List company payments (pay runs)
      parameters:
      - name: start_date
        in: query
        schema:
          type: string
          format: date
      - name: end_date
        in: query
        schema:
          type: string
          format: date
      responses:
        '200':
          description: Payments list
          content:
            application/json:
              schema:
                type: object
                properties:
                  payments:
                    type: array
                    items:
                      $ref: '#/components/schemas/Payment'
      tags:
      - Employer
  /employer/pay-statement:
    post:
      operationId: getPayStatements
      summary: Get pay statements for one or more payments
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                requests:
                  type: array
                  items:
                    type: object
                    properties:
                      payment_id:
                        type: string
      responses:
        '200':
          description: Pay statement responses
          content:
            application/json:
              schema:
                type: object
                properties:
                  responses:
                    type: array
                    items:
                      type: object
      tags:
      - Employer
  /employer/benefits:
    get:
      operationId: listBenefits
      summary: List company benefits
      responses:
        '200':
          description: Benefits list
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CompanyBenefit'
      tags:
      - Employer
components:
  schemas:
    Company:
      type: object
      properties:
        id:
          type: string
        legal_name:
          type: string
        entity:
          type: object
          properties:
            type:
              type: string
            subtype:
              type: string
        ein:
          type: string
        primary_email:
          type: string
        primary_phone_number:
          type: string
        departments:
          type: array
          items:
            type: object
        locations:
          type: array
          items:
            type: object
        accounts:
          type: array
          items:
            type: object
    CompanyBenefit:
      type: object
      properties:
        benefit_id:
          type: string
        type:
          type: string
        description:
          type: string
        frequency:
          type: string
    Employment:
      type: object
      properties:
        individual_id:
          type: string
        body:
          type: object
          properties:
            id:
              type: string
            first_name:
              type: string
            last_name:
              type: string
            title:
              type: string
            manager:
              type: object
            department:
              type: object
            employment:
              type: object
              properties:
                type:
                  type: string
                subtype:
                  type: string
            start_date:
              type: string
              format: date
            end_date:
              type: string
              format: date
            is_active:
              type: boolean
            income:
              type: object
            location:
              type: object
    IndividualSummary:
      type: object
      properties:
        id:
          type: string
        first_name:
          type: string
        middle_name:
          type: string
        last_name:
          type: string
        manager:
          type: object
          properties:
            id:
              type: string
        department:
          type: object
          properties:
            name:
              type: string
        is_active:
          type: boolean
    Individual:
      type: object
      properties:
        individual_id:
          type: string
        body:
          type: object
          properties:
            id:
              type: string
            first_name:
              type: string
            last_name:
              type: string
            preferred_name:
              type: string
            dob:
              type: string
            gender:
              type: string
            ethnicity:
              type: string
            ssn:
              type: string
            emails:
              type: array
              items:
                type: object
            phone_numbers:
              type: array
              items:
                type: object
            residence:
              type: object
    Payment:
      type: object
      properties:
        id:
          type: string
        pay_period:
          type: object
          properties:
            start_date:
              type: string
              format: date
            end_date:
              type: string
              format: date
        pay_date:
          type: string
          format: date
        debit_date:
          type: string
          format: date
        company_debit:
          type: object
        gross_pay:
          type: object
        net_pay:
          type: object
        employer_taxes:
          type: object
        employee_taxes:
          type: object
        individual_ids:
          type: array
          items:
            type: string
    Paging:
      type: object
      properties:
        count:
          type: integer
        offset:
          type: integer
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: Finch access token