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

# Get Form List

> Retrieve a paginated list of forms, with optional field selection, locale translations, search by display name, sorting, and pagination controls. Use this endpoint to build form catalogs or search interfaces.

Before calling this endpoint, make sure you’ve generated an API token and picked the correct domain. See [Authentication & Base URLs](/api-reference/authbaseurl).


## OpenAPI

````yaml GET /apis/setting-service/public/v1/forms
openapi: 3.1.0
info:
  title: OpenAPI Plant Store
  description: >-
    A sample API that uses a plant store as an example to demonstrate features
    in the OpenAPI specification
  license:
    name: MIT
  version: 1.0.0
servers:
  - url: https://apis.experro.app
    description: Admin Server
  - url: https://{base-address}
    description: Custom Server
    variables:
      base-address:
        default: ''
        description: Enter your custom domain or server address.
security:
  - bearerAuth: []
paths:
  /apis/setting-service/public/v1/forms:
    get:
      summary: List and Filter Forms
      description: >-
        Retrieve a paginated list of forms, with optional field selection,
        locale translations, search by display name, sorting, and pagination
        controls. Use this endpoint to build form catalogs or search interfaces.
      parameters:
        - $ref: '#/components/parameters/FieldsQryPrm'
        - $ref: '#/components/parameters/LocaleQryPrm'
        - name: search
          in: query
          schema:
            type: string
          description: Search substring to filter forms by display name.
        - name: sort_by
          in: query
          schema:
            type: string
          description: Field to sort results by (e.g. `created_at`, `name`).
        - name: order_by
          in: query
          schema:
            type: string
          description: >-
            Order pattern (asc for ascending and desc for descending, default is
            desc)
        - $ref: '#/components/parameters/SkipQryPrm'
        - name: rows
          in: query
          schema:
            type: integer
          description: Maximum number of forms to return.
      responses:
        '200':
          description: A list of forms matching the query and pagination metadata.
          content:
            application/json:
              schema:
                type: object
                properties:
                  Status:
                    type: string
                    description: Indicates overall request status.
                    example: success
                  Data:
                    type: object
                    properties:
                      item:
                        type: object
                        properties:
                          total_count:
                            type: integer
                            description: Total number of matching forms.
                          items:
                            type: array
                            description: Array of form summaries.
                            items:
                              type: object
                              properties:
                                name:
                                  type: string
                                display_name:
                                  type: string
                                description:
                                  type: string
                                submit_btn_txt:
                                  type: string
                                is_captcha_enabled:
                                  type: boolean
                                created_at:
                                  type: string
                                  format: date-time
        '400':
          description: Bad Request – invalid query parameters.
          content:
            application/json:
              schema:
                type: object
                properties:
                  Status:
                    type: string
                    example: failure
                  Data:
                    $ref: '#/components/schemas/Error404'
        '401':
          description: Unauthorized – Missing or invalid API key.
          content:
            application/json:
              schema:
                type: object
                properties:
                  Status:
                    type: string
                    example: failure
                  Data:
                    $ref: '#/components/schemas/Error401'
        '500':
          description: Internal Server Error – an unexpected error on the server.
          content:
            application/json:
              schema:
                type: object
                properties:
                  Status:
                    type: string
                    example: failure
                  Data:
                    $ref: '#/components/schemas/Error500'
      security: []
      servers:
        - url: https://{base-address}
          description: Custom Server
          variables:
            base-address:
              default: ''
              description: Enter your custom domain or server address.
components:
  parameters:
    FieldsQryPrm:
      name: fields
      in: query
      description: Comma-separated list of fields to include in the response
      schema:
        type: string
      required: true
    LocaleQryPrm:
      name: locale
      in: query
      description: Specifies the language or region for the response data
      required: true
      schema:
        type: string
    SkipQryPrm:
      name: skip
      in: query
      schema:
        type: integer
      description: Number of items to skip for pagination offset.
  schemas:
    Error404:
      type: object
      properties:
        Status:
          type: string
          example: failure
        Error:
          type: object
          properties:
            message:
              type: string
            name:
              type: string
            code:
              type: string
          required:
            - message
            - name
      required:
        - Status
        - Error
    Error401:
      type: object
      properties:
        Status:
          type: string
          example: failure
        Error:
          type: object
          properties:
            message:
              type: string
            name:
              type: string
            code:
              type: string
          required:
            - message
            - name
      required:
        - Status
        - Error
    Error500:
      type: object
      properties:
        Status:
          type: string
          example: failure
        Error:
          type: object
          properties:
            message:
              type: string
            name:
              type: string
            code:
              type: string
          required:
            - message
            - name
      required:
        - Status
        - Error
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer

````