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

# List Approvals

> Retrieve a paginated list of your approvals. Approvals can be of type `CONSENT`, `FORM`, `DOCUMENT`, `JSON`, or `POLICY`. 
 Filter with the optional query parameters: `search` (case-insensitive match on the approval name), `active` (active or inactive approvals only), `types` (one or more resource types), and `internalId` (your own identifier for a specific approval). 
 Use `pageIndex` and `pageSize` to paginate.



## OpenAPI

````yaml /versions/2026-07-06.yaml get /approvals
openapi: 3.1.0
info:
  title: Humanos API
  description: Humanos API
  version: '1.0'
  contact: {}
servers: []
security: []
tags:
  - name: humanosApp
    description: ''
paths:
  /approvals:
    get:
      tags:
        - Approval
      summary: List Approvals
      description: >-
        Retrieve a paginated list of your approvals. Approvals can be of type
        `CONSENT`, `FORM`, `DOCUMENT`, `JSON`, or `POLICY`. 
         Filter with the optional query parameters: `search` (case-insensitive match on the approval name), `active` (active or inactive approvals only), `types` (one or more resource types), and `internalId` (your own identifier for a specific approval). 
         Use `pageIndex` and `pageSize` to paginate.
      operationId: approval_list
      parameters:
        - name: pageIndex
          required: false
          in: query
          description: Zero-based page index. `0` returns the first page.
          schema:
            default: 0
            example: 0
            type: number
        - name: pageSize
          required: false
          in: query
          description: Number of items per page
          schema:
            minimum: 5
            maximum: 100
            default: 10
            example: 10
            type: number
        - name: search
          required: false
          in: query
          description: >-
            Search query to filter by. Is case-insensitive and does not need to
            match the entire value.
          schema:
            maxLength: 100
            example: example
            type: string
        - name: active
          required: false
          in: query
          description: Filter by active status. Accepts true/false as string or boolean.
          schema:
            example: true
            type: boolean
        - name: types
          required: false
          in: query
          description: Filter by resource types. Can be a single value or array
          schema:
            example:
              - DOCUMENT
              - CONSENT
            type: array
            items:
              type: string
              enum:
                - CONSENT
                - FORM
                - DOCUMENT
                - JSON
                - POLICY
        - name: internalId
          required: false
          in: query
          description: >-
            Identifier to help you identify the resource in your own system. We
            recommend using a unique value.
          schema:
            example: internal-12345
            type: string
        - $ref: '#/components/parameters/ApiVersion'
      responses:
        '200':
          description: Returns an array of approval items and the total number of pages.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResourcesEntity'
components:
  parameters:
    ApiVersion:
      name: API-Version
      in: header
      required: false
      schema:
        type: string
        pattern: ^\d{4}-\d{2}-\d{2}$
        example: '2026-07-06'
      description: >-
        Pin request, response, and webhook shapes to a specific dated API
        version (YYYY-MM-DD). Omit to use the version pinned to your API key
        (set when the key is created; new keys default to the latest version).
        New integrations should target the latest version.
  schemas:
    ResourcesEntity:
      type: object
      properties:
        data:
          description: Array of your resources matching the query parameters
          type: array
          items:
            $ref: '#/components/schemas/ResourceEntity'
        totalPages:
          type: number
          description: >-
            Total number of pages available based on the page size and total
            count
          example: 5
      required:
        - data
        - totalPages
    ResourceEntity:
      type: object
      properties:
        id:
          type: string
          description: Unique identifier for the resource
          example: 507f1f77bcf86cd799439011
        name:
          type: string
          description: Name of the resource
          example: Identity Document
        type:
          type: string
          description: Type of the resource
          example: DOCUMENT
          enum:
            - CONSENT
            - FORM
            - DOCUMENT
            - JSON
            - POLICY
        active:
          type: boolean
          description: >-
            Whether the resource is currently active. Only active resources can
            be requested
          example: true
        internalId:
          type: string
          description: >-
            Identifier to help you identify the resource in your own system. We
            recommend using a unique value.
          example: internal-12345
        description:
          type: string
          description: Description of the resource. Used to further clarify the resource.
          example: Document to be requested on onboarding
          nullable: true
        groupIds:
          description: Array of group IDs that this resource belongs to
          example:
            - 507f1f77bcf86cd799439011
          type: array
          items:
            type: string
        content:
          type: string
          description: >-
            Resource payload. Format depends on the resource `type` — for
            `DOCUMENT` an S3 reference, for `FORM` a JSON form-schema string,
            for `CONSENT` the consent text; for `JSON` and `POLICY` the
            corresponding payload.
          example: s3://humanos-resources/onboarding/identity-document.pdf
          nullable: true
        consentUrl:
          type: string
          description: External URL associated with a CONSENT resource.
          example: https://example.com/terms-and-conditions
          nullable: true
        placements:
          description: >-
            Predefined placement positions (signatures / identity fields) for
            DOCUMENT resources.
          example:
            - id: plc_1
              contact: null
              type: SIGNATURE
              identityType: null
              x: 100
              'y': 200
              width: 150
              height: 50
              pageIndex: 0
          type: array
          items:
            type: array
        updatedAt:
          type: string
          description: Date and time of the resource last update
          example: '2025-01-15T10:30:00Z'
          format: date-time
      required:
        - id
        - name
        - type
        - active
        - groupIds
        - updatedAt

````