openapi: 3.1.1
info:
  title: Performance
  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:
    Performance:
      x-iri: https://schema.nfh.global/Performance/v2.0
      description: 'Generalized execution/performance unit. This is where downstream
        objects bind:

        - Fulfillment-like details (where/when/how)

        - Tracking handles

        - Support touchpoints

        - Status updates


        A minimal envelope that carries identity, status, and a performanceAttributes

        bag that holds the concrete domain-specific delivery schema.


        Domain specification authors can attach rich context and types via `performanceAttributes`.


        For example, Hyperlocal delivery details (pickup/delivery locations, items
        shipped, agent, etc.)

        are placed inside performanceAttributes using a well-known domain schema such
        as

        HyperlocalDelivery. Use the generic Attributes schema when no well-known

        domain schema exists.'
      title: Fulfillment
      x-tags:
      - common
      - fulfillment
      type: object
      properties:
        id:
          type: string
          description: Unique identifier for this fulfillment record.
        status:
          $ref: https://schema.nfh.global/Descriptor/v2.1/attributes.yaml#/components/schemas/Descriptor
          description: Current status of this fulfillment, expressed as a Descriptor.
            Use Descriptor.code for machine-readable status values.
        commitmentIds:
          type: array
          items:
            $ref: https://schema.nfh.global/Commitment/v2.0/attributes.yaml#/components/schemas/Commitment/properties/id
        performanceAttributes:
          description: Domain-specific extension attributes for this fulfillment.
            Use beckn:HyperlocalDelivery (aligned with schema:ParcelDelivery) for
            hyperlocal physical delivery. Use the generic Attributes schema for other
            fulfillment types where no well-known domain schema exists.
          $ref: https://schema.nfh.global/Attributes/v2.0/attributes.yaml#/components/schemas/Attributes
      additionalProperties: false
