openapi: 3.1.1
info:
  title: Intent
  version: 2.0.0
  description: "Container schemas fetched from beckn.yaml. This cannot be extended as it is a reserved schema in beckn protocol. Any additional properties added to this schema can only be made using its *Attributes property"
  license:
    name: CC-BY-NC-SA 4.0 International
  contact:
    name: Beckn Labs
    url: https://beckn.io
components:
  schemas:
    Intent:
      x-iri: https://schema.nfh.global/Intent/v2.0
      description: A declaration of an intent to transact
      title: Intent
      type: object
      properties:
        textSearch:
          description: Free text search query for items
          type: string
          example: gaming laptop premium tech
        filters:
          description: Filter criteria for items
          type: object
          properties:
            type:
              description: Type of filter expression
              type: string
              enum:
              - jsonpath
              default: jsonpath
            expression:
              description: Filter expression based on the specified type
              type: string
              example: $[?(@.rating.value >= 4.0 && @.electronic.brand.name == 'Premium
                Tech')]
          required:
          - type
          - expression
        spatial:
          description: Optional array of spatial constraints (CQL2-JSON semantics).
          type: array
          items:
            $ref: https://schema.nfh.global/SpatialConstraint/v2.0/attributes.yaml#/components/schemas/SpatialConstraint
        mediaSearch:
          $ref: https://schema.nfh.global/MediaSearch/v2.0/attributes.yaml#/components/schemas/MediaSearch
      additionalProperties: false
