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

# List condition types

> Retrieve a paginated list of available condition types that can be used in flow conditions. Supports pagination, sorting, filtering, and field selection.



## OpenAPI

````yaml /en/api-reference/openapi.en-v1.json get /v1/organizations/{organization_id}/flows/condition-types
openapi: 3.0.3
info:
  title: Public Portal API
  version: 1.0.0
  description: Public REST API for portal
servers:
  - url: https://api.staging.flxwvdexternal.com
    description: Staging API server.
security:
  - bearerAuth: []
tags: []
paths:
  /v1/organizations/{organization_id}/flows/condition-types:
    get:
      tags:
        - Flows
      summary: List condition types
      description: >-
        Retrieve a paginated list of available condition types that can be used
        in flow conditions. Supports pagination, sorting, filtering, and field
        selection.
      operationId: listConditionTypes
      parameters:
        - name: organization id
          in: path
          required: true
          schema:
            type: string
            maxLength: 24
            pattern: ^[0-9a-f]{24}$
          description: The unique identifier of the organization
          example: 507f1f77bcf86cd799439011
        - name: page
          in: query
          required: false
          schema:
            type: integer
            default: 1
            minimum: 1
          description: 'Page number (default: 1)'
        - name: per_page
          in: query
          required: false
          schema:
            type: integer
            default: 100
            maximum: 100
            minimum: 1
          description: 'Items per page (default: 100, max: 100)'
        - name: sort
          in: query
          required: false
          schema:
            type: string
          description: >-
            Sort field with optional order suffix (:asc or :desc). Use response
            property names. Valid fields: id, name, description, type,
            value_type, value_placeholder, period. Example: "name:asc" or
            "type:desc"
        - name: fields
          in: query
          required: false
          schema:
            type: string
            maxLength: 2048
          description: >-
            Comma-separated list of fields to include in each condition type
            item. Selectable fields: id, name, description, type,
            frequency_values, value_type, value_placeholder, op_values, period.
            The id field is always included.
          example: name,type,op_values
        - name: filters
          in: query
          required: false
          schema:
            type: string
            maxLength: 5120
          description: >-
            Filter condition types by one or more criteria. Provide a JSON
            object with filter conditions. You can filter by any field returned
            in the response. Use comparison operators (eq, ne, gt, gte, lt, lte,
            in, nin, contains, startsWith, endsWith, between) and combine
            multiple conditions with logical operators (and, or). Maximum
            length: 5120 characters.
          examples:
            simple:
              summary: Filter by condition type
              description: Returns condition types matching a specific type identifier.
              value: '{"field": "type", "op": "eq", "value": "osVersion"}'
            complex-and:
              summary: Filter by value type and periodic support
              description: Returns non-periodic string-based condition types.
              value: >-
                {"and": [{"field": "value_type", "op": "eq", "value": "string"},
                {"field": "period", "op": "eq", "value": false}]}
            complex-or-and:
              summary: Combine OR and AND conditions
              description: >-
                Match by name or description text and restrict by condition
                type.
              value: >-
                {"and": [{"or": [{"field": "name", "op": "contains", "value":
                "os"}, {"field": "description", "op": "contains", "value":
                "version"}]}, {"field": "type", "op": "eq", "value":
                "osVersion"}]}
        - name: Accept-Language
          in: header
          required: false
          schema:
            type: string
            enum:
              - en-EN
              - es-ES
              - pt-BR
              - ca-ES
              - eu-ES
            default: es-ES
          description: >-
            Language code for text fields that support multiple languages. When
            creating or updating resources, this specifies the language of the
            provided text values. Upon retrieving resources, it determines which
            language variant of the multilingual text fields is returned.
            Accepted values: 'en-EN' (English), 'es-ES' (Spanish), 'pt-BR'
            (Portuguese), 'ca-ES' (Catalan), 'eu-ES' (Basque). If not provided,
            default is 'es-ES'.
      responses:
        '200':
          description: Paginated list of condition types successfully retrieved.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConditionTypeV1ListResponseV1'
        '400':
          $ref: '#/components/responses/BadRequest'
          description: Invalid request - Invalid organization ID
        '401':
          $ref: '#/components/responses/Unauthorized'
          description: Unauthorized - authentication required
        '404':
          $ref: '#/components/responses/NotFound'
          description: Organization not found
        '429':
          $ref: '#/components/responses/TooManyRequests'
        '500':
          $ref: '#/components/responses/InternalServerError'
components:
  schemas:
    ConditionTypeV1ListResponseV1:
      type: object
      properties:
        has_next:
          type: boolean
          description: Indicates if more results are available on the next page
        data:
          type: array
          items:
            $ref: '#/components/schemas/ConditionTypeV1'
      required:
        - has_next
        - data
    ConditionTypeV1:
      type: object
      properties:
        id:
          type: string
        name:
          type: string
        description:
          type: string
        type:
          type: string
        frequency_values:
          type: array
          items:
            type: number
        value_type:
          type: string
        value_placeholder:
          type: string
          nullable: true
        period:
          type: boolean
        op_values:
          type: array
          items:
            type: string
            enum:
              - eq
              - gt
              - lt
              - gte
              - lte
              - startsWith
              - endsWith
              - contains
              - at
          description: >-
            Permitted operator values for the value_type of this condition type.
            Calculated field based on value_type: string → ["eq", "startsWith",
            "endsWith", "contains"], int/double → ["eq", "gt", "lt", "gte",
            "lte"], id/bool → ["eq"], cron → ["at"]
      required:
        - id
    ErrorResponse:
      type: object
      properties:
        error:
          type: object
          properties:
            message:
              type: string
            code:
              type: string
            details:
              type: string
          required:
            - message
            - code
      required:
        - error
  responses:
    BadRequest:
      description: Bad Request
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
    Unauthorized:
      description: Unauthorized
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
    NotFound:
      description: Not Found
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
    TooManyRequests:
      description: Too Many Requests
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
    InternalServerError:
      description: Internal Server Error
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT

````