> ## Documentation Index
> Fetch the complete documentation index at: https://docs.hypersync.tartanhq.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Get Employee Directory

> Returns a list of employees for the given organization, with support for pagination, filtering, and update tracking.

**Enum Mapping**

<Note>
  If an unexpected value is received for any enum-based key, and it doesn’t match any value in the enum mapping, the value will be set to null.
</Note>

|         Field name        |            Tartan Enum value / Format           |
| :-----------------------: | :---------------------------------------------: |
|           `dob`           |                    `%Y-%m-%d`                   |
|           `doj`           |                    `%Y-%m-%d`                   |
|     `terminationDate`     |                    `%Y-%m-%d`                   |
|   `dependentDetails.dob`  |                    `%Y-%m-%d`                   |
|          `status`         |            `["Active", "Not Active"]`           |
|      `employmentType`     | `["Permanent", "Contract", "Probation/Intern"]` |
|          `gender`         |          `["Male", "Female", "Other"]`          |
|      `maritalStatus`      |  `["Single", "Married", "Divorced", "Widowed"]` |
| `dependentDetails.gender` |          `["Male", "Female", "Other"]`          |


## OpenAPI

````yaml GET /api/v2/employee_list
openapi: 3.0.0
info:
  title: Employee List API
  description: Retrieve a paginated list of employees from the organization.
  version: 1.0.0
servers:
  - url: https://{env}.tartanhq.com
    description: Dynamic environment-based server
    variables:
      env:
        default: dev
security: []
paths:
  /api/v2/employee_list:
    get:
      summary: Get Employee List (v2)
      description: >-
        Returns a list of employees for the given organization, with support for
        pagination, filtering, and update tracking.
      parameters:
        - in: query
          name: org
          required: true
          schema:
            type: string
          description: The organization identifier.
        - in: query
          name: page
          required: false
          schema:
            type: integer
          description: The page number to fetch.
        - in: query
          name: size
          required: false
          schema:
            type: integer
          description: Number of employees to return per page.
        - in: query
          name: from_date
          required: false
          schema:
            type: string
            format: date-time
          description: Return employees updated after this date.
        - in: query
          name: source
          required: false
          schema:
            type: string
          description: Data source (e.g., db, hrms).
        - in: query
          name: filter
          required: false
          schema:
            type: string
          description: Filter in the format `field:value`, e.g., `status:active`.
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                type: object
                properties:
                  requestId:
                    type: string
                    example: 0712451b-6672-4293-a7a6-6b75f5b15590
                  corporateReferenceId:
                    type: string
                    example: f8302566-7464-492a-a485-e8998f97a07f
                  message:
                    type: string
                    example: success
                  pageInfo:
                    type: object
                    properties:
                      totalPages:
                        type: integer
                        example: 4
                      totalItems:
                        type: integer
                        example: 97
                      items:
                        type: integer
                        example: 25
                      next:
                        type: boolean
                        example: true
                      previous:
                        type: boolean
                        example: false
                  data:
                    type: array
                    items:
                      $ref: '#/components/schemas/Employee'
        '400':
          description: Bad Request - Missing required query parameters
          content:
            application/json:
              schema:
                type: object
                properties:
                  requestId:
                    type: string
                    example: d28dfd7b-d9f3-40b6-86c8-eb1684bcdf0e
                  message:
                    type: string
                    example: error
                  data:
                    type: object
                    properties:
                      page:
                        type: array
                        items:
                          type: string
                        example:
                          - This field is required.
                      size:
                        type: array
                        items:
                          type: string
                        example:
                          - This field is required.
                      org:
                        type: array
                        items:
                          type: string
                        example:
                          - This field is required.
        '401':
          description: Unauthorized - Invalid or missing token
          content:
            application/json:
              schema:
                type: object
                properties:
                  requestId:
                    type: string
                    example: 5eb3b3f9-6d8c-49c2-9b12-1027b8a6af58
                  message:
                    type: string
                    example: Invalid token.
                  data:
                    type: string
                    nullable: true
                    example: null
        '424':
          description: Forbidden - Source permission denied
          content:
            application/json:
              schema:
                type: object
                properties:
                  message:
                    type: string
                    example: Source Permission denied
                  data:
                    type: object
                    example: {}
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                type: object
                properties:
                  requestId:
                    type: string
                    example: be2915d5-fc30-4d13-bcca-3d62aefac2a0
                  message:
                    type: string
                    example: Internal Server Error
                  data:
                    type: string
                    nullable: true
                    example: null
      security:
        - TokenAuth: []
