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

# List employments for a person

> List current and former employments for a person, newest first.



## OpenAPI

````yaml /api-reference/openapi.yaml get /v1/people/{person_id}/employments
openapi: 3.0.1
info:
  title: Slant Public API V1
  version: v1
  description: Public API for creating and managing resources in Slant
  contact:
    name: Slant API Support
    email: api@slant.com
servers:
  - url: https://api.slant.app
security:
  - bearer: []
paths:
  /v1/people/{person_id}/employments:
    parameters:
      - name: person_id
        in: path
        description: The person ID
        required: true
        example: abc123xyz
        schema:
          type: string
    get:
      tags:
        - People
      summary: List employments for a person
      description: List current and former employments for a person, newest first.
      parameters:
        - name: page
          in: query
          schema:
            type: integer
          description: Page number
          required: false
          example: 1
        - name: per_page
          in: query
          description: >-
            Items per page (1-100, default: 25). Values over 100 will be clamped
            to 100.
          required: false
          example: 25
          schema:
            type: integer
            minimum: 1
      responses:
        '200':
          description: employments retrieved
          content:
            application/json:
              schema:
                type: object
                required:
                  - data
                  - pagination
                properties:
                  data:
                    type: array
                    items:
                      $ref: '#/components/schemas/Employment'
                  pagination:
                    type: object
                    properties:
                      current_page:
                        type: integer
                        example: 1
                      total_pages:
                        type: integer
                        example: 10
                      total_count:
                        type: integer
                        example: 100
                      per_page:
                        type: integer
                        example: 25
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          description: unauthorized - missing or invalid token
          content:
            application/json:
              schema:
                type: object
                required:
                  - error
                  - detail
                properties:
                  error:
                    type: string
                    description: Error code
                    enum:
                      - token_missing
                      - token_invalid
                  detail:
                    oneOf:
                      - type: string
                        description: Human-readable error description
                      - type: array
                        items:
                          type: string
                        description: Array of validation error messages
        '403':
          $ref: '#/components/responses/Forbidden'
        '404':
          description: person not found or inaccessible
          content:
            application/json:
              schema:
                type: object
                required:
                  - error
                  - detail
                properties:
                  error:
                    type: string
                    description: Error code
                    enum:
                      - record_not_found
                  detail:
                    oneOf:
                      - type: string
                        description: Human-readable error description
                      - type: array
                        items:
                          type: string
                        description: Array of validation error messages
      security:
        - bearer: []
components:
  schemas:
    Employment:
      type: object
      required:
        - business_name
      properties:
        id:
          type: string
          description: The employment ID
          example: emp123xyz
        person_id:
          type: string
          description: The person ID
          example: abc123xyz
        business_id:
          type: string
          nullable: true
          description: Linked employer Business ID, when available
        business_name:
          type: string
          example: Acme Corp
        role:
          type: string
          example: Software Engineer
          nullable: true
        start_date:
          type: string
          format: date
          example: '2023-01-15'
          nullable: true
        end_date:
          type: string
          format: date
          example: '2024-12-31'
          nullable: true
        actively_employed:
          type: boolean
          example: true
    Error:
      type: object
      required:
        - error
        - detail
      properties:
        error:
          type: string
          description: Error code
        detail:
          type: string
          description: Human-readable error description
  responses:
    BadRequest:
      description: Bad Request - invalid JSON
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
          examples:
            invalid_json:
              value:
                error: invalid_json
                detail: Request body must be valid JSON
    Forbidden:
      description: Forbidden - client not found or user not linked
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
          examples:
            client_not_found:
              value:
                error: client_not_found
                detail: Invalid or inactive client
            user_not_linked:
              value:
                error: user_not_linked
                detail: No matching user for provided token
            principal_book_missing:
              value:
                error: principal_book_missing
                detail: User must have a principal book
            not_authorized:
              value:
                error: not_authorized
                detail: You are not permitted to perform this action
  securitySchemes:
    bearer:
      type: http
      scheme: bearer
      bearerFormat: OAuth
      description: OAuth 2.0 Bearer Token from Clerk authentication

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.