Factorial Core::Employees::V2 API

The Core::Employees::V2 API from Factorial — 2 operation(s) for core::employees::v2.

Operations 4

GET /v2/core/employees Get Employees From a Company #
POST /v2/core/employees Create Employee #
GET /v2/core/employees/{id} Get Employee #
PUT /v2/core/employees/{id} Update Employee #

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/factorial-hr-core-employees-v2-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 form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

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

OpenAPI Specification

factorial-hr-core-employees-v2-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Factorial Core::Employees::V2 API
  description: 'Open Api Specifications available at https://github.com/factorialco/oas


    Guides and support available at https://help.factorialhr.com/integrations


    # Authentication


    The public API provides two methods of authentication, ApiKeys and OAuth2.'
  version: 1.0.0
servers:
- url: https://api.factorialhr.com/api
- url: https://api.demo.factorialhr.com/api
security:
- oauth2: []
- apikey: []
tags:
- name: Core::Employees::V2
paths:
  /v2/core/employees:
    get:
      tags:
      - Core::Employees::V2
      summary: Get Employees From a Company
      operationId: listEmployees
      description: Only `admins` can see all the employees' information, `regular users` will get a restricted version of the payload as a response based on the permission set by the admin
      parameters:
      - name: full_text_name
        in: query
        schema:
          type: string
        description: Retrieves the list of employees by full names
        example: Bob Stone
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Employee'
        '500':
          description: Internal Server Error
    post:
      tags:
      - Core::Employees::V2
      summary: Create Employee
      operationId: createEmployee
      description: Create employee
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                email:
                  type: string
                  example: bob_stone@factorial.co
                first_name:
                  type: string
                last_name:
                  type: string
                birthday_on:
                  type: string
                  example: yyyy-mm-dd
                role:
                  type: string
                  example: basic
                  enum:
                  - basic
                  - admin
                terminated_on:
                  type: string
                  example: yyyy-mm-dd
                gender:
                  type: string
                  example: female
                  enum:
                  - male
                  - female
                nationality:
                  type: string
                bank_number:
                  type: string
                country:
                  type: string
                city:
                  type: string
                state:
                  type: string
                postal_code:
                  type: string
                address_line_1:
                  type: string
                address_line_2:
                  type: string
                identifier:
                  type: string
                swift_bic:
                  type: string
                  example: '1234567890'
                company_id:
                  type: integer
                  example: 5
                legal_entity_id:
                  type: integer
                  example: 5
                manager_id:
                  type: integer
                  example: 5
                timeoff_manager_id:
                  type: integer
                  example: 5
      responses:
        '201':
          description: Created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Employee'
        '500':
          description: Internal Server Error
  /v2/core/employees/{id}:
    get:
      tags:
      - Core::Employees::V2
      summary: Get Employee
      operationId: getEmployee
      description: Only admins can see all the employees' information, regular users will get a restricted version of the payload as a response based on the permission set by the admin
      parameters:
      - name: id
        in: path
        schema:
          type: string
        required: true
        description: '(Required) '
        example: 5
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Employee'
        '500':
          description: Internal Server Error
    put:
      tags:
      - Core::Employees::V2
      summary: Update Employee
      operationId: updateEmployee
      description: Update employee
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                email:
                  type: string
                  example: bob_stone@factorial.co
                first_name:
                  type: string
                last_name:
                  type: string
                birthday_on:
                  type: string
                  example: yyyy-mm-dd
                role:
                  type: string
                  example: basic
                  enum:
                  - basic
                  - admin
                terminated_on:
                  type: string
                  example: yyyy-mm-dd
                gender:
                  type: string
                  example: female
                  enum:
                  - male
                  - female
                nationality:
                  type: string
                bank_number:
                  type: string
                country:
                  type: string
                city:
                  type: string
                state:
                  type: string
                postal_code:
                  type: string
                address_line_1:
                  type: string
                address_line_2:
                  type: string
                identifier:
                  type: string
                swift_bic:
                  type: string
                  example: '1234567890'
                manager_id:
                  type: integer
                  example: 5
                timeoff_manager_id:
                  type: integer
                  example: 5
      parameters:
      - name: id
        in: path
        schema:
          type: string
        required: true
        description: '(Required) '
        example: <integer>
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Employee'
        '500':
          description: Internal Server Error
components:
  schemas:
    Employee:
      type: object
      properties:
        email:
          type: string
          example: bob_stone@factorial.co
        first_name:
          type: string
        last_name:
          type: string
        birthday_on:
          type: string
          example: yyyy-mm-dd
        role:
          type: string
          example: basic
          enum:
          - basic
          - admin
        terminated_on:
          type: string
          example: yyyy-mm-dd
        gender:
          type: string
          example: female
          enum:
          - male
          - female
        nationality:
          type: string
        bank_number:
          type: string
        country:
          type: string
        city:
          type: string
        state:
          type: string
        postal_code:
          type: string
        address_line_1:
          type: string
        address_line_2:
          type: string
        identifier:
          type: string
        swift_bic:
          type: string
          example: '1234567890'
        company_id:
          type: integer
          example: 5
        legal_entity_id:
          type: integer
          example: 5
        manager_id:
          type: integer
          example: 5
        timeoff_manager_id:
          type: integer
          example: 5
  securitySchemes:
    oauth2:
      type: oauth2
      flows:
        authorizationCode:
          authorizationUrl: /oauth/authorize
          tokenUrl: /oauth/token
          refreshUrl: /oauth/token
          scopes:
            read: Required for all operations
            write: Required for write operations
    apikey:
      type: apiKey
      in: header
      name: x-api-key