components:
  schemas:
    Employee:
      type: object
      properties:
        id:
          type: string
          example: '7'
        employeeId:
          type: string
          example: '5'
        name:
          type: string
          example: Manas Mallik
        email:
          type: string
          format: email
          nullable: true
          example: manas@tartanhq.com
        personalEmail:
          type: string
          format: email
          nullable: true
          example: manas.mallik@gmail.com
        doj:
          type: string
          format: date
          example: '2021-06-01'
        dob:
          type: string
          format: date
          nullable: true
          example: '1983-06-08'
        status:
          type: string
          enum:
            - Active
            - Inactive
            - Terminated
          example: Active
        employmentType:
          type: string
          nullable: true
          example: Permanent
        gender:
          type: string
          example: Male
        pan:
          type: string
          description: Masked PAN
          nullable: true
          example: '************'
        aadhar:
          type: string
          description: Masked Aadhaar
          nullable: true
          example: '************'
        uan:
          type: string
          description: Masked UAN
          nullable: true
          example: '************'
        mobileNumber:
          type: string
          description: Masked mobile number
          nullable: true
          example: '************'
        maritalStatus:
          type: string
          nullable: true
          example: Married
        nationality:
          type: string
          nullable: true
          example: Indian
        fatherName:
          type: string
          nullable: true
          example: Ritesh Mallik
        bloodGroup:
          type: string
          nullable: true
          example: AB +ve
        designation:
          type: string
          example: NOT AVAILABLE
        department:
          type: string
          example: Engineering
        grade:
          type: string
          example: D-3
        groupName:
          type: string
          example: NOT AVAILABLE
        costCenter:
          type: string
          example: NOT AVAILABLE
        companyName:
          type: string
          example: NOT AVAILABLE
        terminationDate:
          type: string
          nullable: true
          format: date
          example: ''
        manager:
          type: string
          example: Meet Semlani
        managerEmail:
          type: string
          format: email
          nullable: true
          example: NOT AVAILABLE
        managerEmail2:
          type: string
          format: email
          nullable: true
          example: NOT AVAILABLE
        managerEmail3:
          type: string
          format: email
          nullable: true
          example: NOT AVAILABLE
        managerEmail4:
          type: string
          format: email
          nullable: true
          example: NOT AVAILABLE
        managerEmail5:
          type: string
          format: email
          nullable: true
          example: NOT AVAILABLE
        countryCode:
          type: string
          example: IN
        bankDetails:
          type: object
          properties:
            accountNumber:
              type: string
              nullable: true
              example: '************'
            ifscCode:
              type: string
              nullable: true
              example: '************'
            bankName:
              type: string
              nullable: true
              example: SBI
        currentAddress:
          type: object
          properties:
            addressPincode:
              type: string
              nullable: true
              example: '560080'
            addressCity:
              type: string
              nullable: true
              example: Banglore
            addressCountry:
              type: string
              nullable: true
              example: India
            addressState:
              type: string
              nullable: true
              example: Karnataka
            addressLine:
              type: string
              example: Sadashiva Nagar Armane Nagar
        permanentAddress:
          type: object
          properties:
            addressPincode:
              type: string
              nullable: true
              example: '226001'
            addressCity:
              type: string
              nullable: true
              example: Luknow
            addressCountry:
              type: string
              nullable: true
              example: India
            addressState:
              type: string
              nullable: true
              example: Uttar Pradesh
            addressLine:
              type: string
              example: Yarana Nagar Luknow
        jobLocation:
          type: object
          properties:
            pincode:
              type: string
              example: NOT AVAILABLE
            city:
              type: string
              example: NOT AVAILABLE
        employeeMetadata:
          type: object
          properties:
            marriageDate:
              type: string
              nullable: true
              example: NOT AVAILABLE
        dependentDetails:
          type: array
          items:
            type: object
            properties:
              name:
                type: string
                example: Sohan Negi
              relation:
                type: string
                example: Father
              dob:
                type: string
                nullable: true
                example: NOT AVAILABLE
              email:
                type: string
                nullable: true
                example: NOT AVAILABLE
              gender:
                type: string
                nullable: true
                example: NOT AVAILABLE
              mobileNumber:
                type: string
                nullable: true
                example: NOT AVAILABLE
              profession:
                type: string
                nullable: true
                example: NOT AVAILABLE
        salaryDetails:
          type: object
          properties:
            ctc:
              type: object
              properties:
                basic:
                  type: number
                  example: 50000
                dearnessAllowance:
                  type: number
                  example: 9000.9
                hra:
                  type: number
                  example: 25000.5
                gratuity:
                  type: number
                  example: 2000.7
                medicalAllowance:
                  type: number
                  example: 2000.7
                travelAllowance:
                  type: number
                  example: 2000.7
                specialAllowance:
                  type: number
                  nullable: true
                  example: null
                otherAllowance:
                  type: number
                  nullable: true
                  example: null
                flexiBasketAllowance:
                  type: number
                  nullable: true
                  example: null
                grossPay:
                  type: number
                  nullable: true
                  example: null
                taxRegime:
                  type: string
                  nullable: true
                  example: null
                fixedPay:
                  type: number
                  nullable: true
                  example: null
                bonus:
                  type: object
                  properties:
                    joining:
                      type: number
                      example: 80000
                    referral:
                      type: number
                      nullable: true
                      example: null
                    retention:
                      type: number
                      nullable: true
                      example: null
                    performance:
                      type: number
                      nullable: true
                      example: null
                    relocation:
                      type: number
                      nullable: true
                      example: null
                    misc:
                      type: number
                      nullable: true
                      example: null
                deductions:
                  type: object
                  properties:
                    pf:
                      type: number
                      example: 1800
                    esi:
                      type: number
                      nullable: true
                      example: null
                    professionalTax:
                      type: number
                      nullable: true
                      example: null
                    labourWelfareFund:
                      type: number
                      nullable: true
                      example: null
                    misc:
                      type: number
                      nullable: true
                      example: null
                    nps:
                      type: number
                      nullable: true
                      example: null
            monthly:
              type: object
              properties:
                month:
                  type: number
                  example: 2
                year:
                  type: number
                  example: 2025
                basic:
                  type: number
                  nullable: true
                  example: null
                dearnessAllowance:
                  type: number
                  nullable: true
                  example: null
                hra:
                  type: number
                  nullable: true
                  example: null
                medicalAllowance:
                  type: number
                  nullable: true
                  example: null
                travelAllowance:
                  type: number
                  nullable: true
                  example: null
                specialAllowance:
                  type: number
                  nullable: true
                  example: null
                flexiBasketAllowance:
                  type: number
                  nullable: true
                  example: null
                gratuity:
                  type: number
                  example: 1600
                otherAllowance:
                  type: number
                  nullable: true
                  example: null
                taxRegime:
                  type: string
                  nullable: true
                  example: null
                fixedPay:
                  type: number
                  nullable: true
                  example: null
                grossPay:
                  type: number
                  nullable: true
                  example: null
                bonus:
                  type: object
                  properties:
                    joining:
                      type: number
                      example: 20000
                    referral:
                      type: number
                      nullable: true
                      example: null
                    retention:
                      type: number
                      nullable: true
                      example: null
                    performance:
                      type: number
                      nullable: true
                      example: null
                    relocation:
                      type: number
                      example: 28907.17
                    misc:
                      type: number
                      nullable: true
                      example: null
                deductions:
                  type: object
                  properties:
                    pf:
                      type: number
                      nullable: true
                      example: null
                    esi:
                      type: number
                      nullable: true
                      example: null
                    professionalTax:
                      type: number
                      example: 300
                    labourWelfareFund:
                      type: number
                      nullable: true
                      example: null
                    tds:
                      type: number
                      nullable: true
                      example: null
                    medicalClaimDeduction:
                      type: number
                      nullable: true
                      example: null
                    groupTermInsuranceDeductions:
                      type: number
                      nullable: true
                      example: null
                    earlyWageDeduction:
                      type: number
                      nullable: true
                      example: null
                    misc:
                      type: number
                      example: 162023.24
                    nps:
                      type: number
                      example: 1234.34
                reimbursements:
                  type: number
                  example: 93321.33
  securitySchemes:
    TokenAuth:
      type: apiKey
      in: header
      name: Authorization

````