> ## Documentation Index
> Fetch the complete documentation index at: https://developer.siit.io/llms.txt
> Use this file to discover all available pages before exploring further.

# List Users

> Fetch Users

## Introduction

Notes:

1. Fields that are disabled or restricted will *not* be returned.
2. Archived users are **NOT** returned by default.

## Usage


## OpenAPI

````yaml get /v1/users
openapi: 3.0.1
info:
  title: Siit Public API
  version: v0
servers:
  - url: https://api.siit.io
security: []
paths:
  /v1/users:
    get:
      tags:
        - User
      summary: List Users
      description: Fetch Users
      parameters:
        - $ref: '#/components/parameters/expand_param'
        - name: email_in[]
          in: query
          schema:
            type: array
            items:
              type: string
          required: false
          style: form
          explode: true
          description: Filter by User's work emails.
        - name: personal_email_in[]
          in: query
          schema:
            type: array
            items:
              type: string
          required: false
          style: form
          explode: true
          description: Filter by User's personal email.
        - name: status_in[]
          in: query
          schema:
            type: array
            items:
              type: string
              enum:
                - alumni
                - employee
                - external
                - hired
          required: false
          style: form
          explode: true
          description: Filter by User's status.
        - name: role_in[]
          in: query
          schema:
            type: array
            items:
              type: string
              enum:
                - owner
                - admin
                - it
                - hr
                - ops
                - finance
                - custom
                - user
          required: false
          style: form
          explode: true
          description: Filter by User's role.
        - name: employee_number_eq
          in: query
          schema:
            type: string
          required: false
          description: Only returns users with matcher `employee_number`.
        - name: include_archived
          in: query
          schema:
            type: boolean
            default: false
          required: false
          description: Whether the response should include archived users.
        - name: created_after
          in: query
          schema:
            type: string
            format: date-time
          required: false
          description: Filter Users created after a DateTime (ISO 8601).
        - name: created_before
          in: query
          schema:
            type: string
            format: date-time
          required: false
          description: Filter Users created before a DateTime (ISO 8601).
        - name: updated_after
          in: query
          schema:
            type: string
            format: date-time
          required: false
          description: Filter Users updated after a DateTime (ISO 8601).
        - name: updated_before
          in: query
          schema:
            type: string
            format: date-time
          required: false
          description: Filter Users updated before a DateTime (ISO 8601).
        - name: page
          in: query
          required: false
          description: The current page
          schema:
            type: integer
        - name: per_page
          in: query
          required: false
          description: Number of results retrieved per page.
          schema:
            type: integer
      responses:
        '200':
          description: Successful
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/users_paged_object'
        '401':
          description: Unauthorized
      security:
        - bearer: []
