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

# Get a collection in the MDM

> Get the collection with given key in the MDM.



## OpenAPI

````yaml /api-reference/mdm.yml get /mdm/v1/collections/{collectionKey}
openapi: 3.0.1
info:
  title: MDM API
  version: 1.0.0
servers:
  - url: https://api.{workspaceId}.clinia.cloud
    variables:
      workspaceId:
        default: ''
        description: The workspace id.
security:
  - apiKey: []
  - basicHttpAuth: []
  - bearerHttpAuth: []
tags:
  - name: Collections
    description: Management of collections.
  - name: Relationship Definitions
    description: Management of relationship definitions.
paths:
  /mdm/v1/collections/{collectionKey}:
    get:
      tags:
        - Collections
      summary: Get a collection in the MDM
      description: Get the collection with given key in the MDM.
      operationId: GetCollection
      parameters:
        - name: collectionKey
          in: path
          description: Key of the collection.
          required: true
          schema:
            type: string
      responses:
        '200':
          description: A successful response when the collection exists.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v1Collection'
        '404':
          description: Returned when the collection does not exist.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v1Error'
        '429':
          $ref: '#/components/responses/v1TooManyRequestError'
        '504':
          $ref: '#/components/responses/v1GatewayTimeoutError'
components:
  schemas:
    v1Collection:
      type: object
      required:
        - profile
      properties:
        key:
          type: string
          readOnly: true
        profile:
          $ref: '#/components/schemas/v2MDMProfile'
        resolutionRule:
          $ref: '#/components/schemas/v1ResolutionRule'
    v1Error:
      type: object
      required:
        - code
        - message
        - type
      properties:
        code:
          $ref: '#/components/schemas/v1ErrorCode'
        message:
          type: string
        type:
          $ref: '#/components/schemas/v1ErrorType'
        details:
          description: list of errors that occurred if applicable.
          type: array
          items:
            $ref: '#/components/schemas/v1Error'
        additionalContext:
          type: object
          additionalProperties: true
    v2MDMProfile:
      type: object
      required:
        - sourceProfiles
      properties:
        sourceProfiles:
          description: The source profiles used by the mdm profile.
          type: array
          items:
            $ref: '#/components/schemas/v1SourceProfile'
          minItems: 1
    v1ResolutionRule:
      required:
        - resolvers
        - properties
        - mappings
      type: object
      properties:
        resolvers:
          type: object
          additionalProperties:
            $ref: '#/components/schemas/v1Resolver'
        properties:
          type: object
          description: |
            The properties used in the resolution rule.
          additionalProperties:
            $ref: '#/components/schemas/v1PropertyDefinition'
        mappings:
          type: array
          items:
            $ref: '#/components/schemas/v2PropertyMappings'
    v1ErrorCode:
      type: integer
      format: int32
      enum:
        - 400
        - 401
        - 403
        - 404
        - 408
        - 409
        - 413
        - 429
        - 500
        - 501
        - 504
    v1ErrorType:
      type: string
      enum:
        - ALREADY_EXISTS
        - FAILED_PRECONDITION
        - INTERNAL
        - INVALID_ARGUMENT
        - NOT_FOUND
        - OUT_OF_RANGE
        - UNIMPLEMENTED
        - PERMISSION_DENIED
        - UNAUTHENTICATED
        - CONTENT_TOO_LARGE
        - REQUEST_TIMEOUT
        - TOO_MANY_REQUEST
        - GATEWAY_TIMEOUT
    v1SourceProfile:
      type: object
      required:
        - source
        - type
      properties:
        source:
          type: string
        type:
          type: string
    v1Resolver:
      required:
        - outcome
        - filter
      type: object
      properties:
        outcome:
          $ref: '#/components/schemas/v1MatchType'
        filter:
          $ref: '#/components/schemas/v1ResolverFilter'
    v1PropertyDefinition:
      oneOf:
        - $ref: '#/components/schemas/v1AddressPropertyDefinition'
        - $ref: '#/components/schemas/v1ArrayPropertyDefinition'
        - $ref: '#/components/schemas/v1AttachmentPropertyDefinition'
        - $ref: '#/components/schemas/v1BooleanPropertyDefinition'
        - $ref: '#/components/schemas/v1CodePropertyDefinition'
        - $ref: '#/components/schemas/v1CodingPropertyDefinition'
        - $ref: '#/components/schemas/v1ContactPointPropertyDefinition'
        - $ref: '#/components/schemas/v1DatePropertyDefinition'
        - $ref: '#/components/schemas/v1DateTimePropertyDefinition'
        - $ref: '#/components/schemas/v1DecimalPropertyDefinition'
        - $ref: '#/components/schemas/v1GeoPointPropertyDefinition'
        - $ref: '#/components/schemas/v1HumanNamePropertyDefinition'
        - $ref: '#/components/schemas/v1IdentifierPropertyDefinition'
        - $ref: '#/components/schemas/v1InstantPropertyDefinition'
        - $ref: '#/components/schemas/v1IntegerPropertyDefinition'
        - $ref: '#/components/schemas/v1MarkdownPropertyDefinition'
        - $ref: '#/components/schemas/v1ObjectPropertyDefinition'
        - $ref: '#/components/schemas/v1PeriodPropertyDefinition'
        - $ref: '#/components/schemas/v1ReferencePropertyDefinition'
        - $ref: '#/components/schemas/v1SymbolPropertyDefinition'
        - $ref: '#/components/schemas/v1TimePropertyDefinition'
        - $ref: '#/components/schemas/v1UriPropertyDefinition'
        - $ref: '#/components/schemas/v1UrlPropertyDefinition'
        - $ref: '#/components/schemas/v1XhtmlPropertyDefinition'
      discriminator:
        propertyName: type
        mapping:
          address:
            $ref: '#/components/schemas/v1AddressPropertyDefinition'
          attachment:
            $ref: '#/components/schemas/v1AttachmentPropertyDefinition'
          boolean:
            $ref: '#/components/schemas/v1BooleanPropertyDefinition'
          code:
            $ref: '#/components/schemas/v1CodePropertyDefinition'
          coding:
            $ref: '#/components/schemas/v1CodingPropertyDefinition'
          contactpoint:
            $ref: '#/components/schemas/v1ContactPointPropertyDefinition'
          date:
            $ref: '#/components/schemas/v1DatePropertyDefinition'
          datetime:
            $ref: '#/components/schemas/v1DateTimePropertyDefinition'
          decimal:
            $ref: '#/components/schemas/v1DecimalPropertyDefinition'
          geopoint:
            $ref: '#/components/schemas/v1GeoPointPropertyDefinition'
          humanname:
            $ref: '#/components/schemas/v1HumanNamePropertyDefinition'
          identifier:
            $ref: '#/components/schemas/v1IdentifierPropertyDefinition'
          instant:
            $ref: '#/components/schemas/v1InstantPropertyDefinition'
          integer:
            $ref: '#/components/schemas/v1IntegerPropertyDefinition'
          markdown:
            $ref: '#/components/schemas/v1MarkdownPropertyDefinition'
          period:
            $ref: '#/components/schemas/v1PeriodPropertyDefinition'
          reference:
            $ref: '#/components/schemas/v1ReferencePropertyDefinition'
          symbol:
            $ref: '#/components/schemas/v1SymbolPropertyDefinition'
          time:
            $ref: '#/components/schemas/v1TimePropertyDefinition'
          uri:
            $ref: '#/components/schemas/v1UriPropertyDefinition'
          url:
            $ref: '#/components/schemas/v1UrlPropertyDefinition'
          xhtml:
            $ref: '#/components/schemas/v1XhtmlPropertyDefinition'
          array:
            $ref: '#/components/schemas/v1ArrayPropertyDefinition'
          object:
            $ref: '#/components/schemas/v1ObjectPropertyDefinition'
    v2PropertyMappings:
      type: object
      required:
        - source
        - type
        - paths
      properties:
        source:
          type: string
        type:
          type: string
        paths:
          description: >
            Maps one or multiple properties with the following format:
            `{rulePropertyKey: sourcePropertyPath}`

            The source property path is a dot separated path to the source
            property. It can include a contained key to reference a property in
            a contained resource.
          type: object
          additionalProperties:
            type: string
    v1MatchType:
      type: string
      enum:
        - MATCH_TYPE_NO_MATCH
        - MATCH_TYPE_MATCH
        - MATCH_TYPE_POSSIBLE_MATCH
    v1ResolverFilter:
      description: |
        The match condition to fulfill a resolver for entity resolution.
        Possible operators are: 'composite', 'eq', 'match' and 'and'.
      oneOf:
        - $ref: '#/components/schemas/v1CompositeOperator'
        - $ref: '#/components/schemas/v1EqOperator'
        - $ref: '#/components/schemas/v1MatchOperator'
        - $ref: '#/components/schemas/v1AndOperator'
    v1AddressPropertyDefinition:
      allOf:
        - $ref: '#/components/schemas/v1BaseWellKnownObjectPropertyDefinition'
    v1ArrayPropertyDefinition:
      allOf:
        - $ref: '#/components/schemas/v1BasePropertyDefinition'
        - type: object
          required:
            - items
          properties:
            items:
              $ref: '#/components/schemas/v1PropertyDefinition'
    v1AttachmentPropertyDefinition:
      allOf:
        - $ref: '#/components/schemas/v1BaseWellKnownObjectPropertyDefinition'
    v1BooleanPropertyDefinition:
      allOf:
        - $ref: '#/components/schemas/v1BasePropertyDefinition'
    v1CodePropertyDefinition:
      allOf:
        - $ref: '#/components/schemas/v1BasePropertyDefinition'
    v1CodingPropertyDefinition:
      allOf:
        - $ref: '#/components/schemas/v1BaseWellKnownObjectPropertyDefinition'
    v1ContactPointPropertyDefinition:
      allOf:
        - $ref: '#/components/schemas/v1BaseWellKnownObjectPropertyDefinition'
    v1DatePropertyDefinition:
      allOf:
        - $ref: '#/components/schemas/v1BasePropertyDefinition'
    v1DateTimePropertyDefinition:
      allOf:
        - $ref: '#/components/schemas/v1BasePropertyDefinition'
    v1DecimalPropertyDefinition:
      allOf:
        - $ref: '#/components/schemas/v1BasePropertyDefinition'
    v1GeoPointPropertyDefinition:
      allOf:
        - $ref: '#/components/schemas/v1BasePropertyDefinition'
    v1HumanNamePropertyDefinition:
      allOf:
        - $ref: '#/components/schemas/v1BaseWellKnownObjectPropertyDefinition'
    v1IdentifierPropertyDefinition:
      allOf:
        - $ref: '#/components/schemas/v1BaseWellKnownObjectPropertyDefinition'
    v1InstantPropertyDefinition:
      allOf:
        - $ref: '#/components/schemas/v1BasePropertyDefinition'
    v1IntegerPropertyDefinition:
      allOf:
        - $ref: '#/components/schemas/v1BasePropertyDefinition'
    v1MarkdownPropertyDefinition:
      allOf:
        - $ref: '#/components/schemas/v1BasePropertyDefinition'
    v1ObjectPropertyDefinition:
      allOf:
        - $ref: '#/components/schemas/v1BasePropertyDefinition'
        - type: object
          required:
            - properties
          properties:
            properties:
              type: object
              additionalProperties:
                $ref: '#/components/schemas/v1PropertyDefinition'
          additionalProperties: false
    v1PeriodPropertyDefinition:
      allOf:
        - $ref: '#/components/schemas/v1BaseWellKnownObjectPropertyDefinition'
    v1ReferencePropertyDefinition:
      allOf:
        - $ref: '#/components/schemas/v1BaseWellKnownObjectPropertyDefinition'
    v1SymbolPropertyDefinition:
      allOf:
        - $ref: '#/components/schemas/v1BasePropertyDefinition'
    v1TimePropertyDefinition:
      allOf:
        - $ref: '#/components/schemas/v1BasePropertyDefinition'
    v1UriPropertyDefinition:
      allOf:
        - $ref: '#/components/schemas/v1BasePropertyDefinition'
    v1UrlPropertyDefinition:
      allOf:
        - $ref: '#/components/schemas/v1BasePropertyDefinition'
    v1XhtmlPropertyDefinition:
      allOf:
        - $ref: '#/components/schemas/v1BasePropertyDefinition'
    v1CompositeOperator:
      allOf:
        - $ref: '#/components/schemas/V1OperatorBase'
        - type: object
          required:
            - composite
          properties:
            composite:
              type: object
              minProperties: 1
              maxProperties: 1
              additionalProperties:
                type: array
                items:
                  $ref: '#/components/schemas/v1Operator'
    v1EqOperator:
      allOf:
        - $ref: '#/components/schemas/V1OperatorBase'
        - type: object
          required:
            - eq
          properties:
            eq:
              type: object
              minProperties: 1
              maxProperties: 1
              additionalProperties:
                $ref: '#/components/schemas/v1EqCondition'
    v1MatchOperator:
      allOf:
        - $ref: '#/components/schemas/V1OperatorBase'
        - type: object
          required:
            - match
          properties:
            match:
              type: object
              minProperties: 1
              maxProperties: 1
              additionalProperties:
                $ref: '#/components/schemas/v1MatchCondition'
    v1AndOperator:
      allOf:
        - $ref: '#/components/schemas/V1OperatorBase'
        - type: object
          required:
            - and
          properties:
            and:
              type: array
              items:
                $ref: '#/components/schemas/v1Operator'
    v1BaseWellKnownObjectPropertyDefinition:
      allOf:
        - $ref: '#/components/schemas/v1BasePropertyDefinition'
        - type: object
          properties:
            properties:
              type: object
              additionalProperties:
                $ref: '#/components/schemas/v1WellKnownObjectPropertyDefinitionRule'
          additionalProperties: false
    v1BasePropertyDefinition:
      type: object
      required:
        - type
      properties:
        type:
          $ref: '#/components/schemas/v1DataType'
        readOnly:
          type: boolean
          default: false
          description: >-
            If set to true, the property cannot be set as required in the rules
            properties, and can only be set by the ingestion pipeline. Any value
            provided by the user will be ignored.
        description:
          type: string
          description: Description of the property.
        rules:
          type: array
          items:
            $ref: '#/components/schemas/v1PropertyRule'
        binding:
          $ref: '#/components/schemas/v1PropertyBinding'
        modelId:
          type: string
          readOnly: true
          description: >-
            ID of the model. Only used for enriched properties defined via
            pipelines.
        enrichedProperties:
          type: object
          readOnly: true
          additionalProperties:
            $ref: '#/components/schemas/v1EnrichedPropertyDefinition'
      additionalProperties: false
    V1OperatorBase:
      type: object
      properties:
        id:
          type: string
    v1Operator:
      description: >
        Logical (`and`, `or`, `not`, `all`, `any`),

        composite (`composite`),

        comparisons (`eq`, `gt`, `lt`),

        text match (`match` with types `phrase`, `phrasePrefix`, `word`,
        `wordPrefix` and optional `fuzziness` up to 3),

        geo (`geoDistance`), and vector (`knn`).
      oneOf:
        - $ref: '#/components/schemas/v1AndOperator'
        - $ref: '#/components/schemas/v1OrOperator'
        - $ref: '#/components/schemas/v1AllOperator'
        - $ref: '#/components/schemas/v1AnyOperator'
        - $ref: '#/components/schemas/v1CompositeOperator'
        - $ref: '#/components/schemas/v1EqOperator'
        - $ref: '#/components/schemas/V1KNNOperator'
        - $ref: '#/components/schemas/v1GeoDistanceOperator'
        - $ref: '#/components/schemas/v1GreaterThanOperator'
        - $ref: '#/components/schemas/v1LessThanOperator'
        - $ref: '#/components/schemas/v1MatchOperator'
        - $ref: '#/components/schemas/v1NotOperator'
    v1EqCondition:
      oneOf:
        - $ref: '#/components/schemas/v1SupportedPrimitives'
        - $ref: '#/components/schemas/v1EqObject'
    v1MatchCondition:
      type: object
      description: The match condition is used to match a string field with a given value.
      additionalProperties: false
      required:
        - value
        - type
      properties:
        value:
          type: string
        type:
          $ref: '#/components/schemas/v1MatchOperatorType'
        fuzziness:
          type: integer
          format: int32
          maximum: 3
    v1WellKnownObjectPropertyDefinitionRule:
      type: object
      properties:
        rules:
          type: array
          items:
            $ref: '#/components/schemas/v1PropertyRule'
        properties:
          type: object
          additionalProperties:
            $ref: '#/components/schemas/v1WellKnownObjectPropertyDefinitionRule'
        items:
          $ref: '#/components/schemas/v1WellKnownObjectPropertyDefinitionRule'
        binding:
          $ref: '#/components/schemas/v1PropertyBinding'
      additionalProperties: false
    v1DataType:
      type: string
      enum:
        - address
        - attachment
        - boolean
        - code
        - coding
        - contactpoint
        - date
        - datetime
        - decimal
        - geopoint
        - humanname
        - identifier
        - instant
        - integer
        - markdown
        - period
        - reference
        - symbol
        - time
        - uri
        - url
        - xhtml
        - array
        - object
        - densevector
    v1PropertyRule:
      type: object
      properties:
        required:
          type: boolean
        pattern:
          type: string
        enum:
          description: >-
            List of possible values for the property: string and number types
            only.
          type: array
          items:
            oneOf:
              - type: string
              - type: number
          minItems: 1
        min:
          type: integer
          format: int
        max:
          type: integer
          format: int
        when:
          $ref: '#/components/schemas/v1Operator'
          description: >
            An operator that defines when the rule should be applicable.

            Whenever this operator evaluates to true, the rule will be checked;
            when it is evaluated to false, the rule is ignored entirely and none
            of its validation is applied.


            Supported operators are: 'eq', 'lt' and 'gt'.

            TODO: [ENG-4213] Add examples and document [current] and [*]..
      additionalProperties: false
    v1PropertyBinding:
      description: >
        Defines a subset of values the property can take.

        A binding can be defined for a code, a coding, a symbol or an URI
        property.

        In the case of a coding, the binding is applied to the code
        sub-attribute.
      type: object
      required:
        - vocabulary
      properties:
        vocabulary:
          $ref: '#/components/schemas/v1VocabularyBinding'
      additionalProperties: false
    v1EnrichedPropertyDefinition:
      oneOf:
        - $ref: '#/components/schemas/v1AddressPropertyDefinition'
        - $ref: '#/components/schemas/v1ArrayPropertyDefinition'
        - $ref: '#/components/schemas/v1AttachmentPropertyDefinition'
        - $ref: '#/components/schemas/v1BooleanPropertyDefinition'
        - $ref: '#/components/schemas/v1CodePropertyDefinition'
        - $ref: '#/components/schemas/v1CodingPropertyDefinition'
        - $ref: '#/components/schemas/v1ContactPointPropertyDefinition'
        - $ref: '#/components/schemas/v1DatePropertyDefinition'
        - $ref: '#/components/schemas/v1DateTimePropertyDefinition'
        - $ref: '#/components/schemas/v1DecimalPropertyDefinition'
        - $ref: '#/components/schemas/v1GeoPointPropertyDefinition'
        - $ref: '#/components/schemas/v1HumanNamePropertyDefinition'
        - $ref: '#/components/schemas/v1IdentifierPropertyDefinition'
        - $ref: '#/components/schemas/v1InstantPropertyDefinition'
        - $ref: '#/components/schemas/v1IntegerPropertyDefinition'
        - $ref: '#/components/schemas/v1MarkdownPropertyDefinition'
        - $ref: '#/components/schemas/v1ObjectPropertyDefinition'
        - $ref: '#/components/schemas/v1PeriodPropertyDefinition'
        - $ref: '#/components/schemas/v1ReferencePropertyDefinition'
        - $ref: '#/components/schemas/v1SymbolPropertyDefinition'
        - $ref: '#/components/schemas/v1TimePropertyDefinition'
        - $ref: '#/components/schemas/v1UriPropertyDefinition'
        - $ref: '#/components/schemas/v1UrlPropertyDefinition'
        - $ref: '#/components/schemas/v1XhtmlPropertyDefinition'
        - $ref: '#/components/schemas/v1DenseVectorPropertyDefinition'
      discriminator:
        propertyName: type
        mapping:
          address:
            $ref: '#/components/schemas/v1AddressPropertyDefinition'
          attachment:
            $ref: '#/components/schemas/v1AttachmentPropertyDefinition'
          boolean:
            $ref: '#/components/schemas/v1BooleanPropertyDefinition'
          code:
            $ref: '#/components/schemas/v1CodePropertyDefinition'
          coding:
            $ref: '#/components/schemas/v1CodingPropertyDefinition'
          contactpoint:
            $ref: '#/components/schemas/v1ContactPointPropertyDefinition'
          date:
            $ref: '#/components/schemas/v1DatePropertyDefinition'
          datetime:
            $ref: '#/components/schemas/v1DateTimePropertyDefinition'
          decimal:
            $ref: '#/components/schemas/v1DecimalPropertyDefinition'
          geopoint:
            $ref: '#/components/schemas/v1GeoPointPropertyDefinition'
          humanname:
            $ref: '#/components/schemas/v1HumanNamePropertyDefinition'
          identifier:
            $ref: '#/components/schemas/v1IdentifierPropertyDefinition'
          instant:
            $ref: '#/components/schemas/v1InstantPropertyDefinition'
          integer:
            $ref: '#/components/schemas/v1IntegerPropertyDefinition'
          markdown:
            $ref: '#/components/schemas/v1MarkdownPropertyDefinition'
          period:
            $ref: '#/components/schemas/v1PeriodPropertyDefinition'
          reference:
            $ref: '#/components/schemas/v1ReferencePropertyDefinition'
          symbol:
            $ref: '#/components/schemas/v1SymbolPropertyDefinition'
          time:
            $ref: '#/components/schemas/v1TimePropertyDefinition'
          uri:
            $ref: '#/components/schemas/v1UriPropertyDefinition'
          url:
            $ref: '#/components/schemas/v1UrlPropertyDefinition'
          xhtml:
            $ref: '#/components/schemas/v1XhtmlPropertyDefinition'
          array:
            $ref: '#/components/schemas/v1ArrayPropertyDefinition'
          object:
            $ref: '#/components/schemas/v1ObjectPropertyDefinition'
          densevector:
            $ref: '#/components/schemas/v1DenseVectorPropertyDefinition'
    v1OrOperator:
      allOf:
        - $ref: '#/components/schemas/V1OperatorBase'
        - type: object
          required:
            - or
          properties:
            or:
              type: array
              items:
                $ref: '#/components/schemas/v1Operator'
    v1AllOperator:
      allOf:
        - $ref: '#/components/schemas/V1OperatorBase'
        - type: object
          required:
            - all
          properties:
            all:
              type: object
              minProperties: 1
              maxProperties: 1
              additionalProperties:
                $ref: '#/components/schemas/v1SupportedPrimitiveArrays'
    v1AnyOperator:
      allOf:
        - $ref: '#/components/schemas/V1OperatorBase'
        - type: object
          required:
            - any
          properties:
            any:
              type: object
              minProperties: 1
              maxProperties: 1
              additionalProperties:
                $ref: '#/components/schemas/v1SupportedPrimitiveArrays'
    V1KNNOperator:
      allOf:
        - $ref: '#/components/schemas/V1OperatorBase'
        - type: object
          required:
            - knn
          properties:
            knn:
              type: object
              minProperties: 1
              maxProperties: 1
              additionalProperties:
                $ref: '#/components/schemas/v1KNNCondition'
    v1GeoDistanceOperator:
      allOf:
        - $ref: '#/components/schemas/V1OperatorBase'
        - type: object
          required:
            - geoDistance
          properties:
            geoDistance:
              type: object
              minProperties: 1
              maxProperties: 1
              additionalProperties:
                $ref: '#/components/schemas/v1GeoDistanceCondition'
    v1GreaterThanOperator:
      allOf:
        - $ref: '#/components/schemas/V1OperatorBase'
        - type: object
          required:
            - gt
          properties:
            gt:
              type: object
              minProperties: 1
              maxProperties: 1
              additionalProperties:
                $ref: '#/components/schemas/v1SupportedComparablePrimitives'
    v1LessThanOperator:
      allOf:
        - $ref: '#/components/schemas/V1OperatorBase'
        - type: object
          required:
            - lt
          properties:
            lt:
              type: object
              minProperties: 1
              maxProperties: 1
              additionalProperties:
                $ref: '#/components/schemas/v1SupportedComparablePrimitives'
    v1NotOperator:
      allOf:
        - $ref: '#/components/schemas/V1OperatorBase'
        - type: object
          required:
            - not
          properties:
            not:
              $ref: '#/components/schemas/v1Operator'
    v1SupportedPrimitives:
      oneOf:
        - $ref: '#/components/schemas/v1String'
        - $ref: '#/components/schemas/v1Integer'
        - $ref: '#/components/schemas/v1Double'
        - $ref: '#/components/schemas/v1Bool'
    v1EqObject:
      type: object
      description: >
        The eq operator condition with an additional normalized field to support
        queries that require case-insensitive equality.

        Normalized equality is only supported for string values.
      additionalProperties: false
      required:
        - value
      properties:
        value:
          $ref: '#/components/schemas/v1SupportedPrimitives'
        normalized:
          type: boolean
    v1MatchOperatorType:
      type: string
      enum:
        - phrase
        - phrasePrefix
        - word
        - wordPrefix
    v1VocabularyBinding:
      type: object
      required:
        - key
        - strength
      properties:
        key:
          type: string
        strength:
          $ref: '#/components/schemas/v1BindingStrength'
      additionalProperties: false
    v1DenseVectorPropertyDefinition:
      allOf:
        - $ref: '#/components/schemas/v1BasePropertyDefinition'
        - type: object
          required:
            - modelId
          properties:
            modelId:
              type: string
              readOnly: true
              description: ID of the model used to generate the dense embedding.
          additionalProperties: false
    v1SupportedPrimitiveArrays:
      oneOf:
        - $ref: '#/components/schemas/v1ArrayOfStrings'
        - $ref: '#/components/schemas/v1ArrayOfIntegers'
        - $ref: '#/components/schemas/v1ArrayOfDoubles'
    v1KNNCondition:
      type: object
      additionalProperties: false
      required:
        - value
      properties:
        value:
          type: string
    v1GeoDistanceCondition:
      type: object
      required:
        - coordinates
        - radius
      properties:
        coordinates:
          $ref: '#/components/schemas/v1GeoDistanceConditionCoordinates'
        radius:
          type: integer
          format: int32
      additionalProperties: false
    v1SupportedComparablePrimitives:
      oneOf:
        - $ref: '#/components/schemas/v1String'
        - $ref: '#/components/schemas/v1Integer'
        - $ref: '#/components/schemas/v1Double'
    v1String:
      type: string
    v1Integer:
      pattern: ^[0]|[-+]?[1-9][0-9]*$
      type: integer
      description: A whole number.
      format: int32
    v1Double:
      type: number
      format: double
    v1Bool:
      type: boolean
    v1BindingStrength:
      type: string
      description: |
        The strength with which the binding is asserted.
         - required: To be conformant, the concept in this element shall be from the specified value set.
         - preferred: Instances are encouraged to draw from the specified codes for interoperability purposes but are not required to do so to be considered conformant.
      enum:
        - required
        - preferred
    v1ArrayOfStrings:
      type: array
      items:
        type: string
    v1ArrayOfIntegers:
      type: array
      items:
        type: integer
        format: int32
    v1ArrayOfDoubles:
      type: array
      items:
        type: number
        format: double
    v1GeoDistanceConditionCoordinates:
      oneOf:
        - $ref: '#/components/schemas/v1GeoPoint'
        - $ref: '#/components/schemas/v1String'
    v1GeoPoint:
      type: object
      properties:
        latitude:
          $ref: '#/components/schemas/v1Decimal'
        longitude:
          $ref: '#/components/schemas/v1Decimal'
      additionalProperties: false
      required:
        - latitude
        - longitude
    v1Decimal:
      pattern: ^-?(0|[1-9][0-9]{0,17})(\.[0-9]{1,17})?([eE][+-]?[0-9]{1,9}})?$
      type: number
      format: double
      description: A rational number with implicit precision.
  responses:
    v1TooManyRequestError:
      description: Returned when the server starts throttling the requests.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/v1Error'
    v1GatewayTimeoutError:
      description: Returned when the request exceeds the server timeout window.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/v1Error'
  securitySchemes:
    apiKey:
      type: apiKey
      in: header
      name: X-Clinia-API-Key
    basicHttpAuth:
      description: Basic HTTP authentication.
      type: http
      scheme: basic
    bearerHttpAuth:
      description: JWT Bearer authentication.
      type: http
      scheme: Bearer
      bearerFormat: JWT

````