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

# Search Form Users

> Search organization members for a form's user field.



## OpenAPI

````yaml https://platform.tracecat.com/api/openapi.json get /workspaces/{workspace_id}/forms/{form_id}/users
openapi: 3.1.0
info:
  title: Tracecat API
  summary: Tracecat API
  description: The open source AI automation platform for security teams and agents.
  termsOfService: >-
    https://docs.google.com/document/d/e/2PACX-1vQvDe3SoVAPoQc51MgfGCP71IqFYX_rMVEde8zC4qmBCec5f8PLKQRdxa6tsUABT8gWAR9J-EVs2CrQ/pub
  contact:
    name: Tracecat Founders
    email: founders@tracecat.com
  license:
    name: AGPL-3.0
    url: https://www.gnu.org/licenses/agpl-3.0.html
  version: '1'
servers:
  - url: /api
security: []
tags:
  - name: public
    description: Public facing endpoints
  - name: workflows
    description: Workflow management
  - name: actions
    description: Action management
  - name: triggers
    description: Workflow triggers
  - name: secrets
    description: Secret management
  - name: variables
    description: Workspace variable management
paths:
  /workspaces/{workspace_id}/forms/{form_id}/users:
    get:
      tags:
        - forms
      summary: Search Form Users
      description: Search organization members for a form's user field.
      operationId: forms-search_form_users
      parameters:
        - name: form_id
          in: path
          required: true
          schema:
            type: string
            format: uuid
            title: Form Id
        - name: workspace_id
          in: path
          required: true
          schema:
            type: string
            format: uuid
            title: Workspace Id
        - name: search
          in: query
          required: false
          schema:
            anyOf:
              - type: string
                maxLength: 255
              - type: 'null'
            title: Search
        - name: limit
          in: query
          required: false
          schema:
            type: integer
            maximum: 200
            minimum: 1
            default: 20
            title: Limit
        - name: cursor
          in: query
          required: false
          schema:
            anyOf:
              - type: string
                maxLength: 8192
              - type: 'null'
            title: Cursor
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CursorPaginatedResponse_FormUserRead_'
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/FormErrorResponse'
          description: Not Found
        '409':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/FormErrorResponse'
          description: Conflict
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
      security:
        - APIKeyCookie: []
        - ServiceAccountApiKeyBearer: []
components:
  schemas:
    CursorPaginatedResponse_FormUserRead_:
      properties:
        items:
          items:
            $ref: '#/components/schemas/FormUserRead'
          type: array
          title: Items
        next_cursor:
          anyOf:
            - type: string
            - type: 'null'
          title: Next Cursor
          description: Cursor for next page
        prev_cursor:
          anyOf:
            - type: string
            - type: 'null'
          title: Prev Cursor
          description: Cursor for previous page
        has_more:
          type: boolean
          title: Has More
          description: Whether more items exist
          default: false
        has_previous:
          type: boolean
          title: Has Previous
          description: Whether previous items exist
          default: false
        total_estimate:
          anyOf:
            - type: integer
            - type: 'null'
          title: Total Estimate
          description: Estimated total count from table statistics
      type: object
      required:
        - items
      title: CursorPaginatedResponse[FormUserRead]
    FormErrorResponse:
      properties:
        detail:
          $ref: '#/components/schemas/FormErrorDetail'
      type: object
      required:
        - detail
      title: FormErrorResponse
    HTTPValidationError:
      properties:
        detail:
          items:
            $ref: '#/components/schemas/ValidationError'
          type: array
          title: Detail
      type: object
      title: HTTPValidationError
    FormUserRead:
      properties:
        user_id:
          type: string
          format: uuid
          title: User Id
        email:
          type: string
          title: Email
        first_name:
          anyOf:
            - type: string
            - type: 'null'
          title: First Name
        last_name:
          anyOf:
            - type: string
            - type: 'null'
          title: Last Name
      type: object
      required:
        - user_id
        - email
      title: FormUserRead
      description: A choice of the ``user`` widget, and what a chosen user expands to.
    FormErrorDetail:
      properties:
        code:
          $ref: '#/components/schemas/FormErrorCode'
        message:
          type: string
          title: Message
        errors:
          anyOf:
            - items:
                $ref: '#/components/schemas/FormFieldError'
              type: array
            - type: 'null'
          title: Errors
          description: Per-field errors of a rejected submission.
        issues:
          anyOf:
            - items:
                $ref: '#/components/schemas/FormIssue'
              type: array
            - type: 'null'
          title: Issues
          description: Issues of a rejected form config.
      type: object
      required:
        - code
        - message
      title: FormErrorDetail
    ValidationError:
      properties:
        loc:
          items:
            anyOf:
              - type: string
              - type: integer
          type: array
          title: Location
        msg:
          type: string
          title: Message
        type:
          type: string
          title: Error Type
        input:
          title: Input
        ctx:
          type: object
          title: Context
      type: object
      required:
        - loc
        - msg
        - type
      title: ValidationError
    FormErrorCode:
      type: string
      enum:
        - not_found
        - already_exists
        - form_config_invalid
        - form_workflow_unpublished
        - form_offline
        - form_unavailable
        - form_changed
        - form_validation_error
        - workflow_start_failed
        - workflow_start_unconfirmed
        - file_field_invalid
        - file_invalid
        - file_type_not_allowed
        - file_too_large
        - file_limit_reached
        - file_upload_failed
      title: FormErrorCode
      description: Machine-readable failures of a forms request.
    FormFieldError:
      properties:
        field:
          type: string
          title: Field
        code:
          $ref: '#/components/schemas/FormFieldErrorCode'
        message:
          type: string
          title: Message
      type: object
      required:
        - field
        - code
        - message
      title: FormFieldError
    FormIssue:
      properties:
        severity:
          $ref: '#/components/schemas/FormIssueSeverity'
        code:
          $ref: '#/components/schemas/FormIssueCode'
        message:
          type: string
          title: Message
        loc:
          items:
            anyOf:
              - type: string
              - type: integer
          type: array
          title: Loc
          description: Path to the offending config key.
      type: object
      required:
        - severity
        - code
        - message
        - loc
      title: FormIssue
      description: A problem found while resolving a form config against its inputs.
    FormFieldErrorCode:
      type: string
      enum:
        - required
        - unknown_field
        - invalid_value
        - invalid_option
        - invalid_date
        - invalid_user
        - invalid_file
        - too_many_files
      title: FormFieldErrorCode
      description: Why a submitted value was rejected.
    FormIssueSeverity:
      type: string
      enum:
        - error
        - warning
      title: FormIssueSeverity
    FormIssueCode:
      type: string
      enum:
        - unknown_field
        - duplicate_field
        - incompatible_widget
        - no_widget_for_type
        - unsupported_widget_option
        - options_required
        - options_not_supported
        - option_not_in_enum
        - default_invalid
        - conditional_field_required
        - visible_if_unknown_field
        - visible_if_invalid_controller
        - visible_if_invalid_value
        - autofill_type_mismatch
        - hidden_with_autofill
        - unrendered_optional_input
        - integer_out_of_range
      title: FormIssueCode
      description: Problems the resolver finds in a form config.
  securitySchemes:
    APIKeyCookie:
      type: apiKey
      in: cookie
      name: fastapiusersauth
    ServiceAccountApiKeyBearer:
      type: http
      description: Tracecat service account API key.
      scheme: bearer

````

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