components:
  parameters:
    expand_param:
      name: expand[]
      in: query
      schema:
        type: array
        items:
          type: string
      description: >-
        Fields to expand into full objects. Example:
        ?expand[]=assignee_admin&expand[]=tags
      required: false
  schemas:
    users_paged_object:
      type: object
      properties:
        meta:
          $ref: '#/components/schemas/meta_object'
        results:
          type: array
          items:
            $ref: '#/components/schemas/user'
    meta_object:
      type: object
      properties:
        count:
          type: integer
        current_page:
          type: integer
        next_page_link:
          type: string
          nullable: true
        per_page:
          type: integer
          default: 20
          maximum: 200
        previous_page_link:
          type: string
          nullable: true
        total:
          type: integer
    user:
      type: object
      properties:
        birthday_date:
          type: string
          format: date
          description: date formatted as ISO 8601 (e.g. "2020-12-15")
          nullable: true
        city:
          type: string
          nullable: true
        contract_type:
          type: string
          nullable: true
          enum:
            - contract
            - expat
            - fulltime
            - intern
            - parttime
            - temporary
        country:
          type: string
          description: 'ISO3166 alpha-2 country code (e.g: "PT")'
          nullable: true
        employee_number:
          type: string
          nullable: true
        first_name:
          type: string
          nullable: true
        gender:
          type: string
          enum:
            - female
            - male
            - non_binary
            - other
            - prefer_not_to_disclose
          nullable: true
        hire_date:
          type: string
          format: date
          description: date formatted as ISO 8601 (e.g. "2020-12-15")
          nullable: true
        job_leave_date:
          type: string
          format: date
          description: date formatted as ISO 8601 (e.g. "2020-12-15")
          nullable: true
        job_start_date:
          type: string
          format: date
          description: date formatted as ISO 8601 (e.g. "2020-12-15")
          nullable: true
        job_title:
          type: string
          nullable: true
        last_name:
          type: string
          nullable: true
        last_working_date:
          type: string
          format: date
          description: date formatted as ISO 8601 (e.g. "2020-12-15")
          nullable: true
        preferred_language:
          type: string
          description: A language in IETF format (en-US, pt-PT, fr-FR...)
          nullable: true
        probation_end_date:
          type: string
          format: date
          description: date formatted as ISO 8601 (e.g. "2020-12-15")
          nullable: true
        work_phone:
          type: string
          nullable: true
        uid:
          type: string
          description: The UID of the User
          readOnly: true
        admin_permalink_url:
          type: string
          description: The link to the User in Siit admin dashboard
          readOnly: true
        archived_at:
          type: string
          nullable: true
          format: date-time
          readOnly: true
          description: datetime formatted as ISO 8601 (e.g. "2020-12-15T03:34:13.000Z")
        created_at:
          type: string
          format: date-time
          description: datetime formatted as ISO 8601 (e.g. "2020-12-15T03:34:13.000Z")
          readOnly: true
        department:
          oneOf:
            - type: string
              description: UID when not expanded
            - $ref: '#/components/schemas/department'
          description: >-
            The department this user belongs to. Pass `?expand[]=field_name` for
            full object.
          nullable: true
        department_uid:
          type: string
          description: 'DEPRECATED: Use `department` instead. A Department UID'
          nullable: true
          deprecated: true
        emails:
          type: array
          description: An array of all the known emails for this User
          readOnly: true
          items:
            type: string
        full_name:
          type: string
          description: The full name of the User
          readOnly: true
          nullable: true
        legal_entity:
          oneOf:
            - type: string
              description: UID when not expanded
            - $ref: '#/components/schemas/legal_entity'
          description: >-
            The legal entity this user belongs to. Pass `?expand[]=field_name`
            for full object.
          nullable: true
        legal_entity_uid:
          type: string
          description: 'DEPRECATED: Use `legal_entity` instead. A Legal Entity UID'
          nullable: true
          deprecated: true
        microsoft_entra_ids:
          description: The Microsoft Entra IDs (Azure Directory) associated with that User
          type: array
          readOnly: true
          items:
            type: string
        microsoft_entra_group_ids:
          description: >-
            The Microsoft Entra Group IDs (Azure Directory) associated to that
            User
          type: array
          readOnly: true
          items:
            type: string
        office_location:
          oneOf:
            - type: string
              description: UID when not expanded
            - $ref: '#/components/schemas/office_location'
          description: >-
            The office location of this user. Pass `?expand[]=field_name` for
            full object.
          nullable: true
        office_location_uid:
          type: string
          description: 'DEPRECATED: Use `office_location` instead. An Office Location UID'
          nullable: true
          deprecated: true
        report_to:
          oneOf:
            - type: string
              description: UID when not expanded
            - $ref: '#/components/schemas/user'
          description: >-
            The manager of this user. Pass `?expand[]=field_name` for full
            object.
          nullable: true
        report_to_uid:
          type: string
          description: >-
            DEPRECATED: Use `report_to` instead. The UID of the manager of this
            user
          nullable: true
          deprecated: true
        role_name:
          type: string
          description: The role of the User
          readOnly: true
          enum:
            - owner
            - admin
            - it
            - hr
            - ops
            - finance
            - custom
            - user
        slack_user_id:
          type: string
          description: The Slack user ID of the User (e.g. U0G9QF9C6)
          readOnly: true
          nullable: true
        status:
          type: string
          description: The status of the User
          readOnly: true
          enum:
            - alumni
            - employee
            - external
            - hired
          default: employee
        team_uids:
          type: array
          description: 'DEPRECATED: Use `teams` instead. An array of Team UIDs'
          items:
            type: string
          deprecated: true
        teams:
          anyOf:
            - type: array
              items:
                type: string
            - type: array
              items:
                $ref: '#/components/schemas/team'
          description: >-
            Teams this user belongs to. Pass `?expand[]=field_name` for full
            objects.
          nullable: true
        timezone:
          type: string
          description: ''
          readOnly: true
          nullable: true
        updated_at:
          type: string
          format: date-time
          description: datetime formatted as ISO 8601 (e.g. "2020-12-15T03:34:13.000Z")
          readOnly: true
    department:
      type: object
      properties:
        uid:
          type: string
          readOnly: true
          description: The UID of the Department
        created_at:
          type: string
          format: date-time
          description: datetime formatted as ISO 8601 (e.g. "2020-12-15T03:34:13.000Z")
          readOnly: true
        updated_at:
          type: string
          format: date-time
          description: datetime formatted as ISO 8601 (e.g. "2020-12-15T03:34:13.000Z")
          readOnly: true
        value:
          type: string
          description: The Department name
    legal_entity:
      type: object
      properties:
        uid:
          type: string
          readOnly: true
          description: The UID of the Legal Entity
        created_at:
          type: string
          format: date-time
          description: datetime formatted as ISO 8601 (e.g. "2020-12-15T03:34:13.000Z")
          readOnly: true
        updated_at:
          type: string
          format: date-time
          description: datetime formatted as ISO 8601 (e.g. "2020-12-15T03:34:13.000Z")
          readOnly: true
        value:
          type: string
          description: The Legal Entity name
    office_location:
      type: object
      properties:
        uid:
          type: string
          readOnly: true
          description: The UID of the Office Location
        created_at:
          type: string
          format: date-time
          description: datetime formatted as ISO 8601 (e.g. "2020-12-15T03:34:13.000Z")
          readOnly: true
        updated_at:
          type: string
          format: date-time
          description: datetime formatted as ISO 8601 (e.g. "2020-12-15T03:34:13.000Z")
          readOnly: true
        value:
          type: string
          description: The Office Location name
    team:
      type: object
      properties:
        uid:
          type: string
          readOnly: true
          description: The UID of the Team
        created_at:
          type: string
          format: date-time
          description: datetime formatted as ISO 8601 (e.g. "2020-12-15T03:34:13.000Z")
          readOnly: true
        updated_at:
          type: string
          format: date-time
          description: datetime formatted as ISO 8601 (e.g. "2020-12-15T03:34:13.000Z")
          readOnly: true
        value:
          type: string
          description: The Team name
  securitySchemes:
    bearer:
      type: http
      scheme: bearer

````