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

# List Authorisation Terms



## OpenAPI

````yaml GET /authorisations/terms
openapi: 3.0.1
info:
  title: Payroll API
  description: A full flagged payroll api provided by Teal
  version: 1.0.0
servers:
  - url: https://api.sandbox.goteal.co
    description: Sandbox server for experiments
  - url: https://api.goteal.co
    description: Production server
security:
  - ApiKeyAuth: []
  - MemberBearerAuth: []
paths:
  /authorisations/terms:
    description: >-
      Authorisation terms define the legal text and versions that users can
      accept. Lenders can create and manage authorisation terms.
    get:
      summary: List all authorisation terms.
      parameters:
        - name: authorisation_category
          in: query
          description: Filter by authorisation category
          required: false
          schema:
            $ref: '#/components/schemas/AuthorisationCategory'
        - name: is_active
          in: query
          description: Filter by active status
          required: false
          schema:
            type: boolean
        - name: is_system_term
          in: query
          description: >-
            Filter by system term status. True returns only Teal's default
            terms, false returns only client-created terms.
          required: false
          schema:
            type: boolean
        - name: offset
          in: query
          description: The offset to start at
          required: false
          schema:
            type: integer
            format: int32
            minimum: 0
            default: 0
        - name: limit
          in: query
          description: The number of items to return
          required: false
          schema:
            type: integer
            format: int32
            minimum: 1
            maximum: 100
            default: 20
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
                properties:
                  pagination:
                    $ref: '#/components/schemas/Pagination'
                  terms:
                    type: array
                    items:
                      $ref: '#/components/schemas/CreatedAuthorisationTerm'
              example:
                pagination:
                  offset: 0
                  limit: 20
                  count: 2
                terms:
                  - id: 550e8400-e29b-41d4-a716-446655440000
                    name: Teal Data Sharing Agreement
                    authorisation_text: >-
                      I agree to share my payroll data with the lender for
                      income verification.
                    authorisation_version: 1
                    authorisation_category: recurring
                    is_active: true
                    is_system_term: true
                    created_at: '2024-01-15T00:00:00.000Z'
                  - id: 7f3b8c2a-1d4e-4f6a-8b8c-9a0b1c2d3e4f
                    name: Custom Terms v2
                    authorisation_text: Custom authorisation text for our lending product.
                    authorisation_version: 2
                    authorisation_category: one_time
                    is_active: true
                    is_system_term: false
                    created_at: '2024-06-01T00:00:00.000Z'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/UnauthorizedApiKey'
components:
  schemas:
    AuthorisationCategory:
      type: string
      description: The category of authorisation
      enum:
        - one_time
        - recurring
      example: one_time
    Pagination:
      type: object
      required:
        - offset
        - limit
        - count
      properties:
        offset:
          description: The offset to start at - zero based
          type: integer
          format: int32
          minimum: 1
          default: 0
          example: 75
        limit:
          type: integer
          format: int32
          minimum: 1
          maximum: 100
          default: 20
          example: 25
        count:
          type: integer
          format: int32
          example: 14
          minimum: 0
        total_count:
          type: integer
          format: int32
          example: 89
    CreatedAuthorisationTerm:
      allOf:
        - required:
            - id
            - created_at
            - is_active
            - is_system_term
            - authorisation_version
          properties:
            id:
              type: string
              format: uuid
              description: Unique identifier for the authorisation term
              example: 550e8400-e29b-41d4-a716-446655440000
            is_active:
              type: boolean
              description: >-
                Whether this authorisation term is currently active and can be
                accepted
              default: true
              example: true
            is_system_term:
              type: boolean
              description: True for Teal's default terms, false for client-created terms
              readOnly: true
              example: false
            authorisation_version:
              type: integer
              format: int32
              description: Auto-incremented version number for the authorisation term
              readOnly: true
              example: 1
            created_at:
              $ref: '#/components/schemas/Date'
              description: When the authorisation term was created
        - $ref: '#/components/schemas/AuthorisationTerm'
    Date:
      type: string
      format: date-time
      example: '2019-05-17T00:00:00.000Z'
    AuthorisationTerm:
      type: object
      required:
        - name
        - authorisation_text
        - authorisation_category
      properties:
        name:
          type: string
          description: Human-readable name for the authorisation term
          example: Data Sharing Agreement
        authorisation_text:
          type: string
          description: The legal authorisation text that users will accept
          example: >-
            I agree to share my payroll data with the lender for the purpose of
            income verification.
        authorisation_category:
          $ref: '#/components/schemas/AuthorisationCategory'
        deactivate_previous:
          type: boolean
          description: >-
            If true, deactivates any existing active term for the same category.
            Defaults to false.
          default: false
          example: true
          writeOnly: true
    Error:
      required:
        - errors
      type: object
      properties:
        errors:
          type: array
          items:
            type: string
          description: An array of messages describing the errors
          example:
            - The request is missing the required field `name`
    Unauthorized:
      type: object
      properties:
        errors:
          type: string
          description: An array of messages describing the errors
          example:
            - No X-API-KEY header provided or wrong value
  responses:
    BadRequest:
      description: Bad request if one of the required parameters is missing
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
    UnauthorizedApiKey:
      description: Unauthorized if the X-API-KEY is not provided or is wrong
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Unauthorized'
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: X-API-KEY
    MemberBearerAuth:
      type: http
      scheme: bearer
      description: >-
        Bearer token for authentication. The token should be the one returned by
        the "/members/signin"

````