components:
  requestBodies:
    BatchOperationRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/BatchOperationRequest'
      description: The batch request
      required: true
    Cancellation:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Cancellation'
      description: The cancellation that you would like to be saved.
      required: true
    InventoryTransaction:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/InventoryTransaction'
      description: The inventory transaction that you would like to be saved.
      required: true
    Order:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Order'
      description: The order that you would like to be saved.
      required: true
    OrderWithOverride:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/OrderWithOverride'
      description: The order that you would like to be saved.
      required: true
    PatchDirectiveArray:
      content:
        application/json:
          schema:
            items:
              $ref: '#/components/schemas/PatchDirective'
            type: array
      description: The patch directives conforming to RFC 6902.
      required: true
    PreviewEmailRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/PreviewEmailRequest'
      description: The domain_name to use to for record lookup
      required: true
    Return:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Return'
      description: The return that you would like to be saved.
      required: true
    Shipment:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Shipment'
      description: The shipment that you would like to be saved.
      required: true
    checkEligibilityCriteria:
      content:
        application/json:
          schema:
            type: object
      description: The order that you would like to be saved.
      required: true
  schemas:
    Address:
      additionalProperties: false
      description: A complete address
      properties:
        city:
          description: The city of the address
          title: City
          type: string
        country:
          description: The country ISO code
          title: Country
          type: string
        country_name:
          description: The full name of hte country
          title: Country Name
          type: string
        county:
          description: The county
          title: County
          type: string
        latitude:
          format: double
          title: Latitude
          type: number
        line1:
          description: The first line of the address
          title: Line 1
          type: string
        line2:
          description: The second line of the address
          title: Line 2
          type: string
        line3:
          description: The third line of the address
          title: Line 3
          type: string
        longitude:
          format: double
          title: Longitude
          type: number
        postal_code:
          description: The zip/postal code
          title: Postal Code
          type: string
        state:
          description: The state/province of the address
          title: State
          type: string
        time_zone_id:
          title: Time Zone
          type: string
      type: object
    BatchOperationRequest:
      additionalProperties: false
      properties:
        operations:
          items:
            additionalProperties: false
            properties:
              id:
                description: The ID of the record
                oneOf:
                  - x-required: true
                title: ID
                type: string
              object:
                title: Object
                type: object
              operation:
                enum:
                  - create
                  - delete
                  - patch
                  - read
                  - update
                title: Operation
                type: string
              patch_directives:
                items:
                  additionalProperties: false
                  properties:
                    op:
                      description: The operation
                      enum:
                        - add
                        - copy
                        - move
                        - remove
                        - replace
                        - test
                      title: Op
                      type: string
                    path:
                      description: The JSON path
                      title: Path
                      type: string
                    value:
                      title: Value
                      type: string
                  required:
                    - op
                    - path
                  type: object
                maxItems: 100
                minItems: 1
                oneOf:
                  - x-required: true
                type: array
            required:
              - operation
            type: object
          type: array
      type: object
    BatchOperationResponse:
      additionalProperties: false
      properties:
        error_count:
          description: Number of error results
          format: float
          title: Error Count
          type: number
        results:
          items:
            additionalProperties: false
            properties:
              error_message:
                title: Error Message
                type: string
              id:
                description: The ID of the record
                title: ID
                type: string
              object:
                title: Object
                type: object
              operation:
                enum:
                  - create
                  - delete
                  - patch
                  - read
                  - update
                title: Operation
                type: string
              outcome:
                enum:
                  - error
                  - no change
                  - success
                title: Outcome
                type: string
            required:
              - id
              - operation
            type: object
          type: array
        success_count:
          description: Number of successful results
          format: float
          title: Success Count
          type: number
      type: object
    Cancellation:
      additionalProperties: false
      properties:
        action:
          description: What to do with payments made on the order
          enum:
            - issue credit
            - issue refund
          title: Action
          type: string
        base_currency_code:
          title: Base Currency Code
          type: string
        base_currency_symbol:
          title: Base Currency Symbol
          type: string
        batch_id:
          description: The batch the cancellation should be in
          title: Batch
          type: string
        business_unit_id:
          description: The business unit the cancellation should be in
          title: Business Unit
          type: string
        currency_code:
          description: The cancellation currency
          title: Currency Code
          type: string
        currency_symbol:
          description: The cancellation currency symbol
          title: Currency Symbol
          type: string
        custom_field_values:
          items:
            $ref: '#/components/schemas/CustomFieldValue'
          title: Custom Field Values
          type: array
        date:
          description: The date of the cancellation
          format: date-time
          title: Date
          type: string
        do_not_perform_electronic_refund:
          description: If set, the refund process will NOT perform an electronic refund
          title: Do Not Perform Electronic Refund
          type: boolean
        id:
          description: The unique, string identifier of this cancellation
          pattern: ^[\w|-]+$
          title: ID
          type: string
        ignore_payment_gateway_errors:
          description: >-
            Whether or not the cancellation should be processed, even if the
            payment gateway has an error
          title: Ignore Payment Gateway Errors
          type: boolean
        line_items:
          items:
            additionalProperties: false
            oneOf:
              - type: object
                properties: {}
                additionalProperties: false
            properties:
              order_line_item_id:
                description: The order line item ID being cancelled
                title: Order Line Item
                type: string
              product_id:
                description: The product ID
                oneOf:
                  - x-required: true
                title: Product
                type: string
              product_type:
                description: The product type
                oneOf:
                  - x-required: true
                title: Product Type
                type: string
              quantity:
                description: The quantity being cancelled
                title: Quantity
                type: integer
              waive_cancellation_fees:
                description: Whether or not the cancellation should waive cancellation fees
                title: Waive Cancellation Fees
                type: boolean
            required:
              - order_line_item_id
              - quantity
            type: object
          minItems: 1
          type: array
        notes:
          description: Any refund notes
          title: Notes
          type: string
        number:
          description: The unique, string identifier of this return
          title: Number
          type: integer
        order_id:
          description: The order being cancelled
          title: Order
          type: string
        sys_bulk_load_at:
          description: >-
            If this record was loaded via bulk, the timestamp when the record
            was processed
          title: Sys Bulk Load At
          type: string
        sys_bulk_load_id:
          description: If this record was loaded via bulk, the ID of the bulk load process
          title: Sys Bulk Load
          type: string
        sys_bulk_load_pk:
          description: >-
            If this record was loaded via bulk, the tenant and key of the bulk
            load process used as a partition key
          title: Sys Bulk Load Pk
          type: string
        sys_bulk_load_record_no:
          description: >-
            If this record was loaded via bulk, the record number in the source
            file
          format: float
          title: Sys Bulk Load Record No
          type: number
        sys_bulk_load_source_file:
          description: If this record was loaded via bulk, the source file
          title: Sys Bulk Load Source File
          type: string
        sys_calculated_field_error:
          description: The error associated with the calculated field
          title: Sys Calculated Field Error
          type: string
        sys_calculated_field_errors:
          items:
            additionalProperties: false
            properties:
              error:
                title: Error
                type: string
              field:
                title: Field
                type: string
            type: object
          type: array
        sys_configuration_snapshot_id:
          description: >-
            If a snapshot was restored/applies to this record, the ID of the
            snapshot
          title: Sys Configuration Snapshot
          type: string
        sys_created_at:
          description: >-
            The date/time that this record was created, expressed in ISO-8601
            date format
          format: date-time
          title: Sys Created At
          type: string
        sys_created_by_id:
          description: The ID of the user that created this record
          title: Sys Created By
          type: string
        sys_deleted_by_id:
          description: >-
            The ID of the user that deleted (or last tried to delete) this
            object
          title: Sys Deleted By
          type: string
        sys_directive:
          description: >-
            Means for passing directive information into an object processing
            logic
          title: Sys Directive
          type: string
        sys_external_id:
          description: The ID that a record has from an external system or data import
          title: Sys External
          type: string
        sys_has_files_in_s3:
          description: >-
            If true, this record has files in S3. If false, it doesnt, so no
            need to hit S3 upon deletion
          title: Sys Has Files In S3
          type: boolean
        sys_last_bulk_data_operation_id:
          description: >-
            If this record was last touched by a bulk data operation, the ID of
            that operation
          title: Sys Last Bulk Data Operation
          type: string
        sys_last_bulk_data_operation_sys_version:
          description: >-
            If this record was last touched by a bulk data operation, the
            sys_version at the time of that operation
          title: Sys Last Bulk Data Operation Sys Version
          type: string
        sys_last_modified_at:
          description: >-
            The date/time that this record record was last modified, expressed
            in ISO-8601 date format
          format: date-time
          title: Sys Last Modified At
          type: string
        sys_last_modified_by_id:
          description: The ID of the user that last modified this record
          title: Sys Last Modified By
          type: string
        sys_last_security_context:
          description: >-
            The security context of the last insert, modify, or delete performed
            on this item
          properties: {}
          title: Sys Last Security Context
          type: object
        sys_locked:
          description: If set, this record is locked and cannot be changed via the API
          title: Sys Locked
          type: boolean
        sys_snapshot_base_version:
          description: >-
            The version to use as a base when creating a configuration snapshot;
            if not set, 1 is used. Helpful when creating a sandbox
          format: float
          title: Sys Snapshot Base Version
          type: number
        sys_version:
          description: A number representing the version of this record in the database
          format: float
          title: Sys Version
          type: number
      required:
        - action
        - batch_id
        - business_unit_id
        - currency_code
        - id
        - line_items
        - number
        - order_id
        - sys_created_at
        - sys_created_by_id
        - sys_last_modified_at
        - sys_last_modified_by_id
      type: object
    CancellationFee:
      additionalProperties: false
      properties:
        business_unit_id:
          description: The business unit of the product
          title: Business Unit
          type: string
        custom_field_values:
          items:
            $ref: '#/components/schemas/CustomFieldValue'
          title: Custom Field Values
          type: array
        id:
          description: The unique, string identifier of this miscellaneous product
          pattern: ^[\w:|-]+$
          title: ID
          type: string
        is_active:
          description: Whether this product is active/used
          title: Is Active
          type: boolean
        name:
          description: The name of the miscellaneous product
          title: Name
          type: string
        notes:
          description: Notes
          title: Notes
          type: string
        sys_bulk_load_at:
          description: >-
            If this record was loaded via bulk, the timestamp when the record
            was processed
          title: Sys Bulk Load At
          type: string
        sys_bulk_load_id:
          description: If this record was loaded via bulk, the ID of the bulk load process
          title: Sys Bulk Load
          type: string
        sys_bulk_load_pk:
          description: >-
            If this record was loaded via bulk, the tenant and key of the bulk
            load process used as a partition key
          title: Sys Bulk Load Pk
          type: string
        sys_bulk_load_record_no:
          description: >-
            If this record was loaded via bulk, the record number in the source
            file
          format: float
          title: Sys Bulk Load Record No
          type: number
        sys_bulk_load_source_file:
          description: If this record was loaded via bulk, the source file
          title: Sys Bulk Load Source File
          type: string
        sys_calculated_field_error:
          description: The error associated with the calculated field
          title: Sys Calculated Field Error
          type: string
        sys_calculated_field_errors:
          items:
            additionalProperties: false
            properties:
              error:
                title: Error
                type: string
              field:
                title: Field
                type: string
            type: object
          type: array
        sys_configuration_snapshot_id:
          description: >-
            If a snapshot was restored/applies to this record, the ID of the
            snapshot
          title: Sys Configuration Snapshot
          type: string
        sys_created_at:
          description: >-
            The date/time that this record was created, expressed in ISO-8601
            date format
          format: date-time
          title: Sys Created At
          type: string
        sys_created_by_id:
          description: The ID of the user that created this record
          title: Sys Created By
          type: string
        sys_deleted_by_id:
          description: >-
            The ID of the user that deleted (or last tried to delete) this
            object
          title: Sys Deleted By
          type: string
        sys_directive:
          description: >-
            Means for passing directive information into an object processing
            logic
          title: Sys Directive
          type: string
        sys_external_id:
          description: The ID that a record has from an external system or data import
          title: Sys External
          type: string
        sys_has_files_in_s3:
          description: >-
            If true, this record has files in S3. If false, it doesnt, so no
            need to hit S3 upon deletion
          title: Sys Has Files In S3
          type: boolean
        sys_last_bulk_data_operation_id:
          description: >-
            If this record was last touched by a bulk data operation, the ID of
            that operation
          title: Sys Last Bulk Data Operation
          type: string
        sys_last_bulk_data_operation_sys_version:
          description: >-
            If this record was last touched by a bulk data operation, the
            sys_version at the time of that operation
          title: Sys Last Bulk Data Operation Sys Version
          type: string
        sys_last_modified_at:
          description: >-
            The date/time that this record record was last modified, expressed
            in ISO-8601 date format
          format: date-time
          title: Sys Last Modified At
          type: string
        sys_last_modified_by_id:
          description: The ID of the user that last modified this record
          title: Sys Last Modified By
          type: string
        sys_last_security_context:
          description: >-
            The security context of the last insert, modify, or delete performed
            on this item
          properties: {}
          title: Sys Last Security Context
          type: object
        sys_locked:
          description: If set, this record is locked and cannot be changed via the API
          title: Sys Locked
          type: boolean
        sys_snapshot_base_version:
          description: >-
            The version to use as a base when creating a configuration snapshot;
            if not set, 1 is used. Helpful when creating a sandbox
          format: float
          title: Sys Snapshot Base Version
          type: number
        sys_version:
          description: A number representing the version of this record in the database
          format: float
          title: Sys Version
          type: number
        type:
          description: The product type
          enum:
            - commerce-cancellation-fees
          title: Type
          type: string
      required:
        - business_unit_id
        - id
        - name
        - sys_created_at
        - sys_created_by_id
        - sys_last_modified_at
        - sys_last_modified_by_id
      type: object
    Cart:
      additionalProperties: false
      properties:
        cart_total:
          description: The total amount of the items in the cart
          format: float
          title: Cart Total
          type: number
        currency_code:
          description: The current code of the cart
          title: Currency Code
          type: string
        currency_symbol:
          description: The currency symbol for the cart
          title: Currency Symbol
          type: string
        id:
          description: The unique, string identifier of this cart - usually the user ID
          pattern: ^[\w-:]+$
          title: ID
          type: string
        items:
          items:
            additionalProperties: false
            properties:
              item_total:
                description: The total of the item in the cart
                format: float
                title: Item Total
                type: number
              modifier_options:
                items:
                  additionalProperties: false
                  properties:
                    modifier_option_id:
                      description: The modifier option ID
                      title: Modifier Option
                      type: string
                    modifier_option_value:
                      description: The value of the option
                      title: Modifier Option Value
                      type: string
                  required:
                    - modifier_option_id
                  type: object
                type: array
              product_id:
                description: The merchandise in the cart
                title: Product
                type: string
              quantity:
                description: The quantity of the item
                format: float
                minimum: 0
                title: Quantity
                type: number
              variant_options:
                items:
                  additionalProperties: false
                  properties:
                    variant_option_id:
                      description: The variant option ID
                      title: Variant Option
                      type: string
                    variant_option_value:
                      description: The value of the option
                      title: Variant Option Value
                      type: string
                  required:
                    - variant_option_id
                  type: object
                type: array
            required:
              - item_total
              - product_id
              - quantity
            type: object
          type: array
        notes:
          title: Notes
          type: string
        store_id:
          description: The store to which this cart belongs
          title: Store
          type: string
        sys_bulk_load_at:
          description: >-
            If this record was loaded via bulk, the timestamp when the record
            was processed
          title: Sys Bulk Load At
          type: string
        sys_bulk_load_id:
          description: If this record was loaded via bulk, the ID of the bulk load process
          title: Sys Bulk Load
          type: string
        sys_bulk_load_pk:
          description: >-
            If this record was loaded via bulk, the tenant and key of the bulk
            load process used as a partition key
          title: Sys Bulk Load Pk
          type: string
        sys_bulk_load_record_no:
          description: >-
            If this record was loaded via bulk, the record number in the source
            file
          format: float
          title: Sys Bulk Load Record No
          type: number
        sys_bulk_load_source_file:
          description: If this record was loaded via bulk, the source file
          title: Sys Bulk Load Source File
          type: string
        sys_calculated_field_error:
          description: The error associated with the calculated field
          title: Sys Calculated Field Error
          type: string
        sys_calculated_field_errors:
          items:
            additionalProperties: false
            properties:
              error:
                title: Error
                type: string
              field:
                title: Field
                type: string
            type: object
          type: array
        sys_configuration_snapshot_id:
          description: >-
            If a snapshot was restored/applies to this record, the ID of the
            snapshot
          title: Sys Configuration Snapshot
          type: string
        sys_created_at:
          description: >-
            The date/time that this record was created, expressed in ISO-8601
            date format
          format: date-time
          title: Sys Created At
          type: string
        sys_created_by_id:
          description: The ID of the user that created this record
          title: Sys Created By
          type: string
        sys_deleted_by_id:
          description: >-
            The ID of the user that deleted (or last tried to delete) this
            object
          title: Sys Deleted By
          type: string
        sys_directive:
          description: >-
            Means for passing directive information into an object processing
            logic
          title: Sys Directive
          type: string
        sys_external_id:
          description: The ID that a record has from an external system or data import
          title: Sys External
          type: string
        sys_has_files_in_s3:
          description: >-
            If true, this record has files in S3. If false, it doesnt, so no
            need to hit S3 upon deletion
          title: Sys Has Files In S3
          type: boolean
        sys_last_bulk_data_operation_id:
          description: >-
            If this record was last touched by a bulk data operation, the ID of
            that operation
          title: Sys Last Bulk Data Operation
          type: string
        sys_last_bulk_data_operation_sys_version:
          description: >-
            If this record was last touched by a bulk data operation, the
            sys_version at the time of that operation
          title: Sys Last Bulk Data Operation Sys Version
          type: string
        sys_last_modified_at:
          description: >-
            The date/time that this record record was last modified, expressed
            in ISO-8601 date format
          format: date-time
          title: Sys Last Modified At
          type: string
        sys_last_modified_by_id:
          description: The ID of the user that last modified this record
          title: Sys Last Modified By
          type: string
        sys_last_security_context:
          description: >-
            The security context of the last insert, modify, or delete performed
            on this item
          properties: {}
          title: Sys Last Security Context
          type: object
        sys_locked:
          description: If set, this record is locked and cannot be changed via the API
          title: Sys Locked
          type: boolean
        sys_snapshot_base_version:
          description: >-
            The version to use as a base when creating a configuration snapshot;
            if not set, 1 is used. Helpful when creating a sandbox
          format: float
          title: Sys Snapshot Base Version
          type: number
        sys_version:
          description: A number representing the version of this record in the database
          format: float
          title: Sys Version
          type: number
      required:
        - cart_total
        - currency_code
        - currency_symbol
        - id
        - store_id
        - sys_created_at
        - sys_created_by_id
        - sys_last_modified_at
        - sys_last_modified_by_id
      type: object
    CheckEligibilityResponse:
      additionalProperties: false
      properties:
        eligible:
          description: Whether the contact is eligible
          title: Eligible
          type: boolean
        reason:
          description: The reason for ineligibility
          title: Reason
          type: string
      type: object
    CheckPriceResponse:
      additionalProperties: false
      properties:
        price:
          description: The price
          format: double
          title: Price
          type: number
      type: object
    Coupon:
      additionalProperties: false
      properties:
        amount:
          description: Amount of the discount
          format: float
          title: Amount
          type: number
        applies_to_career_center_packages:
          description: Whether or not this coupon applies to career center packages
          title: Applies To Career Center Packages
          type: boolean
        applies_to_miscellaneous_products:
          description: Whether or not this coupon applies to misc products
          title: Applies To Miscellaneous Products
          type: boolean
        code_generation_html:
          description: HTML you can add into HTML generation for the code
          title: Code Generation Html
          type: string
        custom_field_values:
          items:
            $ref: '#/components/schemas/CustomFieldValue'
          title: Custom Field Values
          type: array
        discount_product_id:
          description: The product uses for the discount code when it is at the order level
          title: Discount Product
          type: string
        expiration_date:
          description: The date/time that this coupon expires
          format: date-time
          title: Expiration Date
          type: string
        id:
          description: The unique, string identifier of this coupon
          pattern: ^[\w|-]+$
          title: ID
          type: string
        is_active:
          description: Whether this coupon is enabled
          title: Is Active
          type: boolean
        limit_to_product_categories:
          description: Limit purchase to particular product categories
          items:
            type: string
          title: Limit To Product Categories
          type: array
        limit_to_products:
          description: Limit purchase to particular products
          items:
            type: string
          title: Limit To Products
          type: array
        limit_total_uses:
          description: The maximum number of times this coupon can be used
          title: Limit Total Uses
          type: integer
        limit_uses_per_customer:
          description: >-
            The maximum number of times this coupon can be used by a particular
            customer
          title: Limit Uses Per Customer
          type: integer
        maximum_discount:
          description: >-
            The optional maximum discount that this coupon can yield,
            irrespective of its configuration
          format: float
          title: Maximum Discount
          type: number
        minimum_purchase:
          description: Minimum a customer must purchase to qualify for coupon
          format: double
          title: Minimum Purchase
          type: number
        name:
          description: The name of the coupon
          title: Name
          type: string
        sys_bulk_load_at:
          description: >-
            If this record was loaded via bulk, the timestamp when the record
            was processed
          title: Sys Bulk Load At
          type: string
        sys_bulk_load_id:
          description: If this record was loaded via bulk, the ID of the bulk load process
          title: Sys Bulk Load
          type: string
        sys_bulk_load_pk:
          description: >-
            If this record was loaded via bulk, the tenant and key of the bulk
            load process used as a partition key
          title: Sys Bulk Load Pk
          type: string
        sys_bulk_load_record_no:
          description: >-
            If this record was loaded via bulk, the record number in the source
            file
          format: float
          title: Sys Bulk Load Record No
          type: number
        sys_bulk_load_source_file:
          description: If this record was loaded via bulk, the source file
          title: Sys Bulk Load Source File
          type: string
        sys_calculated_field_error:
          description: The error associated with the calculated field
          title: Sys Calculated Field Error
          type: string
        sys_calculated_field_errors:
          items:
            additionalProperties: false
            properties:
              error:
                title: Error
                type: string
              field:
                title: Field
                type: string
            type: object
          type: array
        sys_configuration_snapshot_id:
          description: >-
            If a snapshot was restored/applies to this record, the ID of the
            snapshot
          title: Sys Configuration Snapshot
          type: string
        sys_created_at:
          description: >-
            The date/time that this record was created, expressed in ISO-8601
            date format
          format: date-time
          title: Sys Created At
          type: string
        sys_created_by_id:
          description: The ID of the user that created this record
          title: Sys Created By
          type: string
        sys_deleted_by_id:
          description: >-
            The ID of the user that deleted (or last tried to delete) this
            object
          title: Sys Deleted By
          type: string
        sys_directive:
          description: >-
            Means for passing directive information into an object processing
            logic
          title: Sys Directive
          type: string
        sys_external_id:
          description: The ID that a record has from an external system or data import
          title: Sys External
          type: string
        sys_has_files_in_s3:
          description: >-
            If true, this record has files in S3. If false, it doesnt, so no
            need to hit S3 upon deletion
          title: Sys Has Files In S3
          type: boolean
        sys_last_bulk_data_operation_id:
          description: >-
            If this record was last touched by a bulk data operation, the ID of
            that operation
          title: Sys Last Bulk Data Operation
          type: string
        sys_last_bulk_data_operation_sys_version:
          description: >-
            If this record was last touched by a bulk data operation, the
            sys_version at the time of that operation
          title: Sys Last Bulk Data Operation Sys Version
          type: string
        sys_last_modified_at:
          description: >-
            The date/time that this record record was last modified, expressed
            in ISO-8601 date format
          format: date-time
          title: Sys Last Modified At
          type: string
        sys_last_modified_by_id:
          description: The ID of the user that last modified this record
          title: Sys Last Modified By
          type: string
        sys_last_security_context:
          description: >-
            The security context of the last insert, modify, or delete performed
            on this item
          properties: {}
          title: Sys Last Security Context
          type: object
        sys_locked:
          description: If set, this record is locked and cannot be changed via the API
          title: Sys Locked
          type: boolean
        sys_snapshot_base_version:
          description: >-
            The version to use as a base when creating a configuration snapshot;
            if not set, 1 is used. Helpful when creating a sandbox
          format: float
          title: Sys Snapshot Base Version
          type: number
        sys_version:
          description: A number representing the version of this record in the database
          format: float
          title: Sys Version
          type: number
        type:
          description: The type of discount to apply
          enum:
            - fixed amount off each item
            - fixed amount off order
            - fixed amount off shipping
            - free shipping
            - percentage off each item
          title: Type
          type: string
      required:
        - amount
        - discount_product_id
        - id
        - is_active
        - name
        - sys_created_at
        - sys_created_by_id
        - sys_last_modified_at
        - sys_last_modified_by_id
        - type
      type: object
    CouponCode:
      additionalProperties: false
      properties:
        contact_id:
          description: The contact
          title: Contact
          type: string
        coupon_id:
          description: The ID of the associated coupon
          title: Coupon
          type: string
        coupon_type:
          description: The type of coupon
          pattern: \-coupons$
          title: Coupon Type
          type: string
        custom_field_values:
          items:
            $ref: '#/components/schemas/CustomFieldValue'
          title: Custom Field Values
          type: array
        eligibility_criteria:
          additionalProperties: false
          description: The criteria to use
          properties:
            advanced_rule_error_message:
              description: The error message to show when the advanced rule fails
              title: Advanced Rule Error Message
              type: string
            advanced_rules:
              title: Advanced Rules
              type: object
            age_restrictions:
              additionalProperties: false
              properties:
                maximum_age:
                  description: The maximum age of the contact
                  format: float
                  title: Maximum Age
                  type: number
                minimum_age:
                  description: The minimum age of the contact
                  format: float
                  title: Minimum Age
                  type: number
              title: Age Restrictions
              type: object
            award_options:
              additionalProperties: false
              properties:
                award_ids:
                  items:
                    type: string
                  title: Awards
                  type: array
                award_type_ids:
                  items:
                    type: string
                  title: Award Types
                  type: array
                logic_operator:
                  enum:
                    - and
                    - not
                  title: Logic Operator
                  type: string
              title: Award Options
              type: object
            award_recipients:
              description: If set, only people who have received awards
              title: Award Recipients
              type: boolean
            by_location:
              description: If true, then filter by location
              title: By Location
              type: boolean
            certificants:
              description: If set, only people with specific certifications
              title: Certificants
              type: boolean
            certification_options:
              additionalProperties: false
              oneOf:
                - x-required: true
              properties:
                logic_operator:
                  enum:
                    - and
                    - not
                  title: Logic Operator
                  type: string
                program_ids:
                  items:
                    type: string
                  title: Programs
                  type: array
              title: Certification Options
              type: object
            committee_member_options:
              additionalProperties: false
              oneOf:
                - x-required: true
              properties:
                committee_ids:
                  items:
                    type: string
                  title: Committees
                  type: array
                committee_position_ids:
                  items:
                    type: string
                  title: Committee Positions
                  type: array
                committee_type_ids:
                  items:
                    type: string
                  title: Committee Types
                  type: array
                logic_operator:
                  enum:
                    - and
                    - not
                  title: Logic Operator
                  type: string
              title: Committee Member Options
              type: object
            committee_members:
              description: If set, active members who belong to a committee can purchase
              title: Committee Members
              type: boolean
            custom_logic_options:
              additionalProperties: false
              oneOf:
                - x-required: true
              properties:
                lambda_function_id:
                  description: The custom lambda function to use
                  title: Lambda Function
                  type: string
              required:
                - lambda_function_id
              title: Custom Logic Options
              type: object
            customer_type:
              enum:
                - contact
                - organization
              title: Customer Type
              type: string
            donor_options:
              additionalProperties: false
              properties:
                donor_club_ids:
                  items:
                    type: string
                  title: Donor Clubs
                  type: array
                logic_operator:
                  enum:
                    - and
                    - not
                  title: Logic Operator
                  type: string
              title: Donor Options
              type: object
            donors:
              description: If true, only donors
              title: Donors
              type: boolean
            enable_advanced_rules:
              description: Enable advanced JSON rules
              title: Enable Advanced Rules
              type: boolean
            enable_age_restrictions:
              description: Age registrations
              title: Enable Age Restrictions
              type: boolean
            enable_custom_logic:
              description: >-
                If set, the order engine will call out to a custom lambda
                function to process/change the order immediately after bundle
                expansion
              title: Enable Custom Logic
              type: boolean
            enable_entitlement_restrictions:
              description: If set, then you must have certain entitlements
              title: Enable Entitlement Restrictions
              type: boolean
            enable_expression:
              description: Whether or not to enable an expression for evaluation
              title: Enable Expression
              type: boolean
            enable_organization_restrictions:
              description: If set, you can restrict organizations
              title: Enable Organization Restrictions
              type: boolean
            enable_status_restriction:
              description: If set, you can restrict by status
              title: Enable Status Restriction
              type: boolean
            entitlement_restrictions:
              items:
                additionalProperties: false
                properties:
                  quantity:
                    description: The quantity you must have
                    format: float
                    title: Quantity
                    type: number
                  type_id:
                    description: The type of entitlement
                    title: Type
                    type: string
                required:
                  - type_id
                type: object
              type: array
            event_registration_options:
              additionalProperties: false
              properties:
                event_ids:
                  items:
                    type: string
                  title: Events
                  type: array
                logic_operator:
                  enum:
                    - and
                    - not
                  title: Logic Operator
                  type: string
                registration_category_ids:
                  items:
                    type: string
                  title: Registration Categories
                  type: array
              title: Event Registration Options
              type: object
            event_registrations:
              description: If set, only people who have registered for events
              title: Event Registrations
              type: boolean
            expression:
              description: The expression
              title: Expression
              type: string
            expression_error_message:
              description: The error message to show when the expression fails
              title: Expression Error Message
              type: string
            location:
              additionalProperties: false
              oneOf:
                - x-required: true
              properties:
                countries:
                  description: Countries
                  items:
                    type: string
                  title: Countries
                  type: array
                negate_logic:
                  description: >-
                    If true, the logic in this section is negated; so NOT from
                    these places
                  title: Negate Logic
                  type: boolean
              title: Location
              type: object
            logic_operator:
              enum:
                - and
                - not
              title: Logic Operator
              type: string
            member_options:
              additionalProperties: false
              oneOf:
                - x-required: true
              properties:
                chapter_member_options:
                  additionalProperties: false
                  oneOf:
                    - x-required: true
                  properties:
                    chapter_ids:
                      items:
                        type: string
                      title: Chapters
                      type: array
                    chapter_type_ids:
                      items:
                        type: string
                      title: Chapter Types
                      type: array
                    logic_operator:
                      enum:
                        - and
                        - not
                      title: Logic Operator
                      type: string
                  title: Chapter Member Options
                  type: object
                chapter_members:
                  description: If set, active members who belong to a chapter can purchase
                  title: Chapter Members
                  type: boolean
                member_package_ids:
                  description: The member package
                  items:
                    type: string
                  title: Member Packages
                  type: array
                member_status_reason_ids:
                  items:
                    type: string
                  title: Member Status Reasons
                  type: array
                member_statuses:
                  items:
                    enum:
                      - active
                      - inactive
                      - suspended
                    type: string
                  title: Member Statuses
                  type: array
                member_type_ids:
                  description: The member types
                  items:
                    type: string
                  title: Member Types
                  type: array
                section_member_options:
                  additionalProperties: false
                  oneOf:
                    - x-required: true
                  properties:
                    logic_operator:
                      enum:
                        - and
                        - not
                      title: Logic Operator
                      type: string
                    section_ids:
                      items:
                        type: string
                      title: Sections
                      type: array
                    section_type_ids:
                      items:
                        type: string
                      title: Section Types
                      type: array
                  title: Section Member Options
                  type: object
                section_members:
                  description: If set, active members who belong to a section can purchase
                  title: Section Members
                  type: boolean
              title: Member Options
              type: object
            members:
              description: If set, active members can purchase this
              title: Members
              type: boolean
            non_members:
              description: If set, only nonmembers can purchase
              title: Non Members
              type: boolean
            organization_restrictions:
              additionalProperties: false
              properties:
                contact_role_ids:
                  items:
                    type: string
                  title: Contact Roles
                  type: array
                organization_type_ids:
                  items:
                    type: string
                  title: Organization Types
                  type: array
              title: Organization Restrictions
              type: object
            status_restrictions:
              description: The statuses
              items:
                type: string
              minItems: 1
              oneOf:
                - x-required: true
              title: Status Restrictions
              type: array
            use_organization_for_eligibility:
              description: >-
                If checked, a person's organization is used to check for
                eligibility, rather than the person themselves
              title: Use Organization For Eligibility
              type: boolean
          title: Eligibility Criteria
          type: object
        enable_coupon_ownership:
          description: Enable the idea that a coupon can be owned by a contact/organization
          title: Enable Coupon Ownership
          type: boolean
        enable_eligibility_criteria:
          description: If true, eligibility criteria is applied to the coupon code
          title: Enable Eligibility Criteria
          type: boolean
        enable_restricted_contacts:
          description: If true, this coupon is restricted only to certain contacts
          title: Enable Restricted Contacts
          type: boolean
        enable_restricted_organizations:
          description: If true, this coupon is restricted only to certain organizations
          title: Enable Restricted Organizations
          type: boolean
        id:
          description: The unique, string identifier of this coupon code
          pattern: ^[\w|-]+$
          title: ID
          type: string
        is_active:
          description: Whether or not this coupon code is active
          title: Is Active
          type: boolean
        maximum_number_of_total_uses:
          description: The maximum number of total uses
          minimum: 1
          oneOf:
            - enum:
                - 1
          title: Maximum Number Of Total Uses
          type: integer
        maximum_number_of_uses_per_customer:
          description: The maximum number of total uses for a given customer
          minimum: 1
          oneOf:
            - enum:
                - 1
          title: Maximum Number Of Uses Per Customer
          type: integer
        maximum_number_of_uses_per_organization:
          description: The maximum number of total uses per contacts of an organization
          minimum: 1
          title: Maximum Number Of Uses Per Organization
          type: integer
        name:
          description: The name of the coupon code - used to identify the owner
          title: Name
          type: string
        notes:
          description: Notes
          title: Notes
          type: string
        order_id:
          description: The order id tied to this code
          title: Order
          type: string
        order_line_item_id:
          title: Order Line Item
          type: string
        organization_id:
          description: The organization
          title: Organization
          type: string
        owner_type:
          description: The owner of the code
          enum:
            - contact
            - organization
          oneOf:
            - type: string
          title: Owner Type
          type: string
        restricted_contacts:
          items:
            additionalProperties: false
            properties:
              contact_id:
                title: Contact
                type: string
            required:
              - contact_id
            type: object
          minItems: 1
          type: array
        restricted_organizations:
          items:
            additionalProperties: false
            properties:
              organization_id:
                title: Organization
                type: string
            required:
              - organization_id
            type: object
          minItems: 1
          type: array
        sys_bulk_load_at:
          description: >-
            If this record was loaded via bulk, the timestamp when the record
            was processed
          title: Sys Bulk Load At
          type: string
        sys_bulk_load_id:
          description: If this record was loaded via bulk, the ID of the bulk load process
          title: Sys Bulk Load
          type: string
        sys_bulk_load_pk:
          description: >-
            If this record was loaded via bulk, the tenant and key of the bulk
            load process used as a partition key
          title: Sys Bulk Load Pk
          type: string
        sys_bulk_load_record_no:
          description: >-
            If this record was loaded via bulk, the record number in the source
            file
          format: float
          title: Sys Bulk Load Record No
          type: number
        sys_bulk_load_source_file:
          description: If this record was loaded via bulk, the source file
          title: Sys Bulk Load Source File
          type: string
        sys_calculated_field_error:
          description: The error associated with the calculated field
          title: Sys Calculated Field Error
          type: string
        sys_calculated_field_errors:
          items:
            additionalProperties: false
            properties:
              error:
                title: Error
                type: string
              field:
                title: Field
                type: string
            type: object
          type: array
        sys_configuration_snapshot_id:
          description: >-
            If a snapshot was restored/applies to this record, the ID of the
            snapshot
          title: Sys Configuration Snapshot
          type: string
        sys_created_at:
          description: >-
            The date/time that this record was created, expressed in ISO-8601
            date format
          format: date-time
          title: Sys Created At
          type: string
        sys_created_by_id:
          description: The ID of the user that created this record
          title: Sys Created By
          type: string
        sys_deleted_by_id:
          description: >-
            The ID of the user that deleted (or last tried to delete) this
            object
          title: Sys Deleted By
          type: string
        sys_directive:
          description: >-
            Means for passing directive information into an object processing
            logic
          title: Sys Directive
          type: string
        sys_external_id:
          description: The ID that a record has from an external system or data import
          title: Sys External
          type: string
        sys_has_files_in_s3:
          description: >-
            If true, this record has files in S3. If false, it doesnt, so no
            need to hit S3 upon deletion
          title: Sys Has Files In S3
          type: boolean
        sys_last_bulk_data_operation_id:
          description: >-
            If this record was last touched by a bulk data operation, the ID of
            that operation
          title: Sys Last Bulk Data Operation
          type: string
        sys_last_bulk_data_operation_sys_version:
          description: >-
            If this record was last touched by a bulk data operation, the
            sys_version at the time of that operation
          title: Sys Last Bulk Data Operation Sys Version
          type: string
        sys_last_modified_at:
          description: >-
            The date/time that this record record was last modified, expressed
            in ISO-8601 date format
          format: date-time
          title: Sys Last Modified At
          type: string
        sys_last_modified_by_id:
          description: The ID of the user that last modified this record
          title: Sys Last Modified By
          type: string
        sys_last_security_context:
          description: >-
            The security context of the last insert, modify, or delete performed
            on this item
          properties: {}
          title: Sys Last Security Context
          type: object
        sys_locked:
          description: If set, this record is locked and cannot be changed via the API
          title: Sys Locked
          type: boolean
        sys_snapshot_base_version:
          description: >-
            The version to use as a base when creating a configuration snapshot;
            if not set, 1 is used. Helpful when creating a sandbox
          format: float
          title: Sys Snapshot Base Version
          type: number
        sys_version:
          description: A number representing the version of this record in the database
          format: float
          title: Sys Version
          type: number
        type:
          description: The type of coupon
          enum:
            - multi use
            - single use
          title: Type
          type: string
        valid_from:
          description: Date/time at which the code begins to be valid
          format: date-time
          title: Valid From
          type: string
        valid_until:
          description: Expiration date
          format: date-time
          title: Valid Until
          type: string
      required:
        - contact_id
        - coupon_id
        - coupon_type
        - eligibility_criteria
        - id
        - maximum_number_of_total_uses
        - maximum_number_of_uses_per_customer
        - organization_id
        - owner_type
        - restricted_contacts
        - restricted_organizations
        - sys_created_at
        - sys_created_by_id
        - sys_last_modified_at
        - sys_last_modified_by_id
      type: object
    CouponCodeGenProcess:
      additionalProperties: false
      properties:
        code_template:
          description: The pattern for determining the coupon code
          pattern: (.*[\*\@\#].*){6,}
          title: Code Template
          type: string
        confirmation_email:
          additionalProperties: false
          properties:
            bcc:
              description: Anyone that should be bcc'ed on the email
              title: Bcc
              type: string
            body:
              description: The email body
              title: Body
              type: string
            cc:
              description: Anyone that should be cc'ed on the email
              title: Cc
              type: string
            from:
              description: From email address
              title: From
              type: string
            from_name:
              description: From name
              title: From Name
              type: string
            reply_to:
              description: The reply to
              title: Reply To
              type: string
            subject:
              description: The email subject
              title: Subject
              type: string
          required:
            - body
            - subject
          title: Confirmation Email
          type: object
        custom_field_values:
          items:
            $ref: '#/components/schemas/CustomFieldValue'
          title: Custom Field Values
          type: array
        enable_confirmation_email:
          description: If true, the user receives an email when the code has been assigned
          title: Enable Confirmation Email
          type: boolean
        id:
          description: The unique, string identifier of this coupon code gen process
          pattern: ^[\w|-]+$
          title: ID
          type: string
        is_active:
          description: Whether or not this coupon code gen process is active
          title: Is Active
          type: boolean
        name:
          description: The name of the coupon code gen process
          title: Name
          type: string
        sys_bulk_load_at:
          description: >-
            If this record was loaded via bulk, the timestamp when the record
            was processed
          title: Sys Bulk Load At
          type: string
        sys_bulk_load_id:
          description: If this record was loaded via bulk, the ID of the bulk load process
          title: Sys Bulk Load
          type: string
        sys_bulk_load_pk:
          description: >-
            If this record was loaded via bulk, the tenant and key of the bulk
            load process used as a partition key
          title: Sys Bulk Load Pk
          type: string
        sys_bulk_load_record_no:
          description: >-
            If this record was loaded via bulk, the record number in the source
            file
          format: float
          title: Sys Bulk Load Record No
          type: number
        sys_bulk_load_source_file:
          description: If this record was loaded via bulk, the source file
          title: Sys Bulk Load Source File
          type: string
        sys_calculated_field_error:
          description: The error associated with the calculated field
          title: Sys Calculated Field Error
          type: string
        sys_calculated_field_errors:
          items:
            additionalProperties: false
            properties:
              error:
                title: Error
                type: string
              field:
                title: Field
                type: string
            type: object
          type: array
        sys_configuration_snapshot_id:
          description: >-
            If a snapshot was restored/applies to this record, the ID of the
            snapshot
          title: Sys Configuration Snapshot
          type: string
        sys_created_at:
          description: >-
            The date/time that this record was created, expressed in ISO-8601
            date format
          format: date-time
          title: Sys Created At
          type: string
        sys_created_by_id:
          description: The ID of the user that created this record
          title: Sys Created By
          type: string
        sys_deleted_by_id:
          description: >-
            The ID of the user that deleted (or last tried to delete) this
            object
          title: Sys Deleted By
          type: string
        sys_directive:
          description: >-
            Means for passing directive information into an object processing
            logic
          title: Sys Directive
          type: string
        sys_external_id:
          description: The ID that a record has from an external system or data import
          title: Sys External
          type: string
        sys_has_files_in_s3:
          description: >-
            If true, this record has files in S3. If false, it doesnt, so no
            need to hit S3 upon deletion
          title: Sys Has Files In S3
          type: boolean
        sys_last_bulk_data_operation_id:
          description: >-
            If this record was last touched by a bulk data operation, the ID of
            that operation
          title: Sys Last Bulk Data Operation
          type: string
        sys_last_bulk_data_operation_sys_version:
          description: >-
            If this record was last touched by a bulk data operation, the
            sys_version at the time of that operation
          title: Sys Last Bulk Data Operation Sys Version
          type: string
        sys_last_modified_at:
          description: >-
            The date/time that this record record was last modified, expressed
            in ISO-8601 date format
          format: date-time
          title: Sys Last Modified At
          type: string
        sys_last_modified_by_id:
          description: The ID of the user that last modified this record
          title: Sys Last Modified By
          type: string
        sys_last_security_context:
          description: >-
            The security context of the last insert, modify, or delete performed
            on this item
          properties: {}
          title: Sys Last Security Context
          type: object
        sys_locked:
          description: If set, this record is locked and cannot be changed via the API
          title: Sys Locked
          type: boolean
        sys_snapshot_base_version:
          description: >-
            The version to use as a base when creating a configuration snapshot;
            if not set, 1 is used. Helpful when creating a sandbox
          format: float
          title: Sys Snapshot Base Version
          type: number
        sys_version:
          description: A number representing the version of this record in the database
          format: float
          title: Sys Version
          type: number
      required:
        - code_template
        - confirmation_email
        - id
        - name
        - sys_created_at
        - sys_created_by_id
        - sys_last_modified_at
        - sys_last_modified_by_id
      type: object
    CouponUsage:
      additionalProperties: false
      properties:
        contact_id:
          description: The bill to contact
          title: Contact
          type: string
        coupon_code_id:
          description: The coupon code id
          title: Coupon Code
          type: string
        coupon_id:
          description: The coupon id
          title: Coupon
          type: string
        coupon_type:
          description: The type of coupon
          title: Coupon Type
          type: string
        customer_id:
          description: The customer ID, concatenated type and contact/org
          title: Customer
          type: string
        date:
          description: The order date/date of usage
          format: date-time
          title: Date
          type: string
        discount:
          description: The amount that this coupon usage discounted the order
          format: double
          title: Discount
          type: number
        order_id:
          description: The order
          title: Order
          type: string
        order_number:
          description: 'The order #'
          format: float
          title: Order Number
          type: number
        order_total:
          description: The total amount of the order
          format: double
          title: Order Total
          type: number
        organization_id:
          description: The bill to organization
          title: Organization
          type: string
      type: object
    CustomFieldValue:
      additionalProperties: false
      properties:
        boolean_value:
          description: The boolean value
          title: Boolean Value
          type: boolean
        custom_field_id:
          description: The unique identifier of the custom field
          title: Custom Field
          type: string
        file_url_value:
          description: The pointer to a file value
          title: File Url Value
          type: string
        list_value:
          description: The list value
          items:
            type: string
          title: List Value
          type: array
        numeric_value:
          description: The numeric value
          format: float
          title: Numeric Value
          type: number
        string_value:
          description: The string value of the custom field
          title: String Value
          type: string
        table_value:
          description: A list of objects (a table)
          items:
            additionalProperties: false
            properties: {}
            type: object
          type: array
      type: object
    DiscountProduct:
      additionalProperties: false
      properties:
        business_unit_id:
          description: The business unit of the product
          title: Business Unit
          type: string
        custom_field_values:
          items:
            $ref: '#/components/schemas/CustomFieldValue'
          title: Custom Field Values
          type: array
        id:
          description: The unique, string identifier of this miscellaneous product
          pattern: ^[\w:|-]+$
          title: ID
          type: string
        is_active:
          description: Whether this product is active/used
          title: Is Active
          type: boolean
        name:
          description: The name of the miscellaneous product
          title: Name
          type: string
        notes:
          description: Notes
          title: Notes
          type: string
        sys_bulk_load_at:
          description: >-
            If this record was loaded via bulk, the timestamp when the record
            was processed
          title: Sys Bulk Load At
          type: string
        sys_bulk_load_id:
          description: If this record was loaded via bulk, the ID of the bulk load process
          title: Sys Bulk Load
          type: string
        sys_bulk_load_pk:
          description: >-
            If this record was loaded via bulk, the tenant and key of the bulk
            load process used as a partition key
          title: Sys Bulk Load Pk
          type: string
        sys_bulk_load_record_no:
          description: >-
            If this record was loaded via bulk, the record number in the source
            file
          format: float
          title: Sys Bulk Load Record No
          type: number
        sys_bulk_load_source_file:
          description: If this record was loaded via bulk, the source file
          title: Sys Bulk Load Source File
          type: string
        sys_calculated_field_error:
          description: The error associated with the calculated field
          title: Sys Calculated Field Error
          type: string
        sys_calculated_field_errors:
          items:
            additionalProperties: false
            properties:
              error:
                title: Error
                type: string
              field:
                title: Field
                type: string
            type: object
          type: array
        sys_configuration_snapshot_id:
          description: >-
            If a snapshot was restored/applies to this record, the ID of the
            snapshot
          title: Sys Configuration Snapshot
          type: string
        sys_created_at:
          description: >-
            The date/time that this record was created, expressed in ISO-8601
            date format
          format: date-time
          title: Sys Created At
          type: string
        sys_created_by_id:
          description: The ID of the user that created this record
          title: Sys Created By
          type: string
        sys_deleted_by_id:
          description: >-
            The ID of the user that deleted (or last tried to delete) this
            object
          title: Sys Deleted By
          type: string
        sys_directive:
          description: >-
            Means for passing directive information into an object processing
            logic
          title: Sys Directive
          type: string
        sys_external_id:
          description: The ID that a record has from an external system or data import
          title: Sys External
          type: string
        sys_has_files_in_s3:
          description: >-
            If true, this record has files in S3. If false, it doesnt, so no
            need to hit S3 upon deletion
          title: Sys Has Files In S3
          type: boolean
        sys_last_bulk_data_operation_id:
          description: >-
            If this record was last touched by a bulk data operation, the ID of
            that operation
          title: Sys Last Bulk Data Operation
          type: string
        sys_last_bulk_data_operation_sys_version:
          description: >-
            If this record was last touched by a bulk data operation, the
            sys_version at the time of that operation
          title: Sys Last Bulk Data Operation Sys Version
          type: string
        sys_last_modified_at:
          description: >-
            The date/time that this record record was last modified, expressed
            in ISO-8601 date format
          format: date-time
          title: Sys Last Modified At
          type: string
        sys_last_modified_by_id:
          description: The ID of the user that last modified this record
          title: Sys Last Modified By
          type: string
        sys_last_security_context:
          description: >-
            The security context of the last insert, modify, or delete performed
            on this item
          properties: {}
          title: Sys Last Security Context
          type: object
        sys_locked:
          description: If set, this record is locked and cannot be changed via the API
          title: Sys Locked
          type: boolean
        sys_snapshot_base_version:
          description: >-
            The version to use as a base when creating a configuration snapshot;
            if not set, 1 is used. Helpful when creating a sandbox
          format: float
          title: Sys Snapshot Base Version
          type: number
        sys_version:
          description: A number representing the version of this record in the database
          format: float
          title: Sys Version
          type: number
        type:
          description: The product type
          enum:
            - commerce-discount-products
          title: Type
          type: string
      required:
        - business_unit_id
        - id
        - name
        - sys_created_at
        - sys_created_by_id
        - sys_last_modified_at
        - sys_last_modified_by_id
      type: object
    Entitlement:
      additionalProperties: false
      properties:
        contact_id:
          title: Contact
          type: string
        expiration_date:
          description: The expiration of the entitlement
          title: Expiration Date
          type: string
        id:
          description: The unique, string identifier of this entitlement
          pattern: ^[\w:|-]+$
          title: ID
          type: string
        notes:
          description: Any notes for the entitlement
          title: Notes
          type: string
        order_id:
          description: The order ID that generated the entitlement
          title: Order
          type: string
        order_line_item_id:
          description: The order line item id that generated the entitlement
          title: Order Line Item
          type: string
        order_line_item_quantity:
          description: The quantity assigned per order line item quantity
          format: float
          title: Order Line Item Quantity
          type: number
        organization_id:
          title: Organization
          type: string
        owner_type:
          description: The type of owner
          enum:
            - contact
            - organization
          title: Owner Type
          type: string
        quantity:
          description: The quantity of the entitlement
          format: float
          title: Quantity
          type: number
        sys_bulk_load_at:
          description: >-
            If this record was loaded via bulk, the timestamp when the record
            was processed
          title: Sys Bulk Load At
          type: string
        sys_bulk_load_id:
          description: If this record was loaded via bulk, the ID of the bulk load process
          title: Sys Bulk Load
          type: string
        sys_bulk_load_pk:
          description: >-
            If this record was loaded via bulk, the tenant and key of the bulk
            load process used as a partition key
          title: Sys Bulk Load Pk
          type: string
        sys_bulk_load_record_no:
          description: >-
            If this record was loaded via bulk, the record number in the source
            file
          format: float
          title: Sys Bulk Load Record No
          type: number
        sys_bulk_load_source_file:
          description: If this record was loaded via bulk, the source file
          title: Sys Bulk Load Source File
          type: string
        sys_calculated_field_error:
          description: The error associated with the calculated field
          title: Sys Calculated Field Error
          type: string
        sys_calculated_field_errors:
          items:
            additionalProperties: false
            properties:
              error:
                title: Error
                type: string
              field:
                title: Field
                type: string
            type: object
          type: array
        sys_configuration_snapshot_id:
          description: >-
            If a snapshot was restored/applies to this record, the ID of the
            snapshot
          title: Sys Configuration Snapshot
          type: string
        sys_created_at:
          description: >-
            The date/time that this record was created, expressed in ISO-8601
            date format
          format: date-time
          title: Sys Created At
          type: string
        sys_created_by_id:
          description: The ID of the user that created this record
          title: Sys Created By
          type: string
        sys_deleted_by_id:
          description: >-
            The ID of the user that deleted (or last tried to delete) this
            object
          title: Sys Deleted By
          type: string
        sys_directive:
          description: >-
            Means for passing directive information into an object processing
            logic
          title: Sys Directive
          type: string
        sys_external_id:
          description: The ID that a record has from an external system or data import
          title: Sys External
          type: string
        sys_has_files_in_s3:
          description: >-
            If true, this record has files in S3. If false, it doesnt, so no
            need to hit S3 upon deletion
          title: Sys Has Files In S3
          type: boolean
        sys_last_bulk_data_operation_id:
          description: >-
            If this record was last touched by a bulk data operation, the ID of
            that operation
          title: Sys Last Bulk Data Operation
          type: string
        sys_last_bulk_data_operation_sys_version:
          description: >-
            If this record was last touched by a bulk data operation, the
            sys_version at the time of that operation
          title: Sys Last Bulk Data Operation Sys Version
          type: string
        sys_last_modified_at:
          description: >-
            The date/time that this record record was last modified, expressed
            in ISO-8601 date format
          format: date-time
          title: Sys Last Modified At
          type: string
        sys_last_modified_by_id:
          description: The ID of the user that last modified this record
          title: Sys Last Modified By
          type: string
        sys_last_security_context:
          description: >-
            The security context of the last insert, modify, or delete performed
            on this item
          properties: {}
          title: Sys Last Security Context
          type: object
        sys_locked:
          description: If set, this record is locked and cannot be changed via the API
          title: Sys Locked
          type: boolean
        sys_snapshot_base_version:
          description: >-
            The version to use as a base when creating a configuration snapshot;
            if not set, 1 is used. Helpful when creating a sandbox
          format: float
          title: Sys Snapshot Base Version
          type: number
        sys_version:
          description: A number representing the version of this record in the database
          format: float
          title: Sys Version
          type: number
        type_id:
          description: The entitlement type
          title: Type
          type: string
      required:
        - contact_id
        - id
        - organization_id
        - owner_type
        - quantity
        - sys_created_at
        - sys_created_by_id
        - sys_last_modified_at
        - sys_last_modified_by_id
        - type_id
      type: object
    EntitlementType:
      additionalProperties: false
      properties:
        id:
          description: The unique, string identifier of this entitlement type
          pattern: ^[\w:|-]+$
          title: ID
          type: string
        is_active:
          description: Whether or not this entitlement type is active
          title: Is Active
          type: boolean
        name:
          description: The name of the entitlement type
          title: Name
          type: string
        sys_bulk_load_at:
          description: >-
            If this record was loaded via bulk, the timestamp when the record
            was processed
          title: Sys Bulk Load At
          type: string
        sys_bulk_load_id:
          description: If this record was loaded via bulk, the ID of the bulk load process
          title: Sys Bulk Load
          type: string
        sys_bulk_load_pk:
          description: >-
            If this record was loaded via bulk, the tenant and key of the bulk
            load process used as a partition key
          title: Sys Bulk Load Pk
          type: string
        sys_bulk_load_record_no:
          description: >-
            If this record was loaded via bulk, the record number in the source
            file
          format: float
          title: Sys Bulk Load Record No
          type: number
        sys_bulk_load_source_file:
          description: If this record was loaded via bulk, the source file
          title: Sys Bulk Load Source File
          type: string
        sys_calculated_field_error:
          description: The error associated with the calculated field
          title: Sys Calculated Field Error
          type: string
        sys_calculated_field_errors:
          items:
            additionalProperties: false
            properties:
              error:
                title: Error
                type: string
              field:
                title: Field
                type: string
            type: object
          type: array
        sys_configuration_snapshot_id:
          description: >-
            If a snapshot was restored/applies to this record, the ID of the
            snapshot
          title: Sys Configuration Snapshot
          type: string
        sys_created_at:
          description: >-
            The date/time that this record was created, expressed in ISO-8601
            date format
          format: date-time
          title: Sys Created At
          type: string
        sys_created_by_id:
          description: The ID of the user that created this record
          title: Sys Created By
          type: string
        sys_deleted_by_id:
          description: >-
            The ID of the user that deleted (or last tried to delete) this
            object
          title: Sys Deleted By
          type: string
        sys_directive:
          description: >-
            Means for passing directive information into an object processing
            logic
          title: Sys Directive
          type: string
        sys_external_id:
          description: The ID that a record has from an external system or data import
          title: Sys External
          type: string
        sys_has_files_in_s3:
          description: >-
            If true, this record has files in S3. If false, it doesnt, so no
            need to hit S3 upon deletion
          title: Sys Has Files In S3
          type: boolean
        sys_last_bulk_data_operation_id:
          description: >-
            If this record was last touched by a bulk data operation, the ID of
            that operation
          title: Sys Last Bulk Data Operation
          type: string
        sys_last_bulk_data_operation_sys_version:
          description: >-
            If this record was last touched by a bulk data operation, the
            sys_version at the time of that operation
          title: Sys Last Bulk Data Operation Sys Version
          type: string
        sys_last_modified_at:
          description: >-
            The date/time that this record record was last modified, expressed
            in ISO-8601 date format
          format: date-time
          title: Sys Last Modified At
          type: string
        sys_last_modified_by_id:
          description: The ID of the user that last modified this record
          title: Sys Last Modified By
          type: string
        sys_last_security_context:
          description: >-
            The security context of the last insert, modify, or delete performed
            on this item
          properties: {}
          title: Sys Last Security Context
          type: object
        sys_locked:
          description: If set, this record is locked and cannot be changed via the API
          title: Sys Locked
          type: boolean
        sys_snapshot_base_version:
          description: >-
            The version to use as a base when creating a configuration snapshot;
            if not set, 1 is used. Helpful when creating a sandbox
          format: float
          title: Sys Snapshot Base Version
          type: number
        sys_version:
          description: A number representing the version of this record in the database
          format: float
          title: Sys Version
          type: number
      required:
        - id
        - name
        - sys_created_at
        - sys_created_by_id
        - sys_last_modified_at
        - sys_last_modified_by_id
      type: object
    InventoryTransaction:
      additionalProperties: false
      properties:
        bin_id:
          description: The bin for this inventory
          title: Bin
          type: string
        cancelled_commitment_id:
          description: Self referencing inventory commitment for cancellations
          title: Cancelled Commitment
          type: string
        cogs_quantity_remaining:
          description: 'For receipts, the COGS quantity remaining '
          format: float
          title: Cogs Quantity Remaining
          type: number
        custom_field_values:
          items:
            $ref: '#/components/schemas/CustomFieldValue'
          title: Custom Field Values
          type: array
        date:
          description: The date of the transaction
          format: date-time
          title: Date
          type: string
        ending_quantity:
          description: For receipts, the ending quantity
          format: float
          title: Ending Quantity
          type: number
        id:
          description: The unique, string identifier of this inventory transaction
          pattern: ^[\w|-]+$
          title: ID
          type: string
        inventory_receipt_id:
          description: Self referencing inventory receipt for adjustments
          title: Inventory Receipt
          type: string
        invoice_number:
          description: Invoice number for receipts/purchase orders
          title: Invoice Number
          type: string
        is_defective:
          description: Whether or not this is a defective transaction
          title: Is Defective
          type: boolean
        notes:
          description: Any important notes
          title: Notes
          type: string
        order_id:
          anyOf:
            - x-required: true
          description: The order responsible for this transaction
          title: Order
          type: string
        order_line_item_id:
          anyOf:
            - x-required: true
          description: The order line item responsible for this transaction
          title: Order Line Item
          type: string
        product_id:
          description: The ID of the product holding this inventory
          title: Product
          type: string
        product_inventory_id:
          description: The ID of the product inventory to which this transaction is tied
          title: Product Inventory
          type: string
        product_sku:
          description: The product SKU (optional)
          title: Product Sku
          type: string
        product_type:
          description: The type of product holding this inventory
          title: Product Type
          type: string
        purchase_order_id:
          description: For receipts, the purchase order
          title: Purchase Order
          type: string
        quantity:
          description: The quantity of this transaction
          title: Quantity
          type: integer
        quantity_received:
          description: The quantity received of a purchase order
          format: float
          title: Quantity Received
          type: number
        related_transactions:
          items:
            additionalProperties: false
            properties:
              transaction_id:
                description: The ID of the transaction
                title: Transaction
                type: string
              type:
                description: The type of transaction
                title: Type
                type: string
            type: object
          type: array
        return_id:
          description: The return responsible for this transaction
          title: Return
          type: string
        return_line_item_id:
          description: The return line item responsible for this transaction
          title: Return Line Item
          type: string
        shipment_id:
          description: The shipment that generated this transaction
          title: Shipment
          type: string
        starting_quantity:
          description: For receipts, the starting quantity
          format: float
          title: Starting Quantity
          type: number
        sys_bulk_load_at:
          description: >-
            If this record was loaded via bulk, the timestamp when the record
            was processed
          title: Sys Bulk Load At
          type: string
        sys_bulk_load_id:
          description: If this record was loaded via bulk, the ID of the bulk load process
          title: Sys Bulk Load
          type: string
        sys_bulk_load_pk:
          description: >-
            If this record was loaded via bulk, the tenant and key of the bulk
            load process used as a partition key
          title: Sys Bulk Load Pk
          type: string
        sys_bulk_load_record_no:
          description: >-
            If this record was loaded via bulk, the record number in the source
            file
          format: float
          title: Sys Bulk Load Record No
          type: number
        sys_bulk_load_source_file:
          description: If this record was loaded via bulk, the source file
          title: Sys Bulk Load Source File
          type: string
        sys_calculated_field_error:
          description: The error associated with the calculated field
          title: Sys Calculated Field Error
          type: string
        sys_calculated_field_errors:
          items:
            additionalProperties: false
            properties:
              error:
                title: Error
                type: string
              field:
                title: Field
                type: string
            type: object
          type: array
        sys_configuration_snapshot_id:
          description: >-
            If a snapshot was restored/applies to this record, the ID of the
            snapshot
          title: Sys Configuration Snapshot
          type: string
        sys_created_at:
          description: >-
            The date/time that this record was created, expressed in ISO-8601
            date format
          format: date-time
          title: Sys Created At
          type: string
        sys_created_by_id:
          description: The ID of the user that created this record
          title: Sys Created By
          type: string
        sys_deleted_by_id:
          description: >-
            The ID of the user that deleted (or last tried to delete) this
            object
          title: Sys Deleted By
          type: string
        sys_directive:
          description: >-
            Means for passing directive information into an object processing
            logic
          title: Sys Directive
          type: string
        sys_external_id:
          description: The ID that a record has from an external system or data import
          title: Sys External
          type: string
        sys_has_files_in_s3:
          description: >-
            If true, this record has files in S3. If false, it doesnt, so no
            need to hit S3 upon deletion
          title: Sys Has Files In S3
          type: boolean
        sys_last_bulk_data_operation_id:
          description: >-
            If this record was last touched by a bulk data operation, the ID of
            that operation
          title: Sys Last Bulk Data Operation
          type: string
        sys_last_bulk_data_operation_sys_version:
          description: >-
            If this record was last touched by a bulk data operation, the
            sys_version at the time of that operation
          title: Sys Last Bulk Data Operation Sys Version
          type: string
        sys_last_modified_at:
          description: >-
            The date/time that this record record was last modified, expressed
            in ISO-8601 date format
          format: date-time
          title: Sys Last Modified At
          type: string
        sys_last_modified_by_id:
          description: The ID of the user that last modified this record
          title: Sys Last Modified By
          type: string
        sys_last_security_context:
          description: >-
            The security context of the last insert, modify, or delete performed
            on this item
          properties: {}
          title: Sys Last Security Context
          type: object
        sys_locked:
          description: If set, this record is locked and cannot be changed via the API
          title: Sys Locked
          type: boolean
        sys_product_type_id:
          title: Sys Product Type
          type: string
        sys_snapshot_base_version:
          description: >-
            The version to use as a base when creating a configuration snapshot;
            if not set, 1 is used. Helpful when creating a sandbox
          format: float
          title: Sys Snapshot Base Version
          type: number
        sys_version:
          description: A number representing the version of this record in the database
          format: float
          title: Sys Version
          type: number
        target_bin_id:
          description: For transfers, the target bin
          title: Target Bin
          type: string
        target_product_inventory_id:
          description: For transfers, the target warehouse
          title: Target Product Inventory
          type: string
        target_warehouse_id:
          description: For transfers, the ID of the target warehouse
          title: Target Warehouse
          type: string
        total_cost:
          description: The total cost of the receipt
          format: double
          title: Total Cost
          type: number
        transfer_id:
          description: The ID of the transfer
          title: Transfer
          type: string
        type:
          description: The type of inventory
          enum:
            - adjustment
            - backorder
            - commitment
            - fulfillment
            - purchase order
            - receipt
            - reservation
            - return
            - transfer
          title: Type
          type: string
        unit_cost:
          description: The unit cost
          format: double
          title: Unit Cost
          type: number
        warehouse_id:
          description: The ID of the warehouse for this product inventory
          title: Warehouse
          type: string
      required:
        - ending_quantity
        - id
        - product_id
        - product_inventory_id
        - product_type
        - purchase_order_id
        - quantity
        - quantity_received
        - return_id
        - return_line_item_id
        - starting_quantity
        - sys_created_at
        - sys_created_by_id
        - sys_last_modified_at
        - sys_last_modified_by_id
        - target_warehouse_id
        - type
        - warehouse_id
      type: object
    ListCancellationsResponse:
      properties:
        Count:
          type: integer
        Items:
          items:
            $ref: '#/components/schemas/Cancellation'
          type: array
        LastEvaluatedKey:
          type: string
      type: object
    ListCouponCodesResponse:
      properties:
        Count:
          type: integer
        Items:
          items:
            $ref: '#/components/schemas/CouponCode'
          type: array
        LastEvaluatedKey:
          type: string
      type: object
    ListCouponUsagesResponse:
      properties:
        Count:
          type: integer
        Items:
          items:
            $ref: '#/components/schemas/CouponUsage'
          type: array
        LastEvaluatedKey:
          type: string
      type: object
    ListEntitlementsResponse:
      properties:
        Count:
          type: integer
        Items:
          items:
            $ref: '#/components/schemas/Entitlement'
          type: array
        LastEvaluatedKey:
          type: string
      type: object
    ListInventoryTransactionsResponse:
      properties:
        Count:
          type: integer
        Items:
          items:
            $ref: '#/components/schemas/InventoryTransaction'
          type: array
        LastEvaluatedKey:
          type: string
      type: object
    ListMerchandisePublicResponse:
      properties:
        Items:
          items:
            $ref: '#/components/schemas/MerchandiseShortPublic'
          type: array
        LastEvaluatedKey:
          type: string
      type: object
    ListOrdersResponse:
      properties:
        Count:
          type: integer
        Items:
          items:
            $ref: '#/components/schemas/Order'
          type: array
        LastEvaluatedKey:
          type: string
      type: object
    ListProductInventoriesResponse:
      properties:
        Count:
          type: integer
        Items:
          items:
            $ref: '#/components/schemas/ProductInventory'
          type: array
        LastEvaluatedKey:
          type: string
      type: object
    ListReturnsResponse:
      properties:
        Count:
          type: integer
        Items:
          items:
            $ref: '#/components/schemas/Return'
          type: array
        LastEvaluatedKey:
          type: string
      type: object
    ListShipmentsResponse:
      properties:
        Count:
          type: integer
        Items:
          items:
            $ref: '#/components/schemas/Shipment'
          type: array
        LastEvaluatedKey:
          type: string
      type: object
    ListStandardQueryDefinitionsResponse:
      items:
        $ref: '#/components/schemas/StandardQueryDefinition'
      type: array
    Merchandise:
      additionalProperties: false
      properties:
        additional_image_urls:
          description: Additional images
          items:
            type: string
          title: Additional Image Urls
          type: array
        allow_back_orders:
          description: >-
            If this product is inventoried, whether or not inventories are
            allowed
          title: Allow Back Orders
          type: boolean
        allow_customer_to_choose_installment_plan:
          description: If true, the customer can choose their installment plan
          title: Allow Customer To Choose Installment Plan
          type: boolean
        bulk_pricing_rules:
          items:
            additionalProperties: false
            properties:
              discount_amount:
                description: The percentage/flat rate
                format: float
                minimum: 0
                title: Discount Amount
                type: number
              discount_type:
                description: The type of discount rule
                enum:
                  - flat rate
                  - percentage
                title: Discount Type
                type: string
              ending_range:
                description: The ending range of the rule
                minimum: 0
                title: Ending Range
                type: integer
              starting_range:
                description: The starting range of the rule
                minimum: 0
                title: Starting Range
                type: integer
            required:
              - discount_amount
              - discount_type
            type: object
          minItems: 1
          type: array
        bundled_products:
          items:
            additionalProperties: false
            properties:
              member_price:
                description: The member price
                format: double
                title: Member Price
                type: number
              price:
                description: The price to bundle
                format: double
                title: Price
                type: number
              product_id:
                description: The product ID
                title: Product
                type: string
              product_type:
                description: The product type
                title: Product Type
                type: string
              quantity:
                description: The quantity to bundle
                title: Quantity
                type: integer
              type:
                enum:
                  - bundled product
                  - inline bundled product
                title: Type
                type: string
            required:
              - product_id
              - product_type
              - quantity
              - type
            type: object
          minItems: 1
          type: array
        bundled_products_inventory_handling:
          description: >-
            Whether to track inventory for the entire bundle, or for each
            product separately
          enum:
            - bundle
            - each product
          title: Bundled Products Inventory Handling
          type: string
        business_unit_id:
          description: The business unit of the product
          title: Business Unit
          type: string
        cancellation_fee:
          description: Cancellation fees associated with this product
          format: double
          title: Cancellation Fee
          type: number
        category_ids:
          description: The categories that this merchandise is in
          items:
            type: string
          title: Categories
          type: array
        commerce_entitlements_to_create:
          items:
            additionalProperties: false
            properties:
              expiration_date:
                format: date-time
                oneOf:
                  - x-required: true
                title: Expiration Date
                type: string
              expiration_type:
                enum:
                  - none
                  - relative date
                  - specific date
                title: Expiration Type
                type: string
              quantity:
                description: The quantity
                format: float
                title: Quantity
                type: number
              relative_expiration_date:
                additionalProperties: false
                description: The date the task is due
                oneOf:
                  - x-required: true
                properties:
                  number:
                    description: The unit of time
                    format: float
                    minimum: 0
                    oneOf:
                      - {}
                    title: Number
                    type: number
                  position:
                    description: How the unit relates to the reference date
                    enum:
                      - after
                      - before
                      - 'on'
                    title: Position
                    type: string
                  relative_to:
                    enum:
                      - the beginning of the month
                      - the beginning of the quarter
                      - the beginning of the week
                      - the beginning of the year
                      - the end of the month
                      - the end of the quarter
                      - the end of the week
                      - the end of the year
                      - the reference date
                    title: Relative To
                    type: string
                  unit_of_time:
                    enum:
                      - days
                      - months
                      - weeks
                      - years
                    oneOf:
                      - {}
                    title: Unit Of Time
                    type: string
                required:
                  - number
                  - position
                  - relative_to
                  - unit_of_time
                title: Relative Expiration Date
                type: object
              type_id:
                description: The type of entitlement
                title: Type
                type: string
            required:
              - expiration_type
              - type_id
            type: object
          type: array
        coupon_codes:
          items:
            additionalProperties: false
            properties:
              coupon_code_generation_process_id:
                description: The process by which the coupons are generated
                title: Coupon Code Generation Process
                type: string
              coupon_code_type:
                enum:
                  - multi use
                  - single use
                title: Coupon Code Type
                type: string
              coupon_id:
                title: Coupon
                type: string
              coupon_type:
                title: Coupon Type
                type: string
              expiration_date:
                format: date-time
                oneOf:
                  - x-required: true
                title: Expiration Date
                type: string
              expiration_type:
                enum:
                  - none
                  - relative date
                  - specific date
                title: Expiration Type
                type: string
              maximum_number_of_total_uses:
                description: The maximum number of total uses
                minimum: 1
                oneOf:
                  - enum:
                      - 1
                    x-required: true
                title: Maximum Number Of Total Uses
                type: integer
              maximum_number_of_uses_per_customer:
                description: The maximum number of total uses for a given customer
                minimum: 1
                oneOf:
                  - enum:
                      - 1
                    x-required: true
                title: Maximum Number Of Uses Per Customer
                type: integer
              quantity:
                description: The number of coupons to generate
                maximum: 250
                title: Quantity
                type: integer
              relative_expiration_date:
                additionalProperties: false
                description: Expiration date relative to purchase
                oneOf:
                  - x-required: true
                properties:
                  number:
                    description: The unit of time
                    format: float
                    minimum: 0
                    oneOf:
                      - {}
                    title: Number
                    type: number
                  position:
                    description: How the unit relates to the reference date
                    enum:
                      - after
                      - before
                      - 'on'
                    title: Position
                    type: string
                  relative_to:
                    enum:
                      - the beginning of the month
                      - the beginning of the quarter
                      - the beginning of the week
                      - the beginning of the year
                      - the end of the month
                      - the end of the quarter
                      - the end of the week
                      - the end of the year
                      - the reference date
                    title: Relative To
                    type: string
                  unit_of_time:
                    enum:
                      - days
                      - months
                      - weeks
                      - years
                    oneOf:
                      - {}
                    title: Unit Of Time
                    type: string
                required:
                  - number
                  - position
                  - relative_to
                  - unit_of_time
                title: Relative Expiration Date
                type: object
              restrict_to_contact:
                description: >-
                  If true, the code generated is restricted to the contact who
                  made the purchase
                title: Restrict To Contact
                type: boolean
              restrict_to_organization:
                description: >-
                  If true, the code generated is restricted to the organization
                  made the purchase
                title: Restrict To Organization
                type: boolean
            required:
              - coupon_code_generation_process_id
              - coupon_code_type
              - coupon_id
              - coupon_type
              - quantity
            type: object
          minItems: 1
          type: array
        custom_field_values:
          items:
            $ref: '#/components/schemas/CustomFieldValue'
          title: Custom Field Values
          type: array
        custom_pricing_options:
          additionalProperties: false
          properties:
            lambda_function_id:
              description: The custom lambda function to use
              title: Lambda Function
              type: string
          required:
            - lambda_function_id
          title: Custom Pricing Options
          type: object
        date_added:
          description: The date that this product was added to inventory
          title: Date Added
          type: string
        description:
          description: Product description to be displayed on the portal
          title: Description
          type: string
        document_entitlements_to_create:
          items:
            additionalProperties: false
            properties:
              expiration_date:
                format: date-time
                oneOf:
                  - x-required: true
                title: Expiration Date
                type: string
              expiration_type:
                enum:
                  - none
                  - relative date
                  - specific date
                title: Expiration Type
                type: string
              file_cabinet_id:
                description: The file cabinet
                title: File Cabinet
                type: string
              item_id:
                description: The item
                title: Item
                type: string
              library_path:
                description: >-
                  The optional path that items will be mounted onto the digital
                  library
                title: Library Path
                type: string
              relative_expiration_date:
                additionalProperties: false
                description: The date the task is due
                oneOf:
                  - x-required: true
                properties:
                  number:
                    description: The unit of time
                    format: float
                    minimum: 0
                    oneOf:
                      - {}
                    title: Number
                    type: number
                  position:
                    description: How the unit relates to the reference date
                    enum:
                      - after
                      - before
                      - 'on'
                    title: Position
                    type: string
                  relative_to:
                    enum:
                      - the beginning of the month
                      - the beginning of the quarter
                      - the beginning of the week
                      - the beginning of the year
                      - the end of the month
                      - the end of the quarter
                      - the end of the week
                      - the end of the year
                      - the reference date
                    title: Relative To
                    type: string
                  unit_of_time:
                    enum:
                      - days
                      - months
                      - weeks
                      - years
                    oneOf:
                      - {}
                    title: Unit Of Time
                    type: string
                required:
                  - number
                  - position
                  - relative_to
                  - unit_of_time
                title: Relative Expiration Date
                type: object
            required:
              - expiration_type
              - file_cabinet_id
            type: object
          type: array
        enable_bulk_pricing:
          description: Whether or not bulk pricing is enabled
          title: Enable Bulk Pricing
          type: boolean
        enable_bundled_products:
          description: Whether to enable bundled products
          title: Enable Bundled Products
          type: boolean
        enable_cancellation_fees:
          description: Whether or not cancellation fees are applicable
          title: Enable Cancellation Fees
          type: boolean
        enable_commerce_entitlement_creation:
          description: >-
            If set, document entitlements will be created to access folders or
            documents
          title: Enable Commerce Entitlement Creation
          type: boolean
        enable_coupon_code_generation:
          description: If true, purchasing this product will generate coupons
          title: Enable Coupon Code Generation
          type: boolean
        enable_custom_pricing:
          description: >-
            If set, the order engine will call out to a custom lambda function
            for custom/complex pricing
          title: Enable Custom Pricing
          type: boolean
        enable_document_entitlement_creation:
          description: >-
            If set, document entitlements will be created to access folders or
            documents
          title: Enable Document Entitlement Creation
          type: boolean
        enable_modifier_options:
          description: >-
            When sent, customers can change products with customization
            modifiers
          title: Enable Modifier Options
          type: boolean
        enable_product_confirmation_email:
          description: If enabled, a custom email goes out whenever this product is ordered
          title: Enable Product Confirmation Email
          type: boolean
        enable_purchase_limits:
          description: If true, purchase limits are in place for this product
          title: Enable Purchase Limits
          type: boolean
        enable_purchasing_eligibility:
          description: If set, purchases of this merchandise are restricted
          title: Enable Purchasing Eligibility
          type: boolean
        enable_restocking_fees:
          description: Whether or not restocking fees are enabled
          title: Enable Restocking Fees
          type: boolean
        enable_special_prices:
          description: Whether to enable special pricing logic
          title: Enable Special Prices
          type: boolean
        enable_task_generation:
          description: If set, tasks will be generated
          title: Enable Task Generation
          type: boolean
        enable_variant_options:
          description: When sent, customers can change products with variant options
          title: Enable Variant Options
          type: boolean
        featured_options:
          additionalProperties: false
          properties:
            featured_from:
              description: Date from which this product should be featured
              format: date-time
              title: Featured From
              type: string
            featured_until:
              description: Date until which this product should be featured
              format: date-time
              title: Featured Until
              type: string
          title: Featured Options
          type: object
        featured_product:
          description: Whether this is a featured product
          title: Featured Product
          type: boolean
        foreign_currency_prices:
          items:
            additionalProperties: false
            properties:
              cancellation_fee:
                description: The cancellation fee of the product for this currency
                format: double
                title: Cancellation Fee
                type: number
              currency_code:
                enum:
                  - AED
                  - AFN
                  - ALL
                  - AMD
                  - ANG
                  - AOA
                  - ARS
                  - AUD
                  - AWG
                  - AZN
                  - BAM
                  - BBD
                  - BDT
                  - BGN
                  - BHD
                  - BIF
                  - BMD
                  - BND
                  - BOB
                  - BRL
                  - BSD
                  - BTN
                  - BWP
                  - BYR
                  - BZD
                  - CAD
                  - CDF
                  - CHF
                  - CLP
                  - CNY
                  - COP
                  - CRC
                  - CUC
                  - CVE
                  - CZK
                  - DJF
                  - DKK
                  - DOP
                  - DZD
                  - EEK
                  - EGP
                  - ERN
                  - ETB
                  - EUR
                  - FJD
                  - FKP
                  - GBP
                  - GEL
                  - GHS
                  - GIP
                  - GMD
                  - GNF
                  - GQE
                  - GTQ
                  - GYD
                  - HKD
                  - HNL
                  - HRK
                  - HTG
                  - HUF
                  - IDR
                  - ILS
                  - INR
                  - IQD
                  - IRR
                  - ISK
                  - JMD
                  - JOD
                  - JPY
                  - KES
                  - KGS
                  - KHR
                  - KMF
                  - KPW
                  - KRW
                  - KWD
                  - KYD
                  - KZT
                  - LAK
                  - LBP
                  - LKR
                  - LRD
                  - LSL
                  - LTL
                  - LVL
                  - LYD
                  - MAD
                  - MDL
                  - MGA
                  - MKD
                  - MMK
                  - MNT
                  - MOP
                  - MRO
                  - MUR
                  - MVR
                  - MWK
                  - MXN
                  - MYR
                  - MZM
                  - NAD
                  - NGN
                  - NIO
                  - NOK
                  - NPR
                  - NZD
                  - OMR
                  - PAB
                  - PEN
                  - PGK
                  - PHP
                  - PKR
                  - PLN
                  - PYG
                  - QAR
                  - RON
                  - RSD
                  - RUB
                  - SAR
                  - SBD
                  - SCR
                  - SDG
                  - SEK
                  - SGD
                  - SHP
                  - SLL
                  - SOS
                  - SRD
                  - SYP
                  - SZL
                  - THB
                  - TJS
                  - TMT
                  - TND
                  - TRY
                  - TTD
                  - TWD
                  - TZS
                  - UAH
                  - UGX
                  - USD
                  - UYU
                  - UZS
                  - VEB
                  - VND
                  - VUV
                  - WST
                  - XAF
                  - XCD
                  - XDR
                  - XOF
                  - XPF
                  - YER
                  - ZAR
                  - ZMK
                  - ZWR
                title: Currency Code
                type: string
              member_price:
                description: The price of the product for a member
                format: double
                title: Member Price
                type: number
              mode:
                description: How this foreign currency should be treated
                enum:
                  - calculate price
                  - prohibit purchase
                  - set price
                title: Mode
                type: string
              price:
                description: The price of the product
                format: double
                oneOf:
                  - x-required: true
                title: Price
                type: number
              restocking_fee:
                description: The restocking fee of the product for this currency
                format: double
                title: Restocking Fee
                type: number
            required:
              - currency_code
            type: object
          type: array
        hide_from_portal:
          description: If set, this product should not be shown in the portal
          title: Hide From Portal
          type: boolean
        id:
          description: The unique, string identifier of this miscellaneous product
          pattern: ^[\w:|-]+$
          title: ID
          type: string
        image_url:
          description: Image to be displayed of the product
          title: Image Url
          type: string
        installment_plan_options:
          items:
            additionalProperties: false
            properties:
              additional_cost:
                description: The additional cost of the installment plan
                format: double
                title: Additional Cost
                type: number
              installment_plan_id:
                description: The installment plan that this product supports
                title: Installment Plan
                type: string
              is_default:
                description: Whether this is the default installment plan option
                title: Is Default
                type: boolean
            required:
              - installment_plan_id
            type: object
          minItems: 1
          type: array
        is_active:
          description: Whether this product is active/used
          title: Is Active
          type: boolean
        member_price:
          description: The price of the product for an active member
          format: double
          title: Member Price
          type: number
        modifier_options:
          items:
            additionalProperties: false
            properties:
              ad_hoc_modifier_options:
                additionalProperties: false
                oneOf:
                  - x-required: true
                properties:
                  default_value:
                    description: The default value
                    title: Default Value
                    type: string
                  enable_character_restriction:
                    description: If true, the UI will restrict the number of characters
                    title: Enable Character Restriction
                    type: boolean
                  id:
                    description: The id of the modifier option
                    title: ID
                    type: string
                  maximum_number_of_characters:
                    description: The maximum number of characters
                    format: float
                    oneOf:
                      - x-required: true
                    title: Maximum Number Of Characters
                    type: number
                  name:
                    description: The name of the modifier option
                    title: Name
                    type: string
                  type:
                    enum:
                      - checkbox
                      - date
                      - dropdown
                      - text
                    title: Type
                    type: string
                  values:
                    items:
                      type: string
                    oneOf:
                      - x-required: true
                    title: Values
                    type: array
                required:
                  - id
                  - name
                  - type
                title: Ad Hoc Modifier Options
                type: object
              required:
                description: Whether this option is required
                title: Required
                type: boolean
              shared_modifier_options:
                additionalProperties: false
                oneOf:
                  - x-required: true
                properties:
                  shared_modifier_option_id:
                    title: Shared Modifier Option
                    type: string
                required:
                  - shared_modifier_option_id
                title: Shared Modifier Options
                type: object
              type:
                enum:
                  - ad hoc
                  - shared
                title: Type
                type: string
            type: object
          minItems: 1
          type: array
        modifier_rules:
          items:
            additionalProperties: false
            properties:
              enable_price_adjustment:
                description: >-
                  Whether or not this rule being triggered should adjust the
                  price
                title: Enable Price Adjustment
                type: boolean
              enable_weight_adjustment:
                description: >-
                  Whether or not this rule being triggered should adjust the
                  price
                title: Enable Weight Adjustment
                type: boolean
              option_id:
                description: The ID of the modifier option
                title: Option
                type: string
              price_adjustment_options:
                additionalProperties: false
                oneOf:
                  - x-required: true
                properties:
                  affects:
                    enum:
                      - both
                      - member price
                      - price
                    title: Affects
                    type: string
                  amount:
                    description: The adjustment amount
                    format: float
                    title: Amount
                    type: number
                  operation:
                    enum:
                      - add
                      - multiply
                      - subtract
                    title: Operation
                    type: string
                required:
                  - amount
                title: Price Adjustment Options
                type: object
              trigger_values:
                description: >-
                  The values that trigger this rule for dropdown/multiple
                  choice 
                items:
                  type: string
                title: Trigger Values
                type: array
              weight_adjustment_options:
                additionalProperties: false
                oneOf:
                  - x-required: true
                properties:
                  amount:
                    description: The adjustment amount
                    format: float
                    title: Amount
                    type: number
                  operation:
                    enum:
                      - add
                      - multiply
                      - subtract
                    title: Operation
                    type: string
                required:
                  - amount
                title: Weight Adjustment Options
                type: object
            required:
              - option_id
            type: object
          type: array
        name:
          description: The name of the miscellaneous product
          title: Name
          type: string
        new_until:
          description: The date/time until which this merchandise is new
          format: date-time
          title: New Until
          type: string
        notes:
          description: Notes
          title: Notes
          type: string
        portal_options:
          additionalProperties: false
          properties:
            available_from:
              description: The date from which this product should be available
              format: date-time
              title: Available From
              type: string
            available_until:
              description: The date until which this product should be available
              format: date-time
              title: Available Until
              type: string
          title: Portal Options
          type: object
        price:
          description: The price of the product
          format: double
          title: Price
          type: number
        product_confirmation_email_options:
          additionalProperties: false
          properties:
            product_confirmation_email_id:
              oneOf:
                - x-required: true
              title: Product Confirmation Email
              type: string
            product_specific_email:
              additionalProperties: false
              oneOf:
                - x-required: true
              properties:
                bcc:
                  description: Anyone that should be bcc'ed on the email
                  title: Bcc
                  type: string
                body:
                  description: The email body
                  title: Body
                  type: string
                cc:
                  description: Anyone that should be cc'ed on the email
                  title: Cc
                  type: string
                from:
                  description: From email address
                  title: From
                  type: string
                from_name:
                  description: From name
                  title: From Name
                  type: string
                reply_to:
                  description: The reply to
                  title: Reply To
                  type: string
                subject:
                  description: The email subject
                  title: Subject
                  type: string
              required:
                - body
                - subject
              title: Product Specific Email
              type: object
            type:
              enum:
                - product specific
                - shared
              title: Type
              type: string
          title: Product Confirmation Email Options
          type: object
        publish_to_portal:
          description: Whether or not this product should be available in the portal
          title: Publish To Portal
          type: boolean
        purchase_limits:
          additionalProperties: false
          properties:
            error_message:
              description: The error message to show
              title: Error Message
              type: string
            maximum:
              description: The maximum
              format: float
              title: Maximum
              type: number
            relative_time_window:
              additionalProperties: false
              description: the time window
              oneOf:
                - x-required: true
              properties:
                number:
                  description: The unit of time
                  format: float
                  minimum: 0
                  oneOf:
                    - {}
                  title: Number
                  type: number
                position:
                  description: How the unit relates to the reference date
                  enum:
                    - after
                    - before
                    - 'on'
                  title: Position
                  type: string
                relative_to:
                  enum:
                    - the beginning of the month
                    - the beginning of the quarter
                    - the beginning of the week
                    - the beginning of the year
                    - the end of the month
                    - the end of the quarter
                    - the end of the week
                    - the end of the year
                    - the reference date
                  title: Relative To
                  type: string
                unit_of_time:
                  enum:
                    - days
                    - months
                    - weeks
                    - years
                  oneOf:
                    - {}
                  title: Unit Of Time
                  type: string
              required:
                - number
                - position
                - relative_to
                - unit_of_time
              title: Relative Time Window
              type: object
            time_period:
              enum:
                - all time
                - sliding time window
              title: Time Period
              type: string
            type:
              enum:
                - per customer
              title: Type
              type: string
          required:
            - maximum
            - time_period
            - type
          title: Purchase Limits
          type: object
        purchasing_eligibility_criteria:
          title: Purchasing Eligibility Criteria
          type: object
        reorder_point:
          description: The point at which this product should be reordered
          title: Reorder Point
          type: integer
        restocking_fee:
          description: Cancellation fees associated with this product
          format: double
          title: Restocking Fee
          type: number
        sellable_from:
          description: Date/time from which this product is sellable
          format: date-time
          title: Sellable From
          type: string
        sellable_until:
          description: Date/time until which this product is sellable
          format: date-time
          title: Sellable Until
          type: string
        shippable:
          description: Whether or not this product is eligible for shipping charges
          title: Shippable
          type: boolean
        sort_order:
          description: The sort order of hte product
          format: float
          title: Sort Order
          type: number
        special_prices:
          items:
            additionalProperties: false
            properties:
              criteria:
                title: Criteria
                type: object
              enable_formula:
                description: >-
                  if set, a formula is used to calculate the price. If the
                  formula fails, the price is used
                title: Enable Formula
                type: boolean
              formula:
                description: The formula evaluated using the expr-eval npm package
                oneOf:
                  - x-required: true
                title: Formula
                type: string
              name:
                title: Name
                type: string
              price:
                format: float
                title: Price
                type: number
            required:
              - criteria
              - price
            type: object
          minItems: 1
          type: array
        sys_bulk_load_at:
          description: >-
            If this record was loaded via bulk, the timestamp when the record
            was processed
          title: Sys Bulk Load At
          type: string
        sys_bulk_load_id:
          description: If this record was loaded via bulk, the ID of the bulk load process
          title: Sys Bulk Load
          type: string
        sys_bulk_load_pk:
          description: >-
            If this record was loaded via bulk, the tenant and key of the bulk
            load process used as a partition key
          title: Sys Bulk Load Pk
          type: string
        sys_bulk_load_record_no:
          description: >-
            If this record was loaded via bulk, the record number in the source
            file
          format: float
          title: Sys Bulk Load Record No
          type: number
        sys_bulk_load_source_file:
          description: If this record was loaded via bulk, the source file
          title: Sys Bulk Load Source File
          type: string
        sys_calculated_field_error:
          description: The error associated with the calculated field
          title: Sys Calculated Field Error
          type: string
        sys_calculated_field_errors:
          items:
            additionalProperties: false
            properties:
              error:
                title: Error
                type: string
              field:
                title: Field
                type: string
            type: object
          type: array
        sys_configuration_snapshot_id:
          description: >-
            If a snapshot was restored/applies to this record, the ID of the
            snapshot
          title: Sys Configuration Snapshot
          type: string
        sys_created_at:
          description: >-
            The date/time that this record was created, expressed in ISO-8601
            date format
          format: date-time
          title: Sys Created At
          type: string
        sys_created_by_id:
          description: The ID of the user that created this record
          title: Sys Created By
          type: string
        sys_deleted_by_id:
          description: >-
            The ID of the user that deleted (or last tried to delete) this
            object
          title: Sys Deleted By
          type: string
        sys_directive:
          description: >-
            Means for passing directive information into an object processing
            logic
          title: Sys Directive
          type: string
        sys_external_id:
          description: The ID that a record has from an external system or data import
          title: Sys External
          type: string
        sys_has_files_in_s3:
          description: >-
            If true, this record has files in S3. If false, it doesnt, so no
            need to hit S3 upon deletion
          title: Sys Has Files In S3
          type: boolean
        sys_last_bulk_data_operation_id:
          description: >-
            If this record was last touched by a bulk data operation, the ID of
            that operation
          title: Sys Last Bulk Data Operation
          type: string
        sys_last_bulk_data_operation_sys_version:
          description: >-
            If this record was last touched by a bulk data operation, the
            sys_version at the time of that operation
          title: Sys Last Bulk Data Operation Sys Version
          type: string
        sys_last_modified_at:
          description: >-
            The date/time that this record record was last modified, expressed
            in ISO-8601 date format
          format: date-time
          title: Sys Last Modified At
          type: string
        sys_last_modified_by_id:
          description: The ID of the user that last modified this record
          title: Sys Last Modified By
          type: string
        sys_last_security_context:
          description: >-
            The security context of the last insert, modify, or delete performed
            on this item
          properties: {}
          title: Sys Last Security Context
          type: object
        sys_locked:
          description: If set, this record is locked and cannot be changed via the API
          title: Sys Locked
          type: boolean
        sys_snapshot_base_version:
          description: >-
            The version to use as a base when creating a configuration snapshot;
            if not set, 1 is used. Helpful when creating a sandbox
          format: float
          title: Sys Snapshot Base Version
          type: number
        sys_version:
          description: A number representing the version of this record in the database
          format: float
          title: Sys Version
          type: number
        tasks_to_generate:
          items:
            additionalProperties: false
            properties:
              assignee_type:
                enum:
                  - assignment role
                  - queue
                  - user
                title: Assignee Type
                type: string
              assignment_role_id:
                description: The assignment role that should receive the ask
                oneOf:
                  - x-required: true
                title: Assignment Role
                type: string
              description:
                description: A description
                title: Description
                type: string
              due_date_type:
                description: Whether there is a due date
                enum:
                  - none
                  - relative date
                  - specific date
                title: Due Date Type
                type: string
              name:
                description: The name of the task
                title: Name
                type: string
              notify_assignees:
                description: Notify assignee when the task is created
                title: Notify Assignees
                type: boolean
              priority:
                enum:
                  - high
                  - low
                  - normal
                  - urgent
                title: Priority
                type: string
              queue_id:
                description: The queue that should be assigned the ask
                oneOf:
                  - x-required: true
                title: Queue
                type: string
              relative_due_date:
                additionalProperties: false
                description: The date the task is due
                oneOf:
                  - x-required: true
                properties:
                  number:
                    description: The unit of time
                    format: float
                    minimum: 0
                    oneOf:
                      - {}
                    title: Number
                    type: number
                  position:
                    description: How the unit relates to the reference date
                    enum:
                      - after
                      - before
                      - 'on'
                    title: Position
                    type: string
                  relative_to:
                    enum:
                      - the beginning of the month
                      - the beginning of the quarter
                      - the beginning of the week
                      - the beginning of the year
                      - the end of the month
                      - the end of the quarter
                      - the end of the week
                      - the end of the year
                      - the reference date
                    title: Relative To
                    type: string
                  unit_of_time:
                    enum:
                      - days
                      - months
                      - weeks
                      - years
                    oneOf:
                      - {}
                    title: Unit Of Time
                    type: string
                required:
                  - number
                  - position
                  - relative_to
                  - unit_of_time
                title: Relative Due Date
                type: object
              specific_due_date:
                format: date-time
                oneOf:
                  - x-required: true
                title: Specific Due Date
                type: string
              type_id:
                description: The type of task
                title: Type
                type: string
              user_id:
                description: The user that should be assigned the ask
                oneOf:
                  - x-required: true
                title: User
                type: string
            required:
              - assignee_type
              - due_date_type
              - name
              - type_id
            type: object
          type: array
        track_inventory:
          description: Whether or not inventory on this product is tracked
          title: Track Inventory
          type: boolean
        track_inventory_by:
          enum:
            - product
            - sku
          title: Track Inventory By
          type: string
        type:
          description: The product type
          enum:
            - commerce-merchandise
          title: Type
          type: string
        variant_options:
          items:
            additionalProperties: false
            properties:
              ad_hoc_variant_options:
                additionalProperties: false
                oneOf:
                  - x-required: true
                properties:
                  default_value:
                    description: The default value
                    title: Default Value
                    type: string
                  id:
                    description: The id of the variant
                    title: ID
                    type: string
                  name:
                    description: The name of the variant
                    title: Name
                    type: string
                  type:
                    enum:
                      - dropdown
                      - radio buttons
                      - rectangle list
                      - swatch
                    title: Type
                    type: string
                  values:
                    items:
                      type: string
                    title: Values
                    type: array
                required:
                  - id
                  - name
                  - type
                title: Ad Hoc Variant Options
                type: object
              shared_variant_options:
                additionalProperties: false
                oneOf:
                  - x-required: true
                properties:
                  shared_variant_option_id:
                    title: Shared Variant Option
                    type: string
                required:
                  - shared_variant_option_id
                title: Shared Variant Options
                type: object
              type:
                enum:
                  - ad hoc
                  - shared
                title: Type
                type: string
            type: object
          minItems: 1
          type: array
        variants:
          items:
            additionalProperties: false
            properties:
              image_uri:
                description: An optional image for this variant
                title: Image Uri
                type: string
              member_price:
                description: The member price of this variant, if different than the base
                format: float
                title: Member Price
                type: number
              not_purchasable:
                description: Whether or not this is purchasable
                title: Not Purchasable
                type: boolean
              options:
                description: The list of variant options that comprise this variant
                items:
                  additionalProperties: false
                  properties:
                    option_id:
                      description: The option
                      title: Option
                      type: string
                    value:
                      description: The value
                      title: Value
                      type: string
                  required:
                    - option_id
                    - value
                  type: object
                minItems: 1
                type: array
              price:
                description: The price of this variant, if different than the base
                format: float
                title: Price
                type: number
              sku:
                description: The SKU
                title: Sku
                type: string
              weight:
                description: The weight of this variant, if different than the base
                format: float
                title: Weight
                type: number
            required:
              - options
            type: object
          type: array
        weight:
          description: The weight of the product
          format: float
          title: Weight
          type: number
      required:
        - bulk_pricing_rules
        - bundled_products
        - business_unit_id
        - coupon_codes
        - custom_pricing_options
        - id
        - installment_plan_options
        - modifier_options
        - name
        - price
        - product_confirmation_email_options
        - purchase_limits
        - special_prices
        - sys_created_at
        - sys_created_by_id
        - sys_last_modified_at
        - sys_last_modified_by_id
        - variant_options
      type: object
    MerchandisePublic:
      additionalProperties: false
      properties:
        additional_image_urls:
          description: Additional images
          items:
            type: string
          title: Additional Image Urls
          type: array
        business_unit_id:
          description: The biz unit
          title: Business Unit
          type: string
        category_ids:
          description: The categories to which this product belongs
          items:
            type: string
          title: Categories
          type: array
        date_added:
          description: The date that this product was added to inventory
          title: Date Added
          type: string
        description:
          description: Product description to be displayed on the portal
          title: Description
          type: string
        enable_special_prices:
          description: Special prices are are enabled
          title: Enable Special Prices
          type: boolean
        id:
          description: The unique identifier of the merchandise
          title: ID
          type: string
        image_url:
          description: Image to be displayed of the product
          title: Image Url
          type: string
        is_featured:
          description: Whether this product is featured
          title: Is Featured
          type: boolean
        is_new:
          description: Whether this product is new
          title: Is New
          type: boolean
        member_price:
          description: The price of the product for an active member in the store currency
          format: double
          title: Member Price
          type: number
        modifier_options:
          items:
            additionalProperties: false
            properties:
              default_value:
                description: The default value
                title: Default Value
                type: string
              enable_character_restriction:
                description: If true, the UI will restrict the number of characters
                title: Enable Character Restriction
                type: boolean
              id:
                description: The id of the modifier option
                title: ID
                type: string
              maximum_number_of_characters:
                description: The maximum number of characters
                format: float
                title: Maximum Number Of Characters
                type: number
              name:
                description: The name of the modifier option
                title: Name
                type: string
              required:
                description: Whether this option is required
                title: Required
                type: boolean
              type:
                enum:
                  - checkbox
                  - date
                  - dropdown
                  - multiple choice
                  - text
                title: Type
                type: string
              values:
                items:
                  type: string
                title: Values
                type: array
            required:
              - id
              - name
              - type
            type: object
          type: array
        name:
          description: The name of the merchandise
          title: Name
          type: string
        price:
          description: The price of the product in the store currency
          format: double
          title: Price
          type: number
        sellable_from:
          description: Date/time from which this product is sellable
          format: date-time
          title: Sellable From
          type: string
        sellable_until:
          description: Date/time until which this product is sellable
          format: date-time
          title: Sellable Until
          type: string
        sort_order:
          description: The sort order of hte product
          format: float
          title: Sort Order
          type: number
        track_inventory:
          description: Whether inventory is tracked
          title: Track Inventory
          type: boolean
        variant_options:
          items:
            additionalProperties: false
            properties:
              default_value:
                description: The default value
                title: Default Value
                type: string
              id:
                description: The id of the variant
                title: ID
                type: string
              name:
                description: The name of the variant
                title: Name
                type: string
              type:
                enum:
                  - dropdown
                  - radio buttons
                  - rectangle list
                  - swatch
                title: Type
                type: string
              values:
                items:
                  type: string
                title: Values
                type: array
            required:
              - id
              - name
              - type
            type: object
          type: array
        variants:
          items:
            additionalProperties: false
            properties:
              image_uri:
                description: An optional image for this variant
                title: Image Uri
                type: string
              member_price:
                description: The member price of this variant, if different than the base
                format: float
                title: Member Price
                type: number
              not_purchasable:
                description: Whether or not this is purchasable
                title: Not Purchasable
                type: boolean
              options:
                description: The list of variant options that comprise this variant
                items:
                  additionalProperties: false
                  properties:
                    option_id:
                      title: Option
                      type: string
                    value:
                      title: Value
                      type: string
                  type: object
                minItems: 1
                type: array
              price:
                description: The price of this variant, if different than the base
                format: float
                title: Price
                type: number
              sku:
                description: The SKU
                title: Sku
                type: string
            required:
              - options
            type: object
          type: array
      required:
        - price
      type: object
    MerchandiseSearchParameters:
      additionalProperties: false
      properties:
        category_id:
          items:
            type: string
          title: Category
          type: array
        id:
          items:
            type: string
          title: ID
          type: array
        member_price:
          items:
            format: float
            type: number
          maxItems: 2
          minItems: 2
          title: Member Price
          type: array
        price:
          items:
            format: float
            type: number
          maxItems: 2
          minItems: 2
          title: Price
          type: array
        track_inventory:
          title: Track Inventory
          type: boolean
        weight:
          items:
            format: float
            type: number
          maxItems: 2
          minItems: 2
          title: Weight
          type: array
      type: object
    MerchandiseSearchResults:
      additionalProperties: false
      properties:
        allow_back_orders:
          description: >-
            If this product is inventoried, whether or not inventories are
            allowed
          title: Allow Back Orders
          type: boolean
        allow_customer_to_choose_installment_plan:
          title: Allow Customer To Choose Installment Plan
          type: boolean
        category_ids:
          description: The categories that this merchandise is in
          items:
            type: string
          title: Categories
          type: array
        enable_bulk_pricing:
          description: Whether or not bulk pricing is enabled
          title: Enable Bulk Pricing
          type: boolean
        enable_cancellation_fees:
          title: Enable Cancellation Fees
          type: boolean
        enable_modifier_options:
          description: >-
            When sent, customers can change products with customization
            modifiers
          title: Enable Modifier Options
          type: boolean
        enable_purchasing_eligibility:
          title: Enable Purchasing Eligibility
          type: boolean
        enable_restocking_fees:
          description: Whether or not restocking fees are enabled
          title: Enable Restocking Fees
          type: boolean
        enable_variant_options:
          description: When sent, customers can change products with variant options
          title: Enable Variant Options
          type: boolean
        is_active:
          title: Is Active
          type: boolean
        member_price:
          format: float
          title: Member Price
          type: number
        new_until:
          description: The date/time until which this merchandise is new
          format: date-time
          title: New Until
          type: string
        price:
          format: float
          title: Price
          type: number
        publish_to_portal:
          title: Publish To Portal
          type: boolean
        shippable:
          description: Whether or not this product is eligible for shipping charges
          title: Shippable
          type: boolean
        track_inventory:
          title: Track Inventory
          type: boolean
        track_inventory_by:
          enum:
            - product
            - sku
          title: Track Inventory By
          type: string
        weight:
          description: The weight of the product
          format: float
          title: Weight
          type: number
      type: object
    MerchandiseShortPublic:
      additionalProperties: false
      properties:
        category_ids:
          description: The categories to which this product belongs
          items:
            type: string
          title: Categories
          type: array
        date_added:
          description: The date that this product was added to inventory
          title: Date Added
          type: string
        enable_special_prices:
          description: Special prices are are enabled
          title: Enable Special Prices
          type: boolean
        id:
          description: The unique identifier of the merchandise
          title: ID
          type: string
        image_url:
          description: Image to be displayed of the product
          title: Image Url
          type: string
        is_featured:
          description: Whether this product is featured
          title: Is Featured
          type: boolean
        is_new:
          description: Whether this product is new
          title: Is New
          type: boolean
        member_price:
          description: The price of the product for an active member in the store currency
          format: double
          title: Member Price
          type: number
        name:
          description: The name of the merchandise
          title: Name
          type: string
        price:
          description: The price of the product in the store currency
          format: double
          title: Price
          type: number
        sellable_from:
          description: Date/time from which this product is sellable
          format: date-time
          title: Sellable From
          type: string
        sellable_until:
          description: Date/time until which this product is sellable
          format: date-time
          title: Sellable Until
          type: string
        sort_order:
          description: The sort order of hte product
          format: float
          title: Sort Order
          type: number
      required:
        - price
      type: object
    Order:
      additionalProperties: false
      properties:
        additional_email_confirmation_recipients:
          description: Additional emails to send confirmation
          items:
            type: string
          title: Additional Email Confirmation Recipients
          type: array
        additional_payments:
          items:
            additionalProperties: false
            properties:
              line_item_ids:
                description: >-
                  The order line items that this additional payment should apply
                  to
                items:
                  type: string
                title: Line Items
                type: array
              payment_info:
                additionalProperties: false
                properties:
                  electronic_payment_info:
                    additionalProperties: false
                    description: The electronic payment/card info
                    oneOf:
                      - x-required: true
                    properties:
                      card_expiration:
                        description: The card expiration
                        format: date
                        title: Card Expiration
                        type: string
                      card_type:
                        description: >-
                          The type of card being used, or CHECK if electronic
                          check
                        enum:
                          - american express
                          - discover
                          - electronic check
                          - mastercard
                          - other
                          - visa
                        title: Card Type
                        type: string
                      merchant_account_id:
                        description: The merchant account to use for this payment
                        title: Merchant Account
                        type: string
                      merchant_account_tokens:
                        items:
                          additionalProperties: false
                          properties:
                            merchant_account_id:
                              description: The merchant account id
                              title: Merchant Account
                              type: string
                            token:
                              description: >-
                                The token representing the card/electronic check
                                info
                              title: Token
                              type: string
                          required:
                            - merchant_account_id
                            - token
                          type: object
                        minItems: 1
                        type: array
                      payment_account:
                        description: The masked payment account information
                        title: Payment Account
                        type: string
                      payment_origin:
                        description: Whether or not this is a saved payment method
                        enum:
                          - ad hoc
                          - saved
                          - single token
                        title: Payment Origin
                        type: string
                      token:
                        description: For integrated payments, the single token
                        title: Token
                        type: string
                    required:
                      - payment_origin
                    title: Electronic Payment Info
                    type: object
                  non_electronic_payment_info:
                    additionalProperties: false
                    description: Payment info for non-electronic payments
                    properties:
                      bank_account_id:
                        description: The bank account being used for the order
                        title: Bank Account
                        type: string
                      reference_number:
                        description: The reference number for the payment, if applicable
                        title: Reference Number
                        type: string
                    title: Non Electronic Payment Info
                    type: object
                  type:
                    description: The type of payment
                    enum:
                      - ach
                      - cash
                      - cashiers check
                      - check
                      - credit card
                      - electronic check
                      - money order
                      - offline credit card
                      - payroll deduction
                      - purchase order
                      - store credit
                      - wire transfer
                    title: Type
                    type: string
                required:
                  - type
                title: Payment Info
                type: object
            type: object
          minItems: 1
          type: array
        amount_paid:
          description: Amount paid on the order
          format: double
          title: Amount Paid
          type: number
        amount_pending_capture:
          description: The amount that has been authorized, but not yet captured
          format: double
          title: Amount Pending Capture
          type: number
        amount_refunded:
          description: Amount refunded on the order
          format: double
          title: Amount Refunded
          type: number
        balance_due:
          description: Balance due on the order
          format: double
          title: Balance Due
          type: number
        base_currency_code:
          title: Base Currency Code
          type: string
        base_currency_symbol:
          title: Base Currency Symbol
          type: string
        batch_id:
          description: The batch the order should be in
          title: Batch
          type: string
        bill_parent_organization:
          description: If true, the parent organization is billed
          title: Bill Parent Organization
          type: boolean
        bill_to_contact_id:
          description: The contact being billed
          title: Bill To Contact
          type: string
        bill_to_organization_id:
          description: The organization being billed
          title: Bill To Organization
          type: string
        bill_to_type:
          description: The type of customer being billed
          enum:
            - contact
            - organization
          title: Bill To Type
          type: string
        billing_address:
          $ref: '#/components/schemas/Address'
        billing_run_action_id:
          description: >-
            The billing run action that created this order; we track it here
            only to pass it back through the billing service
          title: Billing Run Action
          type: string
        billing_run_id:
          description: 'If this is part of a billing run, the ID '
          title: Billing Run
          type: string
        billing_run_service:
          description: >-
            If this order was generated by a billing run, the service that
            initiated it
          title: Billing Run Service
          type: string
        business_unit_id:
          description: The business unit of the order
          title: Business Unit
          type: string
        copy_shipping_info_from_billing_info:
          description: >-
            Indicates that the shipping information was copied from the billing
            info. For reporting use only
          title: Copy Shipping Info From Billing Info
          type: boolean
        coupons:
          items:
            additionalProperties: false
            properties:
              coupon_code_id:
                description: The coupon code
                title: Coupon Code
                type: string
              coupon_id:
                description: The ID of the coupon backing the coupon code
                title: Coupon
                type: string
              coupon_type:
                description: The type of coupon represented by the coupon code
                title: Coupon Type
                type: string
              discount:
                description: The amount that was discounted
                format: double
                title: Discount
                type: number
              order_line_item_ids:
                description: The line items that the coupon acted on
                items:
                  type: string
                title: Order Line Items
                type: array
              retroactive_application_date:
                description: If applied retroactively, the date of application
                format: date-time
                title: Retroactive Application Date
                type: string
            required:
              - coupon_code_id
            type: object
          type: array
        credit_usages:
          description: Credits to use when paying the invoices on this order
          items:
            additionalProperties: false
            properties:
              amount_to_use:
                description: The amount of credit to apply
                format: double
                title: Amount To Use
                type: number
              credit_id:
                description: The ID of the credit to use
                title: Credit
                type: string
            required:
              - amount_to_use
              - credit_id
            type: object
          type: array
        currency_code:
          description: The order currency
          enum:
            - AED
            - AFN
            - ALL
            - AMD
            - ANG
            - AOA
            - ARS
            - AUD
            - AWG
            - AZN
            - BAM
            - BBD
            - BDT
            - BGN
            - BHD
            - BIF
            - BMD
            - BND
            - BOB
            - BRL
            - BSD
            - BTN
            - BWP
            - BYR
            - BZD
            - CAD
            - CDF
            - CHF
            - CLP
            - CNY
            - COP
            - CRC
            - CUC
            - CVE
            - CZK
            - DJF
            - DKK
            - DOP
            - DZD
            - EEK
            - EGP
            - ERN
            - ETB
            - EUR
            - FJD
            - FKP
            - GBP
            - GEL
            - GHS
            - GIP
            - GMD
            - GNF
            - GQE
            - GTQ
            - GYD
            - HKD
            - HNL
            - HRK
            - HTG
            - HUF
            - IDR
            - ILS
            - INR
            - IQD
            - IRR
            - ISK
            - JMD
            - JOD
            - JPY
            - KES
            - KGS
            - KHR
            - KMF
            - KPW
            - KRW
            - KWD
            - KYD
            - KZT
            - LAK
            - LBP
            - LKR
            - LRD
            - LSL
            - LTL
            - LVL
            - LYD
            - MAD
            - MDL
            - MGA
            - MKD
            - MMK
            - MNT
            - MOP
            - MRO
            - MUR
            - MVR
            - MWK
            - MXN
            - MYR
            - MZM
            - NAD
            - NGN
            - NIO
            - NOK
            - NPR
            - NZD
            - OMR
            - PAB
            - PEN
            - PGK
            - PHP
            - PKR
            - PLN
            - PYG
            - QAR
            - RON
            - RSD
            - RUB
            - SAR
            - SBD
            - SCR
            - SDG
            - SEK
            - SGD
            - SHP
            - SLL
            - SOS
            - SRD
            - SYP
            - SZL
            - THB
            - TJS
            - TMT
            - TND
            - TRY
            - TTD
            - TWD
            - TZS
            - UAH
            - UGX
            - USD
            - UYU
            - UZS
            - VEB
            - VND
            - VUV
            - WST
            - XAF
            - XCD
            - XDR
            - XOF
            - XPF
            - YER
            - ZAR
            - ZMK
            - ZWR
          title: Currency Code
          type: string
        currency_symbol:
          description: The currency symbol
          title: Currency Symbol
          type: string
        custom_field_values:
          items:
            $ref: '#/components/schemas/CustomFieldValue'
          title: Custom Field Values
          type: array
        custom_metadata:
          additionalProperties: false
          description: >-
            Custom metadata that can be used by custom order generation
            processes for hyper-customized order & invoice forms
          properties: {}
          title: Custom Metadata
          type: object
        date:
          description: The date of the order
          title: Date
          type: string
        default_merchant_account_id:
          description: The default, calculated merchant account id
          title: Default Merchant Account
          type: string
        discounts:
          description: Amount of discounts for the order
          format: double
          title: Discounts
          type: number
        do_not_apply_open_credits:
          description: If set, open credits are not applied to this order
          title: Do Not Apply Open Credits
          type: boolean
        duplicate_prevention_key:
          description: Temporary value used to prevent duplicate submissions
          title: Duplicate Prevention Key
          type: string
        event_id:
          description: The event
          title: Event
          type: string
        exchange_rate:
          description: The exchange rate, if applicable
          format: double
          title: Exchange Rate
          type: number
        expiration_date:
          description: >-
            The deadline after which this order is no longer valid. Used by
            generateOrder routines to restrict how long before this order can
            not longer be processes. Example:
            exhibitor-registration.generateOrder
          format: date-time
          title: Expiration Date
          type: string
        failure_notice_id:
          description: >-
            The billing notice to run when this order succeeds; we track it here
            only to pass it back through the billing service
          title: Failure Notice
          type: string
        id:
          description: The unique, string identifier of this order
          pattern: ^[\w|-]+$
          title: ID
          type: string
        installment_schedule_id:
          description: If this is tied to an installment schedule
          title: Installment Schedule
          type: string
        invoice_terms_id:
          description: The terms to be used for generating the invoice
          title: Invoice Terms
          type: string
        line_items:
          items:
            additionalProperties: false
            properties:
              amount_paid:
                description: Amount paid on the order item
                format: double
                oneOf:
                  - x-required: true
                title: Amount Paid
                type: number
              amount_pending_capture:
                description: >-
                  The amount that has been authorized, but not yet captured on
                  this item
                format: double
                oneOf:
                  - x-required: true
                title: Amount Pending Capture
                type: number
              amount_refunded:
                description: Amount refunded on the order  item
                format: double
                oneOf:
                  - x-required: true
                title: Amount Refunded
                type: number
              amount_to_pay_upon_creation:
                description: The amount of this item that should be paid immediately
                format: double
                oneOf:
                  - x-required: true
                title: Amount To Pay Upon Creation
                type: number
              balance_due:
                description: Balance due on the order item
                format: double
                oneOf:
                  - x-required: true
                title: Balance Due
                type: number
              bundled_product_1:
                additionalProperties: false
                properties:
                  amount:
                    description: The amount of the bundled product
                    format: float
                    title: Amount
                    type: number
                  product_id:
                    description: The bundled product ID
                    title: Product
                    type: string
                  product_type:
                    description: The bundled product type
                    title: Product Type
                    type: string
                required:
                  - amount
                  - product_id
                  - product_type
                title: Bundled Product 1
                type: object
              bundled_product_2:
                additionalProperties: false
                properties:
                  amount:
                    description: The amount of the bundled product
                    format: float
                    title: Amount
                    type: number
                  product_id:
                    description: The bundled product ID
                    title: Product
                    type: string
                  product_type:
                    description: The bundled product type
                    title: Product Type
                    type: string
                required:
                  - amount
                  - product_id
                  - product_type
                title: Bundled Product 2
                type: object
              description:
                description: Optional description of the line item
                title: Description
                type: string
              discounts:
                description: Any discounts set on the order item
                format: double
                oneOf:
                  - x-required: true
                title: Discounts
                type: number
              has_inline_bundled_products:
                description: If true, this line item has inline products bundled with it
                title: Has Inline Bundled Products
                type: boolean
              inline_bundled_products:
                items:
                  additionalProperties: false
                  properties:
                    amount:
                      description: The amount of the bundled product
                      format: float
                      title: Amount
                      type: number
                    product_id:
                      description: The bundled product ID
                      title: Product
                      type: string
                    product_type:
                      description: The bundled product type
                      title: Product Type
                      type: string
                  required:
                    - amount
                    - product_id
                    - product_type
                  type: object
                minItems: 1
                oneOf:
                  - x-required: true
                type: array
              installment_plan_id:
                description: The installment plan to use for this item
                oneOf:
                  - x-required: true
                title: Installment Plan
                type: string
              installment_schedule_type:
                description: If creating an installment plan, the type to create
                enum:
                  - based on installment plan
                  - perpetual
                title: Installment Schedule Type
                type: string
              modifier_options:
                items:
                  additionalProperties: false
                  properties:
                    option_id:
                      description: The modifier option ID
                      title: Option
                      type: string
                    option_name:
                      title: Option Name
                      type: string
                    value:
                      description: The value of the option
                      title: Value
                      type: string
                  required:
                    - option_id
                  type: object
                type: array
              optional:
                description: Whether or not this is an "optional" item
                title: Optional
                type: boolean
              order_line_item_id:
                description: A unique identifier for the order item
                oneOf:
                  - x-required: true
                title: Order Line Item
                type: string
              override_ship_to_contact_id:
                description: The contact being shipped to
                oneOf:
                  - x-required: true
                title: Override Ship To Contact
                type: string
              override_ship_to_organization_id:
                description: The organization being shipped to
                oneOf:
                  - x-required: true
                title: Override Ship To Organization
                type: string
              override_ship_to_type:
                description: The type of customer being shipped to
                enum:
                  - contact
                  - organization
                title: Override Ship To Type
                type: string
              parent_line_item_id:
                description: If this is a linked item, the parent linkage
                title: Parent Line Item
                type: string
              parent_order_line_item_id:
                description: The parent item, if applicable
                title: Parent Order Line Item
                type: string
              payload:
                additionalProperties: false
                description: >-
                  Any optional order payload for processing; used by some
                  fulfillment processes (like event registration modification)
                  to support transient objects
                properties: {}
                title: Payload
                type: object
              payload_id:
                description: >-
                  Product specific payload used by the product service to
                  process/fulfill the order
                title: Payload
                type: string
              perpetual_installment_schedule_options:
                additionalProperties: false
                oneOf:
                  - x-required: true
                properties:
                  end_date:
                    description: Optional end date
                    title: End Date
                    type: string
                  number_of_units:
                    description: Number of units
                    format: float
                    minimum: 1
                    title: Number Of Units
                    type: number
                  unit_of_time:
                    enum:
                      - months
                      - quarters
                      - weeks
                      - years
                    title: Unit Of Time
                    type: string
                required:
                  - number_of_units
                  - unit_of_time
                title: Perpetual Installment Schedule Options
                type: object
              product_id:
                description: The id of the product
                title: Product
                type: string
              product_type:
                description: The type of product
                title: Product Type
                type: string
              quantity:
                description: The quantity of the order item
                title: Quantity
                type: integer
              quantity_available_for_cancellation:
                description: The quantity of the order item that can be cancelled
                oneOf:
                  - x-required: true
                title: Quantity Available For Cancellation
                type: integer
              quantity_available_for_return:
                description: The quantity of the order item that can be returned
                oneOf:
                  - x-required: true
                title: Quantity Available For Return
                type: integer
              quantity_cancelled:
                description: The quantity of the order item that has been cancelled
                oneOf:
                  - x-required: true
                title: Quantity Cancelled
                type: integer
              quantity_pending_return:
                description: The quantity of the order item that is pending return
                oneOf:
                  - x-required: true
                title: Quantity Pending Return
                type: integer
              quantity_returned:
                description: The quantity of the order item that has been returned
                oneOf:
                  - x-required: true
                title: Quantity Returned
                type: integer
              quantity_shipped:
                description: The quantity of the order item that has been shipped
                oneOf:
                  - x-required: true
                title: Quantity Shipped
                type: integer
              quantity_to_be_shipped:
                description: The quantity that is available to be shipped
                title: Quantity To Be Shipped
                type: integer
              related_record_id:
                description: The record related to this order
                title: Related Record
                type: string
              related_record_type:
                description: If theres a record related to this order, list it here
                title: Related Record Type
                type: string
              related_transactions:
                items:
                  additionalProperties: false
                  properties:
                    amount:
                      description: The amount applied
                      format: double
                      title: Amount
                      type: number
                    date:
                      description: The date/time of the transaction
                      format: date-time
                      title: Date
                      type: string
                    transaction_id:
                      description: The id of the transaction
                      title: Transaction
                      type: string
                    transaction_line_item_id:
                      description: The line item id of the transaction
                      title: Transaction Line Item
                      type: string
                    transaction_number:
                      description: The number of the transaction
                      format: float
                      title: Transaction Number
                      type: number
                    type:
                      enum:
                        - cancellation
                        - credit
                        - credit memo
                        - credit usage
                        - debit memo
                        - invoice
                        - payment
                        - refund
                        - return
                        - shipment
                        - write off
                      title: Type
                      type: string
                  required:
                    - amount
                    - date
                    - transaction_id
                    - transaction_line_item_id
                    - transaction_number
                  type: object
                type: array
              shippable:
                description: Whether or not this item needs to be shipped
                title: Shippable
                type: boolean
              sku:
                description: The SKU of the product, if applicable
                title: Sku
                type: string
              special_instructions:
                description: Any special instructions for this item
                title: Special Instructions
                type: string
              status:
                description: The order item status
                enum:
                  - awaiting payment
                  - awaiting pickup
                  - awaiting shipping
                  - cancelled
                  - completed
                  - disputed
                  - open
                  - partially shipped
                  - returned
                  - shipped
                  - void
                oneOf:
                  - x-required: true
                title: Status
                type: string
              taxes:
                description: Any taxes set on the order item
                format: double
                oneOf:
                  - x-required: true
                title: Taxes
                type: number
              total:
                description: Total amount of the order  item
                format: double
                oneOf:
                  - x-required: true
                title: Total
                type: number
              total_in_base_currency:
                description: Total amount of the order
                format: double
                oneOf:
                  - x-required: true
                title: Total In Base Currency
                type: number
              type:
                description: The type of order item
                enum:
                  - bundled product
                  - cancellation
                  - credit card processing fee
                  - discount
                  - inline bundled product
                  - item
                  - shipping
                  - taxes
                oneOf:
                  - x-required: true
                title: Type
                type: string
              unit_price:
                description: The unit price of the item
                format: double
                oneOf:
                  - x-required: true
                title: Unit Price
                type: number
              variant_options:
                items:
                  additionalProperties: false
                  properties:
                    option_id:
                      description: The variant option ID
                      title: Option
                      type: string
                    option_name:
                      title: Option Name
                      type: string
                    value:
                      description: The value of the option
                      title: Value
                      type: string
                  required:
                    - option_id
                  type: object
                type: array
              weight:
                description: The weight of this item
                format: double
                title: Weight
                type: number
            required:
              - product_id
              - product_type
            type: object
          minItems: 1
          type: array
        memo:
          description: Additional information for the order
          title: Memo
          type: string
        notes:
          description: Notes on the order
          title: Notes
          type: string
        number:
          description: The number of the order
          title: Number
          type: integer
        override_order_date:
          description: If true, the system should override the order date
          title: Override Order Date
          type: boolean
        pay_for_credit_card_processing_fees:
          description: If set, this order should be charged credit card processing fees
          title: Pay For Credit Card Processing Fees
          type: boolean
        pay_using_multiple_methods:
          description: If set, the order will be paid using more than one payment method
          title: Pay Using Multiple Methods
          type: boolean
        payload:
          additionalProperties: false
          description: >-
            Any optional order payload for processing; used by some fulfillment
            processes (like fundraising) to support transient objects
          properties: {}
          title: Payload
          type: object
        payment_info:
          additionalProperties: false
          properties:
            electronic_payment_info:
              additionalProperties: false
              description: The electronic payment/card info
              oneOf:
                - x-required: true
              properties:
                card_expiration:
                  description: The card expiration
                  format: date
                  title: Card Expiration
                  type: string
                card_type:
                  description: The type of card being used, or CHECK if electronic check
                  enum:
                    - american express
                    - discover
                    - electronic check
                    - mastercard
                    - other
                    - visa
                  title: Card Type
                  type: string
                merchant_account_id:
                  description: The merchant account to use for this payment
                  title: Merchant Account
                  type: string
                merchant_account_tokens:
                  items:
                    additionalProperties: false
                    properties:
                      merchant_account_id:
                        description: The merchant account id
                        title: Merchant Account
                        type: string
                      token:
                        description: The token representing the card/electronic check info
                        title: Token
                        type: string
                    required:
                      - merchant_account_id
                      - token
                    type: object
                  minItems: 1
                  type: array
                payment_account:
                  description: The masked payment account information
                  title: Payment Account
                  type: string
                payment_origin:
                  description: Whether or not this is a saved payment method
                  enum:
                    - ad hoc
                    - saved
                    - single token
                  title: Payment Origin
                  type: string
                token:
                  description: For integrated payments, the single token
                  title: Token
                  type: string
              required:
                - payment_origin
              title: Electronic Payment Info
              type: object
            non_electronic_payment_info:
              additionalProperties: false
              description: Payment info for non-electronic payments
              properties:
                bank_account_id:
                  description: The bank account being used for the order
                  title: Bank Account
                  type: string
                reference_number:
                  description: The reference number for the payment, if applicable
                  title: Reference Number
                  type: string
              title: Non Electronic Payment Info
              type: object
            type:
              description: The type of payment
              enum:
                - ach
                - cash
                - cashiers check
                - check
                - credit card
                - electronic check
                - money order
                - offline credit card
                - payroll deduction
                - purchase order
                - store credit
                - wire transfer
              title: Type
              type: string
          required:
            - type
          title: Payment Info
          type: object
        payment_method:
          description: For reporting use only, the payment method of this order
          enum:
            - ach
            - cash
            - cashiers check
            - check
            - credit card
            - electronic check
            - money order
            - none
            - offline credit card
            - payroll deduction
            - purchase order
            - store credit
            - wire transfer
          title: Payment Method
          type: string
        preview_id:
          description: The caching key to use during preview
          title: Preview
          type: string
        process_id:
          description: >-
            If a process was used to create this order, that process ID is
            listed here
          title: Process
          type: string
        purchase_order_number:
          description: The customer P.O. number
          title: Purchase Order Number
          type: string
        send_email_confirmation_to_customer:
          description: >-
            Whether or not to send an email confirmation to the bill to and ship
            to
          title: Send Email Confirmation To Customer
          type: boolean
        ship_to_contact_id:
          description: The contact being shipped to
          title: Ship To Contact
          type: string
        ship_to_name:
          description: The addressee
          title: Ship To Name
          type: string
        ship_to_organization_id:
          description: The organization being shipped to
          title: Ship To Organization
          type: string
        ship_to_type:
          description: The type of customer being shipped to
          enum:
            - contact
            - organization
          title: Ship To Type
          type: string
        shippable:
          description: Whether or not this order needs to be shipped
          title: Shippable
          type: boolean
        shipping_address:
          $ref: '#/components/schemas/Address'
        shipping_charges:
          description: Shipping charges for the order
          format: double
          title: Shipping Charges
          type: number
        shipping_method_id:
          description: The ID of the shipping method for this order
          title: Shipping Method
          type: string
        shipping_method_name:
          description: The name of the shipping method for this order
          title: Shipping Method Name
          type: string
        shipping_method_type:
          description: The type of shipping method
          enum:
            - flat rate
            - free
            - pickup
            - ship by
            - ups
          title: Shipping Method Type
          type: string
        shipping_zone_id:
          description: The id of the shipping zone
          title: Shipping Zone
          type: string
        special_instructions:
          description: Any special instructions for this order
          title: Special Instructions
          type: string
        status:
          description: The order status
          enum:
            - awaiting payment
            - awaiting pickup
            - awaiting shipping
            - cancelled
            - completed
            - disputed
            - open
            - partially shipped
            - returned
            - shipped
            - void
          title: Status
          type: string
        store_id:
          description: The online store
          title: Store
          type: string
        submission_date:
          description: The date and time the order was actually submitted
          format: date-time
          title: Submission Date
          type: string
        subtotal:
          description: Order subtotal before taxes/shipping/discounts
          format: double
          title: Subtotal
          type: number
        success_notice_id:
          description: >-
            The billing notice to run when this order succeeds; we track it here
            only to pass it back through the billing service
          title: Success Notice
          type: string
        sys_bulk_load_at:
          description: >-
            If this record was loaded via bulk, the timestamp when the record
            was processed
          title: Sys Bulk Load At
          type: string
        sys_bulk_load_id:
          description: If this record was loaded via bulk, the ID of the bulk load process
          title: Sys Bulk Load
          type: string
        sys_bulk_load_pk:
          description: >-
            If this record was loaded via bulk, the tenant and key of the bulk
            load process used as a partition key
          title: Sys Bulk Load Pk
          type: string
        sys_bulk_load_record_no:
          description: >-
            If this record was loaded via bulk, the record number in the source
            file
          format: float
          title: Sys Bulk Load Record No
          type: number
        sys_bulk_load_source_file:
          description: If this record was loaded via bulk, the source file
          title: Sys Bulk Load Source File
          type: string
        sys_calculated_field_error:
          description: The error associated with the calculated field
          title: Sys Calculated Field Error
          type: string
        sys_calculated_field_errors:
          items:
            additionalProperties: false
            properties:
              error:
                title: Error
                type: string
              field:
                title: Field
                type: string
            type: object
          type: array
        sys_configuration_snapshot_id:
          description: >-
            If a snapshot was restored/applies to this record, the ID of the
            snapshot
          title: Sys Configuration Snapshot
          type: string
        sys_created_at:
          description: >-
            The date/time that this record was created, expressed in ISO-8601
            date format
          format: date-time
          title: Sys Created At
          type: string
        sys_created_by_id:
          description: The ID of the user that created this record
          title: Sys Created By
          type: string
        sys_deleted_by_id:
          description: >-
            The ID of the user that deleted (or last tried to delete) this
            object
          title: Sys Deleted By
          type: string
        sys_directive:
          description: >-
            Means for passing directive information into an object processing
            logic
          title: Sys Directive
          type: string
        sys_external_id:
          description: The ID that a record has from an external system or data import
          title: Sys External
          type: string
        sys_has_files_in_s3:
          description: >-
            If true, this record has files in S3. If false, it doesnt, so no
            need to hit S3 upon deletion
          title: Sys Has Files In S3
          type: boolean
        sys_last_bulk_data_operation_id:
          description: >-
            If this record was last touched by a bulk data operation, the ID of
            that operation
          title: Sys Last Bulk Data Operation
          type: string
        sys_last_bulk_data_operation_sys_version:
          description: >-
            If this record was last touched by a bulk data operation, the
            sys_version at the time of that operation
          title: Sys Last Bulk Data Operation Sys Version
          type: string
        sys_last_modified_at:
          description: >-
            The date/time that this record record was last modified, expressed
            in ISO-8601 date format
          format: date-time
          title: Sys Last Modified At
          type: string
        sys_last_modified_by_id:
          description: The ID of the user that last modified this record
          title: Sys Last Modified By
          type: string
        sys_last_security_context:
          description: >-
            The security context of the last insert, modify, or delete performed
            on this item
          properties: {}
          title: Sys Last Security Context
          type: object
        sys_locked:
          description: If set, this record is locked and cannot be changed via the API
          title: Sys Locked
          type: boolean
        sys_shippable_status:
          description: System property - do not use
          title: Sys Shippable Status
          type: string
        sys_snapshot_base_version:
          description: >-
            The version to use as a base when creating a configuration snapshot;
            if not set, 1 is used. Helpful when creating a sandbox
          format: float
          title: Sys Snapshot Base Version
          type: number
        sys_version:
          description: A number representing the version of this record in the database
          format: float
          title: Sys Version
          type: number
        taxes:
          description: Taxes associated with the order
          format: double
          title: Taxes
          type: number
        total:
          description: Total amount of the order
          format: double
          title: Total
          type: number
        total_in_base_currency:
          description: Total amount of the order
          format: double
          title: Total In Base Currency
          type: number
        total_weight:
          description: The total weight of the order
          format: double
          title: Total Weight
          type: number
        type:
          description: The type of order
          enum:
            - advertising insertion order
            - award application
            - career center
            - certification application
            - certification course registration
            - certification exam registration
            - donation form
            - event registration
            - exhibitor registration
            - fundraising gift
            - fundraising pledge
            - group membership
            - legacy
            - membership
            - online store
            - preview
            - sponsorship
            - subscription
          title: Type
          type: string
        use_pro_forma_invoices:
          description: Set if the invoices for the order should be pro forma
          title: Use Pro Forma Invoices
          type: boolean
      required:
        - additional_payments
        - amount_paid
        - amount_pending_capture
        - amount_refunded
        - balance_due
        - bill_to_contact_id
        - bill_to_organization_id
        - bill_to_type
        - discounts
        - event_id
        - id
        - line_items
        - ship_to_contact_id
        - ship_to_organization_id
        - ship_to_type
        - shipping_charges
        - status
        - store_id
        - subtotal
        - sys_created_at
        - sys_created_by_id
        - sys_last_modified_at
        - sys_last_modified_by_id
        - taxes
        - total
        - total_in_base_currency
      type: object
    OrderOverrideManifest:
      additionalProperties: false
      properties:
        line_items:
          items:
            additionalProperties: false
            properties:
              order_line_item_id:
                description: The line item
                title: Order Line Item
                type: string
              override_quantity:
                description: The overridden quantity
                format: float
                title: Override Quantity
                type: number
              override_total:
                description: The overridden total
                format: double
                title: Override Total
                type: number
              override_unit_price:
                description: The overridden unit price
                format: double
                title: Override Unit Price
                type: number
            required:
              - order_line_item_id
            type: object
          type: array
      type: object
    OrderPreviewManifest:
      additionalProperties: false
      properties:
        additional_payments_due_at_checkout:
          description: >-
            If this order has split payments, these are the additional payments
            due
          format: double
          title: Additional Payments Due At Checkout
          type: number
        errors:
          description: Any processing-wide errors
          items:
            additionalProperties: false
            properties:
              code:
                description: A code for the error
                enum:
                  - INVALID_BATCH
                  - INVALID_INSTALLMENT_PLAN
                  - ITEM_SOLD_OUT
                  - NO_DEFAULT_SHIPPING_COST
                  - NO_DEFAULT_SHIPPING_PRODUCT
                  - NO_SHIPPING_ADDRESS
                  - NO_SHIPPING_METHOD_SELECTED
                  - NO_SHIPPING_ZONE
                  - NO_TAX_PRODUCT
                title: Code
                type: string
              message:
                description: A message describing the error
                title: Message
                type: string
              order_line_item_id:
                title: Order Line Item
                type: string
            required:
              - message
            type: object
          type: array
        open_credit_balance:
          description: The balance of open credits avaialble to this order
          format: double
          title: Open Credit Balance
          type: number
        open_credits:
          items:
            additionalProperties: false
            properties:
              amount_available:
                format: double
                title: Amount Available
                type: number
              currency_code:
                title: Currency Code
                type: string
              date:
                format: date
                title: Date
                type: string
              id:
                title: ID
                type: string
              number:
                format: float
                title: Number
                type: number
            type: object
          type: array
        payments_due:
          items:
            additionalProperties: false
            properties:
              amount_due:
                format: double
                title: Amount Due
                type: number
              merchant_account_id:
                title: Merchant Account
                type: string
            required:
              - amount_due
              - merchant_account_id
            type: object
          type: array
        primary_amount_due_at_checkout:
          description: The amount due at checkout for primary payment
          format: double
          title: Primary Amount Due At Checkout
          type: number
        product_availability:
          items:
            additionalProperties: false
            properties:
              order_line_item_id:
                title: Order Line Item
                type: string
              status:
                enum:
                  - BACKORDER
                  - OK
                  - SOLD_OUT
                title: Status
                type: string
            required:
              - order_line_item_id
            type: object
          type: array
        shipping_options:
          items:
            additionalProperties: false
            properties:
              cost:
                description: The cost of the option
                format: double
                title: Cost
                type: number
              display_order:
                format: float
                title: Display Order
                type: number
              do_not_show_in_portal:
                title: Do Not Show In Portal
                type: boolean
              id:
                description: The id of the option
                title: ID
                type: string
              name:
                description: Name of the option
                title: Name
                type: string
            required:
              - cost
              - id
              - name
            type: object
          type: array
        total_amount_due_at_checkout:
          description: The total amount due at the time of checkout
          format: double
          title: Total Amount Due At Checkout
          type: number
      type: object
    OrderPreviewResponse:
      properties:
        line_item_mappings:
          type: object
        manifest:
          $ref: '#/components/schemas/OrderPreviewManifest'
        order:
          $ref: '#/components/schemas/Order'
        products:
          items:
            type: object
          type: array
      type: object
    OrderSearchParameters:
      additionalProperties: false
      properties:
        amount_paid:
          items:
            format: float
            type: number
          maxItems: 2
          minItems: 2
          title: Amount Paid
          type: array
        balance_due:
          items:
            format: float
            type: number
          maxItems: 2
          minItems: 2
          title: Balance Due
          type: array
        bill_to_contact_id:
          title: Bill To Contact
          type: string
        bill_to_organization_id:
          title: Bill To Organization
          type: string
        bill_to_type:
          enum:
            - contact
            - organization
          title: Bill To Type
          type: string
        date:
          items:
            type: string
          maxItems: 2
          minItems: 2
          title: Date
          type: array
        discounts:
          items:
            format: float
            type: number
          maxItems: 2
          minItems: 2
          title: Discounts
          type: array
        id:
          items:
            type: string
          title: ID
          type: array
        number:
          items:
            format: float
            type: number
          maxItems: 2
          minItems: 2
          title: Number
          type: array
        purchase_order_number:
          items:
            type: string
          title: Purchase Order Number
          type: array
        ship_to_contact_id:
          title: Ship To Contact
          type: string
        ship_to_organization_id:
          title: Ship To Organization
          type: string
        ship_to_type:
          enum:
            - contact
            - organization
          title: Ship To Type
          type: string
        shipping_method_name:
          items:
            type: string
          title: Shipping Method Name
          type: array
        status:
          items:
            type: string
          title: Status
          type: array
        total:
          items:
            format: float
            type: number
          maxItems: 2
          minItems: 2
          title: Total
          type: array
        total_weight:
          items:
            format: float
            type: number
          maxItems: 2
          minItems: 2
          title: Total Weight
          type: array
        type:
          items:
            type: string
          title: Type
          type: array
      type: object
    OrderSearchResults:
      additionalProperties: false
      properties:
        amount_paid:
          format: float
          title: Amount Paid
          type: number
        balance_due:
          format: float
          title: Balance Due
          type: number
        bill_to_contact_id:
          title: Bill To Contact
          type: string
        bill_to_organization_id:
          title: Bill To Organization
          type: string
        bill_to_type:
          enum:
            - contact
            - organization
          title: Bill To Type
          type: string
        date:
          title: Date
          type: string
        discounts:
          format: float
          title: Discounts
          type: number
        id:
          title: ID
          type: string
        ids:
          description: ID
          title: Ids
          type: string
        number:
          format: float
          title: Number
          type: number
        purchase_order_number:
          title: Purchase Order Number
          type: string
        ship_to_contact_id:
          title: Ship To Contact
          type: string
        ship_to_organization_id:
          title: Ship To Organization
          type: string
        ship_to_type:
          enum:
            - contact
            - organization
          title: Ship To Type
          type: string
        shipping_method_name:
          title: Shipping Method Name
          type: string
        status:
          title: Status
          type: string
        total:
          format: float
          title: Total
          type: number
        total_weight:
          format: float
          title: Total Weight
          type: number
        type:
          title: Type
          type: string
      type: object
    OrderWithOverride:
      properties:
        order:
          $ref: '#/components/schemas/Order'
        override_manifest:
          $ref: '#/components/schemas/OrderOverrideManifest'
      type: object
    PagedMerchandiseSearchResults:
      properties:
        Items:
          items:
            $ref: '#/components/schemas/MerchandiseSearchResults'
          type: array
        LastEvaluatedKey:
          type: string
      type: object
    PagedOrderSearchResults:
      properties:
        Items:
          items:
            $ref: '#/components/schemas/OrderSearchResults'
          type: array
        LastEvaluatedKey:
          type: string
      type: object
    PatchDirective:
      additionalProperties: false
      properties:
        op:
          description: The operation
          enum:
            - add
            - copy
            - move
            - remove
            - replace
            - test
          title: Op
          type: string
        path:
          description: The JSON path
          title: Path
          type: string
        value:
          title: Value
          type: string
      required:
        - op
        - path
      type: object
    PreviewEmailRequest:
      additionalProperties: false
      properties:
        cancellation_id:
          title: Cancellation
          type: string
        coupon_id:
          title: Coupon
          type: string
        coupon_type:
          title: Coupon Type
          type: string
        destination_email_address:
          title: Destination Email Address
          type: string
        email_template:
          additionalProperties: false
          properties:
            bcc:
              description: Anyone that should be bcc'ed on the email
              title: Bcc
              type: string
            body:
              description: The email body
              title: Body
              type: string
            cc:
              description: Anyone that should be cc'ed on the email
              title: Cc
              type: string
            from:
              description: From email address
              title: From
              type: string
            from_name:
              description: From name
              title: From Name
              type: string
            reply_to:
              description: The reply to
              title: Reply To
              type: string
            subject:
              description: The email subject
              title: Subject
              type: string
          required:
            - body
            - subject
          title: Email Template
          type: object
        order_id:
          title: Order
          type: string
        order_item_line_number:
          format: float
          title: Order Item Line Number
          type: number
        return_id:
          title: Return
          type: string
        shipment_id:
          title: Shipment
          type: string
      required:
        - coupon_id
        - coupon_type
        - destination_email_address
        - destination_email_address
        - shipment_id
      type: object
    PreviewOrderConfirmationEmailRequest:
      additionalProperties: false
      properties:
        destination_email_address:
          title: Destination Email Address
          type: string
        email_template:
          additionalProperties: false
          properties:
            bcc:
              description: Anyone that should be bcc'ed on the email
              title: Bcc
              type: string
            body:
              description: The email body
              title: Body
              type: string
            cc:
              description: Anyone that should be cc'ed on the email
              title: Cc
              type: string
            from:
              description: From email address
              title: From
              type: string
            from_name:
              description: From name
              title: From Name
              type: string
            reply_to:
              description: The reply to
              title: Reply To
              type: string
            subject:
              description: The email subject
              title: Subject
              type: string
          required:
            - body
            - subject
          title: Email Template
          type: object
        order_id:
          title: Order
          type: string
      required:
        - destination_email_address
        - order_id
      type: object
    PreviewProductConfirmationEmailRequest:
      additionalProperties: false
      properties:
        destination_email_address:
          title: Destination Email Address
          type: string
        email_template:
          additionalProperties: false
          properties:
            bcc:
              description: Anyone that should be bcc'ed on the email
              title: Bcc
              type: string
            body:
              description: The email body
              title: Body
              type: string
            cc:
              description: Anyone that should be cc'ed on the email
              title: Cc
              type: string
            from:
              description: From email address
              title: From
              type: string
            from_name:
              description: From name
              title: From Name
              type: string
            reply_to:
              description: The reply to
              title: Reply To
              type: string
            subject:
              description: The email subject
              title: Subject
              type: string
          required:
            - body
            - subject
          title: Email Template
          type: object
        order_id:
          title: Order
          type: string
        order_item_line_number:
          format: float
          minimum: 1
          title: Order Item Line Number
          type: number
      required:
        - destination_email_address
        - order_id
      type: object
    ProductCategory:
      additionalProperties: false
      properties:
        custom_field_values:
          items:
            $ref: '#/components/schemas/CustomFieldValue'
          title: Custom Field Values
          type: array
        default_product_sort:
          enum:
            - alphabetical ascending
            - alphabetical descending
            - newest items
            - price ascending
            - price descending
            - sort order
          title: Default Product Sort
          type: string
        id:
          description: The unique, string identifier of this product category
          pattern: ^[\w|-]+$
          title: ID
          type: string
        is_active:
          description: Whether this is an active category
          title: Is Active
          type: boolean
        name:
          description: The name of the product category
          title: Name
          type: string
        sys_bulk_load_at:
          description: >-
            If this record was loaded via bulk, the timestamp when the record
            was processed
          title: Sys Bulk Load At
          type: string
        sys_bulk_load_id:
          description: If this record was loaded via bulk, the ID of the bulk load process
          title: Sys Bulk Load
          type: string
        sys_bulk_load_pk:
          description: >-
            If this record was loaded via bulk, the tenant and key of the bulk
            load process used as a partition key
          title: Sys Bulk Load Pk
          type: string
        sys_bulk_load_record_no:
          description: >-
            If this record was loaded via bulk, the record number in the source
            file
          format: float
          title: Sys Bulk Load Record No
          type: number
        sys_bulk_load_source_file:
          description: If this record was loaded via bulk, the source file
          title: Sys Bulk Load Source File
          type: string
        sys_calculated_field_error:
          description: The error associated with the calculated field
          title: Sys Calculated Field Error
          type: string
        sys_calculated_field_errors:
          items:
            additionalProperties: false
            properties:
              error:
                title: Error
                type: string
              field:
                title: Field
                type: string
            type: object
          type: array
        sys_configuration_snapshot_id:
          description: >-
            If a snapshot was restored/applies to this record, the ID of the
            snapshot
          title: Sys Configuration Snapshot
          type: string
        sys_created_at:
          description: >-
            The date/time that this record was created, expressed in ISO-8601
            date format
          format: date-time
          title: Sys Created At
          type: string
        sys_created_by_id:
          description: The ID of the user that created this record
          title: Sys Created By
          type: string
        sys_deleted_by_id:
          description: >-
            The ID of the user that deleted (or last tried to delete) this
            object
          title: Sys Deleted By
          type: string
        sys_directive:
          description: >-
            Means for passing directive information into an object processing
            logic
          title: Sys Directive
          type: string
        sys_external_id:
          description: The ID that a record has from an external system or data import
          title: Sys External
          type: string
        sys_has_files_in_s3:
          description: >-
            If true, this record has files in S3. If false, it doesnt, so no
            need to hit S3 upon deletion
          title: Sys Has Files In S3
          type: boolean
        sys_last_bulk_data_operation_id:
          description: >-
            If this record was last touched by a bulk data operation, the ID of
            that operation
          title: Sys Last Bulk Data Operation
          type: string
        sys_last_bulk_data_operation_sys_version:
          description: >-
            If this record was last touched by a bulk data operation, the
            sys_version at the time of that operation
          title: Sys Last Bulk Data Operation Sys Version
          type: string
        sys_last_modified_at:
          description: >-
            The date/time that this record record was last modified, expressed
            in ISO-8601 date format
          format: date-time
          title: Sys Last Modified At
          type: string
        sys_last_modified_by_id:
          description: The ID of the user that last modified this record
          title: Sys Last Modified By
          type: string
        sys_last_security_context:
          description: >-
            The security context of the last insert, modify, or delete performed
            on this item
          properties: {}
          title: Sys Last Security Context
          type: object
        sys_locked:
          description: If set, this record is locked and cannot be changed via the API
          title: Sys Locked
          type: boolean
        sys_snapshot_base_version:
          description: >-
            The version to use as a base when creating a configuration snapshot;
            if not set, 1 is used. Helpful when creating a sandbox
          format: float
          title: Sys Snapshot Base Version
          type: number
        sys_version:
          description: A number representing the version of this record in the database
          format: float
          title: Sys Version
          type: number
      required:
        - id
        - name
        - sys_created_at
        - sys_created_by_id
        - sys_last_modified_at
        - sys_last_modified_by_id
      type: object
    ProductConfirmationEmail:
      additionalProperties: false
      properties:
        custom_field_values:
          items:
            $ref: '#/components/schemas/CustomFieldValue'
          title: Custom Field Values
          type: array
        email:
          additionalProperties: false
          properties:
            bcc:
              description: Anyone that should be bcc'ed on the email
              title: Bcc
              type: string
            body:
              description: The email body
              title: Body
              type: string
            cc:
              description: Anyone that should be cc'ed on the email
              title: Cc
              type: string
            from:
              description: From email address
              title: From
              type: string
            from_name:
              description: From name
              title: From Name
              type: string
            reply_to:
              description: The reply to
              title: Reply To
              type: string
            subject:
              description: The email subject
              title: Subject
              type: string
          required:
            - body
            - subject
          title: Email
          type: object
        id:
          description: The unique, string identifier of this product confirmation email
          pattern: ^[\w|-]+$
          title: ID
          type: string
        is_active:
          description: Whether or not this product confirmation email is active
          title: Is Active
          type: boolean
        name:
          description: The name of the product confirmation email
          title: Name
          type: string
        sys_bulk_load_at:
          description: >-
            If this record was loaded via bulk, the timestamp when the record
            was processed
          title: Sys Bulk Load At
          type: string
        sys_bulk_load_id:
          description: If this record was loaded via bulk, the ID of the bulk load process
          title: Sys Bulk Load
          type: string
        sys_bulk_load_pk:
          description: >-
            If this record was loaded via bulk, the tenant and key of the bulk
            load process used as a partition key
          title: Sys Bulk Load Pk
          type: string
        sys_bulk_load_record_no:
          description: >-
            If this record was loaded via bulk, the record number in the source
            file
          format: float
          title: Sys Bulk Load Record No
          type: number
        sys_bulk_load_source_file:
          description: If this record was loaded via bulk, the source file
          title: Sys Bulk Load Source File
          type: string
        sys_calculated_field_error:
          description: The error associated with the calculated field
          title: Sys Calculated Field Error
          type: string
        sys_calculated_field_errors:
          items:
            additionalProperties: false
            properties:
              error:
                title: Error
                type: string
              field:
                title: Field
                type: string
            type: object
          type: array
        sys_configuration_snapshot_id:
          description: >-
            If a snapshot was restored/applies to this record, the ID of the
            snapshot
          title: Sys Configuration Snapshot
          type: string
        sys_created_at:
          description: >-
            The date/time that this record was created, expressed in ISO-8601
            date format
          format: date-time
          title: Sys Created At
          type: string
        sys_created_by_id:
          description: The ID of the user that created this record
          title: Sys Created By
          type: string
        sys_deleted_by_id:
          description: >-
            The ID of the user that deleted (or last tried to delete) this
            object
          title: Sys Deleted By
          type: string
        sys_directive:
          description: >-
            Means for passing directive information into an object processing
            logic
          title: Sys Directive
          type: string
        sys_external_id:
          description: The ID that a record has from an external system or data import
          title: Sys External
          type: string
        sys_has_files_in_s3:
          description: >-
            If true, this record has files in S3. If false, it doesnt, so no
            need to hit S3 upon deletion
          title: Sys Has Files In S3
          type: boolean
        sys_last_bulk_data_operation_id:
          description: >-
            If this record was last touched by a bulk data operation, the ID of
            that operation
          title: Sys Last Bulk Data Operation
          type: string
        sys_last_bulk_data_operation_sys_version:
          description: >-
            If this record was last touched by a bulk data operation, the
            sys_version at the time of that operation
          title: Sys Last Bulk Data Operation Sys Version
          type: string
        sys_last_modified_at:
          description: >-
            The date/time that this record record was last modified, expressed
            in ISO-8601 date format
          format: date-time
          title: Sys Last Modified At
          type: string
        sys_last_modified_by_id:
          description: The ID of the user that last modified this record
          title: Sys Last Modified By
          type: string
        sys_last_security_context:
          description: >-
            The security context of the last insert, modify, or delete performed
            on this item
          properties: {}
          title: Sys Last Security Context
          type: object
        sys_locked:
          description: If set, this record is locked and cannot be changed via the API
          title: Sys Locked
          type: boolean
        sys_snapshot_base_version:
          description: >-
            The version to use as a base when creating a configuration snapshot;
            if not set, 1 is used. Helpful when creating a sandbox
          format: float
          title: Sys Snapshot Base Version
          type: number
        sys_version:
          description: A number representing the version of this record in the database
          format: float
          title: Sys Version
          type: number
      required:
        - email
        - id
        - name
        - sys_created_at
        - sys_created_by_id
        - sys_last_modified_at
        - sys_last_modified_by_id
      type: object
    ProductDescriptionRequest:
      additionalProperties: false
      properties:
        business_unit_id:
          title: Business Unit
          type: string
        currency_code:
          title: Currency Code
          type: string
        customer_id:
          title: Customer
          type: string
        customer_type:
          enum:
            - contact
            - organization
          title: Customer Type
          type: string
        products:
          items:
            additionalProperties: false
            properties:
              id:
                title: ID
                type: string
              modifier_options:
                items:
                  additionalProperties: false
                  properties:
                    option_id:
                      description: The modifier option ID
                      title: Option
                      type: string
                    value:
                      description: The value of the option
                      title: Value
                      type: string
                  required:
                    - option_id
                  type: object
                type: array
              type:
                title: Type
                type: string
              variant_options:
                items:
                  additionalProperties: false
                  properties:
                    option_id:
                      description: The variant option ID
                      title: Option
                      type: string
                    value:
                      description: The value of the option
                      title: Value
                      type: string
                  required:
                    - option_id
                  type: object
                type: array
            required:
              - id
              - type
            type: object
          type: array
      required:
        - business_unit_id
      type: object
    ProductDescriptionResponse:
      additionalProperties: false
      properties:
        currency_code:
          description: The currency code used
          title: Currency Code
          type: string
        products:
          items:
            additionalProperties: false
            properties:
              availability:
                enum:
                  - BACKORDER
                  - OK
                  - SOLD_OUT
                title: Availability
                type: string
              id:
                title: ID
                type: string
              ineligible:
                description: Whether the product is ineligible
                title: Ineligible
                type: boolean
              price:
                format: double
                title: Price
                type: number
              type:
                title: Type
                type: string
            required:
              - id
              - type
            type: object
          type: array
      type: object
    ProductInventory:
      additionalProperties: false
      properties:
        bin_id:
          description: The optional bin in which the inventory is located
          title: Bin
          type: string
        business_unit_id:
          description: The business unit of the product tied to this inventory
          title: Business Unit
          type: string
        custom_field_values:
          items:
            $ref: '#/components/schemas/CustomFieldValue'
          title: Custom Field Values
          type: array
        expected_replenishment_date:
          description: The date in which this inventory is expected to be replenished
          format: date
          title: Expected Replenishment Date
          type: string
        id:
          description: The unique, string identifier of this product inventory
          pattern: ^[\w-:]+$
          title: ID
          type: string
        notes:
          description: Any important notes
          title: Notes
          type: string
        product_id:
          description: The ID of the product in this inventory
          title: Product
          type: string
        product_type:
          description: The type of product
          title: Product Type
          type: string
        quantity_available:
          description: The quantity of inventory available for purchase
          title: Quantity Available
          type: integer
        quantity_backordered:
          description: The quantity of inventory that has been backordered
          title: Quantity Backordered
          type: integer
        quantity_committed:
          description: The quantity of inventory committed
          title: Quantity Committed
          type: integer
        quantity_defective:
          description: The quantity of inventory that is defective
          title: Quantity Defective
          type: integer
        quantity_on_hand:
          description: The quantity of inventory on hand
          title: Quantity On Hand
          type: integer
        quantity_on_order:
          description: The quantity of inventory on order
          title: Quantity On Order
          type: integer
        quantity_reserved:
          description: >-
            The quantity of inventory that has been reserved for use other than
            sale
          title: Quantity Reserved
          type: integer
        reorder_point:
          description: The optional point at which this inventory should be replenished
          title: Reorder Point
          type: integer
        sku:
          description: The product SKU, if this product has a SKU
          title: Sku
          type: string
        sys_bulk_load_at:
          description: >-
            If this record was loaded via bulk, the timestamp when the record
            was processed
          title: Sys Bulk Load At
          type: string
        sys_bulk_load_id:
          description: If this record was loaded via bulk, the ID of the bulk load process
          title: Sys Bulk Load
          type: string
        sys_bulk_load_pk:
          description: >-
            If this record was loaded via bulk, the tenant and key of the bulk
            load process used as a partition key
          title: Sys Bulk Load Pk
          type: string
        sys_bulk_load_record_no:
          description: >-
            If this record was loaded via bulk, the record number in the source
            file
          format: float
          title: Sys Bulk Load Record No
          type: number
        sys_bulk_load_source_file:
          description: If this record was loaded via bulk, the source file
          title: Sys Bulk Load Source File
          type: string
        sys_calculated_field_error:
          description: The error associated with the calculated field
          title: Sys Calculated Field Error
          type: string
        sys_calculated_field_errors:
          items:
            additionalProperties: false
            properties:
              error:
                title: Error
                type: string
              field:
                title: Field
                type: string
            type: object
          type: array
        sys_configuration_snapshot_id:
          description: >-
            If a snapshot was restored/applies to this record, the ID of the
            snapshot
          title: Sys Configuration Snapshot
          type: string
        sys_created_at:
          description: >-
            The date/time that this record was created, expressed in ISO-8601
            date format
          format: date-time
          title: Sys Created At
          type: string
        sys_created_by_id:
          description: The ID of the user that created this record
          title: Sys Created By
          type: string
        sys_deleted_by_id:
          description: >-
            The ID of the user that deleted (or last tried to delete) this
            object
          title: Sys Deleted By
          type: string
        sys_directive:
          description: >-
            Means for passing directive information into an object processing
            logic
          title: Sys Directive
          type: string
        sys_external_id:
          description: The ID that a record has from an external system or data import
          title: Sys External
          type: string
        sys_has_files_in_s3:
          description: >-
            If true, this record has files in S3. If false, it doesnt, so no
            need to hit S3 upon deletion
          title: Sys Has Files In S3
          type: boolean
        sys_last_bulk_data_operation_id:
          description: >-
            If this record was last touched by a bulk data operation, the ID of
            that operation
          title: Sys Last Bulk Data Operation
          type: string
        sys_last_bulk_data_operation_sys_version:
          description: >-
            If this record was last touched by a bulk data operation, the
            sys_version at the time of that operation
          title: Sys Last Bulk Data Operation Sys Version
          type: string
        sys_last_modified_at:
          description: >-
            The date/time that this record record was last modified, expressed
            in ISO-8601 date format
          format: date-time
          title: Sys Last Modified At
          type: string
        sys_last_modified_by_id:
          description: The ID of the user that last modified this record
          title: Sys Last Modified By
          type: string
        sys_last_security_context:
          description: >-
            The security context of the last insert, modify, or delete performed
            on this item
          properties: {}
          title: Sys Last Security Context
          type: object
        sys_locked:
          description: If set, this record is locked and cannot be changed via the API
          title: Sys Locked
          type: boolean
        sys_product_type_id:
          description: System property for indexing - do not use
          title: Sys Product Type
          type: string
        sys_snapshot_base_version:
          description: >-
            The version to use as a base when creating a configuration snapshot;
            if not set, 1 is used. Helpful when creating a sandbox
          format: float
          title: Sys Snapshot Base Version
          type: number
        sys_version:
          description: A number representing the version of this record in the database
          format: float
          title: Sys Version
          type: number
        warehouse_id:
          description: The warehouse in which this inventory is located
          title: Warehouse
          type: string
      required:
        - business_unit_id
        - id
        - product_id
        - product_type
        - quantity_available
        - quantity_backordered
        - quantity_committed
        - quantity_defective
        - quantity_on_hand
        - quantity_on_order
        - quantity_reserved
        - sys_created_at
        - sys_created_by_id
        - sys_last_modified_at
        - sys_last_modified_by_id
        - warehouse_id
      type: object
    RelatedTransactions:
      items:
        additionalProperties: false
        properties:
          amount:
            description: The amount applied
            format: double
            type: number
          date:
            description: The date/time of the transaction
            format: date-time
            type: string
          transaction_id:
            description: The id of the transaction
            type: string
          transaction_line_item_id:
            description: The line item id of the transaction
            type: string
          transaction_number:
            description: The number of the transaction
            format: float
            type: number
          type:
            enum:
              - cancellation
              - credit
              - credit memo
              - credit usage
              - debit memo
              - invoice
              - payment
              - refund
              - return
              - shipment
              - write off
            type: string
        required:
          - amount
          - date
          - transaction_id
          - transaction_line_item_id
          - transaction_number
        type: object
      type: array
    RetroCouponRequest:
      additionalProperties: false
      properties:
        coupon_code_id:
          title: Coupon Code
          type: string
        options:
          additionalProperties: false
          properties:
            action:
              enum:
                - credit
                - refund
              title: Action
              type: string
            batch_id:
              description: the batch
              title: Batch
              type: string
            do_not_perform_electronic_refund:
              title: Do Not Perform Electronic Refund
              type: boolean
            ignore_payment_gateway_errors:
              title: Ignore Payment Gateway Errors
              type: boolean
          title: Options
          type: object
        order_id:
          title: Order
          type: string
      required:
        - coupon_code_id
        - order_id
      type: object
    Return:
      additionalProperties: false
      properties:
        action:
          description: What to do with payments made on the order
          enum:
            - issue credit
            - issue refund
          title: Action
          type: string
        base_currency_code:
          title: Base Currency Code
          type: string
        base_currency_symbol:
          title: Base Currency Symbol
          type: string
        batch_id:
          description: The batch the return should be in
          title: Batch
          type: string
        business_unit_id:
          description: The business unit the return should be in
          title: Business Unit
          type: string
        currency_code:
          description: The return currency
          title: Currency Code
          type: string
        currency_symbol:
          description: The cancellation currency symbol
          title: Currency Symbol
          type: string
        custom_field_values:
          items:
            $ref: '#/components/schemas/CustomFieldValue'
          title: Custom Field Values
          type: array
        date:
          description: The date of the return
          format: date-time
          title: Date
          type: string
        do_not_perform_electronic_refund:
          description: If set, the refund process will NOT perform an electronic refund
          title: Do Not Perform Electronic Refund
          type: boolean
        id:
          description: The unique, string identifier of this return
          pattern: ^[\w|-]+$
          title: ID
          type: string
        ignore_payment_gateway_errors:
          description: >-
            Whether or not the return should be processed, even if the payment
            gateway has an error
          title: Ignore Payment Gateway Errors
          type: boolean
        line_items:
          items:
            additionalProperties: false
            oneOf:
              - type: object
                properties: {}
                additionalProperties: false
            properties:
              inventory_action:
                description: What should happen to the inventory when this item is returned
                enum:
                  - do not return to inventory
                  - return as defective
                  - return to inventory
                title: Inventory Action
                type: string
              order_line_item_id:
                description: The order line item ID being returned
                title: Order Line Item
                type: string
              product_id:
                description: The product ID
                oneOf:
                  - x-required: true
                title: Product
                type: string
              product_type:
                description: The product type
                oneOf:
                  - x-required: true
                title: Product Type
                type: string
              quantity:
                description: The quantity being returned
                title: Quantity
                type: integer
              waive_restocking_fees:
                description: Whether or not the return should waive restocking fees
                title: Waive Restocking Fees
                type: boolean
            required:
              - inventory_action
              - order_line_item_id
              - quantity
            type: object
          minItems: 1
          type: array
        notes:
          description: Any refund notes
          title: Notes
          type: string
        number:
          description: The unique, string identifier of this return
          title: Number
          type: integer
        order_id:
          description: The order being returned
          title: Order
          type: string
        sys_bulk_load_at:
          description: >-
            If this record was loaded via bulk, the timestamp when the record
            was processed
          title: Sys Bulk Load At
          type: string
        sys_bulk_load_id:
          description: If this record was loaded via bulk, the ID of the bulk load process
          title: Sys Bulk Load
          type: string
        sys_bulk_load_pk:
          description: >-
            If this record was loaded via bulk, the tenant and key of the bulk
            load process used as a partition key
          title: Sys Bulk Load Pk
          type: string
        sys_bulk_load_record_no:
          description: >-
            If this record was loaded via bulk, the record number in the source
            file
          format: float
          title: Sys Bulk Load Record No
          type: number
        sys_bulk_load_source_file:
          description: If this record was loaded via bulk, the source file
          title: Sys Bulk Load Source File
          type: string
        sys_calculated_field_error:
          description: The error associated with the calculated field
          title: Sys Calculated Field Error
          type: string
        sys_calculated_field_errors:
          items:
            additionalProperties: false
            properties:
              error:
                title: Error
                type: string
              field:
                title: Field
                type: string
            type: object
          type: array
        sys_configuration_snapshot_id:
          description: >-
            If a snapshot was restored/applies to this record, the ID of the
            snapshot
          title: Sys Configuration Snapshot
          type: string
        sys_created_at:
          description: >-
            The date/time that this record was created, expressed in ISO-8601
            date format
          format: date-time
          title: Sys Created At
          type: string
        sys_created_by_id:
          description: The ID of the user that created this record
          title: Sys Created By
          type: string
        sys_deleted_by_id:
          description: >-
            The ID of the user that deleted (or last tried to delete) this
            object
          title: Sys Deleted By
          type: string
        sys_directive:
          description: >-
            Means for passing directive information into an object processing
            logic
          title: Sys Directive
          type: string
        sys_external_id:
          description: The ID that a record has from an external system or data import
          title: Sys External
          type: string
        sys_has_files_in_s3:
          description: >-
            If true, this record has files in S3. If false, it doesnt, so no
            need to hit S3 upon deletion
          title: Sys Has Files In S3
          type: boolean
        sys_last_bulk_data_operation_id:
          description: >-
            If this record was last touched by a bulk data operation, the ID of
            that operation
          title: Sys Last Bulk Data Operation
          type: string
        sys_last_bulk_data_operation_sys_version:
          description: >-
            If this record was last touched by a bulk data operation, the
            sys_version at the time of that operation
          title: Sys Last Bulk Data Operation Sys Version
          type: string
        sys_last_modified_at:
          description: >-
            The date/time that this record record was last modified, expressed
            in ISO-8601 date format
          format: date-time
          title: Sys Last Modified At
          type: string
        sys_last_modified_by_id:
          description: The ID of the user that last modified this record
          title: Sys Last Modified By
          type: string
        sys_last_security_context:
          description: >-
            The security context of the last insert, modify, or delete performed
            on this item
          properties: {}
          title: Sys Last Security Context
          type: object
        sys_locked:
          description: If set, this record is locked and cannot be changed via the API
          title: Sys Locked
          type: boolean
        sys_snapshot_base_version:
          description: >-
            The version to use as a base when creating a configuration snapshot;
            if not set, 1 is used. Helpful when creating a sandbox
          format: float
          title: Sys Snapshot Base Version
          type: number
        sys_version:
          description: A number representing the version of this record in the database
          format: float
          title: Sys Version
          type: number
      required:
        - action
        - batch_id
        - business_unit_id
        - id
        - line_items
        - number
        - order_id
        - sys_created_at
        - sys_created_by_id
        - sys_last_modified_at
        - sys_last_modified_by_id
      type: object
    Setting:
      additionalProperties: false
      properties:
        cancellation_confirmation_email:
          additionalProperties: false
          properties:
            bcc:
              description: Anyone that should be bcc'ed on the email
              title: Bcc
              type: string
            body:
              description: The email body
              title: Body
              type: string
            cc:
              description: Anyone that should be cc'ed on the email
              title: Cc
              type: string
            from:
              description: From email address
              title: From
              type: string
            from_name:
              description: From name
              title: From Name
              type: string
            reply_to:
              description: The reply to
              title: Reply To
              type: string
            subject:
              description: The email subject
              title: Subject
              type: string
          required:
            - body
            - subject
          title: Cancellation Confirmation Email
          type: object
        contact_role_permissions:
          description: The contact roles that are allowed to manage this scholarship
          items:
            additionalProperties: false
            properties:
              manage_coupon_codes:
                description: This role manage coupon codes associated with the organization
                title: Manage Coupon Codes
                type: boolean
              role_id:
                description: The contact role
                title: Role
                type: string
            type: object
          type: array
        custom_field_values:
          items:
            $ref: '#/components/schemas/CustomFieldValue'
          title: Custom Field Values
          type: array
        default_ship_from_address:
          $ref: '#/components/schemas/Address'
        default_store_id:
          description: The default store
          title: Default Store
          type: string
        display_policies_at_checkout:
          description: If set, policies are shown to users at checkout
          title: Display Policies At Checkout
          type: boolean
        enable_cancellation_confirmation_email:
          description: If set, you can enable the text of the confirmation email
          title: Enable Cancellation Confirmation Email
          type: boolean
        enable_order_confirmation_email:
          description: If set, you can enable the text of the confirmation email
          title: Enable Order Confirmation Email
          type: boolean
        enable_retroactive_coupons_in_portal:
          description: >-
            If true, users can retroactively apply coupons to orders in the
            portal
          title: Enable Retroactive Coupons In Portal
          type: boolean
        enable_return_confirmation_email:
          description: If set, you can enable the text of the confirmation email
          title: Enable Return Confirmation Email
          type: boolean
        enable_shipment_confirmation_email:
          description: If set, you can enable the text of the shipment email
          title: Enable Shipment Confirmation Email
          type: boolean
        notes:
          description: The name of the settings
          title: Notes
          type: string
        order_confirmation_email:
          additionalProperties: false
          properties:
            bcc:
              description: Anyone that should be bcc'ed on the email
              title: Bcc
              type: string
            body:
              description: The email body
              title: Body
              type: string
            cc:
              description: Anyone that should be cc'ed on the email
              title: Cc
              type: string
            from:
              description: From email address
              title: From
              type: string
            from_name:
              description: From name
              title: From Name
              type: string
            reply_to:
              description: The reply to
              title: Reply To
              type: string
            subject:
              description: The email subject
              title: Subject
              type: string
          required:
            - body
            - subject
          title: Order Confirmation Email
          type: object
        policies:
          additionalProperties: false
          properties:
            consumer_data_policy_uri:
              description: >-
                The default consumer data policy to display to customers when
                checking out
              title: Consumer Data Policy Uri
              type: string
            refund_policy_uri:
              description: The refund policy to display to customers when checking out
              title: Refund Policy Uri
              type: string
            secure_checkout_policy_uri:
              description: >-
                The default secure checkout policy to display to customers when
                checking out
              title: Secure Checkout Policy Uri
              type: string
            terms_of_service_uri:
              description: The default TOS policy to display to customers when checking out
              title: Terms Of Service Uri
              type: string
          required:
            - consumer_data_policy_uri
            - refund_policy_uri
            - secure_checkout_policy_uri
            - terms_of_service_uri
          title: Policies
          type: object
        restrict_retroactive_coupons_by_time_period:
          description: >-
            If true, users in the portal can only retroactively apply coupons to
            orders within a certain time period
          title: Restrict Retroactive Coupons By Time Period
          type: boolean
        retroactive_coupon_allowed_time_period:
          description: >-
            The maximum number of a days after an order is processed that a user
            can retroactively apply a coupon in the portal
          format: float
          title: Retroactive Coupon Allowed Time Period
          type: number
        return_confirmation_email:
          additionalProperties: false
          properties:
            bcc:
              description: Anyone that should be bcc'ed on the email
              title: Bcc
              type: string
            body:
              description: The email body
              title: Body
              type: string
            cc:
              description: Anyone that should be cc'ed on the email
              title: Cc
              type: string
            from:
              description: From email address
              title: From
              type: string
            from_name:
              description: From name
              title: From Name
              type: string
            reply_to:
              description: The reply to
              title: Reply To
              type: string
            subject:
              description: The email subject
              title: Subject
              type: string
          required:
            - body
            - subject
          title: Return Confirmation Email
          type: object
        shipment_confirmation_email:
          additionalProperties: false
          properties:
            bcc:
              description: Anyone that should be bcc'ed on the email
              title: Bcc
              type: string
            body:
              description: The email body
              title: Body
              type: string
            cc:
              description: Anyone that should be cc'ed on the email
              title: Cc
              type: string
            from:
              description: From email address
              title: From
              type: string
            from_name:
              description: From name
              title: From Name
              type: string
            reply_to:
              description: The reply to
              title: Reply To
              type: string
            subject:
              description: The email subject
              title: Subject
              type: string
          required:
            - body
            - subject
          title: Shipment Confirmation Email
          type: object
        sys_bulk_load_at:
          description: >-
            If this record was loaded via bulk, the timestamp when the record
            was processed
          title: Sys Bulk Load At
          type: string
        sys_bulk_load_id:
          description: If this record was loaded via bulk, the ID of the bulk load process
          title: Sys Bulk Load
          type: string
        sys_bulk_load_pk:
          description: >-
            If this record was loaded via bulk, the tenant and key of the bulk
            load process used as a partition key
          title: Sys Bulk Load Pk
          type: string
        sys_bulk_load_record_no:
          description: >-
            If this record was loaded via bulk, the record number in the source
            file
          format: float
          title: Sys Bulk Load Record No
          type: number
        sys_bulk_load_source_file:
          description: If this record was loaded via bulk, the source file
          title: Sys Bulk Load Source File
          type: string
        sys_calculated_field_error:
          description: The error associated with the calculated field
          title: Sys Calculated Field Error
          type: string
        sys_calculated_field_errors:
          items:
            additionalProperties: false
            properties:
              error:
                title: Error
                type: string
              field:
                title: Field
                type: string
            type: object
          type: array
        sys_configuration_snapshot_id:
          description: >-
            If a snapshot was restored/applies to this record, the ID of the
            snapshot
          title: Sys Configuration Snapshot
          type: string
        sys_created_at:
          description: >-
            The date/time that this record was created, expressed in ISO-8601
            date format
          format: date-time
          title: Sys Created At
          type: string
        sys_created_by_id:
          description: The ID of the user that created this record
          title: Sys Created By
          type: string
        sys_deleted_by_id:
          description: >-
            The ID of the user that deleted (or last tried to delete) this
            object
          title: Sys Deleted By
          type: string
        sys_directive:
          description: >-
            Means for passing directive information into an object processing
            logic
          title: Sys Directive
          type: string
        sys_external_id:
          description: The ID that a record has from an external system or data import
          title: Sys External
          type: string
        sys_has_files_in_s3:
          description: >-
            If true, this record has files in S3. If false, it doesnt, so no
            need to hit S3 upon deletion
          title: Sys Has Files In S3
          type: boolean
        sys_last_bulk_data_operation_id:
          description: >-
            If this record was last touched by a bulk data operation, the ID of
            that operation
          title: Sys Last Bulk Data Operation
          type: string
        sys_last_bulk_data_operation_sys_version:
          description: >-
            If this record was last touched by a bulk data operation, the
            sys_version at the time of that operation
          title: Sys Last Bulk Data Operation Sys Version
          type: string
        sys_last_modified_at:
          description: >-
            The date/time that this record record was last modified, expressed
            in ISO-8601 date format
          format: date-time
          title: Sys Last Modified At
          type: string
        sys_last_modified_by_id:
          description: The ID of the user that last modified this record
          title: Sys Last Modified By
          type: string
        sys_last_security_context:
          description: >-
            The security context of the last insert, modify, or delete performed
            on this item
          properties: {}
          title: Sys Last Security Context
          type: object
        sys_locked:
          description: If set, this record is locked and cannot be changed via the API
          title: Sys Locked
          type: boolean
        sys_snapshot_base_version:
          description: >-
            The version to use as a base when creating a configuration snapshot;
            if not set, 1 is used. Helpful when creating a sandbox
          format: float
          title: Sys Snapshot Base Version
          type: number
        sys_version:
          description: A number representing the version of this record in the database
          format: float
          title: Sys Version
          type: number
      required:
        - cancellation_confirmation_email
        - order_confirmation_email
        - policies
        - retroactive_coupon_allowed_time_period
        - return_confirmation_email
        - shipment_confirmation_email
        - sys_created_at
        - sys_created_by_id
        - sys_last_modified_at
        - sys_last_modified_by_id
      type: object
    SharedModifierOption:
      additionalProperties: false
      properties:
        default_value:
          description: The default value
          title: Default Value
          type: string
        enable_character_restriction:
          description: If true, the UI will restrict the number of characters
          title: Enable Character Restriction
          type: boolean
        id:
          description: The unique, string identifier of this shared modifier option
          pattern: ^[\w|-]+$
          title: ID
          type: string
        is_active:
          description: Whether or not this shared modifier option is active
          title: Is Active
          type: boolean
        maximum_number_of_characters:
          description: The maximum number of characters
          format: float
          title: Maximum Number Of Characters
          type: number
        name:
          description: The name of the shared modifier option
          title: Name
          type: string
        sys_bulk_load_at:
          description: >-
            If this record was loaded via bulk, the timestamp when the record
            was processed
          title: Sys Bulk Load At
          type: string
        sys_bulk_load_id:
          description: If this record was loaded via bulk, the ID of the bulk load process
          title: Sys Bulk Load
          type: string
        sys_bulk_load_pk:
          description: >-
            If this record was loaded via bulk, the tenant and key of the bulk
            load process used as a partition key
          title: Sys Bulk Load Pk
          type: string
        sys_bulk_load_record_no:
          description: >-
            If this record was loaded via bulk, the record number in the source
            file
          format: float
          title: Sys Bulk Load Record No
          type: number
        sys_bulk_load_source_file:
          description: If this record was loaded via bulk, the source file
          title: Sys Bulk Load Source File
          type: string
        sys_calculated_field_error:
          description: The error associated with the calculated field
          title: Sys Calculated Field Error
          type: string
        sys_calculated_field_errors:
          items:
            additionalProperties: false
            properties:
              error:
                title: Error
                type: string
              field:
                title: Field
                type: string
            type: object
          type: array
        sys_configuration_snapshot_id:
          description: >-
            If a snapshot was restored/applies to this record, the ID of the
            snapshot
          title: Sys Configuration Snapshot
          type: string
        sys_created_at:
          description: >-
            The date/time that this record was created, expressed in ISO-8601
            date format
          format: date-time
          title: Sys Created At
          type: string
        sys_created_by_id:
          description: The ID of the user that created this record
          title: Sys Created By
          type: string
        sys_deleted_by_id:
          description: >-
            The ID of the user that deleted (or last tried to delete) this
            object
          title: Sys Deleted By
          type: string
        sys_directive:
          description: >-
            Means for passing directive information into an object processing
            logic
          title: Sys Directive
          type: string
        sys_external_id:
          description: The ID that a record has from an external system or data import
          title: Sys External
          type: string
        sys_has_files_in_s3:
          description: >-
            If true, this record has files in S3. If false, it doesnt, so no
            need to hit S3 upon deletion
          title: Sys Has Files In S3
          type: boolean
        sys_last_bulk_data_operation_id:
          description: >-
            If this record was last touched by a bulk data operation, the ID of
            that operation
          title: Sys Last Bulk Data Operation
          type: string
        sys_last_bulk_data_operation_sys_version:
          description: >-
            If this record was last touched by a bulk data operation, the
            sys_version at the time of that operation
          title: Sys Last Bulk Data Operation Sys Version
          type: string
        sys_last_modified_at:
          description: >-
            The date/time that this record record was last modified, expressed
            in ISO-8601 date format
          format: date-time
          title: Sys Last Modified At
          type: string
        sys_last_modified_by_id:
          description: The ID of the user that last modified this record
          title: Sys Last Modified By
          type: string
        sys_last_security_context:
          description: >-
            The security context of the last insert, modify, or delete performed
            on this item
          properties: {}
          title: Sys Last Security Context
          type: object
        sys_locked:
          description: If set, this record is locked and cannot be changed via the API
          title: Sys Locked
          type: boolean
        sys_snapshot_base_version:
          description: >-
            The version to use as a base when creating a configuration snapshot;
            if not set, 1 is used. Helpful when creating a sandbox
          format: float
          title: Sys Snapshot Base Version
          type: number
        sys_version:
          description: A number representing the version of this record in the database
          format: float
          title: Sys Version
          type: number
        type:
          enum:
            - checkbox
            - date
            - dropdown
            - multiple choice
            - text
          title: Type
          type: string
        values:
          items:
            type: string
          title: Values
          type: array
      required:
        - id
        - maximum_number_of_characters
        - name
        - sys_created_at
        - sys_created_by_id
        - sys_last_modified_at
        - sys_last_modified_by_id
        - type
        - values
      type: object
    SharedVariantOption:
      additionalProperties: false
      properties:
        default_value:
          description: The default value
          title: Default Value
          type: string
        id:
          description: The unique, string identifier of this shared variant option
          pattern: ^[\w|-]+$
          title: ID
          type: string
        is_active:
          description: Whether or not this shared variant option is active
          title: Is Active
          type: boolean
        name:
          description: The name of the shared variant option
          title: Name
          type: string
        sys_bulk_load_at:
          description: >-
            If this record was loaded via bulk, the timestamp when the record
            was processed
          title: Sys Bulk Load At
          type: string
        sys_bulk_load_id:
          description: If this record was loaded via bulk, the ID of the bulk load process
          title: Sys Bulk Load
          type: string
        sys_bulk_load_pk:
          description: >-
            If this record was loaded via bulk, the tenant and key of the bulk
            load process used as a partition key
          title: Sys Bulk Load Pk
          type: string
        sys_bulk_load_record_no:
          description: >-
            If this record was loaded via bulk, the record number in the source
            file
          format: float
          title: Sys Bulk Load Record No
          type: number
        sys_bulk_load_source_file:
          description: If this record was loaded via bulk, the source file
          title: Sys Bulk Load Source File
          type: string
        sys_calculated_field_error:
          description: The error associated with the calculated field
          title: Sys Calculated Field Error
          type: string
        sys_calculated_field_errors:
          items:
            additionalProperties: false
            properties:
              error:
                title: Error
                type: string
              field:
                title: Field
                type: string
            type: object
          type: array
        sys_configuration_snapshot_id:
          description: >-
            If a snapshot was restored/applies to this record, the ID of the
            snapshot
          title: Sys Configuration Snapshot
          type: string
        sys_created_at:
          description: >-
            The date/time that this record was created, expressed in ISO-8601
            date format
          format: date-time
          title: Sys Created At
          type: string
        sys_created_by_id:
          description: The ID of the user that created this record
          title: Sys Created By
          type: string
        sys_deleted_by_id:
          description: >-
            The ID of the user that deleted (or last tried to delete) this
            object
          title: Sys Deleted By
          type: string
        sys_directive:
          description: >-
            Means for passing directive information into an object processing
            logic
          title: Sys Directive
          type: string
        sys_external_id:
          description: The ID that a record has from an external system or data import
          title: Sys External
          type: string
        sys_has_files_in_s3:
          description: >-
            If true, this record has files in S3. If false, it doesnt, so no
            need to hit S3 upon deletion
          title: Sys Has Files In S3
          type: boolean
        sys_last_bulk_data_operation_id:
          description: >-
            If this record was last touched by a bulk data operation, the ID of
            that operation
          title: Sys Last Bulk Data Operation
          type: string
        sys_last_bulk_data_operation_sys_version:
          description: >-
            If this record was last touched by a bulk data operation, the
            sys_version at the time of that operation
          title: Sys Last Bulk Data Operation Sys Version
          type: string
        sys_last_modified_at:
          description: >-
            The date/time that this record record was last modified, expressed
            in ISO-8601 date format
          format: date-time
          title: Sys Last Modified At
          type: string
        sys_last_modified_by_id:
          description: The ID of the user that last modified this record
          title: Sys Last Modified By
          type: string
        sys_last_security_context:
          description: >-
            The security context of the last insert, modify, or delete performed
            on this item
          properties: {}
          title: Sys Last Security Context
          type: object
        sys_locked:
          description: If set, this record is locked and cannot be changed via the API
          title: Sys Locked
          type: boolean
        sys_snapshot_base_version:
          description: >-
            The version to use as a base when creating a configuration snapshot;
            if not set, 1 is used. Helpful when creating a sandbox
          format: float
          title: Sys Snapshot Base Version
          type: number
        sys_version:
          description: A number representing the version of this record in the database
          format: float
          title: Sys Version
          type: number
        type:
          enum:
            - dropdown
            - radio buttons
            - rectangle list
            - swatch
          title: Type
          type: string
        values:
          items:
            type: string
          title: Values
          type: array
      required:
        - id
        - name
        - sys_created_at
        - sys_created_by_id
        - sys_last_modified_at
        - sys_last_modified_by_id
        - type
      type: object
    Shipment:
      additionalProperties: false
      properties:
        carrier_integration:
          enum:
            - none
            - ups
          title: Carrier Integration
          type: string
        custom_field_values:
          items:
            $ref: '#/components/schemas/CustomFieldValue'
          title: Custom Field Values
          type: array
        date:
          description: The date of the shipment
          format: date-time
          title: Date
          type: string
        dimensions:
          additionalProperties: false
          properties:
            depth:
              description: Depth in inches
              format: float
              title: Depth
              type: number
            height:
              description: Height in inches
              format: float
              title: Height
              type: number
            width:
              description: Width in inches
              format: float
              title: Width
              type: number
          required:
            - depth
            - height
            - width
          title: Dimensions
          type: object
        id:
          description: The unique, string identifier of this shipment
          pattern: ^[\w|-]+$
          title: ID
          type: string
        line_items:
          items:
            additionalProperties: false
            properties:
              order_line_item_id:
                description: The order line item ID being fulfilled
                title: Order Line Item
                type: string
              product_id:
                description: The id of the product
                title: Product
                type: string
              product_type:
                description: The type of product
                title: Product Type
                type: string
              quantity:
                description: The quantity of the order item
                title: Quantity
                type: integer
            required:
              - order_line_item_id
              - product_id
              - product_type
              - quantity
            type: object
          minItems: 1
          type: array
        notes:
          description: General notes
          title: Notes
          type: string
        number:
          description: The unique, string identifier of this shipment
          format: float
          title: Number
          type: number
        number_of_pieces:
          description: The number of pieces
          format: float
          title: Number Of Pieces
          type: number
        order_id:
          description: The order being fulfilled
          title: Order
          type: string
        packing_slip_notes:
          description: Notes for the packing slip
          title: Packing Slip Notes
          type: string
        send_email_confirmation_to_customer:
          description: Whether or not the customer should be notified by email
          title: Send Email Confirmation To Customer
          type: boolean
        shipping_address:
          $ref: '#/components/schemas/Address'
        shipping_label_uri:
          description: The shipping label, if applicable
          title: Shipping Label Uri
          type: string
        shipping_method_description:
          description: User-friendly description for how the shipment was shipped
          title: Shipping Method Description
          type: string
        shipping_method_id:
          description: The shipping method ID from the order
          title: Shipping Method
          type: string
        sys_bulk_load_at:
          description: >-
            If this record was loaded via bulk, the timestamp when the record
            was processed
          title: Sys Bulk Load At
          type: string
        sys_bulk_load_id:
          description: If this record was loaded via bulk, the ID of the bulk load process
          title: Sys Bulk Load
          type: string
        sys_bulk_load_pk:
          description: >-
            If this record was loaded via bulk, the tenant and key of the bulk
            load process used as a partition key
          title: Sys Bulk Load Pk
          type: string
        sys_bulk_load_record_no:
          description: >-
            If this record was loaded via bulk, the record number in the source
            file
          format: float
          title: Sys Bulk Load Record No
          type: number
        sys_bulk_load_source_file:
          description: If this record was loaded via bulk, the source file
          title: Sys Bulk Load Source File
          type: string
        sys_calculated_field_error:
          description: The error associated with the calculated field
          title: Sys Calculated Field Error
          type: string
        sys_calculated_field_errors:
          items:
            additionalProperties: false
            properties:
              error:
                title: Error
                type: string
              field:
                title: Field
                type: string
            type: object
          type: array
        sys_configuration_snapshot_id:
          description: >-
            If a snapshot was restored/applies to this record, the ID of the
            snapshot
          title: Sys Configuration Snapshot
          type: string
        sys_created_at:
          description: >-
            The date/time that this record was created, expressed in ISO-8601
            date format
          format: date-time
          title: Sys Created At
          type: string
        sys_created_by_id:
          description: The ID of the user that created this record
          title: Sys Created By
          type: string
        sys_deleted_by_id:
          description: >-
            The ID of the user that deleted (or last tried to delete) this
            object
          title: Sys Deleted By
          type: string
        sys_directive:
          description: >-
            Means for passing directive information into an object processing
            logic
          title: Sys Directive
          type: string
        sys_external_id:
          description: The ID that a record has from an external system or data import
          title: Sys External
          type: string
        sys_has_files_in_s3:
          description: >-
            If true, this record has files in S3. If false, it doesnt, so no
            need to hit S3 upon deletion
          title: Sys Has Files In S3
          type: boolean
        sys_last_bulk_data_operation_id:
          description: >-
            If this record was last touched by a bulk data operation, the ID of
            that operation
          title: Sys Last Bulk Data Operation
          type: string
        sys_last_bulk_data_operation_sys_version:
          description: >-
            If this record was last touched by a bulk data operation, the
            sys_version at the time of that operation
          title: Sys Last Bulk Data Operation Sys Version
          type: string
        sys_last_modified_at:
          description: >-
            The date/time that this record record was last modified, expressed
            in ISO-8601 date format
          format: date-time
          title: Sys Last Modified At
          type: string
        sys_last_modified_by_id:
          description: The ID of the user that last modified this record
          title: Sys Last Modified By
          type: string
        sys_last_security_context:
          description: >-
            The security context of the last insert, modify, or delete performed
            on this item
          properties: {}
          title: Sys Last Security Context
          type: object
        sys_locked:
          description: If set, this record is locked and cannot be changed via the API
          title: Sys Locked
          type: boolean
        sys_snapshot_base_version:
          description: >-
            The version to use as a base when creating a configuration snapshot;
            if not set, 1 is used. Helpful when creating a sandbox
          format: float
          title: Sys Snapshot Base Version
          type: number
        sys_version:
          description: A number representing the version of this record in the database
          format: float
          title: Sys Version
          type: number
        tracking_number:
          description: The tracking number
          title: Tracking Number
          type: string
        ups_integration:
          additionalProperties: false
          properties:
            packaging_code:
              description: The UPS packaging code
              title: Packaging Code
              type: string
            service_code:
              description: The UPS service code
              title: Service Code
              type: string
          required:
            - packaging_code
            - service_code
          title: Ups Integration
          type: object
        weight:
          additionalProperties: false
          properties:
            ounces:
              description: Number of ounces
              format: float
              title: Ounces
              type: number
            pounds:
              description: Number of pounds
              format: float
              title: Pounds
              type: number
          required:
            - ounces
            - pounds
          title: Weight
          type: object
      required:
        - dimensions
        - id
        - line_items
        - number
        - order_id
        - send_email_confirmation_to_customer
        - shipping_address
        - shipping_method_description
        - sys_created_at
        - sys_created_by_id
        - sys_last_modified_at
        - sys_last_modified_by_id
        - ups_integration
        - weight
      type: object
    ShippingConfiguration:
      additionalProperties: false
      properties:
        default_ship_from_address:
          $ref: '#/components/schemas/Address'
        default_ship_from_name:
          description: The name of the shipper
          title: Default Ship From Name
          type: string
        default_shipping_product_id:
          description: The default shipping product id to use
          title: Default Shipping Product
          type: string
        notes:
          description: Any notes about this configuration
          title: Notes
          type: string
        sys_bulk_load_at:
          description: >-
            If this record was loaded via bulk, the timestamp when the record
            was processed
          title: Sys Bulk Load At
          type: string
        sys_bulk_load_id:
          description: If this record was loaded via bulk, the ID of the bulk load process
          title: Sys Bulk Load
          type: string
        sys_bulk_load_pk:
          description: >-
            If this record was loaded via bulk, the tenant and key of the bulk
            load process used as a partition key
          title: Sys Bulk Load Pk
          type: string
        sys_bulk_load_record_no:
          description: >-
            If this record was loaded via bulk, the record number in the source
            file
          format: float
          title: Sys Bulk Load Record No
          type: number
        sys_bulk_load_source_file:
          description: If this record was loaded via bulk, the source file
          title: Sys Bulk Load Source File
          type: string
        sys_calculated_field_error:
          description: The error associated with the calculated field
          title: Sys Calculated Field Error
          type: string
        sys_calculated_field_errors:
          items:
            additionalProperties: false
            properties:
              error:
                title: Error
                type: string
              field:
                title: Field
                type: string
            type: object
          type: array
        sys_configuration_snapshot_id:
          description: >-
            If a snapshot was restored/applies to this record, the ID of the
            snapshot
          title: Sys Configuration Snapshot
          type: string
        sys_created_at:
          description: >-
            The date/time that this record was created, expressed in ISO-8601
            date format
          format: date-time
          title: Sys Created At
          type: string
        sys_created_by_id:
          description: The ID of the user that created this record
          title: Sys Created By
          type: string
        sys_deleted_by_id:
          description: >-
            The ID of the user that deleted (or last tried to delete) this
            object
          title: Sys Deleted By
          type: string
        sys_directive:
          description: >-
            Means for passing directive information into an object processing
            logic
          title: Sys Directive
          type: string
        sys_external_id:
          description: The ID that a record has from an external system or data import
          title: Sys External
          type: string
        sys_has_files_in_s3:
          description: >-
            If true, this record has files in S3. If false, it doesnt, so no
            need to hit S3 upon deletion
          title: Sys Has Files In S3
          type: boolean
        sys_last_bulk_data_operation_id:
          description: >-
            If this record was last touched by a bulk data operation, the ID of
            that operation
          title: Sys Last Bulk Data Operation
          type: string
        sys_last_bulk_data_operation_sys_version:
          description: >-
            If this record was last touched by a bulk data operation, the
            sys_version at the time of that operation
          title: Sys Last Bulk Data Operation Sys Version
          type: string
        sys_last_modified_at:
          description: >-
            The date/time that this record record was last modified, expressed
            in ISO-8601 date format
          format: date-time
          title: Sys Last Modified At
          type: string
        sys_last_modified_by_id:
          description: The ID of the user that last modified this record
          title: Sys Last Modified By
          type: string
        sys_last_security_context:
          description: >-
            The security context of the last insert, modify, or delete performed
            on this item
          properties: {}
          title: Sys Last Security Context
          type: object
        sys_locked:
          description: If set, this record is locked and cannot be changed via the API
          title: Sys Locked
          type: boolean
        sys_snapshot_base_version:
          description: >-
            The version to use as a base when creating a configuration snapshot;
            if not set, 1 is used. Helpful when creating a sandbox
          format: float
          title: Sys Snapshot Base Version
          type: number
        sys_version:
          description: A number representing the version of this record in the database
          format: float
          title: Sys Version
          type: number
        zones:
          items:
            additionalProperties: false
            properties:
              countries:
                items:
                  additionalProperties: false
                  properties:
                    country:
                      description: The country
                      title: Country
                      type: string
                  required:
                    - country
                  type: object
                maxItems: 1000
                oneOf:
                  - x-required: true
                type: array
              enabled:
                description: Whether or not this zone is enabled
                title: Enabled
                type: boolean
              id:
                description: A unique id for the zone
                title: ID
                type: string
              name:
                description: The name of the zone
                title: Name
                type: string
              postal_code_ranges:
                items:
                  additionalProperties: false
                  properties:
                    end:
                      title: End
                      type: string
                    start:
                      title: Start
                      type: string
                  required:
                    - end
                    - start
                  type: object
                maxItems: 1000
                oneOf:
                  - x-required: true
                type: array
              pricing_strategies:
                additionalProperties: false
                properties:
                  flat_rate:
                    additionalProperties: false
                    properties:
                      enabled:
                        description: >-
                          Whether or not the flat rate pricing strategy is
                          enabled
                        title: Enabled
                        type: boolean
                      shipping_methods:
                        items:
                          additionalProperties: false
                          properties:
                            display_name:
                              description: The name to display to the user
                              title: Display Name
                              type: string
                            display_order:
                              description: >-
                                Optional number indicating the order to display
                                this method to the user
                              format: float
                              title: Display Order
                              type: number
                            id:
                              description: A unique id for the method
                              title: ID
                              type: string
                            shipping_product_id:
                              description: The default product to use
                              title: Shipping Product
                              type: string
                            shipping_rate:
                              format: double
                              title: Shipping Rate
                              type: number
                            type:
                              description: The type of order calculation
                              enum:
                                - per item
                                - per order
                              title: Type
                              type: string
                          required:
                            - display_name
                            - id
                            - shipping_rate
                            - type
                          type: object
                        type: array
                      shipping_product_id:
                        description: The default product to use for shipping
                        title: Shipping Product
                        type: string
                    title: Flat Rate
                    type: object
                  free:
                    additionalProperties: false
                    properties:
                      display_name:
                        description: Display name for this strategy
                        title: Display Name
                        type: string
                      display_order:
                        description: >-
                          Optional number indicating the order to display this
                          method to the user
                        format: float
                        title: Display Order
                        type: number
                      do_not_show_in_portal:
                        description: If true, this option is not available in the portal
                        title: Do Not Show In Portal
                        type: boolean
                      enabled:
                        description: Whether or not the free pricing strategy is enabled
                        title: Enabled
                        type: boolean
                      id:
                        description: A unique id for the method
                        title: ID
                        type: string
                      maximum_order_amount:
                        description: The maximum order amount to qualify for free shipping
                        format: double
                        title: Maximum Order Amount
                        type: number
                      minimum_order_amount:
                        description: The minimum order amount to qualify for free shipping
                        format: double
                        title: Minimum Order Amount
                        type: number
                      shipping_product_id:
                        description: The default product to use for shipping
                        title: Shipping Product
                        type: string
                    required:
                      - display_name
                      - id
                    title: Free
                    type: object
                  pick_up_in_store:
                    additionalProperties: false
                    properties:
                      cost:
                        description: The cost of in store pickup
                        format: double
                        title: Cost
                        type: number
                      display_name:
                        description: Display name for this strategy
                        title: Display Name
                        type: string
                      display_order:
                        description: >-
                          Optional number indicating the order to display this
                          method to the user
                        format: float
                        title: Display Order
                        type: number
                      do_not_show_in_portal:
                        description: If true, this option is not available in the portal
                        title: Do Not Show In Portal
                        type: boolean
                      enabled:
                        description: >-
                          Whether or not the pick up in store strategy is
                          enabled
                        title: Enabled
                        type: boolean
                      id:
                        description: A unique id for the method
                        title: ID
                        type: string
                      shipping_product_id:
                        description: The default product to use for shipping
                        title: Shipping Product
                        type: string
                    required:
                      - cost
                      - display_name
                      - id
                    title: Pick Up In Store
                    type: object
                  ship_by:
                    additionalProperties: false
                    properties:
                      enabled:
                        description: Whether or not the ship by pricing strategy is enabled
                        title: Enabled
                        type: boolean
                      shipping_methods:
                        items:
                          additionalProperties: false
                          properties:
                            charge_shipping_by:
                              enum:
                                - order total
                                - order weight
                              title: Charge Shipping By
                              type: string
                            default_shipping_cost:
                              description: The default amount of shipping
                              format: float
                              title: Default Shipping Cost
                              type: number
                            display_name:
                              description: The display name
                              title: Display Name
                              type: string
                            display_order:
                              description: >-
                                Optional number indicating the order to display
                                this method to the user
                              format: float
                              title: Display Order
                              type: number
                            id:
                              description: A unique id for the method
                              title: ID
                              type: string
                            ranges:
                              items:
                                additionalProperties: false
                                properties:
                                  cost:
                                    format: double
                                    title: Cost
                                    type: number
                                  from:
                                    format: double
                                    title: From
                                    type: number
                                  up_to:
                                    format: double
                                    title: Up To
                                    type: number
                                type: object
                              minItems: 1
                              type: array
                            shipping_product_id:
                              description: The default product to use for shipping
                              title: Shipping Product
                              type: string
                            type:
                              enum:
                                - fixed amount
                                - percent of order total
                              title: Type
                              type: string
                          required:
                            - charge_shipping_by
                            - default_shipping_cost
                            - display_name
                            - id
                            - ranges
                            - type
                          type: object
                        type: array
                      shipping_product_id:
                        description: The default product to use for shipping
                        title: Shipping Product
                        type: string
                    title: Ship By
                    type: object
                  ups:
                    additionalProperties: false
                    properties:
                      display_order:
                        description: >-
                          Optional number indicating the order to display this
                          method to the user
                        format: float
                        title: Display Order
                        type: number
                      do_not_show_in_portal:
                        description: If true, this option is not available in the portal
                        title: Do Not Show In Portal
                        type: boolean
                      enabled:
                        description: Whether or not this is enabled
                        title: Enabled
                        type: boolean
                      limit_shipping_options:
                        description: If set, only certain options are shown to the user
                        title: Limit Shipping Options
                        type: boolean
                      markup_amount:
                        description: A % markup to add to the calculated UPS prices
                        format: float
                        oneOf:
                          - x-required: true
                        title: Markup Amount
                        type: number
                      markup_type:
                        description: Apply a markup to the UPS fees
                        enum:
                          - amount
                          - none
                          - percentage
                        title: Markup Type
                        type: string
                      override_default_ship_from_address:
                        description: If set, an different ship from address is used
                        title: Override Default Ship From Address
                        type: boolean
                      ship_from_address:
                        $ref: '#/components/schemas/Address'
                      shipping_options:
                        description: 'Allows you to restrict the options shown to the '
                        items:
                          type: string
                        oneOf:
                          - x-required: true
                        title: Shipping Options
                        type: array
                      shipping_product_id:
                        description: The default product to use for shipping
                        title: Shipping Product
                        type: string
                      ups_account_id:
                        description: The UPS account to use for integration
                        title: Ups Account
                        type: string
                    required:
                      - ups_account_id
                    title: Ups
                    type: object
                title: Pricing Strategies
                type: object
              shipping_product_id:
                description: The default product to use for shipping
                title: Shipping Product
                type: string
              states:
                items:
                  additionalProperties: false
                  properties:
                    state:
                      description: The state
                      title: State
                      type: string
                  required:
                    - state
                  type: object
                maxItems: 1000
                oneOf:
                  - x-required: true
                type: array
              type:
                enum:
                  - country
                  - postal code
                  - rest of the world
                  - state
                title: Type
                type: string
            required:
              - enabled
              - id
              - name
            type: object
          type: array
      required:
        - sys_created_at
        - sys_created_by_id
        - sys_last_modified_at
        - sys_last_modified_by_id
      type: object
    ShippingProduct:
      additionalProperties: false
      properties:
        business_unit_id:
          description: The business unit of the product
          title: Business Unit
          type: string
        custom_field_values:
          items:
            $ref: '#/components/schemas/CustomFieldValue'
          title: Custom Field Values
          type: array
        id:
          description: The unique, string identifier of this miscellaneous product
          pattern: ^[\w:|-]+$
          title: ID
          type: string
        is_active:
          description: Whether this product is active/used
          title: Is Active
          type: boolean
        name:
          description: The name of the miscellaneous product
          title: Name
          type: string
        notes:
          description: Notes
          title: Notes
          type: string
        sys_bulk_load_at:
          description: >-
            If this record was loaded via bulk, the timestamp when the record
            was processed
          title: Sys Bulk Load At
          type: string
        sys_bulk_load_id:
          description: If this record was loaded via bulk, the ID of the bulk load process
          title: Sys Bulk Load
          type: string
        sys_bulk_load_pk:
          description: >-
            If this record was loaded via bulk, the tenant and key of the bulk
            load process used as a partition key
          title: Sys Bulk Load Pk
          type: string
        sys_bulk_load_record_no:
          description: >-
            If this record was loaded via bulk, the record number in the source
            file
          format: float
          title: Sys Bulk Load Record No
          type: number
        sys_bulk_load_source_file:
          description: If this record was loaded via bulk, the source file
          title: Sys Bulk Load Source File
          type: string
        sys_calculated_field_error:
          description: The error associated with the calculated field
          title: Sys Calculated Field Error
          type: string
        sys_calculated_field_errors:
          items:
            additionalProperties: false
            properties:
              error:
                title: Error
                type: string
              field:
                title: Field
                type: string
            type: object
          type: array
        sys_configuration_snapshot_id:
          description: >-
            If a snapshot was restored/applies to this record, the ID of the
            snapshot
          title: Sys Configuration Snapshot
          type: string
        sys_created_at:
          description: >-
            The date/time that this record was created, expressed in ISO-8601
            date format
          format: date-time
          title: Sys Created At
          type: string
        sys_created_by_id:
          description: The ID of the user that created this record
          title: Sys Created By
          type: string
        sys_deleted_by_id:
          description: >-
            The ID of the user that deleted (or last tried to delete) this
            object
          title: Sys Deleted By
          type: string
        sys_directive:
          description: >-
            Means for passing directive information into an object processing
            logic
          title: Sys Directive
          type: string
        sys_external_id:
          description: The ID that a record has from an external system or data import
          title: Sys External
          type: string
        sys_has_files_in_s3:
          description: >-
            If true, this record has files in S3. If false, it doesnt, so no
            need to hit S3 upon deletion
          title: Sys Has Files In S3
          type: boolean
        sys_last_bulk_data_operation_id:
          description: >-
            If this record was last touched by a bulk data operation, the ID of
            that operation
          title: Sys Last Bulk Data Operation
          type: string
        sys_last_bulk_data_operation_sys_version:
          description: >-
            If this record was last touched by a bulk data operation, the
            sys_version at the time of that operation
          title: Sys Last Bulk Data Operation Sys Version
          type: string
        sys_last_modified_at:
          description: >-
            The date/time that this record record was last modified, expressed
            in ISO-8601 date format
          format: date-time
          title: Sys Last Modified At
          type: string
        sys_last_modified_by_id:
          description: The ID of the user that last modified this record
          title: Sys Last Modified By
          type: string
        sys_last_security_context:
          description: >-
            The security context of the last insert, modify, or delete performed
            on this item
          properties: {}
          title: Sys Last Security Context
          type: object
        sys_locked:
          description: If set, this record is locked and cannot be changed via the API
          title: Sys Locked
          type: boolean
        sys_snapshot_base_version:
          description: >-
            The version to use as a base when creating a configuration snapshot;
            if not set, 1 is used. Helpful when creating a sandbox
          format: float
          title: Sys Snapshot Base Version
          type: number
        sys_version:
          description: A number representing the version of this record in the database
          format: float
          title: Sys Version
          type: number
        type:
          description: The product type
          enum:
            - commerce-shipping-products
          title: Type
          type: string
      required:
        - business_unit_id
        - id
        - name
        - sys_created_at
        - sys_created_by_id
        - sys_last_modified_at
        - sys_last_modified_by_id
      type: object
    StandardQueryDefinition:
      additionalProperties: false
      properties:
        category:
          title: Category
          type: string
        definition:
          additionalProperties: false
          properties: {}
          title: Definition
          type: object
        id:
          title: ID
          type: string
        name:
          title: Name
          type: string
      type: object
    Statistic:
      additionalProperties: false
      properties:
        dataSource:
          description: The datasource used to generate this value
          title: Datasource
          type: string
        error:
          description: If the cache encountered an error, this is it
          title: Error
          type: string
        id:
          description: The unique, string identifier of this statistic
          pattern: ^[\w-:%\/]+$
          title: ID
          type: string
        name:
          description: The name of the statistic
          title: Name
          type: string
        status:
          description: The description of the statistic
          enum:
            - error
            - processing
            - valid
          title: Status
          type: string
        sys_bulk_load_at:
          description: >-
            If this record was loaded via bulk, the timestamp when the record
            was processed
          title: Sys Bulk Load At
          type: string
        sys_bulk_load_id:
          description: If this record was loaded via bulk, the ID of the bulk load process
          title: Sys Bulk Load
          type: string
        sys_bulk_load_pk:
          description: >-
            If this record was loaded via bulk, the tenant and key of the bulk
            load process used as a partition key
          title: Sys Bulk Load Pk
          type: string
        sys_bulk_load_record_no:
          description: >-
            If this record was loaded via bulk, the record number in the source
            file
          format: float
          title: Sys Bulk Load Record No
          type: number
        sys_bulk_load_source_file:
          description: If this record was loaded via bulk, the source file
          title: Sys Bulk Load Source File
          type: string
        sys_calculated_field_error:
          description: The error associated with the calculated field
          title: Sys Calculated Field Error
          type: string
        sys_calculated_field_errors:
          items:
            additionalProperties: false
            properties:
              error:
                title: Error
                type: string
              field:
                title: Field
                type: string
            type: object
          type: array
        sys_configuration_snapshot_id:
          description: >-
            If a snapshot was restored/applies to this record, the ID of the
            snapshot
          title: Sys Configuration Snapshot
          type: string
        sys_created_at:
          description: >-
            The date/time that this record was created, expressed in ISO-8601
            date format
          format: date-time
          title: Sys Created At
          type: string
        sys_created_by_id:
          description: The ID of the user that created this record
          title: Sys Created By
          type: string
        sys_deleted_by_id:
          description: >-
            The ID of the user that deleted (or last tried to delete) this
            object
          title: Sys Deleted By
          type: string
        sys_directive:
          description: >-
            Means for passing directive information into an object processing
            logic
          title: Sys Directive
          type: string
        sys_external_id:
          description: The ID that a record has from an external system or data import
          title: Sys External
          type: string
        sys_has_files_in_s3:
          description: >-
            If true, this record has files in S3. If false, it doesnt, so no
            need to hit S3 upon deletion
          title: Sys Has Files In S3
          type: boolean
        sys_last_bulk_data_operation_id:
          description: >-
            If this record was last touched by a bulk data operation, the ID of
            that operation
          title: Sys Last Bulk Data Operation
          type: string
        sys_last_bulk_data_operation_sys_version:
          description: >-
            If this record was last touched by a bulk data operation, the
            sys_version at the time of that operation
          title: Sys Last Bulk Data Operation Sys Version
          type: string
        sys_last_modified_at:
          description: >-
            The date/time that this record record was last modified, expressed
            in ISO-8601 date format
          format: date-time
          title: Sys Last Modified At
          type: string
        sys_last_modified_by_id:
          description: The ID of the user that last modified this record
          title: Sys Last Modified By
          type: string
        sys_last_security_context:
          description: >-
            The security context of the last insert, modify, or delete performed
            on this item
          properties: {}
          title: Sys Last Security Context
          type: object
        sys_locked:
          description: If set, this record is locked and cannot be changed via the API
          title: Sys Locked
          type: boolean
        sys_snapshot_base_version:
          description: >-
            The version to use as a base when creating a configuration snapshot;
            if not set, 1 is used. Helpful when creating a sandbox
          format: float
          title: Sys Snapshot Base Version
          type: number
        sys_version:
          description: A number representing the version of this record in the database
          format: float
          title: Sys Version
          type: number
        value:
          description: The numeric value of the statistic
          format: float
          title: Value
          type: number
        value_difference_numeric:
          description: >-
            When a value & previous value is present, this is the numeric
            difference
          format: float
          title: Value Difference Numeric
          type: number
        value_difference_percentage:
          description: >-
            When a value & previous value is present, this is the percentage
            difference
          format: float
          title: Value Difference Percentage
          type: number
        value_for_previous_period:
          description: >-
            For statistics that can compare values from a previous period, this
            is the value
          format: float
          title: Value For Previous Period
          type: number
        values:
          description: If the stat hs values in a row form, this variable contains it
          items:
            additionalProperties: false
            properties: {}
            type: object
          type: array
      required:
        - id
        - name
        - status
        - sys_created_at
        - sys_created_by_id
        - sys_last_modified_at
        - sys_last_modified_by_id
        - value
      type: object
    StepFunctionExecutionToken:
      additionalProperties: false
      properties:
        executionArn:
          description: The arn of the execution
          title: Executionarn
          type: string
        notification_channel:
          description: The id of the channel where progress updates will be posted
          title: Notification Channel
          type: string
        notification_publishKey:
          description: >-
            The publish key for the channel where progress updates will be
            posted
          title: Notification Publishkey
          type: string
        notification_subscribeKey:
          description: >-
            The subscribe key for the channel where progress updates will be
            posted
          title: Notification Subscribekey
          type: string
        start_date:
          description: The start date of the execution
          format: date-time
          title: Start Date
          type: string
      required:
        - executionArn
      type: object
    Store:
      additionalProperties: false
      properties:
        allow_customer_to_choose_installment_plan:
          description: If true, the customer can choose their installment plan
          title: Allow Customer To Choose Installment Plan
          type: boolean
        bank_account_id:
          description: >-
            The default bank account that the store should use to receive
            payments
          title: Bank Account
          type: string
        bill_my_organization_options:
          additionalProperties: false
          properties:
            billing_address:
              enum:
                - do not show
                - optional
                - required
              title: Billing Address
              type: string
            purchase_order_number:
              enum:
                - do not show
                - optional
                - required
              title: Purchase Order Number
              type: string
            reference_number:
              description: 'The reference #'
              title: Reference Number
              type: string
          title: Bill My Organization Options
          type: object
        bill_my_parent_organization_options:
          additionalProperties: false
          properties:
            billing_address:
              enum:
                - do not show
                - optional
                - required
              title: Billing Address
              type: string
            purchase_order_number:
              enum:
                - do not show
                - optional
                - required
              title: Purchase Order Number
              type: string
            reference_number:
              description: 'The reference #'
              title: Reference Number
              type: string
          title: Bill My Parent Organization Options
          type: object
        business_unit_id:
          description: The business unit of the store
          title: Business Unit
          type: string
        cancellation_confirmation_settings:
          additionalProperties: false
          properties:
            email:
              additionalProperties: false
              description: The email template to send
              oneOf:
                - x-required: true
              properties:
                bcc:
                  description: Anyone that should be bcc'ed on the email
                  title: Bcc
                  type: string
                body:
                  description: The email body
                  title: Body
                  type: string
                cc:
                  description: Anyone that should be cc'ed on the email
                  title: Cc
                  type: string
                from:
                  description: From email address
                  title: From
                  type: string
                from_name:
                  description: From name
                  title: From Name
                  type: string
                reply_to:
                  description: The reply to
                  title: Reply To
                  type: string
                subject:
                  description: The email subject
                  title: Subject
                  type: string
              required:
                - body
                - subject
              title: Email
              type: object
            suppress_email_delivery:
              description: If true, emails are not sent
              title: Suppress Email Delivery
              type: boolean
          title: Cancellation Confirmation Settings
          type: object
        cancellation_fee_product_id:
          description: The ID of the product used for cancellation fees
          title: Cancellation Fee Product
          type: string
        category_ids:
          items:
            type: string
          title: Categories
          type: array
        category_inclusion:
          enum:
            - include all but specified
            - include all categories
            - include only specified
          title: Category Inclusion
          type: string
        certification_course_options:
          additionalProperties: false
          properties:
            category_name:
              description: The optional name of the category
              title: Category Name
              type: string
            course_ids:
              items:
                type: string
              minItems: 0
              oneOf:
                - x-required: true
              title: Courses
              type: array
            course_restriction:
              enum:
                - exclude
                - include
                - none
              title: Course Restriction
              type: string
            course_type_ids:
              items:
                type: string
              minItems: 0
              oneOf:
                - x-required: true
              title: Course Types
              type: array
            course_type_restriction:
              enum:
                - exclude
                - include
                - none
              title: Course Type Restriction
              type: string
          title: Certification Course Options
          type: object
        certification_exam_options:
          additionalProperties: false
          properties:
            category_name:
              description: The optional name of the category
              title: Category Name
              type: string
            exam_ids:
              items:
                type: string
              minItems: 0
              oneOf:
                - x-required: true
              title: Exams
              type: array
            exam_restriction:
              enum:
                - exclude
                - include
                - none
              title: Exam Restriction
              type: string
            image_uri:
              description: The image to display in the store for exams
              title: Image Uri
              type: string
          title: Certification Exam Options
          type: object
        checkout_donation_options:
          additionalProperties: false
          properties:
            simple_checkout_donation_options:
              additionalProperties: false
              oneOf:
                - x-required: true
              properties:
                allow_user_to_specify_custom_amount:
                  description: If set, the user can specify their own custom donation
                  title: Allow User To Specify Custom Amount
                  type: boolean
                donation_ask_text:
                  description: The text shown to the user when making the donation
                  title: Donation Ask Text
                  type: string
                donation_denominations:
                  items:
                    format: double
                    type: number
                  title: Donation Denominations
                  type: array
                donation_information:
                  description: Additional information about the donation
                  title: Donation Information
                  type: string
                donation_product_id:
                  description: The misc product that should be used
                  title: Donation Product
                  type: string
                override_donation_denominations:
                  description: >-
                    If set, donation denominations are specified here and the
                    defaults are not used
                  title: Override Donation Denominations
                  type: boolean
                suggested_donation:
                  description: A suggested donation
                  format: double
                  title: Suggested Donation
                  type: number
              required:
                - donation_product_id
              title: Simple Checkout Donation Options
              type: object
            type:
              enum:
                - simple
              title: Type
              type: string
          title: Checkout Donation Options
          type: object
        credit_card_minimum_range_end:
          description: If set, the maximum amount for which credit cards can be taken
          format: float
          title: Credit Card Minimum Range End
          type: number
        credit_card_minimum_range_start:
          description: If set, the minimum amount for which credit cards can be taken
          format: float
          title: Credit Card Minimum Range Start
          type: number
        credit_card_mode:
          description: Determines whether or not credit cards are accepted
          enum:
            - disabled
            - enabled
            - range
          title: Credit Card Mode
          type: string
        credit_card_processing_fee_mode:
          description: Determines how credit card processing fees should be handled
          enum:
            - charge
            - do not charge
            - prompt user
          title: Credit Card Processing Fee Mode
          type: string
        credit_card_processing_fee_options:
          additionalProperties: false
          properties:
            fee_percentage:
              description: 'The fee percentage to charge for credit card processing '
              format: float
              title: Fee Percentage
              type: number
            maximum_fee:
              description: >-
                The maximum amount to charge. If the fee comes out to be MORE
                than this, than this amount will be charged
              format: float
              title: Maximum Fee
              type: number
            minimum_fee:
              description: >-
                The minimum amount to charge. If the fee comes out to be less
                than this, than this amount will be charged
              format: float
              title: Minimum Fee
              type: number
            product_id:
              description: The misc product to use for the credit card processing
              title: Product
              type: string
            prompt_sub_text:
              description: >-
                Additional text that is shown to the user when asking if they
                want to pay for credit card processing fees. If not set a
                default will be used
              title: Prompt Sub Text
              type: string
            prompt_text:
              description: >-
                The checkbox text to show the user when asking if they want to
                pay for credit card processing fees. If not set a default will
                be used
              title: Prompt Text
              type: string
          required:
            - fee_percentage
            - product_id
          title: Credit Card Processing Fee Options
          type: object
        default_certification_course_image_uri:
          description: The image to display in the store for courses
          title: Default Certification Course Image Uri
          type: string
        default_certification_exam_image_uri:
          description: The image to display in the store for exams
          title: Default Certification Exam Image Uri
          type: string
        default_event_registration_image_uri:
          description: The image to display in the store for event registrations
          title: Default Event Registration Image Uri
          type: string
        default_membership_package_image_uri:
          description: The image to display in the store for membership
          title: Default Membership Package Image Uri
          type: string
        default_merchandise_image_uri:
          description: The default image to show for products with no image
          title: Default Merchandise Image Uri
          type: string
        default_product_sort:
          enum:
            - alphabetical ascending
            - alphabetical descending
            - newest items
            - price ascending
            - price descending
            - sort order
          title: Default Product Sort
          type: string
        disable_electronic_payment_vaulting:
          description: If set, in the portal people are not allowed to save credit cards
          title: Disable Electronic Payment Vaulting
          type: boolean
        enable_bill_my_organization:
          description: If set, the user has the option to bill their organization
          title: Enable Bill My Organization
          type: boolean
        enable_bill_my_parent_organization:
          description: >-
            If set, the user has the option to bill their organization's parent
            organization
          title: Enable Bill My Parent Organization
          type: boolean
        enable_donations_at_checkout:
          description: >-
            If selected, users will be prompted to make a donation upon checking
            out
          title: Enable Donations At Checkout
          type: boolean
        enable_electronic_checks:
          description: If set, electronic checks are allowed
          title: Enable Electronic Checks
          type: boolean
        enable_pay_later:
          description: >-
            If set, pay later is enabled on this checkout regardless of product
            settings... if not, the product settings are observed
          title: Enable Pay Later
          type: boolean
        enable_payroll_deduction:
          description: If set, payroll deduction is allowed
          title: Enable Payroll Deduction
          type: boolean
        enable_split_payments:
          description: If set, users are allowed to split payments
          title: Enable Split Payments
          type: boolean
        event_registration_options:
          additionalProperties: false
          properties:
            category_name:
              description: The optional name of the category
              title: Category Name
              type: string
            event_ids:
              items:
                type: string
              minItems: 0
              oneOf:
                - x-required: true
              title: Events
              type: array
            event_restriction:
              enum:
                - exclude
                - include
                - none
              title: Event Restriction
              type: string
            event_type_ids:
              items:
                type: string
              minItems: 0
              oneOf:
                - x-required: true
              title: Event Types
              type: array
            event_type_restriction:
              enum:
                - exclude
                - include
                - none
              title: Event Type Restriction
              type: string
          title: Event Registration Options
          type: object
        home_category_id:
          description: >-
            The "home" category of products to display when someone lands on the
            store
          title: Home Category
          type: string
        id:
          description: The unique, string identifier of this store
          pattern: ^[\w|-]+$
          title: ID
          type: string
        installment_plan_options:
          items:
            additionalProperties: false
            properties:
              additional_cost:
                description: The additional cost of the installment plan
                format: double
                title: Additional Cost
                type: number
              installment_plan_id:
                description: The installment plan that this product supports
                title: Installment Plan
                type: string
              is_default:
                description: Whether this is the default installment plan option
                title: Is Default
                type: boolean
            required:
              - installment_plan_id
            type: object
          minItems: 1
          type: array
        invoice_payment_terms_id:
          description: The payment terms for invoices; if left blank, default is used
          title: Invoice Payment Terms
          type: string
        invoice_template_id:
          description: The template to use for invoices created during this process
          title: Invoice Template
          type: string
        invoice_terms_id:
          description: Default invoice terms for non-electronic payments made to the store
          title: Invoice Terms
          type: string
        is_active:
          description: Whether or not this store is active
          title: Is Active
          type: boolean
        membership_package_options:
          additionalProperties: false
          properties:
            category_name:
              description: The optional name of the category
              title: Category Name
              type: string
            membership_package_ids:
              items:
                type: string
              minItems: 0
              oneOf:
                - x-required: true
              title: Membership Packages
              type: array
            membership_package_restriction:
              enum:
                - exclude
                - include
                - none
              title: Membership Package Restriction
              type: string
            membership_type_ids:
              items:
                type: string
              minItems: 0
              oneOf:
                - x-required: true
              title: Membership Types
              type: array
            membership_type_restriction:
              enum:
                - exclude
                - include
                - none
              title: Membership Type Restriction
              type: string
          title: Membership Package Options
          type: object
        merchant_account_id:
          description: The merchant account that the store should use to receive payments
          title: Merchant Account
          type: string
        name:
          description: The name of the store
          title: Name
          type: string
        order_confirmation_settings:
          additionalProperties: false
          properties:
            email:
              additionalProperties: false
              description: The email template to send
              oneOf:
                - x-required: true
              properties:
                bcc:
                  description: Anyone that should be bcc'ed on the email
                  title: Bcc
                  type: string
                body:
                  description: The email body
                  title: Body
                  type: string
                cc:
                  description: Anyone that should be cc'ed on the email
                  title: Cc
                  type: string
                from:
                  description: From email address
                  title: From
                  type: string
                from_name:
                  description: From name
                  title: From Name
                  type: string
                reply_to:
                  description: The reply to
                  title: Reply To
                  type: string
                subject:
                  description: The email subject
                  title: Subject
                  type: string
              required:
                - body
                - subject
              title: Email
              type: object
            suppress_email_delivery:
              description: If true, emails are not sent
              title: Suppress Email Delivery
              type: boolean
          title: Order Confirmation Settings
          type: object
        override_cancellation_confirmation_email:
          description: If set, you can override the text of the confirmation email
          title: Override Cancellation Confirmation Email
          type: boolean
        override_order_confirmation_email:
          description: If set, you can override the text of the confirmation email
          title: Override Order Confirmation Email
          type: boolean
        override_return_confirmation_email:
          description: If set, you can override the text of the confirmation email
          title: Override Return Confirmation Email
          type: boolean
        override_shipment_confirmation_email:
          description: If set, you can override the text of the shipment email
          title: Override Shipment Confirmation Email
          type: boolean
        pay_later_options:
          additionalProperties: false
          properties:
            billing_address:
              enum:
                - do not show
                - optional
                - required
              title: Billing Address
              type: string
            purchase_order_number:
              enum:
                - do not show
                - optional
                - required
              title: Purchase Order Number
              type: string
            reference_number:
              description: 'The reference #'
              title: Reference Number
              type: string
          title: Pay Later Options
          type: object
        restocking_fee_product_id:
          description: The ID of the product used for restocking fees
          title: Restocking Fee Product
          type: string
        return_confirmation_settings:
          additionalProperties: false
          properties:
            email:
              additionalProperties: false
              description: The email template to send
              oneOf:
                - x-required: true
              properties:
                bcc:
                  description: Anyone that should be bcc'ed on the email
                  title: Bcc
                  type: string
                body:
                  description: The email body
                  title: Body
                  type: string
                cc:
                  description: Anyone that should be cc'ed on the email
                  title: Cc
                  type: string
                from:
                  description: From email address
                  title: From
                  type: string
                from_name:
                  description: From name
                  title: From Name
                  type: string
                reply_to:
                  description: The reply to
                  title: Reply To
                  type: string
                subject:
                  description: The email subject
                  title: Subject
                  type: string
              required:
                - body
                - subject
              title: Email
              type: object
            suppress_email_delivery:
              description: If true, emails are not sent
              title: Suppress Email Delivery
              type: boolean
          title: Return Confirmation Settings
          type: object
        sell_certification_courses:
          description: If set, this store sells certification courses
          title: Sell Certification Courses
          type: boolean
        sell_certification_exams:
          description: If set, this store sells certification exams
          title: Sell Certification Exams
          type: boolean
        sell_event_registration_packages:
          description: If set, this store sells event registration packages
          title: Sell Event Registration Packages
          type: boolean
        sell_membership_packages:
          description: If set, this store sells membership packages
          title: Sell Membership Packages
          type: boolean
        shipment_confirmation_settings:
          additionalProperties: false
          properties:
            email:
              additionalProperties: false
              description: The email template to send
              oneOf:
                - x-required: true
              properties:
                bcc:
                  description: Anyone that should be bcc'ed on the email
                  title: Bcc
                  type: string
                body:
                  description: The email body
                  title: Body
                  type: string
                cc:
                  description: Anyone that should be cc'ed on the email
                  title: Cc
                  type: string
                from:
                  description: From email address
                  title: From
                  type: string
                from_name:
                  description: From name
                  title: From Name
                  type: string
                reply_to:
                  description: The reply to
                  title: Reply To
                  type: string
                subject:
                  description: The email subject
                  title: Subject
                  type: string
              required:
                - body
                - subject
              title: Email
              type: object
            suppress_email_delivery:
              description: If true, emails are not sent
              title: Suppress Email Delivery
              type: boolean
          title: Shipment Confirmation Settings
          type: object
        special_instructions:
          description: Instructions shown to the user
          title: Special Instructions
          type: string
        sys_bulk_load_at:
          description: >-
            If this record was loaded via bulk, the timestamp when the record
            was processed
          title: Sys Bulk Load At
          type: string
        sys_bulk_load_id:
          description: If this record was loaded via bulk, the ID of the bulk load process
          title: Sys Bulk Load
          type: string
        sys_bulk_load_pk:
          description: >-
            If this record was loaded via bulk, the tenant and key of the bulk
            load process used as a partition key
          title: Sys Bulk Load Pk
          type: string
        sys_bulk_load_record_no:
          description: >-
            If this record was loaded via bulk, the record number in the source
            file
          format: float
          title: Sys Bulk Load Record No
          type: number
        sys_bulk_load_source_file:
          description: If this record was loaded via bulk, the source file
          title: Sys Bulk Load Source File
          type: string
        sys_calculated_field_error:
          description: The error associated with the calculated field
          title: Sys Calculated Field Error
          type: string
        sys_calculated_field_errors:
          items:
            additionalProperties: false
            properties:
              error:
                title: Error
                type: string
              field:
                title: Field
                type: string
            type: object
          type: array
        sys_configuration_snapshot_id:
          description: >-
            If a snapshot was restored/applies to this record, the ID of the
            snapshot
          title: Sys Configuration Snapshot
          type: string
        sys_created_at:
          description: >-
            The date/time that this record was created, expressed in ISO-8601
            date format
          format: date-time
          title: Sys Created At
          type: string
        sys_created_by_id:
          description: The ID of the user that created this record
          title: Sys Created By
          type: string
        sys_deleted_by_id:
          description: >-
            The ID of the user that deleted (or last tried to delete) this
            object
          title: Sys Deleted By
          type: string
        sys_directive:
          description: >-
            Means for passing directive information into an object processing
            logic
          title: Sys Directive
          type: string
        sys_external_id:
          description: The ID that a record has from an external system or data import
          title: Sys External
          type: string
        sys_has_files_in_s3:
          description: >-
            If true, this record has files in S3. If false, it doesnt, so no
            need to hit S3 upon deletion
          title: Sys Has Files In S3
          type: boolean
        sys_last_bulk_data_operation_id:
          description: >-
            If this record was last touched by a bulk data operation, the ID of
            that operation
          title: Sys Last Bulk Data Operation
          type: string
        sys_last_bulk_data_operation_sys_version:
          description: >-
            If this record was last touched by a bulk data operation, the
            sys_version at the time of that operation
          title: Sys Last Bulk Data Operation Sys Version
          type: string
        sys_last_modified_at:
          description: >-
            The date/time that this record record was last modified, expressed
            in ISO-8601 date format
          format: date-time
          title: Sys Last Modified At
          type: string
        sys_last_modified_by_id:
          description: The ID of the user that last modified this record
          title: Sys Last Modified By
          type: string
        sys_last_security_context:
          description: >-
            The security context of the last insert, modify, or delete performed
            on this item
          properties: {}
          title: Sys Last Security Context
          type: object
        sys_locked:
          description: If set, this record is locked and cannot be changed via the API
          title: Sys Locked
          type: boolean
        sys_snapshot_base_version:
          description: >-
            The version to use as a base when creating a configuration snapshot;
            if not set, 1 is used. Helpful when creating a sandbox
          format: float
          title: Sys Snapshot Base Version
          type: number
        sys_version:
          description: A number representing the version of this record in the database
          format: float
          title: Sys Version
          type: number
        use_pro_forma_invoices:
          description: Whether to use pro forma invoices when user elects to pay later
          title: Use Pro Forma Invoices
          type: boolean
      required:
        - bank_account_id
        - business_unit_id
        - cancellation_confirmation_settings
        - category_ids
        - certification_course_options
        - certification_exam_options
        - checkout_donation_options
        - credit_card_processing_fee_options
        - event_registration_options
        - id
        - installment_plan_options
        - membership_package_options
        - merchant_account_id
        - name
        - order_confirmation_settings
        - return_confirmation_settings
        - shipment_confirmation_settings
        - sys_created_at
        - sys_created_by_id
        - sys_last_modified_at
        - sys_last_modified_by_id
      type: object
    StorePublic:
      additionalProperties: false
      properties:
        allow_customer_to_choose_installment_plan:
          description: If true, the customer can choose their installment plan
          title: Allow Customer To Choose Installment Plan
          type: boolean
        bank_account_id:
          description: >-
            The default bank account that the store should use to receive
            payments
          title: Bank Account
          type: string
        bill_my_organization_options:
          additionalProperties: false
          properties:
            billing_address:
              enum:
                - do not show
                - optional
                - required
              title: Billing Address
              type: string
            purchase_order_number:
              enum:
                - do not show
                - optional
                - required
              title: Purchase Order Number
              type: string
            reference_number:
              description: 'The reference #'
              title: Reference Number
              type: string
          title: Bill My Organization Options
          type: object
        bill_my_parent_organization_options:
          additionalProperties: false
          properties:
            billing_address:
              enum:
                - do not show
                - optional
                - required
              title: Billing Address
              type: string
            purchase_order_number:
              enum:
                - do not show
                - optional
                - required
              title: Purchase Order Number
              type: string
            reference_number:
              description: 'The reference #'
              title: Reference Number
              type: string
          title: Bill My Parent Organization Options
          type: object
        business_unit_id:
          description: The business unit of the store
          title: Business Unit
          type: string
        cancellation_fee_product_id:
          description: The ID of the product used for cancellation fees
          title: Cancellation Fee Product
          type: string
        categories:
          items:
            additionalProperties: false
            properties:
              default_product_sort:
                title: Default Product Sort
                type: string
              id:
                title: ID
                type: string
              name:
                title: Name
                type: string
            type: object
          type: array
        category_inclusion:
          enum:
            - include all but specified
            - include all categories
            - include only specified
          title: Category Inclusion
          type: string
        certification_course_options:
          additionalProperties: false
          properties:
            category_name:
              description: The optional name of the category
              title: Category Name
              type: string
            course_ids:
              items:
                type: string
              minItems: 0
              oneOf:
                - x-required: true
              title: Courses
              type: array
            course_restriction:
              enum:
                - exclude
                - include
                - none
              title: Course Restriction
              type: string
            course_type_ids:
              items:
                type: string
              minItems: 0
              oneOf:
                - x-required: true
              title: Course Types
              type: array
            course_type_restriction:
              enum:
                - exclude
                - include
                - none
              title: Course Type Restriction
              type: string
          title: Certification Course Options
          type: object
        certification_exam_options:
          additionalProperties: false
          properties:
            category_name:
              description: The optional name of the category
              title: Category Name
              type: string
            exam_ids:
              items:
                type: string
              minItems: 0
              oneOf:
                - x-required: true
              title: Exams
              type: array
            exam_restriction:
              enum:
                - exclude
                - include
                - none
              title: Exam Restriction
              type: string
            image_uri:
              description: The image to display in the store for exams
              title: Image Uri
              type: string
          title: Certification Exam Options
          type: object
        checkout_donation_options:
          additionalProperties: false
          properties:
            simple_checkout_donation_options:
              additionalProperties: false
              oneOf:
                - x-required: true
              properties:
                allow_user_to_specify_custom_amount:
                  description: If set, the user can specify their own custom donation
                  title: Allow User To Specify Custom Amount
                  type: boolean
                donation_ask_text:
                  description: The text shown to the user when making the donation
                  title: Donation Ask Text
                  type: string
                donation_denominations:
                  items:
                    format: double
                    type: number
                  title: Donation Denominations
                  type: array
                donation_information:
                  description: Additional information about the donation
                  title: Donation Information
                  type: string
                donation_product_id:
                  description: The misc product that should be used
                  title: Donation Product
                  type: string
                override_donation_denominations:
                  description: >-
                    If set, donation denominations are specified here and the
                    defaults are not used
                  title: Override Donation Denominations
                  type: boolean
                suggested_donation:
                  description: A suggested donation
                  format: double
                  title: Suggested Donation
                  type: number
              required:
                - donation_product_id
              title: Simple Checkout Donation Options
              type: object
            type:
              enum:
                - simple
              title: Type
              type: string
          title: Checkout Donation Options
          type: object
        credit_card_minimum_range_end:
          description: If set, the maximum amount for which credit cards can be taken
          format: float
          title: Credit Card Minimum Range End
          type: number
        credit_card_minimum_range_start:
          description: If set, the minimum amount for which credit cards can be taken
          format: float
          title: Credit Card Minimum Range Start
          type: number
        credit_card_mode:
          description: Determines whether or not credit cards are accepted
          enum:
            - disabled
            - enabled
            - range
          title: Credit Card Mode
          type: string
        credit_card_processing_fee_mode:
          description: Determines how credit card processing fees should be handled
          enum:
            - charge
            - do not charge
            - prompt user
          title: Credit Card Processing Fee Mode
          type: string
        credit_card_processing_fee_options:
          additionalProperties: false
          properties:
            fee_percentage:
              description: 'The fee percentage to charge for credit card processing '
              format: float
              title: Fee Percentage
              type: number
            maximum_fee:
              description: >-
                The maximum amount to charge. If the fee comes out to be MORE
                than this, than this amount will be charged
              format: float
              title: Maximum Fee
              type: number
            minimum_fee:
              description: >-
                The minimum amount to charge. If the fee comes out to be less
                than this, than this amount will be charged
              format: float
              title: Minimum Fee
              type: number
            product_id:
              description: The misc product to use for the credit card processing
              title: Product
              type: string
            prompt_sub_text:
              description: >-
                Additional text that is shown to the user when asking if they
                want to pay for credit card processing fees. If not set a
                default will be used
              title: Prompt Sub Text
              type: string
            prompt_text:
              description: >-
                The checkbox text to show the user when asking if they want to
                pay for credit card processing fees. If not set a default will
                be used
              title: Prompt Text
              type: string
          required:
            - fee_percentage
            - product_id
          title: Credit Card Processing Fee Options
          type: object
        currency_code:
          description: The store currency code
          title: Currency Code
          type: string
        currency_symbol:
          description: The store currency symbol
          title: Currency Symbol
          type: string
        default_certification_course_image_uri:
          description: The image to display in the store for courses
          title: Default Certification Course Image Uri
          type: string
        default_certification_exam_image_uri:
          description: The image to display in the store for exams
          title: Default Certification Exam Image Uri
          type: string
        default_event_registration_image_uri:
          description: The image to display in the store for event registrations
          title: Default Event Registration Image Uri
          type: string
        default_membership_package_image_uri:
          description: The image to display in the store for membership
          title: Default Membership Package Image Uri
          type: string
        default_merchandise_image_uri:
          description: The default merchandise image
          title: Default Merchandise Image Uri
          type: string
        default_product_sort:
          enum:
            - alphabetical ascending
            - alphabetical descending
            - newest items
            - price ascending
            - price descending
            - sort order
          title: Default Product Sort
          type: string
        disable_electronic_payment_vaulting:
          description: If set, in the portal people are not allowed to save credit cards
          title: Disable Electronic Payment Vaulting
          type: boolean
        enable_bill_my_organization:
          description: If set, the user has the option to bill their organization
          title: Enable Bill My Organization
          type: boolean
        enable_bill_my_parent_organization:
          description: >-
            If set, the user has the option to bill their organization's parent
            organization
          title: Enable Bill My Parent Organization
          type: boolean
        enable_donations_at_checkout:
          description: >-
            If selected, users will be prompted to make a donation upon checking
            out
          title: Enable Donations At Checkout
          type: boolean
        enable_electronic_checks:
          description: If set, electronic checks are allowed
          title: Enable Electronic Checks
          type: boolean
        enable_pay_later:
          description: >-
            If set, pay later is enabled on this checkout regardless of product
            settings... if not, the product settings are observed
          title: Enable Pay Later
          type: boolean
        enable_payroll_deduction:
          description: If set, payroll deduction is allowed
          title: Enable Payroll Deduction
          type: boolean
        enable_split_payments:
          description: If set, users are allowed to split payments
          title: Enable Split Payments
          type: boolean
        event_registration_options:
          additionalProperties: false
          properties:
            category_name:
              description: The optional name of the category
              title: Category Name
              type: string
            event_ids:
              items:
                type: string
              minItems: 0
              oneOf:
                - x-required: true
              title: Events
              type: array
            event_restriction:
              enum:
                - exclude
                - include
                - none
              title: Event Restriction
              type: string
            event_type_ids:
              items:
                type: string
              minItems: 0
              oneOf:
                - x-required: true
              title: Event Types
              type: array
            event_type_restriction:
              enum:
                - exclude
                - include
                - none
              title: Event Type Restriction
              type: string
          title: Event Registration Options
          type: object
        home_category_id:
          description: The home category
          title: Home Category
          type: string
        id:
          description: The id of hte store
          title: ID
          type: string
        installment_plan_options:
          items:
            additionalProperties: false
            properties:
              additional_cost:
                description: The additional cost of the installment plan
                format: double
                title: Additional Cost
                type: number
              installment_plan_id:
                description: The installment plan that this product supports
                title: Installment Plan
                type: string
              is_default:
                description: Whether this is the default installment plan option
                title: Is Default
                type: boolean
            required:
              - installment_plan_id
            type: object
          minItems: 1
          type: array
        invoice_payment_terms_id:
          description: The payment terms for invoices; if left blank, default is used
          title: Invoice Payment Terms
          type: string
        invoice_template_id:
          description: The template to use for invoices created during this process
          title: Invoice Template
          type: string
        membership_package_options:
          additionalProperties: false
          properties:
            category_name:
              description: The optional name of the category
              title: Category Name
              type: string
            membership_package_ids:
              items:
                type: string
              minItems: 0
              oneOf:
                - x-required: true
              title: Membership Packages
              type: array
            membership_package_restriction:
              enum:
                - exclude
                - include
                - none
              title: Membership Package Restriction
              type: string
            membership_type_ids:
              items:
                type: string
              minItems: 0
              oneOf:
                - x-required: true
              title: Membership Types
              type: array
            membership_type_restriction:
              enum:
                - exclude
                - include
                - none
              title: Membership Type Restriction
              type: string
          title: Membership Package Options
          type: object
        merchant_account_id:
          description: The merchant account that the store should use to receive payments
          title: Merchant Account
          type: string
        name:
          description: The name of the store
          title: Name
          type: string
        pay_later_options:
          additionalProperties: false
          properties:
            billing_address:
              enum:
                - do not show
                - optional
                - required
              title: Billing Address
              type: string
            purchase_order_number:
              enum:
                - do not show
                - optional
                - required
              title: Purchase Order Number
              type: string
            reference_number:
              description: 'The reference #'
              title: Reference Number
              type: string
          title: Pay Later Options
          type: object
        restocking_fee_product_id:
          description: The ID of the product used for restocking fees
          title: Restocking Fee Product
          type: string
        sell_certification_courses:
          description: If set, this store sells certification courses
          title: Sell Certification Courses
          type: boolean
        sell_certification_exams:
          description: If set, this store sells certification exams
          title: Sell Certification Exams
          type: boolean
        sell_event_registration_packages:
          description: If set, this store sells event registration packages
          title: Sell Event Registration Packages
          type: boolean
        sell_membership_packages:
          description: If set, this store sells membership packages
          title: Sell Membership Packages
          type: boolean
        special_instructions:
          description: Instructions shown to the user
          title: Special Instructions
          type: string
        use_pro_forma_invoices:
          description: Whether to use pro forma invoices when user elects to pay later
          title: Use Pro Forma Invoices
          type: boolean
      required:
        - bank_account_id
        - business_unit_id
        - certification_course_options
        - certification_exam_options
        - checkout_donation_options
        - credit_card_processing_fee_options
        - event_registration_options
        - installment_plan_options
        - membership_package_options
        - merchant_account_id
      type: object
    TaxClass:
      additionalProperties: false
      properties:
        custom_field_values:
          items:
            $ref: '#/components/schemas/CustomFieldValue'
          title: Custom Field Values
          type: array
        id:
          description: The unique, string identifier of this tax class
          pattern: ^[\w|-]+$
          title: ID
          type: string
        is_active:
          description: Whether or not this class is active/enabled
          title: Is Active
          type: boolean
        name:
          description: The name of the tax class
          title: Name
          type: string
        sys_bulk_load_at:
          description: >-
            If this record was loaded via bulk, the timestamp when the record
            was processed
          title: Sys Bulk Load At
          type: string
        sys_bulk_load_id:
          description: If this record was loaded via bulk, the ID of the bulk load process
          title: Sys Bulk Load
          type: string
        sys_bulk_load_pk:
          description: >-
            If this record was loaded via bulk, the tenant and key of the bulk
            load process used as a partition key
          title: Sys Bulk Load Pk
          type: string
        sys_bulk_load_record_no:
          description: >-
            If this record was loaded via bulk, the record number in the source
            file
          format: float
          title: Sys Bulk Load Record No
          type: number
        sys_bulk_load_source_file:
          description: If this record was loaded via bulk, the source file
          title: Sys Bulk Load Source File
          type: string
        sys_calculated_field_error:
          description: The error associated with the calculated field
          title: Sys Calculated Field Error
          type: string
        sys_calculated_field_errors:
          items:
            additionalProperties: false
            properties:
              error:
                title: Error
                type: string
              field:
                title: Field
                type: string
            type: object
          type: array
        sys_configuration_snapshot_id:
          description: >-
            If a snapshot was restored/applies to this record, the ID of the
            snapshot
          title: Sys Configuration Snapshot
          type: string
        sys_created_at:
          description: >-
            The date/time that this record was created, expressed in ISO-8601
            date format
          format: date-time
          title: Sys Created At
          type: string
        sys_created_by_id:
          description: The ID of the user that created this record
          title: Sys Created By
          type: string
        sys_deleted_by_id:
          description: >-
            The ID of the user that deleted (or last tried to delete) this
            object
          title: Sys Deleted By
          type: string
        sys_directive:
          description: >-
            Means for passing directive information into an object processing
            logic
          title: Sys Directive
          type: string
        sys_external_id:
          description: The ID that a record has from an external system or data import
          title: Sys External
          type: string
        sys_has_files_in_s3:
          description: >-
            If true, this record has files in S3. If false, it doesnt, so no
            need to hit S3 upon deletion
          title: Sys Has Files In S3
          type: boolean
        sys_last_bulk_data_operation_id:
          description: >-
            If this record was last touched by a bulk data operation, the ID of
            that operation
          title: Sys Last Bulk Data Operation
          type: string
        sys_last_bulk_data_operation_sys_version:
          description: >-
            If this record was last touched by a bulk data operation, the
            sys_version at the time of that operation
          title: Sys Last Bulk Data Operation Sys Version
          type: string
        sys_last_modified_at:
          description: >-
            The date/time that this record record was last modified, expressed
            in ISO-8601 date format
          format: date-time
          title: Sys Last Modified At
          type: string
        sys_last_modified_by_id:
          description: The ID of the user that last modified this record
          title: Sys Last Modified By
          type: string
        sys_last_security_context:
          description: >-
            The security context of the last insert, modify, or delete performed
            on this item
          properties: {}
          title: Sys Last Security Context
          type: object
        sys_locked:
          description: If set, this record is locked and cannot be changed via the API
          title: Sys Locked
          type: boolean
        sys_snapshot_base_version:
          description: >-
            The version to use as a base when creating a configuration snapshot;
            if not set, 1 is used. Helpful when creating a sandbox
          format: float
          title: Sys Snapshot Base Version
          type: number
        sys_version:
          description: A number representing the version of this record in the database
          format: float
          title: Sys Version
          type: number
      required:
        - id
        - name
        - sys_created_at
        - sys_created_by_id
        - sys_last_modified_at
        - sys_last_modified_by_id
      type: object
    TaxConfiguration:
      additionalProperties: false
      properties:
        default_tax_product_id:
          description: The default tax product id to use
          title: Default Tax Product
          type: string
        notes:
          description: Any notes about this configuration
          title: Notes
          type: string
        sys_bulk_load_at:
          description: >-
            If this record was loaded via bulk, the timestamp when the record
            was processed
          title: Sys Bulk Load At
          type: string
        sys_bulk_load_id:
          description: If this record was loaded via bulk, the ID of the bulk load process
          title: Sys Bulk Load
          type: string
        sys_bulk_load_pk:
          description: >-
            If this record was loaded via bulk, the tenant and key of the bulk
            load process used as a partition key
          title: Sys Bulk Load Pk
          type: string
        sys_bulk_load_record_no:
          description: >-
            If this record was loaded via bulk, the record number in the source
            file
          format: float
          title: Sys Bulk Load Record No
          type: number
        sys_bulk_load_source_file:
          description: If this record was loaded via bulk, the source file
          title: Sys Bulk Load Source File
          type: string
        sys_calculated_field_error:
          description: The error associated with the calculated field
          title: Sys Calculated Field Error
          type: string
        sys_calculated_field_errors:
          items:
            additionalProperties: false
            properties:
              error:
                title: Error
                type: string
              field:
                title: Field
                type: string
            type: object
          type: array
        sys_configuration_snapshot_id:
          description: >-
            If a snapshot was restored/applies to this record, the ID of the
            snapshot
          title: Sys Configuration Snapshot
          type: string
        sys_created_at:
          description: >-
            The date/time that this record was created, expressed in ISO-8601
            date format
          format: date-time
          title: Sys Created At
          type: string
        sys_created_by_id:
          description: The ID of the user that created this record
          title: Sys Created By
          type: string
        sys_deleted_by_id:
          description: >-
            The ID of the user that deleted (or last tried to delete) this
            object
          title: Sys Deleted By
          type: string
        sys_directive:
          description: >-
            Means for passing directive information into an object processing
            logic
          title: Sys Directive
          type: string
        sys_external_id:
          description: The ID that a record has from an external system or data import
          title: Sys External
          type: string
        sys_has_files_in_s3:
          description: >-
            If true, this record has files in S3. If false, it doesnt, so no
            need to hit S3 upon deletion
          title: Sys Has Files In S3
          type: boolean
        sys_last_bulk_data_operation_id:
          description: >-
            If this record was last touched by a bulk data operation, the ID of
            that operation
          title: Sys Last Bulk Data Operation
          type: string
        sys_last_bulk_data_operation_sys_version:
          description: >-
            If this record was last touched by a bulk data operation, the
            sys_version at the time of that operation
          title: Sys Last Bulk Data Operation Sys Version
          type: string
        sys_last_modified_at:
          description: >-
            The date/time that this record record was last modified, expressed
            in ISO-8601 date format
          format: date-time
          title: Sys Last Modified At
          type: string
        sys_last_modified_by_id:
          description: The ID of the user that last modified this record
          title: Sys Last Modified By
          type: string
        sys_last_security_context:
          description: >-
            The security context of the last insert, modify, or delete performed
            on this item
          properties: {}
          title: Sys Last Security Context
          type: object
        sys_locked:
          description: If set, this record is locked and cannot be changed via the API
          title: Sys Locked
          type: boolean
        sys_snapshot_base_version:
          description: >-
            The version to use as a base when creating a configuration snapshot;
            if not set, 1 is used. Helpful when creating a sandbox
          format: float
          title: Sys Snapshot Base Version
          type: number
        sys_version:
          description: A number representing the version of this record in the database
          format: float
          title: Sys Version
          type: number
        zones:
          items:
            additionalProperties: false
            properties:
              countries:
                items:
                  additionalProperties: false
                  properties:
                    country:
                      description: The country
                      title: Country
                      type: string
                  required:
                    - country
                  type: object
                type: array
              enabled:
                description: Whether or not this zone is enabled
                title: Enabled
                type: boolean
              id:
                description: A unique id for the zone
                title: ID
                type: string
              name:
                description: The name of the zone
                title: Name
                type: string
              postal_code_ranges:
                items:
                  additionalProperties: false
                  properties:
                    end:
                      title: End
                      type: string
                    start:
                      title: Start
                      type: string
                  required:
                    - end
                    - start
                  type: object
                type: array
              rates:
                items:
                  additionalProperties: false
                  properties:
                    classes:
                      items:
                        additionalProperties: false
                        properties:
                          class_id:
                            description: The ID of the tax class
                            title: Class
                            type: string
                          rate:
                            description: The tax rate percentage, from 0-100
                            format: double
                            maximum: 100
                            minimum: 0
                            title: Rate
                            type: number
                          tax_product_id:
                            description: The default product to use for this rate/tax class
                            title: Tax Product
                            type: string
                        required:
                          - class_id
                        type: object
                      type: array
                    enabled:
                      description: Whether or not this rate is enabled
                      title: Enabled
                      type: boolean
                    name:
                      description: The name of the rate
                      title: Name
                      type: string
                    tax_product_id:
                      description: The tax product to use for this rate
                      title: Tax Product
                      type: string
                  required:
                    - enabled
                    - name
                  type: object
                type: array
              states:
                items:
                  additionalProperties: false
                  properties:
                    state:
                      description: The state
                      title: State
                      type: string
                  required:
                    - state
                  type: object
                type: array
              tax_product_id:
                description: The default product to use for tax
                title: Tax Product
                type: string
              type:
                enum:
                  - country
                  - postal code
                  - rest of the world
                  - state
                title: Type
                type: string
            required:
              - enabled
              - id
              - name
            type: object
          type: array
      required:
        - sys_created_at
        - sys_created_by_id
        - sys_last_modified_at
        - sys_last_modified_by_id
      type: object
    TaxProduct:
      additionalProperties: false
      properties:
        business_unit_id:
          description: The business unit of the product
          title: Business Unit
          type: string
        custom_field_values:
          items:
            $ref: '#/components/schemas/CustomFieldValue'
          title: Custom Field Values
          type: array
        id:
          description: The unique, string identifier of this miscellaneous product
          pattern: ^[\w:|-]+$
          title: ID
          type: string
        is_active:
          description: Whether this product is active/used
          title: Is Active
          type: boolean
        name:
          description: The name of the miscellaneous product
          title: Name
          type: string
        notes:
          description: Notes
          title: Notes
          type: string
        sys_bulk_load_at:
          description: >-
            If this record was loaded via bulk, the timestamp when the record
            was processed
          title: Sys Bulk Load At
          type: string
        sys_bulk_load_id:
          description: If this record was loaded via bulk, the ID of the bulk load process
          title: Sys Bulk Load
          type: string
        sys_bulk_load_pk:
          description: >-
            If this record was loaded via bulk, the tenant and key of the bulk
            load process used as a partition key
          title: Sys Bulk Load Pk
          type: string
        sys_bulk_load_record_no:
          description: >-
            If this record was loaded via bulk, the record number in the source
            file
          format: float
          title: Sys Bulk Load Record No
          type: number
        sys_bulk_load_source_file:
          description: If this record was loaded via bulk, the source file
          title: Sys Bulk Load Source File
          type: string
        sys_calculated_field_error:
          description: The error associated with the calculated field
          title: Sys Calculated Field Error
          type: string
        sys_calculated_field_errors:
          items:
            additionalProperties: false
            properties:
              error:
                title: Error
                type: string
              field:
                title: Field
                type: string
            type: object
          type: array
        sys_configuration_snapshot_id:
          description: >-
            If a snapshot was restored/applies to this record, the ID of the
            snapshot
          title: Sys Configuration Snapshot
          type: string
        sys_created_at:
          description: >-
            The date/time that this record was created, expressed in ISO-8601
            date format
          format: date-time
          title: Sys Created At
          type: string
        sys_created_by_id:
          description: The ID of the user that created this record
          title: Sys Created By
          type: string
        sys_deleted_by_id:
          description: >-
            The ID of the user that deleted (or last tried to delete) this
            object
          title: Sys Deleted By
          type: string
        sys_directive:
          description: >-
            Means for passing directive information into an object processing
            logic
          title: Sys Directive
          type: string
        sys_external_id:
          description: The ID that a record has from an external system or data import
          title: Sys External
          type: string
        sys_has_files_in_s3:
          description: >-
            If true, this record has files in S3. If false, it doesnt, so no
            need to hit S3 upon deletion
          title: Sys Has Files In S3
          type: boolean
        sys_last_bulk_data_operation_id:
          description: >-
            If this record was last touched by a bulk data operation, the ID of
            that operation
          title: Sys Last Bulk Data Operation
          type: string
        sys_last_bulk_data_operation_sys_version:
          description: >-
            If this record was last touched by a bulk data operation, the
            sys_version at the time of that operation
          title: Sys Last Bulk Data Operation Sys Version
          type: string
        sys_last_modified_at:
          description: >-
            The date/time that this record record was last modified, expressed
            in ISO-8601 date format
          format: date-time
          title: Sys Last Modified At
          type: string
        sys_last_modified_by_id:
          description: The ID of the user that last modified this record
          title: Sys Last Modified By
          type: string
        sys_last_security_context:
          description: >-
            The security context of the last insert, modify, or delete performed
            on this item
          properties: {}
          title: Sys Last Security Context
          type: object
        sys_locked:
          description: If set, this record is locked and cannot be changed via the API
          title: Sys Locked
          type: boolean
        sys_snapshot_base_version:
          description: >-
            The version to use as a base when creating a configuration snapshot;
            if not set, 1 is used. Helpful when creating a sandbox
          format: float
          title: Sys Snapshot Base Version
          type: number
        sys_version:
          description: A number representing the version of this record in the database
          format: float
          title: Sys Version
          type: number
        type:
          description: The product type
          enum:
            - commerce-tax-products
          title: Type
          type: string
      required:
        - business_unit_id
        - id
        - name
        - sys_created_at
        - sys_created_by_id
        - sys_last_modified_at
        - sys_last_modified_by_id
      type: object
    Warehouse:
      additionalProperties: false
      properties:
        custom_field_values:
          items:
            $ref: '#/components/schemas/CustomFieldValue'
          title: Custom Field Values
          type: array
        default_reorder_point:
          description: The default point at which an item should be reordered
          format: float
          minimum: 0
          title: Default Reorder Point
          type: number
        description:
          description: Description of the warehouse
          title: Description
          type: string
        enable_bins:
          description: Whether or not this warehouse should track bins
          title: Enable Bins
          type: boolean
        fulfillment_priority:
          description: The order in which the warehouse should be displayed/processed
          format: float
          title: Fulfillment Priority
          type: number
        id:
          description: The unique, string identifier of this warehouse
          pattern: ^[\w_]+$
          title: ID
          type: string
        is_active:
          description: Whether or not the warehouse is active
          title: Is Active
          type: boolean
        name:
          description: The name of the warehouse
          title: Name
          type: string
        sys_bulk_load_at:
          description: >-
            If this record was loaded via bulk, the timestamp when the record
            was processed
          title: Sys Bulk Load At
          type: string
        sys_bulk_load_id:
          description: If this record was loaded via bulk, the ID of the bulk load process
          title: Sys Bulk Load
          type: string
        sys_bulk_load_pk:
          description: >-
            If this record was loaded via bulk, the tenant and key of the bulk
            load process used as a partition key
          title: Sys Bulk Load Pk
          type: string
        sys_bulk_load_record_no:
          description: >-
            If this record was loaded via bulk, the record number in the source
            file
          format: float
          title: Sys Bulk Load Record No
          type: number
        sys_bulk_load_source_file:
          description: If this record was loaded via bulk, the source file
          title: Sys Bulk Load Source File
          type: string
        sys_calculated_field_error:
          description: The error associated with the calculated field
          title: Sys Calculated Field Error
          type: string
        sys_calculated_field_errors:
          items:
            additionalProperties: false
            properties:
              error:
                title: Error
                type: string
              field:
                title: Field
                type: string
            type: object
          type: array
        sys_configuration_snapshot_id:
          description: >-
            If a snapshot was restored/applies to this record, the ID of the
            snapshot
          title: Sys Configuration Snapshot
          type: string
        sys_created_at:
          description: >-
            The date/time that this record was created, expressed in ISO-8601
            date format
          format: date-time
          title: Sys Created At
          type: string
        sys_created_by_id:
          description: The ID of the user that created this record
          title: Sys Created By
          type: string
        sys_deleted_by_id:
          description: >-
            The ID of the user that deleted (or last tried to delete) this
            object
          title: Sys Deleted By
          type: string
        sys_directive:
          description: >-
            Means for passing directive information into an object processing
            logic
          title: Sys Directive
          type: string
        sys_external_id:
          description: The ID that a record has from an external system or data import
          title: Sys External
          type: string
        sys_has_files_in_s3:
          description: >-
            If true, this record has files in S3. If false, it doesnt, so no
            need to hit S3 upon deletion
          title: Sys Has Files In S3
          type: boolean
        sys_last_bulk_data_operation_id:
          description: >-
            If this record was last touched by a bulk data operation, the ID of
            that operation
          title: Sys Last Bulk Data Operation
          type: string
        sys_last_bulk_data_operation_sys_version:
          description: >-
            If this record was last touched by a bulk data operation, the
            sys_version at the time of that operation
          title: Sys Last Bulk Data Operation Sys Version
          type: string
        sys_last_modified_at:
          description: >-
            The date/time that this record record was last modified, expressed
            in ISO-8601 date format
          format: date-time
          title: Sys Last Modified At
          type: string
        sys_last_modified_by_id:
          description: The ID of the user that last modified this record
          title: Sys Last Modified By
          type: string
        sys_last_security_context:
          description: >-
            The security context of the last insert, modify, or delete performed
            on this item
          properties: {}
          title: Sys Last Security Context
          type: object
        sys_locked:
          description: If set, this record is locked and cannot be changed via the API
          title: Sys Locked
          type: boolean
        sys_snapshot_base_version:
          description: >-
            The version to use as a base when creating a configuration snapshot;
            if not set, 1 is used. Helpful when creating a sandbox
          format: float
          title: Sys Snapshot Base Version
          type: number
        sys_version:
          description: A number representing the version of this record in the database
          format: float
          title: Sys Version
          type: number
      required:
        - id
        - name
        - sys_created_at
        - sys_created_by_id
        - sys_last_modified_at
        - sys_last_modified_by_id
      type: object
    WarehouseBin:
      additionalProperties: false
      properties:
        custom_field_values:
          items:
            $ref: '#/components/schemas/CustomFieldValue'
          title: Custom Field Values
          type: array
        description:
          description: Any notes
          title: Description
          type: string
        id:
          description: The unique, string identifier of this warehouse bin
          pattern: ^[\w|-]+$
          title: ID
          type: string
        is_active:
          description: Whether or not the warehouse bin is active
          title: Is Active
          type: boolean
        name:
          description: The name of the warehouse bin
          title: Name
          type: string
        sys_bulk_load_at:
          description: >-
            If this record was loaded via bulk, the timestamp when the record
            was processed
          title: Sys Bulk Load At
          type: string
        sys_bulk_load_id:
          description: If this record was loaded via bulk, the ID of the bulk load process
          title: Sys Bulk Load
          type: string
        sys_bulk_load_pk:
          description: >-
            If this record was loaded via bulk, the tenant and key of the bulk
            load process used as a partition key
          title: Sys Bulk Load Pk
          type: string
        sys_bulk_load_record_no:
          description: >-
            If this record was loaded via bulk, the record number in the source
            file
          format: float
          title: Sys Bulk Load Record No
          type: number
        sys_bulk_load_source_file:
          description: If this record was loaded via bulk, the source file
          title: Sys Bulk Load Source File
          type: string
        sys_calculated_field_error:
          description: The error associated with the calculated field
          title: Sys Calculated Field Error
          type: string
        sys_calculated_field_errors:
          items:
            additionalProperties: false
            properties:
              error:
                title: Error
                type: string
              field:
                title: Field
                type: string
            type: object
          type: array
        sys_configuration_snapshot_id:
          description: >-
            If a snapshot was restored/applies to this record, the ID of the
            snapshot
          title: Sys Configuration Snapshot
          type: string
        sys_created_at:
          description: >-
            The date/time that this record was created, expressed in ISO-8601
            date format
          format: date-time
          title: Sys Created At
          type: string
        sys_created_by_id:
          description: The ID of the user that created this record
          title: Sys Created By
          type: string
        sys_deleted_by_id:
          description: >-
            The ID of the user that deleted (or last tried to delete) this
            object
          title: Sys Deleted By
          type: string
        sys_directive:
          description: >-
            Means for passing directive information into an object processing
            logic
          title: Sys Directive
          type: string
        sys_external_id:
          description: The ID that a record has from an external system or data import
          title: Sys External
          type: string
        sys_has_files_in_s3:
          description: >-
            If true, this record has files in S3. If false, it doesnt, so no
            need to hit S3 upon deletion
          title: Sys Has Files In S3
          type: boolean
        sys_last_bulk_data_operation_id:
          description: >-
            If this record was last touched by a bulk data operation, the ID of
            that operation
          title: Sys Last Bulk Data Operation
          type: string
        sys_last_bulk_data_operation_sys_version:
          description: >-
            If this record was last touched by a bulk data operation, the
            sys_version at the time of that operation
          title: Sys Last Bulk Data Operation Sys Version
          type: string
        sys_last_modified_at:
          description: >-
            The date/time that this record record was last modified, expressed
            in ISO-8601 date format
          format: date-time
          title: Sys Last Modified At
          type: string
        sys_last_modified_by_id:
          description: The ID of the user that last modified this record
          title: Sys Last Modified By
          type: string
        sys_last_security_context:
          description: >-
            The security context of the last insert, modify, or delete performed
            on this item
          properties: {}
          title: Sys Last Security Context
          type: object
        sys_locked:
          description: If set, this record is locked and cannot be changed via the API
          title: Sys Locked
          type: boolean
        sys_snapshot_base_version:
          description: >-
            The version to use as a base when creating a configuration snapshot;
            if not set, 1 is used. Helpful when creating a sandbox
          format: float
          title: Sys Snapshot Base Version
          type: number
        sys_version:
          description: A number representing the version of this record in the database
          format: float
          title: Sys Version
          type: number
        warehouse_id:
          description: The warehouse in  which this bin is located
          title: Warehouse
          type: string
      required:
        - id
        - name
        - sys_created_at
        - sys_created_by_id
        - sys_last_modified_at
        - sys_last_modified_by_id
        - warehouse_id
      type: object
  securitySchemes:
    knox-authorizer:
      bearerFormat: JWT
      scheme: bearer
      type: http
info:
  description: >
    The Orders & Inventory, or Commerce, API is focused on the processing and
    fulfillment of Orders. Additionally, you can use

    this API to manage your inventory, merchandise, and online store.


    Like most of the other Rhythm apps, the Commerce API includes endpoints for
    Query Definitions. These endpoints are commonly

    used to retrieve saved queries, which can then be executed using the Query
    endpoints of the System API. 
  title: Commerce (Orders & Inventory)
  version: v1-2025-04-18
openapi: 3.0.0
paths:
  /cancellationFees/{tenantId}:
    get:
      description: >-
        This method will scan all cancellation fees and and return them to the
        caller.
      operationId: listCancellationFees
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned.
          schema:
            type: string
        - in: query
          name: exclusiveStartKey
          required: false
          description: The start key, if you're making a subsequent request
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                items:
                  $ref: '#/components/schemas/CancellationFee'
                type: array
          description: The cancellation feeswere retrieved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to add contact role based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Gets all of the cancellation fees in the system.
      tags:
        - Cancellation Fees
    post:
      description: >-
        This method will auto-generate an ID and create a new cancellation fee.
        If an ID is specified for the cancellation fee, an error will be thrown.
      operationId: createCancellationFee
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CancellationFee'
        description: The cancellation fee that you would like to be saved.
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CancellationFee'
          description: The cancellation fee was saved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The cancellation fee you supplied was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The cancellation fee could not be saved because it refers to/depends
            on a non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to add cancellation fee based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Creates a new cancellation fee record that does not already exist.
      tags:
        - Cancellation Fees
  /cancellationFees/{tenantId}/batch:
    post:
      description: TAllows you to perform up to 100 parallel patch/delete operations
      operationId: executeBatchOperations
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/BatchOperationRequest'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BatchOperationResponse'
          description: Request completed successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The cancellation fee could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve cancellation fee based on
            tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Execute Batch Operations
      tags:
        - Cancellation Fees
  /cancellationFees/{tenantId}/{id}:
    delete:
      description: This method will delete a cancellation fee with the specified ID.
      operationId: deleteCancellationFee
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the cancellation fee to delete.
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                type: string
          description: The cancellation fee was deleted successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The cancellation fee could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The cancellation fee could not be deleted because other objects
            refers to/depends on this one.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to delete cancellation fee based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a cancellation fee from the system by its ID.
      tags:
        - Cancellation Fees
    get:
      description: >-
        This method will look up a cancellation fee by the specified ID and
        return it back.
      operationId: getCancellationFee
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the cancellation fee to return.
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned.
          schema:
            type: string
        - in: query
          name: consistentRead
          required: false
          description: Indicates the API should force a consistent read on the data source.
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CancellationFee'
          description: The cancellation fee was retrieved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The cancellation fee could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve cancellation fee based on
            tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a cancellation fee from the system by its ID.
      tags:
        - Cancellation Fees
    patch:
      description: >-
        This method will patch an existing cancellation fee with the specified
        ID, using the HTTP PATCH specification.
      operationId: patchCancellationFee
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the cancellation fee to patch.
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/PatchDirectiveArray'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CancellationFee'
          description: The cancellation fee was patched successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The JSON patch directive you supplied was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The cancellation fee could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The cancellation fee could not be saved because it refers to/depends
            on a non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve cancellation fee based on
            tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Partially updates a cancellation fee with the specified ID.
      tags:
        - Cancellation Fees
    put:
      description: >-
        This method will update an existing cancellation fee with the specified
        ID.
      operationId: updateCancellationFee
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the cancellation fee to update.
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CancellationFee'
        description: The updated cancellation fee that will be saved.
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CancellationFee'
          description: The cancellation fee was updated successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The cancellation fee supplied was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The cancellation fee could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The cancellation fee could not be saved because it refers to/depends
            on a non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve cancellation fee based on
            tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Updates a cancellation fee with the specified ID.
      tags:
        - Cancellation Fees
  /cancellations/warmUpStepFunctions:
    post:
      operationId: warmUpStepFunctions
      responses:
        '200':
          description: Success
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Request limit exceeded... please try your request again in a few
            seconds
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: An internal server error occured.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Initiates workflow to warm up inventory transactions
      tags:
        - Cancellations
  /cancellations/{tenantId}:
    post:
      description: >-
        This method will auto-generate an ID and create a new cancellation. If
        an ID is specified for the cancellation, an error will be thrown.
      operationId: processCancellation
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/Cancellation'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StepFunctionExecutionToken'
          description: The cancellation was saved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The cancellation you supplied was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The cancellation could not be saved because it refers to/depends on
            a non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to add cancellation based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Processes a cancellation
      tags:
        - Cancellations
  /cancellations/{tenantId}/batch:
    post:
      description: TAllows you to perform up to 100 parallel patch/delete operations
      operationId: executeBatchOperations
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/BatchOperationRequest'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BatchOperationResponse'
          description: Request completed successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The cancellation could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve cancellation based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Execute Batch Operations
      tags:
        - Cancellations
  /cancellations/{tenantId}/order/{order_id}:
    get:
      description: Returns a list of records with the specified order_id
      operationId: listCancellationsByOrderId
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The tenant
          schema:
            type: string
        - in: path
          name: order_id
          required: true
          description: The order_id to use to for record lookup
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned
          schema:
            type: string
        - in: query
          name: exclusiveStartKey
          required: false
          description: If paging, this allows you to return the next set of results
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListCancellationsResponse'
          description: The records were retrieved successfully
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: Unable to locate records
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve records based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a list of records with the specified order_id
      tags:
        - Cancellations
  /cancellations/{tenantId}/previewEmail:
    post:
      description: Sends out a preview of the CRC notification email
      operationId: previewEmail
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The tenant
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/PreviewEmailRequest'
      responses:
        '200':
          description: The record was retrieved successfully
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: Unable to locate any organizations with the specified domain
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve records based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Sends out a preview of the CRC notification email
      tags:
        - Cancellations
  /cancellations/{tenantId}/sync:
    post:
      description: >-
        This method will auto-generate an ID and create a new cancellation. If
        an ID is specified for the cancellation, an error will be thrown.
      operationId: processCancellationSync
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/Cancellation'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Cancellation'
          description: The cancellation was saved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The cancellation you supplied was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The cancellation could not be saved because it refers to/depends on
            a non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to add cancellation based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Processes a cancellation
      tags:
        - Cancellations
  /cancellations/{tenantId}/{id}:
    delete:
      description: This method will delete a cancellation with the specified ID.
      operationId: deleteCancellation
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the cancellation to delete.
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                type: string
          description: The cancellation was deleted successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The cancellation could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The cancellation could not be deleted because other objects refers
            to/depends on this one.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to delete cancellation based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a cancellation from the system by its ID.
      tags:
        - Cancellations
    get:
      description: >-
        This method will look up a cancellation by the specified ID and return
        it back.
      operationId: getCancellation
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the cancellation to return.
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned.
          schema:
            type: string
        - in: query
          name: consistentRead
          required: false
          description: Indicates the API should force a consistent read on the data source.
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Cancellation'
          description: The cancellation was retrieved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The cancellation could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve cancellation based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a cancellation from the system by its ID.
      tags:
        - Cancellations
    patch:
      description: >-
        This method will patch an existing cancellation with the specified ID,
        using the HTTP PATCH specification.
      operationId: patchCancellation
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the cancellation to patch.
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/PatchDirectiveArray'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Cancellation'
          description: The cancellation was patched successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The JSON patch directive you supplied was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The cancellation could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The cancellation could not be saved because it refers to/depends on
            a non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve cancellation based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Partially updates a cancellation with the specified ID.
      tags:
        - Cancellations
    put:
      description: This method will update an existing cancellation with the specified ID.
      operationId: updateCancellation
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the cancellation to update.
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Cancellation'
        description: The updated cancellation that will be saved.
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Cancellation'
          description: The cancellation was updated successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The cancellation supplied was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The cancellation could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The cancellation could not be saved because it refers to/depends on
            a non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve cancellation based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Updates a cancellation with the specified ID.
      tags:
        - Cancellations
  /carts/{tenantId}:
    post:
      description: >-
        This method will auto-generate an ID and create a new cart. If an ID is
        specified for the cart, an error will be thrown.
      operationId: createCart
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Cart'
        description: The cart that you would like to be saved.
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Cart'
          description: The cart was saved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The cart you supplied was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '405':
          description: The request method is not allowed.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The cart could not be saved because it refers to/depends on a
            non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to add cart based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Creates a new cart record that does not already exist.
      tags:
        - Carts
  /carts/{tenantId}/batch:
    post:
      description: TAllows you to perform up to 100 parallel patch/delete operations
      operationId: executeBatchOperations
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/BatchOperationRequest'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BatchOperationResponse'
          description: Request completed successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The cart could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve cart based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Execute Batch Operations
      tags:
        - Carts
  /carts/{tenantId}/{id}:
    delete:
      description: This method will delete a cart with the specified ID.
      operationId: deleteCart
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the cart to delete.
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                type: string
          description: The cart was deleted successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The cart could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '405':
          description: The request method is not allowed.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The cart could not be deleted because other objects refers
            to/depends on this one.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to delete cart based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a cart from the system by its ID.
      tags:
        - Carts
    get:
      description: This method will look up a cart by the specified ID and return it back.
      operationId: getCart
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the cart to return.
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned.
          schema:
            type: string
        - in: query
          name: consistentRead
          required: false
          description: Indicates the API should force a consistent read on the data source.
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Cart'
          description: The cart was retrieved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The cart could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve cart based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a cart from the system by its ID.
      tags:
        - Carts
    patch:
      description: >-
        This method will patch an existing cart with the specified ID, using the
        HTTP PATCH specification.
      operationId: patchCart
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the cart to patch.
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/PatchDirectiveArray'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Cart'
          description: The cart was patched successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The JSON patch directive you supplied was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The cart could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '405':
          description: The request method is not allowed.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The cart could not be saved because it refers to/depends on a
            non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve cart based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Partially updates a cart with the specified ID.
      tags:
        - Carts
    put:
      description: This method will update an existing cart with the specified ID.
      operationId: updateCart
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the cart to update.
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Cart'
        description: The updated cart that will be saved.
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Cart'
          description: The cart was updated successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The cart supplied was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The cart could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '405':
          description: The request method is not allowed.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The cart could not be saved because it refers to/depends on a
            non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve cart based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Updates a cart with the specified ID.
      tags:
        - Carts
  /couponCodeGenProcesses/{tenantId}:
    get:
      description: >-
        This method will scan all coupon code gen processes and and return them
        to the caller.
      operationId: listCouponCodeGenProcesses
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned.
          schema:
            type: string
        - in: query
          name: exclusiveStartKey
          required: false
          description: The start key, if you're making a subsequent request
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                items:
                  $ref: '#/components/schemas/CouponCodeGenProcess'
                type: array
          description: The coupon code gen processeswere retrieved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to add contact role based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Gets all of the coupon code gen processes in the system.
      tags:
        - Coupon Code Gen Processes
    post:
      description: >-
        This method will auto-generate an ID and create a new coupon code gen
        process. If an ID is specified for the coupon code gen process, an error
        will be thrown.
      operationId: createCouponCodeGenProcess
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CouponCodeGenProcess'
        description: The coupon code gen process that you would like to be saved.
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CouponCodeGenProcess'
          description: The coupon code gen process was saved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The coupon code gen process you supplied was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The coupon code gen process could not be saved because it refers
            to/depends on a non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to add coupon code gen process based on
            tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: >-
        Creates a new coupon code gen process record that does not already
        exist.
      tags:
        - Coupon Code Gen Processes
  /couponCodeGenProcesses/{tenantId}/batch:
    post:
      description: TAllows you to perform up to 100 parallel patch/delete operations
      operationId: executeBatchOperations
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/BatchOperationRequest'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BatchOperationResponse'
          description: Request completed successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The coupon code gen process could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve coupon code gen process based
            on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Execute Batch Operations
      tags:
        - Coupon Code Gen Processes
  /couponCodeGenProcesses/{tenantId}/{id}:
    delete:
      description: This method will delete a coupon code gen process with the specified ID.
      operationId: deleteCouponCodeGenProcess
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the coupon code gen process to delete.
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                type: string
          description: The coupon code gen process was deleted successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The coupon code gen process could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The coupon code gen process could not be deleted because other
            objects refers to/depends on this one.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to delete coupon code gen process based on
            tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a coupon code gen process from the system by its ID.
      tags:
        - Coupon Code Gen Processes
    get:
      description: >-
        This method will look up a coupon code gen process by the specified ID
        and return it back.
      operationId: getCouponCodeGenProcess
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the coupon code gen process to return.
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned.
          schema:
            type: string
        - in: query
          name: consistentRead
          required: false
          description: Indicates the API should force a consistent read on the data source.
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CouponCodeGenProcess'
          description: The coupon code gen process was retrieved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The coupon code gen process could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve coupon code gen process based
            on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a coupon code gen process from the system by its ID.
      tags:
        - Coupon Code Gen Processes
    patch:
      description: >-
        This method will patch an existing coupon code gen process with the
        specified ID, using the HTTP PATCH specification.
      operationId: patchCouponCodeGenProcess
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the coupon code gen process to patch.
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/PatchDirectiveArray'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CouponCodeGenProcess'
          description: The coupon code gen process was patched successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The JSON patch directive you supplied was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The coupon code gen process could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The coupon code gen process could not be saved because it refers
            to/depends on a non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve coupon code gen process based
            on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Partially updates a coupon code gen process with the specified ID.
      tags:
        - Coupon Code Gen Processes
    put:
      description: >-
        This method will update an existing coupon code gen process with the
        specified ID.
      operationId: updateCouponCodeGenProcess
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the coupon code gen process to update.
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CouponCodeGenProcess'
        description: The updated coupon code gen process that will be saved.
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CouponCodeGenProcess'
          description: The coupon code gen process was updated successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The coupon code gen process supplied was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The coupon code gen process could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The coupon code gen process could not be saved because it refers
            to/depends on a non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve coupon code gen process based
            on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Updates a coupon code gen process with the specified ID.
      tags:
        - Coupon Code Gen Processes
  /couponCodes/{tenantId}:
    get:
      description: Returns a list of records with the specified tenant_id
      operationId: listCodesByTenantId
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The tenant
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned
          schema:
            type: string
        - in: query
          name: exclusiveStartKey
          required: false
          description: If paging, this allows you to return the next set of results
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListCouponCodesResponse'
          description: The records were retrieved successfully
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: Unable to locate records
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve records based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a list of records with the specified tenant_id
      tags:
        - Coupon Codes
    post:
      description: >-
        This method will auto-generate an ID and create a new coupon code. If an
        ID is specified for the coupon code, an error will be thrown.
      operationId: createCouponCode
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CouponCode'
        description: The coupon code that you would like to be saved.
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CouponCode'
          description: The coupon code was saved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The coupon code you supplied was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The coupon code could not be saved because it refers to/depends on a
            non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to add coupon code based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Creates a new coupon code record that does not already exist.
      tags:
        - Coupon Codes
  /couponCodes/{tenantId}/batch:
    post:
      description: TAllows you to perform up to 100 parallel patch/delete operations
      operationId: executeBatchOperations
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/BatchOperationRequest'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BatchOperationResponse'
          description: Request completed successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The coupon code could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve coupon code based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Execute Batch Operations
      tags:
        - Coupon Codes
  /couponCodes/{tenantId}/contact/{contact_id}:
    get:
      description: Returns a list of records with the specified contact_id
      operationId: listCodesByContactId
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The tenant
          schema:
            type: string
        - in: path
          name: contact_id
          required: true
          description: The contact_id to use to for record lookup
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned
          schema:
            type: string
        - in: query
          name: exclusiveStartKey
          required: false
          description: If paging, this allows you to return the next set of results
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListCouponCodesResponse'
          description: The records were retrieved successfully
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: Unable to locate records
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve records based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a list of records with the specified contact_id
      tags:
        - Coupon Codes
  /couponCodes/{tenantId}/coupon/{coupon_type}/{coupon_id}:
    get:
      description: Returns a list of records with the specified coupon_id
      operationId: listCodesByCouponId
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The tenant
          schema:
            type: string
        - in: path
          name: coupon_type
          required: true
          description: The coupon_type to use to for record lookup
          schema:
            type: string
        - in: path
          name: coupon_id
          required: true
          description: The coupon_id to use to for record lookup
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned
          schema:
            type: string
        - in: query
          name: exclusiveStartKey
          required: false
          description: If paging, this allows you to return the next set of results
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListCouponCodesResponse'
          description: The records were retrieved successfully
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: Unable to locate records
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve records based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a list of records with the specified coupon_id
      tags:
        - Coupon Codes
  /couponCodes/{tenantId}/order/{order_id}:
    get:
      description: Returns a list of records with the specified order_id
      operationId: listCodesByOrderId
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The tenant
          schema:
            type: string
        - in: path
          name: order_id
          required: true
          description: The order_id to use to for record lookup
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned
          schema:
            type: string
        - in: query
          name: exclusiveStartKey
          required: false
          description: If paging, this allows you to return the next set of results
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListCouponCodesResponse'
          description: The records were retrieved successfully
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: Unable to locate records
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve records based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a list of records with the specified order_id
      tags:
        - Coupon Codes
  /couponCodes/{tenantId}/organization/{organization_id}:
    get:
      description: Returns a list of records with the specified organization_id
      operationId: listCodesByOrganizationId
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The tenant
          schema:
            type: string
        - in: path
          name: organization_id
          required: true
          description: The organization_id to use to for record lookup
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned
          schema:
            type: string
        - in: query
          name: exclusiveStartKey
          required: false
          description: If paging, this allows you to return the next set of results
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListCouponCodesResponse'
          description: The records were retrieved successfully
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: Unable to locate records
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve records based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a list of records with the specified organization_id
      tags:
        - Coupon Codes
  /couponCodes/{tenantId}/previewEmail:
    post:
      description: Sends out a preview of the email
      operationId: previewEmail
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The tenant
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/PreviewEmailRequest'
      responses:
        '200':
          description: The record was retrieved successfully
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: Unable to locate any organizations with the specified domain
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve records based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Sends out a preview of the email
      tags:
        - Coupon Codes
  /couponCodes/{tenantId}/{id}:
    delete:
      description: This method will delete a coupon code with the specified ID.
      operationId: deleteCouponCode
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the coupon code to delete.
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                type: string
          description: The coupon code was deleted successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The coupon code could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The coupon code could not be deleted because other objects refers
            to/depends on this one.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to delete coupon code based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a coupon code from the system by its ID.
      tags:
        - Coupon Codes
    get:
      description: >-
        This method will look up a coupon code by the specified ID and return it
        back.
      operationId: getCouponCode
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the coupon code to return.
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned.
          schema:
            type: string
        - in: query
          name: consistentRead
          required: false
          description: Indicates the API should force a consistent read on the data source.
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CouponCode'
          description: The coupon code was retrieved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The coupon code could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve coupon code based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a coupon code from the system by its ID.
      tags:
        - Coupon Codes
    patch:
      description: >-
        This method will patch an existing coupon code with the specified ID,
        using the HTTP PATCH specification.
      operationId: patchCouponCode
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the coupon code to patch.
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/PatchDirectiveArray'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CouponCode'
          description: The coupon code was patched successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The JSON patch directive you supplied was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The coupon code could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The coupon code could not be saved because it refers to/depends on a
            non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve coupon code based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Partially updates a coupon code with the specified ID.
      tags:
        - Coupon Codes
    put:
      description: This method will update an existing coupon code with the specified ID.
      operationId: updateCouponCode
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the coupon code to update.
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CouponCode'
        description: The updated coupon code that will be saved.
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CouponCode'
          description: The coupon code was updated successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The coupon code supplied was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The coupon code could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The coupon code could not be saved because it refers to/depends on a
            non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve coupon code based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Updates a coupon code with the specified ID.
      tags:
        - Coupon Codes
  /coupons/{tenantId}:
    get:
      description: This method will scan all coupons and and return them to the caller.
      operationId: listCoupons
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned.
          schema:
            type: string
        - in: query
          name: exclusiveStartKey
          required: false
          description: The start key, if you're making a subsequent request
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                items:
                  $ref: '#/components/schemas/Coupon'
                type: array
          description: The couponswere retrieved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to add contact role based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Gets all of the coupons in the system.
      tags:
        - Coupons
    post:
      description: >-
        This method will auto-generate an ID and create a new coupon. If an ID
        is specified for the coupon, an error will be thrown.
      operationId: createCoupon
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Coupon'
        description: The coupon that you would like to be saved.
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Coupon'
          description: The coupon was saved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The coupon you supplied was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The coupon could not be saved because it refers to/depends on a
            non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to add coupon based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Creates a new coupon record that does not already exist.
      tags:
        - Coupons
  /coupons/{tenantId}/batch:
    post:
      description: TAllows you to perform up to 100 parallel patch/delete operations
      operationId: executeBatchOperations
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/BatchOperationRequest'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BatchOperationResponse'
          description: Request completed successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The coupon could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve coupon based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Execute Batch Operations
      tags:
        - Coupons
  /coupons/{tenantId}/{id}:
    delete:
      description: This method will delete a coupon with the specified ID.
      operationId: deleteCoupon
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the coupon to delete.
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                type: string
          description: The coupon was deleted successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The coupon could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The coupon could not be deleted because other objects refers
            to/depends on this one.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to delete coupon based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a coupon from the system by its ID.
      tags:
        - Coupons
    get:
      description: >-
        This method will look up a coupon by the specified ID and return it
        back.
      operationId: getCoupon
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the coupon to return.
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned.
          schema:
            type: string
        - in: query
          name: consistentRead
          required: false
          description: Indicates the API should force a consistent read on the data source.
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Coupon'
          description: The coupon was retrieved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The coupon could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve coupon based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a coupon from the system by its ID.
      tags:
        - Coupons
    patch:
      description: >-
        This method will patch an existing coupon with the specified ID, using
        the HTTP PATCH specification.
      operationId: patchCoupon
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the coupon to patch.
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/PatchDirectiveArray'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Coupon'
          description: The coupon was patched successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The JSON patch directive you supplied was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The coupon could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The coupon could not be saved because it refers to/depends on a
            non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve coupon based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Partially updates a coupon with the specified ID.
      tags:
        - Coupons
    put:
      description: This method will update an existing coupon with the specified ID.
      operationId: updateCoupon
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the coupon to update.
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Coupon'
        description: The updated coupon that will be saved.
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Coupon'
          description: The coupon was updated successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The coupon supplied was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The coupon could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The coupon could not be saved because it refers to/depends on a
            non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve coupon based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Updates a coupon with the specified ID.
      tags:
        - Coupons
  /discountProducts/{tenantId}:
    get:
      description: >-
        This method will scan all discount products and and return them to the
        caller.
      operationId: listDiscountProducts
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned.
          schema:
            type: string
        - in: query
          name: exclusiveStartKey
          required: false
          description: The start key, if you're making a subsequent request
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                items:
                  $ref: '#/components/schemas/DiscountProduct'
                type: array
          description: The discount productswere retrieved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to add contact role based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Gets all of the discount products in the system.
      tags:
        - Discount Products
    post:
      description: >-
        This method will auto-generate an ID and create a new discount product.
        If an ID is specified for the discount product, an error will be thrown.
      operationId: createDiscountProduct
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DiscountProduct'
        description: The discount product that you would like to be saved.
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DiscountProduct'
          description: The discount product was saved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The discount product you supplied was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The discount product could not be saved because it refers to/depends
            on a non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to add discount product based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Creates a new discount product record that does not already exist.
      tags:
        - Discount Products
  /discountProducts/{tenantId}/batch:
    post:
      description: TAllows you to perform up to 100 parallel patch/delete operations
      operationId: executeBatchOperations
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/BatchOperationRequest'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BatchOperationResponse'
          description: Request completed successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The discount product could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve discount product based on
            tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Execute Batch Operations
      tags:
        - Discount Products
  /discountProducts/{tenantId}/{id}:
    delete:
      description: This method will delete a discount product with the specified ID.
      operationId: deleteDiscountProduct
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the discount product to delete.
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                type: string
          description: The discount product was deleted successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The discount product could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The discount product could not be deleted because other objects
            refers to/depends on this one.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to delete discount product based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a discount product from the system by its ID.
      tags:
        - Discount Products
    get:
      description: >-
        This method will look up a discount product by the specified ID and
        return it back.
      operationId: getDiscountProduct
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the discount product to return.
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned.
          schema:
            type: string
        - in: query
          name: consistentRead
          required: false
          description: Indicates the API should force a consistent read on the data source.
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DiscountProduct'
          description: The discount product was retrieved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The discount product could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve discount product based on
            tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a discount product from the system by its ID.
      tags:
        - Discount Products
    patch:
      description: >-
        This method will patch an existing discount product with the specified
        ID, using the HTTP PATCH specification.
      operationId: patchDiscountProduct
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the discount product to patch.
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/PatchDirectiveArray'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DiscountProduct'
          description: The discount product was patched successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The JSON patch directive you supplied was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The discount product could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The discount product could not be saved because it refers to/depends
            on a non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve discount product based on
            tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Partially updates a discount product with the specified ID.
      tags:
        - Discount Products
    put:
      description: >-
        This method will update an existing discount product with the specified
        ID.
      operationId: updateDiscountProduct
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the discount product to update.
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DiscountProduct'
        description: The updated discount product that will be saved.
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DiscountProduct'
          description: The discount product was updated successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The discount product supplied was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The discount product could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The discount product could not be saved because it refers to/depends
            on a non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve discount product based on
            tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Updates a discount product with the specified ID.
      tags:
        - Discount Products
  /entitlementTypes/{tenantId}:
    get:
      description: >-
        This method will scan all entitlement types and and return them to the
        caller.
      operationId: listEntitlementTypes
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned.
          schema:
            type: string
        - in: query
          name: exclusiveStartKey
          required: false
          description: The start key, if you're making a subsequent request
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                items:
                  $ref: '#/components/schemas/EntitlementType'
                type: array
          description: The entitlement typeswere retrieved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to add contact role based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Gets all of the entitlement types in the system.
      tags:
        - Entitlement Types
    post:
      description: >-
        This method will auto-generate an ID and create a new entitlement type.
        If an ID is specified for the entitlement type, an error will be thrown.
      operationId: createEntitlementType
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/EntitlementType'
        description: The entitlement type that you would like to be saved.
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EntitlementType'
          description: The entitlement type was saved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The entitlement type you supplied was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The entitlement type could not be saved because it refers to/depends
            on a non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to add entitlement type based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Creates a new entitlement type record that does not already exist.
      tags:
        - Entitlement Types
  /entitlementTypes/{tenantId}/batch:
    post:
      description: TAllows you to perform up to 100 parallel patch/delete operations
      operationId: executeBatchOperations
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/BatchOperationRequest'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BatchOperationResponse'
          description: Request completed successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The entitlement type could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve entitlement type based on
            tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Execute Batch Operations
      tags:
        - Entitlement Types
  /entitlementTypes/{tenantId}/{id}:
    delete:
      description: This method will delete a entitlement type with the specified ID.
      operationId: deleteEntitlementType
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the entitlement type to delete.
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                type: string
          description: The entitlement type was deleted successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The entitlement type could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The entitlement type could not be deleted because other objects
            refers to/depends on this one.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to delete entitlement type based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a entitlement type from the system by its ID.
      tags:
        - Entitlement Types
    get:
      description: >-
        This method will look up a entitlement type by the specified ID and
        return it back.
      operationId: getEntitlementType
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the entitlement type to return.
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned.
          schema:
            type: string
        - in: query
          name: consistentRead
          required: false
          description: Indicates the API should force a consistent read on the data source.
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EntitlementType'
          description: The entitlement type was retrieved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The entitlement type could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve entitlement type based on
            tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a entitlement type from the system by its ID.
      tags:
        - Entitlement Types
    patch:
      description: >-
        This method will patch an existing entitlement type with the specified
        ID, using the HTTP PATCH specification.
      operationId: patchEntitlementType
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the entitlement type to patch.
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/PatchDirectiveArray'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EntitlementType'
          description: The entitlement type was patched successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The JSON patch directive you supplied was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The entitlement type could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The entitlement type could not be saved because it refers to/depends
            on a non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve entitlement type based on
            tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Partially updates a entitlement type with the specified ID.
      tags:
        - Entitlement Types
    put:
      description: >-
        This method will update an existing entitlement type with the specified
        ID.
      operationId: updateEntitlementType
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the entitlement type to update.
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/EntitlementType'
        description: The updated entitlement type that will be saved.
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EntitlementType'
          description: The entitlement type was updated successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The entitlement type supplied was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The entitlement type could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The entitlement type could not be saved because it refers to/depends
            on a non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve entitlement type based on
            tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Updates a entitlement type with the specified ID.
      tags:
        - Entitlement Types
  /entitlements/{tenantId}:
    post:
      description: >-
        This method will auto-generate an ID and create a new entitlement. If an
        ID is specified for the entitlement, an error will be thrown.
      operationId: createEntitlement
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Entitlement'
        description: The entitlement that you would like to be saved.
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Entitlement'
          description: The entitlement was saved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The entitlement you supplied was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The entitlement could not be saved because it refers to/depends on a
            non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to add entitlement based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Creates a new entitlement record that does not already exist.
      tags:
        - Entitlements
  /entitlements/{tenantId}/batch:
    post:
      description: TAllows you to perform up to 100 parallel patch/delete operations
      operationId: executeBatchOperations
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/BatchOperationRequest'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BatchOperationResponse'
          description: Request completed successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The entitlement could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve entitlement based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Execute Batch Operations
      tags:
        - Entitlements
  /entitlements/{tenantId}/checkEntitlement/{owner_type}/{owner_id}/{type_id}:
    get:
      description: Returns a list of records with the specified owner_entitlement_type
      operationId: checkEntitlement
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The tenant
          schema:
            type: string
        - in: path
          name: owner_type
          required: true
          description: The owner_entitlement_type to use to for record lookup
          schema:
            type: string
        - in: path
          name: owner_id
          required: true
          description: The owner_entitlement_type to use to for record lookup
          schema:
            type: string
        - in: path
          name: type_id
          required: true
          description: The owner_entitlement_type to use to for record lookup
          schema:
            type: string
        - in: query
          name: quantity
          required: false
          description: The quantity to check
          schema:
            type: string
      responses:
        '200':
          description: The records were retrieved successfully
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: Unable to locate records
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve records based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Check that a contact/organization has an entitlement
      tags:
        - Entitlements
  /entitlements/{tenantId}/contact/{contact_id}:
    get:
      description: Returns a list of records with the specified contact_id
      operationId: listEntitlementsByContactId
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The tenant
          schema:
            type: string
        - in: path
          name: contact_id
          required: true
          description: The contact_id to use to for record lookup
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned
          schema:
            type: string
        - in: query
          name: exclusiveStartKey
          required: false
          description: If paging, this allows you to return the next set of results
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListEntitlementsResponse'
          description: The records were retrieved successfully
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: Unable to locate records
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve records based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a list of records with the specified contact_id
      tags:
        - Entitlements
  /entitlements/{tenantId}/order/{order_id}:
    get:
      description: Returns a list of records with the specified order_id
      operationId: listEntitlementsByOrderId
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The tenant
          schema:
            type: string
        - in: path
          name: order_id
          required: true
          description: The order_id to use to for record lookup
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned
          schema:
            type: string
        - in: query
          name: exclusiveStartKey
          required: false
          description: If paging, this allows you to return the next set of results
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListEntitlementsResponse'
          description: The records were retrieved successfully
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: Unable to locate records
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve records based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a list of records with the specified order_id
      tags:
        - Entitlements
  /entitlements/{tenantId}/organization/{organization_id}:
    get:
      description: Returns a list of records with the specified organization_id
      operationId: listEntitlementsByOrganizationId
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The tenant
          schema:
            type: string
        - in: path
          name: organization_id
          required: true
          description: The organization_id to use to for record lookup
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned
          schema:
            type: string
        - in: query
          name: exclusiveStartKey
          required: false
          description: If paging, this allows you to return the next set of results
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListEntitlementsResponse'
          description: The records were retrieved successfully
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: Unable to locate records
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve records based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a list of records with the specified organization_id
      tags:
        - Entitlements
  /entitlements/{tenantId}/ownerEntitlementType/{owner_type}/{owner_id}/{type_id}:
    get:
      description: Returns a list of records with the specified owner_entitlement_type
      operationId: listEntitlementsByOwnerEntitlementType
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The tenant
          schema:
            type: string
        - in: path
          name: owner_type
          required: true
          description: The owner_entitlement_type to use to for record lookup
          schema:
            type: string
        - in: path
          name: owner_id
          required: true
          description: The owner_entitlement_type to use to for record lookup
          schema:
            type: string
        - in: path
          name: type_id
          required: true
          description: The owner_entitlement_type to use to for record lookup
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned
          schema:
            type: string
        - in: query
          name: exclusiveStartKey
          required: false
          description: If paging, this allows you to return the next set of results
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListEntitlementsResponse'
          description: The records were retrieved successfully
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: Unable to locate records
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve records based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a list of records with the specified owner_entitlement_type
      tags:
        - Entitlements
  /entitlements/{tenantId}/{id}:
    delete:
      description: This method will delete a entitlement with the specified ID.
      operationId: deleteEntitlement
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the entitlement to delete.
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                type: string
          description: The entitlement was deleted successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The entitlement could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The entitlement could not be deleted because other objects refers
            to/depends on this one.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to delete entitlement based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a entitlement from the system by its ID.
      tags:
        - Entitlements
    get:
      description: >-
        This method will look up a entitlement by the specified ID and return it
        back.
      operationId: getEntitlement
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the entitlement to return.
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned.
          schema:
            type: string
        - in: query
          name: consistentRead
          required: false
          description: Indicates the API should force a consistent read on the data source.
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Entitlement'
          description: The entitlement was retrieved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The entitlement could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve entitlement based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a entitlement from the system by its ID.
      tags:
        - Entitlements
    patch:
      description: >-
        This method will patch an existing entitlement with the specified ID,
        using the HTTP PATCH specification.
      operationId: patchEntitlement
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the entitlement to patch.
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/PatchDirectiveArray'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Entitlement'
          description: The entitlement was patched successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The JSON patch directive you supplied was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The entitlement could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The entitlement could not be saved because it refers to/depends on a
            non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve entitlement based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Partially updates a entitlement with the specified ID.
      tags:
        - Entitlements
    put:
      description: This method will update an existing entitlement with the specified ID.
      operationId: updateEntitlement
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the entitlement to update.
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Entitlement'
        description: The updated entitlement that will be saved.
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Entitlement'
          description: The entitlement was updated successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The entitlement supplied was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The entitlement could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The entitlement could not be saved because it refers to/depends on a
            non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve entitlement based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Updates a entitlement with the specified ID.
      tags:
        - Entitlements
  /inventoryTransactions/warmUpStepFunctions:
    post:
      operationId: warmUpInventoryTransactions
      responses:
        '200':
          description: Success
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Request limit exceeded... please try your request again in a few
            seconds
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: An internal server error occured.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Initiates workflow to warm up inventory transactions
      tags:
        - Inventory Transactions
  /inventoryTransactions/{tenantId}/batch:
    post:
      description: TAllows you to perform up to 100 parallel patch/delete operations
      operationId: executeBatchOperations
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/BatchOperationRequest'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BatchOperationResponse'
          description: Request completed successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The inventory transaction could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve inventory transaction based on
            tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Execute Batch Operations
      tags:
        - Inventory Transactions
  /inventoryTransactions/{tenantId}/openPurchaseOrders/{product_type}/{product_id}:
    get:
      description: Returns a list of records with the specified open_purchase_order_id
      operationId: listOpenPurchaseOrdersForProduct
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The tenant
          schema:
            type: string
        - in: path
          name: product_type
          required: true
          description: Produc type
          schema:
            type: string
        - in: path
          name: product_id
          required: true
          description: Product ID
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned
          schema:
            type: string
        - in: query
          name: exclusiveStartKey
          required: false
          description: If paging, this allows you to return the next set of results
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListInventoryTransactionsResponse'
          description: The records were retrieved successfully
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: Unable to locate records
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve records based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a list of records with the specified open_purchase_order_id
      tags:
        - Inventory Transactions
  /inventoryTransactions/{tenantId}/order/{order_id}:
    get:
      description: Returns a list of records with the specified order_id
      operationId: listTransactionsByOrderId
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The tenant
          schema:
            type: string
        - in: path
          name: order_id
          required: true
          description: The order_id to use to for record lookup
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned
          schema:
            type: string
        - in: query
          name: exclusiveStartKey
          required: false
          description: If paging, this allows you to return the next set of results
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListInventoryTransactionsResponse'
          description: The records were retrieved successfully
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: Unable to locate records
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve records based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a list of records with the specified order_id
      tags:
        - Inventory Transactions
  /inventoryTransactions/{tenantId}/process:
    post:
      description: >-
        This method will auto-generate an ID and create a new inventory
        transaction. If an ID is specified for the inventory transaction, an
        error will be thrown.
      operationId: processInventoryTransaction
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/InventoryTransaction'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StepFunctionExecutionToken'
          description: The inventory transaction was saved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The inventory transaction you supplied was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '405':
          description: The request method is not allowed.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The inventory transaction could not be saved because it refers
            to/depends on a non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to add inventory transaction based on
            tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Initiates workflow to process an inventory transaction
      tags:
        - Inventory Transactions
  /inventoryTransactions/{tenantId}/process/sync:
    post:
      description: >-
        This method will auto-generate an ID and create a new inventory
        transaction. If an ID is specified for the inventory transaction, an
        error will be thrown.
      operationId: processInventoryTransactionSync
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/InventoryTransaction'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InventoryTransaction'
          description: The inventory transaction was saved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The inventory transaction you supplied was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '405':
          description: The request method is not allowed.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The inventory transaction could not be saved because it refers
            to/depends on a non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to add inventory transaction based on
            tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Initiates workflow to process an inventory transaction
      tags:
        - Inventory Transactions
  /inventoryTransactions/{tenantId}/productInventory/{product_inventory_id}:
    get:
      description: Returns a list of records with the specified product_inventory_id
      operationId: listTransactionsByProductInventoryId
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The tenant
          schema:
            type: string
        - in: path
          name: product_inventory_id
          required: true
          description: The product_inventory_id to use to for record lookup
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned
          schema:
            type: string
        - in: query
          name: exclusiveStartKey
          required: false
          description: If paging, this allows you to return the next set of results
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListInventoryTransactionsResponse'
          description: The records were retrieved successfully
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: Unable to locate records
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve records based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a list of records with the specified product_inventory_id
      tags:
        - Inventory Transactions
  /inventoryTransactions/{tenantId}/{id}:
    get:
      description: >-
        This method will look up a inventory transaction by the specified ID and
        return it back.
      operationId: getInventoryTransaction
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the inventory transaction to return.
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned.
          schema:
            type: string
        - in: query
          name: consistentRead
          required: false
          description: Indicates the API should force a consistent read on the data source.
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InventoryTransaction'
          description: The inventory transaction was retrieved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The inventory transaction could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve inventory transaction based on
            tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a inventory transaction from the system by its ID.
      tags:
        - Inventory Transactions
    patch:
      description: >-
        This method will patch an existing inventory transaction with the
        specified ID, using the HTTP PATCH specification.
      operationId: patchInventoryTransaction
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the inventory transaction to patch.
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/PatchDirectiveArray'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InventoryTransaction'
          description: The inventory transaction was patched successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The JSON patch directive you supplied was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The inventory transaction could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '405':
          description: The request method is not allowed.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The inventory transaction could not be saved because it refers
            to/depends on a non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve inventory transaction based on
            tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Partially updates a inventory transaction with the specified ID.
      tags:
        - Inventory Transactions
    put:
      description: >-
        This method will update an existing inventory transaction with the
        specified ID.
      operationId: updateInventoryTransaction
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the inventory transaction to update.
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/InventoryTransaction'
        description: The updated inventory transaction that will be saved.
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InventoryTransaction'
          description: The inventory transaction was updated successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The inventory transaction supplied was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The inventory transaction could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '405':
          description: The request method is not allowed.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The inventory transaction could not be saved because it refers
            to/depends on a non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve inventory transaction based on
            tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Updates a inventory transaction with the specified ID.
      tags:
        - Inventory Transactions
  /merchandise/{tenantId}:
    get:
      description: This method will scan all merchandise and and return them to the caller.
      operationId: listMerchandise
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned.
          schema:
            type: string
        - in: query
          name: exclusiveStartKey
          required: false
          description: The start key, if you're making a subsequent request
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                items:
                  $ref: '#/components/schemas/Merchandise'
                type: array
          description: The merchandisewere retrieved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to add contact role based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Gets all of the merchandise in the system.
      tags:
        - Merchandise
    post:
      description: >-
        This method will auto-generate an ID and create a new merchandise. If an
        ID is specified for the merchandise, an error will be thrown.
      operationId: createMerchandise
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Merchandise'
        description: The merchandise that you would like to be saved.
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Merchandise'
          description: The merchandise was saved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The merchandise you supplied was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The merchandise could not be saved because it refers to/depends on a
            non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to add merchandise based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Creates a new merchandise record that does not already exist.
      tags:
        - Merchandise
  /merchandise/{tenantId}/batch:
    post:
      description: TAllows you to perform up to 100 parallel patch/delete operations
      operationId: executeBatchOperations
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/BatchOperationRequest'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BatchOperationResponse'
          description: Request completed successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The merchandise could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve merchandise based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Execute Batch Operations
      tags:
        - Merchandise
  /merchandise/{tenantId}/category/{category_id}:
    get:
      description: Returns a list of records with the specified category_id
      operationId: listMerchandiseByCategoryId
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The tenant
          schema:
            type: string
        - in: path
          name: category_id
          required: true
          description: The category_id to use to for record lookup
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                items:
                  $ref: '#/components/schemas/Merchandise'
                type: array
          description: The records were retrieved successfully
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: Unable to locate records
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve records based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a list of records with the specified category_id
      tags:
        - Merchandise
  /merchandise/{tenantId}/public:
    get:
      description: Lists all merchandise
      operationId: listAllPublicMerchandise
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The tenant
          schema:
            type: string
        - in: query
          name: exclusiveStartKey
          required: false
          description: The start key, if you're making a subsequent request
          schema:
            type: string
        - in: query
          name: categoryIds
          required: false
          description: The category IDs to filter
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListMerchandisePublicResponse'
          description: The merchandise was retrieved
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: Unable to locate records
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve records based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      summary: Lists all merchandise
      tags:
        - Merchandise
  /merchandise/{tenantId}/public/{id}:
    get:
      description: Gets merchandise info
      operationId: get
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The tenant
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The id of the merchandise
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MerchandisePublic'
          description: The merchandise was retrieved
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: Unable to locate records
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve records based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      summary: Gets merchandise info
      tags:
        - Merchandise
  /merchandise/{tenantId}/search:
    post:
      description: Searches for merchandise using predefined parameters
      operationId: searchForMerchandise
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: query
          name: exclusiveStartKey
          required: false
          description: The start key for the search, for paging support
          schema:
            type: string
        - in: query
          name: fieldsToReturn
          required: false
          description: '  The fields that you want to retrieve; if omitted, the entire object is returned'
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/MerchandiseSearchParameters'
        description: The merchandise that you would like to be saved.
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PagedMerchandiseSearchResults'
          description: The merchandise search was saved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The merchandise you supplied was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The merchandise could not be saved because it refers to/depends on a
            non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to add merchandise based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Searches for merchandise using predefined parameters
      tags:
        - Merchandise
  /merchandise/{tenantId}/{id}:
    delete:
      description: This method will delete a merchandise with the specified ID.
      operationId: deleteMerchandise
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the merchandise to delete.
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                type: string
          description: The merchandise was deleted successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The merchandise could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The merchandise could not be deleted because other objects refers
            to/depends on this one.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to delete merchandise based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a merchandise from the system by its ID.
      tags:
        - Merchandise
    get:
      description: >-
        This method will look up a merchandise by the specified ID and return it
        back.
      operationId: getMerchandise
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the merchandise to return.
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned.
          schema:
            type: string
        - in: query
          name: consistentRead
          required: false
          description: Indicates the API should force a consistent read on the data source.
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Merchandise'
          description: The merchandise was retrieved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The merchandise could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve merchandise based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a merchandise from the system by its ID.
      tags:
        - Merchandise
    patch:
      description: >-
        This method will patch an existing merchandise with the specified ID,
        using the HTTP PATCH specification.
      operationId: patchMerchandise
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the merchandise to patch.
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/PatchDirectiveArray'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Merchandise'
          description: The merchandise was patched successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The JSON patch directive you supplied was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The merchandise could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The merchandise could not be saved because it refers to/depends on a
            non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve merchandise based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Partially updates a merchandise with the specified ID.
      tags:
        - Merchandise
    put:
      description: This method will update an existing merchandise with the specified ID.
      operationId: updateMerchandise
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the merchandise to update.
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Merchandise'
        description: The updated merchandise that will be saved.
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Merchandise'
          description: The merchandise was updated successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The merchandise supplied was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The merchandise could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The merchandise could not be saved because it refers to/depends on a
            non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve merchandise based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Updates a merchandise with the specified ID.
      tags:
        - Merchandise
  /orders/{tenantId}:
    get:
      description: This method will scan all orders and and return them to the caller.
      operationId: listOrders
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned.
          schema:
            type: string
        - in: query
          name: exclusiveStartKey
          required: false
          description: The start key, if you're making a subsequent request
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                items:
                  $ref: '#/components/schemas/Order'
                type: array
          description: The orderswere retrieved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to add contact role based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Gets all of the orders in the system.
      tags:
        - Orders
    post:
      description: >-
        This method will auto-generate an ID and create a new order. If an ID is
        specified for the order, an error will be thrown.
      operationId: processOrder
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/Order'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StepFunctionExecutionToken'
          description: The order process was started
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The order you supplied was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The order could not be saved because it refers to/depends on a
            non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to add order based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Processes a order
      tags:
        - Orders
  /orders/{tenantId}/batch:
    post:
      description: TAllows you to perform up to 100 parallel patch/delete operations
      operationId: executeBatchOperations
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/BatchOperationRequest'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BatchOperationResponse'
          description: Request completed successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The order could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve order based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Execute Batch Operations
      tags:
        - Orders
  /orders/{tenantId}/billToContact/{bill_to_contact_id}:
    get:
      description: Returns a list of records with the specified bill_to_contact_id
      operationId: listOrdersByBillToContactId
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The tenant
          schema:
            type: string
        - in: path
          name: bill_to_contact_id
          required: true
          description: The bill_to_contact_id to use to for record lookup
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned
          schema:
            type: string
        - in: query
          name: exclusiveStartKey
          required: false
          description: If paging, this allows you to return the next set of results
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListOrdersResponse'
          description: The records were retrieved successfully
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: Unable to locate records
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve records based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a list of records with the specified bill_to_contact_id
      tags:
        - Orders
  /orders/{tenantId}/billToOrganization/{bill_to_organization_id}:
    get:
      description: Returns a list of records with the specified bill_to_organization_id
      operationId: listOrdersByBillToOrganizationId
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The tenant
          schema:
            type: string
        - in: path
          name: bill_to_organization_id
          required: true
          description: The bill_to_organization_id to use to for record lookup
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned
          schema:
            type: string
        - in: query
          name: exclusiveStartKey
          required: false
          description: If paging, this allows you to return the next set of results
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListOrdersResponse'
          description: The records were retrieved successfully
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: Unable to locate records
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve records based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a list of records with the specified bill_to_organization_id
      tags:
        - Orders
  /orders/{tenantId}/checkEligibility/{customerType}/{contactOrOrganizationId}:
    post:
      description: >-
        This method takes in an order that has not yet been placed, and returns
        information about order pricing and available options
      operationId: checkEligibility
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed
          schema:
            type: string
        - in: path
          name: customerType
          required: true
          description: The type of customer
          schema:
            type: string
        - in: path
          name: contactOrOrganizationId
          required: true
          description: The contact or organization ID
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/checkEligibilityCriteria'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CheckEligibilityResponse'
          description: The order preview was successful
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The order record you supplied was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The order could not be saved because it refers to/depends on a
            non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to add order based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: >-
        Checks to see whether or not a person is eligible based on specified
        criteria
      tags:
        - Orders
  /orders/{tenantId}/checkPrice/{customerType}/{billToId}:
    post:
      description: >-
        This method takes in an order that has not yet been placed, and returns
        information about order pricing and available options
      operationId: checkPrice
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed
          schema:
            type: string
        - in: path
          name: customerType
          required: true
          description: The type of customer
          schema:
            type: string
        - in: path
          name: billToId
          required: true
          description: The bill to contact ID
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/checkEligibilityCriteria'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CheckPriceResponse'
          description: The order preview was successful
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The order record you supplied was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The order could not be saved because it refers to/depends on a
            non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to add order based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: >-
        Checks to see whether or not a person is eligible based on specified
        criteria
      tags:
        - Orders
  /orders/{tenantId}/close/{id}:
    post:
      description: Closes an order
      operationId: closeOrder
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The id of the order
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Order'
          description: The order preview was successful
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The order record you supplied was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The order could not be saved because it refers to/depends on a
            non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to add order based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Closes an Order
      tags:
        - Orders
  /orders/{tenantId}/coupon/{coupon_type}/{coupon_id}:
    get:
      description: Returns a list of records with the specified coupon_id
      operationId: listOrdersByCouponId
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The tenant
          schema:
            type: string
        - in: path
          name: coupon_type
          required: true
          description: The type of coupon
          schema:
            type: string
        - in: path
          name: coupon_id
          required: true
          description: The coupon_id to use to for record lookup
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned
          schema:
            type: string
        - in: query
          name: exclusiveStartKey
          required: false
          description: If paging, this allows you to return the next set of results
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListOrdersResponse'
          description: The records were retrieved successfully
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: Unable to locate records
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve records based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a list of records with the specified coupon_id
      tags:
        - Orders
  /orders/{tenantId}/couponCodeUsages/{coupon_code_id}:
    get:
      description: Returns a list of records with the specified coupon_code_id
      operationId: listCouponCodeUsagesByCouponCode
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The tenant
          schema:
            type: string
        - in: path
          name: coupon_code_id
          required: true
          description: The coupon_code_id to use to for record lookup
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned
          schema:
            type: string
        - in: query
          name: exclusiveStartKey
          required: false
          description: If paging, this allows you to return the next set of results
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListCouponUsagesResponse'
          description: The records were retrieved successfully
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: Unable to locate records
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve records based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a list of records with the specified coupon_code_id
      tags:
        - Orders
  /orders/{tenantId}/couponUsages/{coupon_type}/{coupon_id}:
    get:
      description: Returns a list of records with the specified coupon id
      operationId: listCouponUsagesByCoupon
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The tenant
          schema:
            type: string
        - in: path
          name: coupon_type
          required: true
          description: The coupon_type to use to for record lookup
          schema:
            type: string
        - in: path
          name: coupon_id
          required: true
          description: The coupon_id to use to for record lookup
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned
          schema:
            type: string
        - in: query
          name: exclusiveStartKey
          required: false
          description: If paging, this allows you to return the next set of results
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListCouponUsagesResponse'
          description: The records were retrieved successfully
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: Unable to locate records
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve records based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a list of records with the specified coupon id
      tags:
        - Orders
  /orders/{tenantId}/customer/{customerType}/{customerId}:
    get:
      description: Includes orders where ship to
      operationId: listOrdersByCustomer
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The tenant
          schema:
            type: string
        - in: path
          name: customerType
          required: true
          description: The bill_to_contact_id to use to for record lookup
          schema:
            type: string
        - in: path
          name: customerId
          required: true
          description: The customer id
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned
          schema:
            type: string
        - in: query
          name: exclusiveStartKey
          required: false
          description: If paging, this allows you to return the next set of results
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListOrdersResponse'
          description: The records were retrieved successfully
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: Unable to locate records
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve records based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: List orders by customer
      tags:
        - Orders
  /orders/{tenantId}/installmentSchedule/{installment_schedule_id}:
    get:
      description: Returns a list of records with the specified installment_schedule_id
      operationId: listOrdersByInstallmentScheduleId
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The tenant
          schema:
            type: string
        - in: path
          name: installment_schedule_id
          required: true
          description: The installment_schedule_id to use to for record lookup
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned
          schema:
            type: string
        - in: query
          name: exclusiveStartKey
          required: false
          description: If paging, this allows you to return the next set of results
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListOrdersResponse'
          description: The records were retrieved successfully
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: Unable to locate records
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve records based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a list of records with the specified installment_schedule_id
      tags:
        - Orders
  /orders/{tenantId}/portal/contact/{portalContactId}:
    get:
      description: >-
        This method will scan all orders and and return them to the caller for a
        given contact.
      operationId: listOrdersForPortal
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: portalContactId
          required: true
          description: The contact to use
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned.
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListOrdersResponse'
          description: The orderswere retrieved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to add contact role based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Gets all of the orders in the system for a given contact.
      tags:
        - Orders
  /orders/{tenantId}/portal/contact/{portalContactId}/{id}:
    get:
      description: >-
        This method will look up a order by the specified ID and return it back
        (for a portal contact)
      operationId: getOrderForPortal
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: portalContactId
          required: true
          description: The contact to use
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the order to return.
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned.
          schema:
            type: string
        - in: query
          name: consistentRead
          required: false
          description: Indicates the API should force a consistent read on the data source.
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Order'
          description: The order was retrieved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The order could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve order based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a order from the system by its ID for a given contact.
      tags:
        - Orders
  /orders/{tenantId}/portal/organization/{portalOrganizationId}:
    get:
      description: >-
        This method will scan all orders and and return them to the caller for a
        given organization.
      operationId: listOrdersForPortalByOrganization
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: portalOrganizationId
          required: true
          description: The organization to use
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned.
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListOrdersResponse'
          description: The orderswere retrieved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to add organization role based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Gets all of the orders in the system for a given organization.
      tags:
        - Orders
  /orders/{tenantId}/portal/organization/{portalOrganizationId}/{id}:
    get:
      description: >-
        This method will look up a order by the specified ID and return it back
        (for a portal organization)
      operationId: getOrderForPortal
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: portalOrganizationId
          required: true
          description: The organization to use
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the order to return.
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned.
          schema:
            type: string
        - in: query
          name: consistentRead
          required: false
          description: Indicates the API should force a consistent read on the data source.
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Order'
          description: The order was retrieved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The order could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve order based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a order from the system by its ID for a given organization.
      tags:
        - Orders
  /orders/{tenantId}/preview:
    post:
      description: >-
        This method takes in an order that has not yet been placed, and returns
        information about order pricing and available options
      operationId: previewOrder
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/Order'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/OrderPreviewResponse'
          description: The order preview was successful
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The order record you supplied was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The order could not be saved because it refers to/depends on a
            non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to add order based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Preview an order
      tags:
        - Orders
  /orders/{tenantId}/previewOrderConfirmationEmail:
    post:
      description: Sends out a preview of the CRC notification email
      operationId: previewOrderConfirmationEmail
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The tenant
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PreviewOrderConfirmationEmailRequest'
        description: The domain_name to use to for record lookup
        required: true
      responses:
        '200':
          description: The record was retrieved successfully
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: Unable to locate any organizations with the specified domain
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve records based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Sends out a preview of the CRC notification email
      tags:
        - Orders
  /orders/{tenantId}/previewProductConfirmationEmail:
    post:
      description: Sends out a preview of the CRC notification email
      operationId: previewProductConfirmationEmail
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The tenant
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PreviewProductConfirmationEmailRequest'
        description: The domain_name to use to for record lookup
        required: true
      responses:
        '200':
          description: The record was retrieved successfully
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: Unable to locate any organizations with the specified domain
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve records based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Sends out a preview of the CRC notification email
      tags:
        - Orders
  /orders/{tenantId}/previewWithOverride:
    post:
      description: >-
        This is designed to be run by administrators; allows an order to e
        previewed but have prices or quantities overridden
      operationId: previewOrderWithOverride
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/OrderWithOverride'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/OrderPreviewResponse'
          description: The order preview was successful
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The order record you supplied was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The order could not be saved because it refers to/depends on a
            non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to add order based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Previews an order with line item overrides
      tags:
        - Orders
  /orders/{tenantId}/processWithOverride:
    post:
      description: >-
        This is designed to be run by administrators; allows an order to e
        processed but have prices or quantities overridden
      operationId: processOrderWithOverride
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/OrderWithOverride'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StepFunctionExecutionToken'
          description: The order preview was successful
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The order record you supplied was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The order could not be saved because it refers to/depends on a
            non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to add order based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Processes an order with line item overrides
      tags:
        - Orders
  /orders/{tenantId}/processWithOverride/sync:
    post:
      description: >-
        This is designed to be run by administrators; allows an order to e
        processed but have prices or quantities overridden
      operationId: processOrderWithOverrideSync
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/OrderWithOverride'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StepFunctionExecutionToken'
          description: The order preview was successful
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The order record you supplied was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The order could not be saved because it refers to/depends on a
            non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to add order based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Processes an order with line item overrides
      tags:
        - Orders
  /orders/{tenantId}/public/checkAvailability:
    post:
      description: Takes in merchandise and determines it's availability
      operationId: getMerchandiseAvailability
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/Order'
      responses:
        '200':
          description: The order preview was successful
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The order record you supplied was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The order could not be saved because it refers to/depends on a
            non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to add order based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      summary: Gets the availability of merchandise
      tags:
        - Orders
  /orders/{tenantId}/public/describeProducts:
    post:
      description: >-
        This method takes in an order that has not yet been placed, and returns
        information about order pricing and available options
      operationId: describeProducts
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ProductDescriptionRequest'
        description: The products you want to describe
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProductDescriptionResponse'
          description: The order preview was successful
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The order record you supplied was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The order could not be saved because it refers to/depends on a
            non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to add order based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      summary: Preview an order
      tags:
        - Orders
  /orders/{tenantId}/public/preview:
    post:
      description: >-
        This method takes in an order that has not yet been placed, and returns
        information about order pricing and available options
      operationId: previewOrder
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/Order'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/OrderPreviewResponse'
          description: The order preview was successful
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The order record you supplied was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The order could not be saved because it refers to/depends on a
            non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to add order based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      summary: Previews an order publicly
      tags:
        - Orders
  /orders/{tenantId}/retroactivelyApplyCoupon:
    post:
      description: >-
        This is designed to be run by administrators; allows an order to e
        processed but have prices or quantities overridden
      operationId: retroactivelyApplyCouponToOrder
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/RetroCouponRequest'
        description: The order that you would like to be saved.
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StepFunctionExecutionToken'
          description: The order preview was successful
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The order record you supplied was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The order could not be saved because it refers to/depends on a
            non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to add order based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Applies a coupon to an existing order
      tags:
        - Orders
  /orders/{tenantId}/retroactivelyApplyCoupon/sync:
    post:
      description: >-
        This is designed to be run by administrators; allows an order to e
        processed but have prices or quantities overridden
      operationId: retroactivelyApplyCouponToOrderSync
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/Order'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StepFunctionExecutionToken'
          description: The order preview was successful
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The order record you supplied was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The order could not be saved because it refers to/depends on a
            non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to add order based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Applies a coupon to an existing order
      tags:
        - Orders
  /orders/{tenantId}/search:
    post:
      description: Searches for orders using predefined parameters
      operationId: searchForOrders
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: query
          name: exclusiveStartKey
          required: false
          description: The start key for the search, for paging support
          schema:
            type: string
        - in: query
          name: fieldsToReturn
          required: false
          description: '  The fields that you want to retrieve; if omitted, the entire object is returned'
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/OrderSearchParameters'
        description: The order that you would like to be saved.
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PagedOrderSearchResults'
          description: The order search was saved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The order you supplied was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The order could not be saved because it refers to/depends on a
            non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to add order based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Searches for orders using predefined parameters
      tags:
        - Orders
  /orders/{tenantId}/shipToContact/{ship_to_contact_id}:
    get:
      description: Returns a list of records with the specified ship_to_contact_id
      operationId: listOrdersByShipToContactId
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The tenant
          schema:
            type: string
        - in: path
          name: ship_to_contact_id
          required: true
          description: The ship_to_contact_id to use to for record lookup
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned
          schema:
            type: string
        - in: query
          name: exclusiveStartKey
          required: false
          description: If paging, this allows you to return the next set of results
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListOrdersResponse'
          description: The records were retrieved successfully
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: Unable to locate records
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve records based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a list of records with the specified ship_to_contact_id
      tags:
        - Orders
  /orders/{tenantId}/shipToOrganization/{ship_to_organization_id}:
    get:
      description: Returns a list of records with the specified ship_to_organization_id
      operationId: listOrdersByShipToOrganizationId
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The tenant
          schema:
            type: string
        - in: path
          name: ship_to_organization_id
          required: true
          description: The ship_to_organization_id to use to for record lookup
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned
          schema:
            type: string
        - in: query
          name: exclusiveStartKey
          required: false
          description: If paging, this allows you to return the next set of results
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListOrdersResponse'
          description: The records were retrieved successfully
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: Unable to locate records
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve records based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a list of records with the specified ship_to_organization_id
      tags:
        - Orders
  /orders/{tenantId}/shippable/status/{status}:
    get:
      description: Returns a list of shippable orders with the specified status
      operationId: listShippableOrdersByStatus
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The tenant
          schema:
            type: string
        - in: path
          name: status
          required: true
          description: The status to use to for record lookup
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListOrdersResponse'
          description: The records were retrieved successfully
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: Unable to locate records
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve records based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a list of shippable orders with the specified status
      tags:
        - Orders
  /orders/{tenantId}/shippableStatus/{shippable_status}:
    get:
      description: Returns a list of records with the specified shippable_status
      operationId: listOrdersByShippableStatus
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The tenant
          schema:
            type: string
        - in: path
          name: shippable_status
          required: true
          description: The shippable_status to use to for record lookup
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned
          schema:
            type: string
        - in: query
          name: exclusiveStartKey
          required: false
          description: If paging, this allows you to return the next set of results
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListOrdersResponse'
          description: The records were retrieved successfully
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: Unable to locate records
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve records based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a list of records with the specified shippable_status
      tags:
        - Orders
  /orders/{tenantId}/sync:
    post:
      description: >-
        This method will auto-generate an ID and create a new order. If an ID is
        specified for the order, an error will be thrown.
      operationId: processOrderSync
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/Order'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Order'
          description: The order was saved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The order you supplied was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The order could not be saved because it refers to/depends on a
            non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to add order based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Creates a new order that doesn't already exist
      tags:
        - Orders
  /orders/{tenantId}/void/{id}:
    post:
      description: This method voids an order
      operationId: voidOrder
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The  id of the order that you would like to be voided.
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Order'
          description: The order void was successful
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The order record you supplied was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The order could not be saved because it refers to/depends on a
            non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to add order based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Void an order
      tags:
        - Orders
  /orders/{tenantId}/{id}:
    delete:
      description: This method will delete a order with the specified ID.
      operationId: deleteOrder
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the order to delete.
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                type: string
          description: The order was deleted successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The order could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The order could not be deleted because other objects refers
            to/depends on this one.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to delete order based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a order from the system by its ID.
      tags:
        - Orders
    get:
      description: This method will look up a order by the specified ID and return it back.
      operationId: getOrder
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the order to return.
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned.
          schema:
            type: string
        - in: query
          name: consistentRead
          required: false
          description: Indicates the API should force a consistent read on the data source.
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Order'
          description: The order was retrieved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The order could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve order based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a order from the system by its ID.
      tags:
        - Orders
    patch:
      description: >-
        This method will patch an existing order with the specified ID, using
        the HTTP PATCH specification.
      operationId: patchOrder
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the order to patch.
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/PatchDirectiveArray'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Order'
          description: The order was patched successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The JSON patch directive you supplied was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The order could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The order could not be saved because it refers to/depends on a
            non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve order based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Partially updates a order with the specified ID.
      tags:
        - Orders
    put:
      description: This method will update an existing order with the specified ID.
      operationId: updateOrder
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the order to update.
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Order'
        description: The updated order that will be saved.
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Order'
          description: The order was updated successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The order supplied was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The order could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The order could not be saved because it refers to/depends on a
            non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve order based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Updates a order with the specified ID.
      tags:
        - Orders
  /productCategories/{tenantId}:
    get:
      description: >-
        This method will scan all product categories and and return them to the
        caller.
      operationId: listProductCategories
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned.
          schema:
            type: string
        - in: query
          name: exclusiveStartKey
          required: false
          description: The start key, if you're making a subsequent request
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                items:
                  $ref: '#/components/schemas/ProductCategory'
                type: array
          description: The product categorieswere retrieved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to add contact role based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Gets all of the product categories in the system.
      tags:
        - Product Categories
    post:
      description: >-
        This method will auto-generate an ID and create a new product category.
        If an ID is specified for the product category, an error will be thrown.
      operationId: createProductCategory
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ProductCategory'
        description: The product category that you would like to be saved.
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProductCategory'
          description: The product category was saved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The product category you supplied was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '405':
          description: The request method is not allowed.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The product category could not be saved because it refers to/depends
            on a non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to add product category based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Creates a new product category record that does not already exist.
      tags:
        - Product Categories
  /productCategories/{tenantId}/batch:
    post:
      description: TAllows you to perform up to 100 parallel patch/delete operations
      operationId: executeBatchOperations
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/BatchOperationRequest'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BatchOperationResponse'
          description: Request completed successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The product category could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve product category based on
            tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Execute Batch Operations
      tags:
        - Product Categories
  /productCategories/{tenantId}/{id}:
    delete:
      description: This method will delete a product category with the specified ID.
      operationId: deleteProductCategory
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the product category to delete.
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                type: string
          description: The product category was deleted successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The product category could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '405':
          description: The request method is not allowed.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The product category could not be deleted because other objects
            refers to/depends on this one.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to delete product category based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a product category from the system by its ID.
      tags:
        - Product Categories
    get:
      description: >-
        This method will look up a product category by the specified ID and
        return it back.
      operationId: getProductCategory
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the product category to return.
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned.
          schema:
            type: string
        - in: query
          name: consistentRead
          required: false
          description: Indicates the API should force a consistent read on the data source.
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProductCategory'
          description: The product category was retrieved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The product category could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve product category based on
            tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a product category from the system by its ID.
      tags:
        - Product Categories
    patch:
      description: >-
        This method will patch an existing product category with the specified
        ID, using the HTTP PATCH specification.
      operationId: patchProductCategory
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the product category to patch.
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/PatchDirectiveArray'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProductCategory'
          description: The product category was patched successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The JSON patch directive you supplied was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The product category could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '405':
          description: The request method is not allowed.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The product category could not be saved because it refers to/depends
            on a non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve product category based on
            tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Partially updates a product category with the specified ID.
      tags:
        - Product Categories
    put:
      description: >-
        This method will update an existing product category with the specified
        ID.
      operationId: updateProductCategory
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the product category to update.
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ProductCategory'
        description: The updated product category that will be saved.
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProductCategory'
          description: The product category was updated successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The product category supplied was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The product category could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '405':
          description: The request method is not allowed.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The product category could not be saved because it refers to/depends
            on a non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve product category based on
            tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Updates a product category with the specified ID.
      tags:
        - Product Categories
  /productConfirmationEmails/{tenantId}:
    get:
      description: >-
        This method will scan all product confirmation emails and and return
        them to the caller.
      operationId: listProductConfirmationEmails
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned.
          schema:
            type: string
        - in: query
          name: exclusiveStartKey
          required: false
          description: The start key, if you're making a subsequent request
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                items:
                  $ref: '#/components/schemas/ProductConfirmationEmail'
                type: array
          description: The product confirmation emailswere retrieved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to add contact role based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Gets all of the product confirmation emails in the system.
      tags:
        - Product Confirmation Emails
    post:
      description: >-
        This method will auto-generate an ID and create a new product
        confirmation email. If an ID is specified for the product confirmation
        email, an error will be thrown.
      operationId: createProductConfirmationEmail
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ProductConfirmationEmail'
        description: The product confirmation email that you would like to be saved.
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProductConfirmationEmail'
          description: The product confirmation email was saved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The product confirmation email you supplied was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The product confirmation email could not be saved because it refers
            to/depends on a non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to add product confirmation email based on
            tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: >-
        Creates a new product confirmation email record that does not already
        exist.
      tags:
        - Product Confirmation Emails
  /productConfirmationEmails/{tenantId}/batch:
    post:
      description: TAllows you to perform up to 100 parallel patch/delete operations
      operationId: executeBatchOperations
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/BatchOperationRequest'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BatchOperationResponse'
          description: Request completed successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The product confirmation email could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve product confirmation email
            based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Execute Batch Operations
      tags:
        - Product Confirmation Emails
  /productConfirmationEmails/{tenantId}/{id}:
    delete:
      description: >-
        This method will delete a product confirmation email with the specified
        ID.
      operationId: deleteProductConfirmationEmail
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the product confirmation email to delete.
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                type: string
          description: The product confirmation email was deleted successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The product confirmation email could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The product confirmation email could not be deleted because other
            objects refers to/depends on this one.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to delete product confirmation email based
            on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a product confirmation email from the system by its ID.
      tags:
        - Product Confirmation Emails
    get:
      description: >-
        This method will look up a product confirmation email by the specified
        ID and return it back.
      operationId: getProductConfirmationEmail
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the product confirmation email to return.
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned.
          schema:
            type: string
        - in: query
          name: consistentRead
          required: false
          description: Indicates the API should force a consistent read on the data source.
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProductConfirmationEmail'
          description: The product confirmation email was retrieved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The product confirmation email could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve product confirmation email
            based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a product confirmation email from the system by its ID.
      tags:
        - Product Confirmation Emails
    patch:
      description: >-
        This method will patch an existing product confirmation email with the
        specified ID, using the HTTP PATCH specification.
      operationId: patchProductConfirmationEmail
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the product confirmation email to patch.
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/PatchDirectiveArray'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProductConfirmationEmail'
          description: The product confirmation email was patched successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The JSON patch directive you supplied was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The product confirmation email could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The product confirmation email could not be saved because it refers
            to/depends on a non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve product confirmation email
            based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Partially updates a product confirmation email with the specified ID.
      tags:
        - Product Confirmation Emails
    put:
      description: >-
        This method will update an existing product confirmation email with the
        specified ID.
      operationId: updateProductConfirmationEmail
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the product confirmation email to update.
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ProductConfirmationEmail'
        description: The updated product confirmation email that will be saved.
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProductConfirmationEmail'
          description: The product confirmation email was updated successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The product confirmation email supplied was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The product confirmation email could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The product confirmation email could not be saved because it refers
            to/depends on a non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve product confirmation email
            based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Updates a product confirmation email with the specified ID.
      tags:
        - Product Confirmation Emails
  /productInventories/{tenantId}:
    get:
      description: >-
        This method will scan all product inventories and and return them to the
        caller.
      operationId: listProductInventories
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned.
          schema:
            type: string
        - in: query
          name: exclusiveStartKey
          required: false
          description: The start key, if you're making a subsequent request
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                items:
                  $ref: '#/components/schemas/ProductInventory'
                type: array
          description: The product inventorieswere retrieved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to add contact role based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Gets all of the product inventories in the system.
      tags:
        - Product Inventories
    post:
      description: >-
        This method will auto-generate an ID and create a new product inventory.
        If an ID is specified for the product inventory, an error will be
        thrown.
      operationId: createProductInventory
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ProductInventory'
        description: The product inventory that you would like to be saved.
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProductInventory'
          description: The product inventory was saved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The product inventory you supplied was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '405':
          description: The request method is not allowed.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The product inventory could not be saved because it refers
            to/depends on a non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to add product inventory based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Creates a new product inventory record that does not already exist.
      tags:
        - Product Inventories
  /productInventories/{tenantId}/batch:
    post:
      description: TAllows you to perform up to 100 parallel patch/delete operations
      operationId: executeBatchOperations
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/BatchOperationRequest'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BatchOperationResponse'
          description: Request completed successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The product inventory could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve product inventory based on
            tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Execute Batch Operations
      tags:
        - Product Inventories
  /productInventories/{tenantId}/product/{product_type}/{product_id}:
    get:
      description: Returns a list of records with the specified product_id
      operationId: listInventoriesByProductId
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The tenant
          schema:
            type: string
        - in: path
          name: product_type
          required: true
          description: The product_type to use to for record lookup
          schema:
            type: string
        - in: path
          name: product_id
          required: true
          description: The product_id to use to for record lookup
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned
          schema:
            type: string
        - in: query
          name: exclusiveStartKey
          required: false
          description: If paging, this allows you to return the next set of results
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListProductInventoriesResponse'
          description: The records were retrieved successfully
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: Unable to locate records
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve records based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a list of records with the specified product_id
      tags:
        - Product Inventories
  /productInventories/{tenantId}/{id}:
    delete:
      description: This method will delete a product inventory with the specified ID.
      operationId: deleteProductInventory
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the product inventory to delete.
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                type: string
          description: The product inventory was deleted successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The product inventory could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '405':
          description: The request method is not allowed.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The product inventory could not be deleted because other objects
            refers to/depends on this one.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to delete product inventory based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a product inventory from the system by its ID.
      tags:
        - Product Inventories
    get:
      description: >-
        This method will look up a product inventory by the specified ID and
        return it back.
      operationId: getProductInventory
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the product inventory to return.
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned.
          schema:
            type: string
        - in: query
          name: consistentRead
          required: false
          description: Indicates the API should force a consistent read on the data source.
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProductInventory'
          description: The product inventory was retrieved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The product inventory could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve product inventory based on
            tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a product inventory from the system by its ID.
      tags:
        - Product Inventories
    patch:
      description: >-
        This method will patch an existing product inventory with the specified
        ID, using the HTTP PATCH specification.
      operationId: patchProductInventory
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the product inventory to patch.
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/PatchDirectiveArray'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProductInventory'
          description: The product inventory was patched successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The JSON patch directive you supplied was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The product inventory could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '405':
          description: The request method is not allowed.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The product inventory could not be saved because it refers
            to/depends on a non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve product inventory based on
            tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Partially updates a product inventory with the specified ID.
      tags:
        - Product Inventories
    put:
      description: >-
        This method will update an existing product inventory with the specified
        ID.
      operationId: updateProductInventory
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the product inventory to update.
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ProductInventory'
        description: The updated product inventory that will be saved.
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProductInventory'
          description: The product inventory was updated successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The product inventory supplied was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The product inventory could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '405':
          description: The request method is not allowed.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The product inventory could not be saved because it refers
            to/depends on a non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve product inventory based on
            tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Updates a product inventory with the specified ID.
      tags:
        - Product Inventories
  /queryDefinitions/{tenantId}:
    get:
      description: Returns a list of records
      operationId: getQueryDefinitions
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The tenant
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListStandardQueryDefinitionsResponse'
          description: The records were retrieved successfully
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: Unable to locate records
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve records based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a list of records
      tags:
        - Query Definitions
  /returns/warmUpStepFunctions:
    post:
      operationId: warmUpStepFunctions
      responses:
        '200':
          description: Success
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Request limit exceeded... please try your request again in a few
            seconds
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: An internal server error occured.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Initiates workflow to warm up inventory transactions
      tags:
        - Returns
  /returns/{tenantId}:
    post:
      description: >-
        This method will auto-generate an ID and create a new return. If an ID
        is specified for the return, an error will be thrown.
      operationId: processReturn
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/Return'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StepFunctionExecutionToken'
          description: The return was saved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The return you supplied was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The return could not be saved because it refers to/depends on a
            non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to add return based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Processes a return
      tags:
        - Returns
  /returns/{tenantId}/batch:
    post:
      description: TAllows you to perform up to 100 parallel patch/delete operations
      operationId: executeBatchOperations
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/BatchOperationRequest'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BatchOperationResponse'
          description: Request completed successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The return could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve return based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Execute Batch Operations
      tags:
        - Returns
  /returns/{tenantId}/order/{order_id}:
    get:
      description: Returns a list of records with the specified order_id
      operationId: listReturnsByOrderId
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The tenant
          schema:
            type: string
        - in: path
          name: order_id
          required: true
          description: The order_id to use to for record lookup
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned
          schema:
            type: string
        - in: query
          name: exclusiveStartKey
          required: false
          description: If paging, this allows you to return the next set of results
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListReturnsResponse'
          description: The records were retrieved successfully
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: Unable to locate records
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve records based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a list of records with the specified order_id
      tags:
        - Returns
  /returns/{tenantId}/previewEmail:
    post:
      description: Sends out a preview of the CRC notification email
      operationId: previewEmail
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The tenant
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/PreviewEmailRequest'
      responses:
        '200':
          description: The record was retrieved successfully
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: Unable to locate any organizations with the specified domain
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve records based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Sends out a preview of the CRC notification email
      tags:
        - Returns
  /returns/{tenantId}/sync:
    post:
      description: >-
        This method will auto-generate an ID and create a new return. If an ID
        is specified for the return, an error will be thrown.
      operationId: processReturnSync
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/Return'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Return'
          description: The return was saved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The return you supplied was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The return could not be saved because it refers to/depends on a
            non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to add return based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Processes a return
      tags:
        - Returns
  /returns/{tenantId}/{id}:
    delete:
      description: This method will delete a return with the specified ID.
      operationId: deleteReturn
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the return to delete.
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                type: string
          description: The return was deleted successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The return could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The return could not be deleted because other objects refers
            to/depends on this one.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to delete return based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a return from the system by its ID.
      tags:
        - Returns
    get:
      description: >-
        This method will look up a return by the specified ID and return it
        back.
      operationId: getReturn
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the return to return.
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned.
          schema:
            type: string
        - in: query
          name: consistentRead
          required: false
          description: Indicates the API should force a consistent read on the data source.
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Return'
          description: The return was retrieved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The return could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve return based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a return from the system by its ID.
      tags:
        - Returns
    patch:
      description: >-
        This method will patch an existing return with the specified ID, using
        the HTTP PATCH specification.
      operationId: patchReturn
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the return to patch.
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/PatchDirectiveArray'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Return'
          description: The return was patched successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The JSON patch directive you supplied was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The return could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The return could not be saved because it refers to/depends on a
            non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve return based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Partially updates a return with the specified ID.
      tags:
        - Returns
    put:
      description: This method will update an existing return with the specified ID.
      operationId: updateReturn
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the return to update.
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Return'
        description: The updated return that will be saved.
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Return'
          description: The return was updated successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The return supplied was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The return could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The return could not be saved because it refers to/depends on a
            non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve return based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Updates a return with the specified ID.
      tags:
        - Returns
  /settings/{tenantId}:
    delete:
      description: This method will delete a setting with the specified ID.
      operationId: deleteSetting
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                type: string
          description: The setting was deleted successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The setting could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The setting could not be deleted because other objects refers
            to/depends on this one.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to delete setting based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a setting from the system by its ID.
      tags:
        - Settings
    get:
      description: >-
        This method will look up a setting by the specified ID and return it
        back.
      operationId: getSetting
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned.
          schema:
            type: string
        - in: query
          name: consistentRead
          required: false
          description: Indicates the API should force a consistent read on the data source.
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Setting'
          description: The setting was retrieved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The setting could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve setting based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a setting from the system by its ID.
      tags:
        - Settings
    patch:
      description: >-
        This method will patch an existing setting with the specified ID, using
        the HTTP PATCH specification.
      operationId: patchSetting
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/PatchDirectiveArray'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Setting'
          description: The setting was patched successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The JSON patch directive you supplied was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The setting could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The setting could not be saved because it refers to/depends on a
            non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve setting based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Partially updates a setting with the specified ID.
      tags:
        - Settings
    post:
      description: >-
        This method will auto-generate an ID and create a new setting. If an ID
        is specified for the setting, an error will be thrown.
      operationId: createSetting
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Setting'
        description: The setting that you would like to be saved.
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Setting'
          description: The setting was saved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The setting you supplied was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The setting could not be saved because it refers to/depends on a
            non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to add setting based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Creates a new setting record that does not already exist.
      tags:
        - Settings
    put:
      description: This method will update an existing setting with the specified ID.
      operationId: updateSetting
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Setting'
        description: The updated setting that will be saved.
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Setting'
          description: The setting was updated successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The setting supplied was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The setting could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The setting could not be saved because it refers to/depends on a
            non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve setting based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Updates a setting with the specified ID.
      tags:
        - Settings
  /sharedModifierOptions/{tenantId}:
    get:
      description: >-
        This method will scan all shared modifier options and and return them to
        the caller.
      operationId: listSharedModifierOptions
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned.
          schema:
            type: string
        - in: query
          name: exclusiveStartKey
          required: false
          description: The start key, if you're making a subsequent request
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                items:
                  $ref: '#/components/schemas/SharedModifierOption'
                type: array
          description: The shared modifier optionswere retrieved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to add contact role based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Gets all of the shared modifier options in the system.
      tags:
        - Shared Modifier Options
    post:
      description: >-
        This method will auto-generate an ID and create a new shared modifier
        option. If an ID is specified for the shared modifier option, an error
        will be thrown.
      operationId: createSharedModifierOption
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SharedModifierOption'
        description: The shared modifier option that you would like to be saved.
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SharedModifierOption'
          description: The shared modifier option was saved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The shared modifier option you supplied was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The shared modifier option could not be saved because it refers
            to/depends on a non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to add shared modifier option based on
            tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Creates a new shared modifier option record that does not already exist.
      tags:
        - Shared Modifier Options
  /sharedModifierOptions/{tenantId}/batch:
    post:
      description: TAllows you to perform up to 100 parallel patch/delete operations
      operationId: executeBatchOperations
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/BatchOperationRequest'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BatchOperationResponse'
          description: Request completed successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The shared modifier option could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve shared modifier option based on
            tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Execute Batch Operations
      tags:
        - Shared Modifier Options
  /sharedModifierOptions/{tenantId}/{id}:
    delete:
      description: This method will delete a shared modifier option with the specified ID.
      operationId: deleteSharedModifierOption
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the shared modifier option to delete.
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                type: string
          description: The shared modifier option was deleted successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The shared modifier option could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The shared modifier option could not be deleted because other
            objects refers to/depends on this one.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to delete shared modifier option based on
            tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a shared modifier option from the system by its ID.
      tags:
        - Shared Modifier Options
    get:
      description: >-
        This method will look up a shared modifier option by the specified ID
        and return it back.
      operationId: getSharedModifierOption
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the shared modifier option to return.
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned.
          schema:
            type: string
        - in: query
          name: consistentRead
          required: false
          description: Indicates the API should force a consistent read on the data source.
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SharedModifierOption'
          description: The shared modifier option was retrieved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The shared modifier option could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve shared modifier option based on
            tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a shared modifier option from the system by its ID.
      tags:
        - Shared Modifier Options
    patch:
      description: >-
        This method will patch an existing shared modifier option with the
        specified ID, using the HTTP PATCH specification.
      operationId: patchSharedModifierOption
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the shared modifier option to patch.
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/PatchDirectiveArray'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SharedModifierOption'
          description: The shared modifier option was patched successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The JSON patch directive you supplied was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The shared modifier option could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The shared modifier option could not be saved because it refers
            to/depends on a non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve shared modifier option based on
            tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Partially updates a shared modifier option with the specified ID.
      tags:
        - Shared Modifier Options
    put:
      description: >-
        This method will update an existing shared modifier option with the
        specified ID.
      operationId: updateSharedModifierOption
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the shared modifier option to update.
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SharedModifierOption'
        description: The updated shared modifier option that will be saved.
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SharedModifierOption'
          description: The shared modifier option was updated successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The shared modifier option supplied was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The shared modifier option could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The shared modifier option could not be saved because it refers
            to/depends on a non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve shared modifier option based on
            tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Updates a shared modifier option with the specified ID.
      tags:
        - Shared Modifier Options
  /sharedVariantOptions/{tenantId}:
    get:
      description: >-
        This method will scan all shared variant options and and return them to
        the caller.
      operationId: listSharedVariantOptions
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned.
          schema:
            type: string
        - in: query
          name: exclusiveStartKey
          required: false
          description: The start key, if you're making a subsequent request
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                items:
                  $ref: '#/components/schemas/SharedVariantOption'
                type: array
          description: The shared variant optionswere retrieved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to add contact role based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Gets all of the shared variant options in the system.
      tags:
        - Shared Variant Options
    post:
      description: >-
        This method will auto-generate an ID and create a new shared variant
        option. If an ID is specified for the shared variant option, an error
        will be thrown.
      operationId: createSharedVariantOption
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SharedVariantOption'
        description: The shared variant option that you would like to be saved.
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SharedVariantOption'
          description: The shared variant option was saved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The shared variant option you supplied was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The shared variant option could not be saved because it refers
            to/depends on a non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to add shared variant option based on
            tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Creates a new shared variant option record that does not already exist.
      tags:
        - Shared Variant Options
  /sharedVariantOptions/{tenantId}/batch:
    post:
      description: TAllows you to perform up to 100 parallel patch/delete operations
      operationId: executeBatchOperations
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/BatchOperationRequest'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BatchOperationResponse'
          description: Request completed successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The shared variant option could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve shared variant option based on
            tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Execute Batch Operations
      tags:
        - Shared Variant Options
  /sharedVariantOptions/{tenantId}/{id}:
    delete:
      description: This method will delete a shared variant option with the specified ID.
      operationId: deleteSharedVariantOption
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the shared variant option to delete.
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                type: string
          description: The shared variant option was deleted successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The shared variant option could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The shared variant option could not be deleted because other objects
            refers to/depends on this one.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to delete shared variant option based on
            tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a shared variant option from the system by its ID.
      tags:
        - Shared Variant Options
    get:
      description: >-
        This method will look up a shared variant option by the specified ID and
        return it back.
      operationId: getSharedVariantOption
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the shared variant option to return.
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned.
          schema:
            type: string
        - in: query
          name: consistentRead
          required: false
          description: Indicates the API should force a consistent read on the data source.
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SharedVariantOption'
          description: The shared variant option was retrieved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The shared variant option could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve shared variant option based on
            tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a shared variant option from the system by its ID.
      tags:
        - Shared Variant Options
    patch:
      description: >-
        This method will patch an existing shared variant option with the
        specified ID, using the HTTP PATCH specification.
      operationId: patchSharedVariantOption
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the shared variant option to patch.
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/PatchDirectiveArray'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SharedVariantOption'
          description: The shared variant option was patched successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The JSON patch directive you supplied was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The shared variant option could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The shared variant option could not be saved because it refers
            to/depends on a non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve shared variant option based on
            tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Partially updates a shared variant option with the specified ID.
      tags:
        - Shared Variant Options
    put:
      description: >-
        This method will update an existing shared variant option with the
        specified ID.
      operationId: updateSharedVariantOption
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the shared variant option to update.
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SharedVariantOption'
        description: The updated shared variant option that will be saved.
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SharedVariantOption'
          description: The shared variant option was updated successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The shared variant option supplied was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The shared variant option could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The shared variant option could not be saved because it refers
            to/depends on a non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve shared variant option based on
            tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Updates a shared variant option with the specified ID.
      tags:
        - Shared Variant Options
  /shipments/warmUpStepFunctions:
    post:
      operationId: warmUpStepFunctions
      responses:
        '200':
          description: Success
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Request limit exceeded... please try your request again in a few
            seconds
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: An internal server error occured.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Initiates workflow to warm up inventory transactions
      tags:
        - Shipments
  /shipments/{tenantId}:
    post:
      description: >-
        This method will auto-generate an ID and create a new shipment. If an ID
        is specified for the shipment, an error will be thrown.
      operationId: processShipment
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/Shipment'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StepFunctionExecutionToken'
          description: The shipment was saved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The shipment you supplied was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '405':
          description: The request method is not allowed.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The shipment could not be saved because it refers to/depends on a
            non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to add shipment based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Processes a shipment
      tags:
        - Shipments
  /shipments/{tenantId}/batch:
    post:
      description: TAllows you to perform up to 100 parallel patch/delete operations
      operationId: executeBatchOperations
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/BatchOperationRequest'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BatchOperationResponse'
          description: Request completed successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The shipment could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve shipment based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Execute Batch Operations
      tags:
        - Shipments
  /shipments/{tenantId}/order/{order_id}:
    get:
      description: Returns a list of records with the specified order_id
      operationId: listShipmentsByOrderId
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The tenant
          schema:
            type: string
        - in: path
          name: order_id
          required: true
          description: The order_id to use to for record lookup
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned
          schema:
            type: string
        - in: query
          name: exclusiveStartKey
          required: false
          description: If paging, this allows you to return the next set of results
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListShipmentsResponse'
          description: The records were retrieved successfully
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: Unable to locate records
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve records based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a list of records with the specified order_id
      tags:
        - Shipments
  /shipments/{tenantId}/previewEmail:
    post:
      description: Sends out a preview of the CRC notification email
      operationId: previewEmail
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The tenant
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/PreviewEmailRequest'
      responses:
        '200':
          description: The record was retrieved successfully
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: Unable to locate any organizations with the specified domain
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve records based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Sends out a preview of the CRC notification email
      tags:
        - Shipments
  /shipments/{tenantId}/sync:
    get:
      description: This method will scan all shipments and and return them to the caller.
      operationId: listShipments
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned.
          schema:
            type: string
        - in: query
          name: exclusiveStartKey
          required: false
          description: The start key, if you're making a subsequent request
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                items:
                  $ref: '#/components/schemas/Shipment'
                type: array
          description: The shipmentswere retrieved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to add contact role based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Gets all of the shipments in the system.
      tags:
        - Shipments
    post:
      description: >-
        This method will auto-generate an ID and create a new shipment. If an ID
        is specified for the shipment, an error will be thrown.
      operationId: processShipmentSync
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/Shipment'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Shipment'
          description: The shipment was saved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The shipment you supplied was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '405':
          description: The request method is not allowed.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The shipment could not be saved because it refers to/depends on a
            non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to add shipment based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Processes a shipment
      tags:
        - Shipments
  /shipments/{tenantId}/{id}:
    delete:
      description: This method will delete a shipment with the specified ID.
      operationId: deleteShipment
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the shipment to delete.
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                type: string
          description: The shipment was deleted successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The shipment could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '405':
          description: The request method is not allowed.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The shipment could not be deleted because other objects refers
            to/depends on this one.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to delete shipment based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a shipment from the system by its ID.
      tags:
        - Shipments
    get:
      description: >-
        This method will look up a shipment by the specified ID and return it
        back.
      operationId: getShipment
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the shipment to return.
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned.
          schema:
            type: string
        - in: query
          name: consistentRead
          required: false
          description: Indicates the API should force a consistent read on the data source.
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Shipment'
          description: The shipment was retrieved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The shipment could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve shipment based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a shipment from the system by its ID.
      tags:
        - Shipments
    patch:
      description: >-
        This method will patch an existing shipment with the specified ID, using
        the HTTP PATCH specification.
      operationId: patchShipment
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the shipment to patch.
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/PatchDirectiveArray'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Shipment'
          description: The shipment was patched successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The JSON patch directive you supplied was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The shipment could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '405':
          description: The request method is not allowed.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The shipment could not be saved because it refers to/depends on a
            non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve shipment based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Partially updates a shipment with the specified ID.
      tags:
        - Shipments
    put:
      description: This method will update an existing shipment with the specified ID.
      operationId: updateShipment
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the shipment to update.
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Shipment'
        description: The updated shipment that will be saved.
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Shipment'
          description: The shipment was updated successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The shipment supplied was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The shipment could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '405':
          description: The request method is not allowed.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The shipment could not be saved because it refers to/depends on a
            non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve shipment based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Updates a shipment with the specified ID.
      tags:
        - Shipments
  /shippingConfigurations/{tenantId}:
    delete:
      description: This method will delete a shipping configuration with the specified ID.
      operationId: deleteShippingConfiguration
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                type: string
          description: The shipping configuration was deleted successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The shipping configuration could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The shipping configuration could not be deleted because other
            objects refers to/depends on this one.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to delete shipping configuration based on
            tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a shipping configuration from the system by its ID.
      tags:
        - Shipping Configurations
    get:
      description: >-
        This method will look up a shipping configuration by the specified ID
        and return it back.
      operationId: getShippingConfiguration
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned.
          schema:
            type: string
        - in: query
          name: consistentRead
          required: false
          description: Indicates the API should force a consistent read on the data source.
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ShippingConfiguration'
          description: The shipping configuration was retrieved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The shipping configuration could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve shipping configuration based on
            tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a shipping configuration from the system by its ID.
      tags:
        - Shipping Configurations
    patch:
      description: >-
        This method will patch an existing shipping configuration with the
        specified ID, using the HTTP PATCH specification.
      operationId: patchShippingConfiguration
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/PatchDirectiveArray'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ShippingConfiguration'
          description: The shipping configuration was patched successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The JSON patch directive you supplied was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The shipping configuration could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The shipping configuration could not be saved because it refers
            to/depends on a non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve shipping configuration based on
            tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Partially updates a shipping configuration with the specified ID.
      tags:
        - Shipping Configurations
    post:
      description: >-
        This method will auto-generate an ID and create a new shipping
        configuration. If an ID is specified for the shipping configuration, an
        error will be thrown.
      operationId: createShippingConfiguration
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ShippingConfiguration'
        description: The shipping configuration that you would like to be saved.
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ShippingConfiguration'
          description: The shipping configuration was saved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The shipping configuration you supplied was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The shipping configuration could not be saved because it refers
            to/depends on a non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to add shipping configuration based on
            tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Creates a new shipping configuration record that does not already exist.
      tags:
        - Shipping Configurations
    put:
      description: >-
        This method will update an existing shipping configuration with the
        specified ID.
      operationId: updateShippingConfiguration
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ShippingConfiguration'
        description: The updated shipping configuration that will be saved.
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ShippingConfiguration'
          description: The shipping configuration was updated successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The shipping configuration supplied was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The shipping configuration could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The shipping configuration could not be saved because it refers
            to/depends on a non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve shipping configuration based on
            tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Updates a shipping configuration with the specified ID.
      tags:
        - Shipping Configurations
  /shippingProducts/{tenantId}:
    get:
      description: >-
        This method will scan all shipping products and and return them to the
        caller.
      operationId: listShippingProducts
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned.
          schema:
            type: string
        - in: query
          name: exclusiveStartKey
          required: false
          description: The start key, if you're making a subsequent request
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                items:
                  $ref: '#/components/schemas/ShippingProduct'
                type: array
          description: The shipping productswere retrieved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to add contact role based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Gets all of the shipping products in the system.
      tags:
        - Shipping Products
    post:
      description: >-
        This method will auto-generate an ID and create a new shipping product.
        If an ID is specified for the shipping product, an error will be thrown.
      operationId: createShippingProduct
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ShippingProduct'
        description: The shipping product that you would like to be saved.
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ShippingProduct'
          description: The shipping product was saved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The shipping product you supplied was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The shipping product could not be saved because it refers to/depends
            on a non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to add shipping product based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Creates a new shipping product record that does not already exist.
      tags:
        - Shipping Products
  /shippingProducts/{tenantId}/batch:
    post:
      description: TAllows you to perform up to 100 parallel patch/delete operations
      operationId: executeBatchOperations
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/BatchOperationRequest'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BatchOperationResponse'
          description: Request completed successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The shipping product could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve shipping product based on
            tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Execute Batch Operations
      tags:
        - Shipping Products
  /shippingProducts/{tenantId}/{id}:
    delete:
      description: This method will delete a shipping product with the specified ID.
      operationId: deleteShippingProduct
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the shipping product to delete.
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                type: string
          description: The shipping product was deleted successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The shipping product could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The shipping product could not be deleted because other objects
            refers to/depends on this one.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to delete shipping product based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a shipping product from the system by its ID.
      tags:
        - Shipping Products
    get:
      description: >-
        This method will look up a shipping product by the specified ID and
        return it back.
      operationId: getShippingProduct
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the shipping product to return.
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned.
          schema:
            type: string
        - in: query
          name: consistentRead
          required: false
          description: Indicates the API should force a consistent read on the data source.
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ShippingProduct'
          description: The shipping product was retrieved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The shipping product could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve shipping product based on
            tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a shipping product from the system by its ID.
      tags:
        - Shipping Products
    patch:
      description: >-
        This method will patch an existing shipping product with the specified
        ID, using the HTTP PATCH specification.
      operationId: patchShippingProduct
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the shipping product to patch.
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/PatchDirectiveArray'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ShippingProduct'
          description: The shipping product was patched successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The JSON patch directive you supplied was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The shipping product could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The shipping product could not be saved because it refers to/depends
            on a non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve shipping product based on
            tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Partially updates a shipping product with the specified ID.
      tags:
        - Shipping Products
    put:
      description: >-
        This method will update an existing shipping product with the specified
        ID.
      operationId: updateShippingProduct
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the shipping product to update.
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ShippingProduct'
        description: The updated shipping product that will be saved.
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ShippingProduct'
          description: The shipping product was updated successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The shipping product supplied was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The shipping product could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The shipping product could not be saved because it refers to/depends
            on a non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve shipping product based on
            tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Updates a shipping product with the specified ID.
      tags:
        - Shipping Products
  /statistics/{tenantId}/batch:
    post:
      description: TAllows you to perform up to 100 parallel patch/delete operations
      operationId: executeBatchOperations
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/BatchOperationRequest'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BatchOperationResponse'
          description: Request completed successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The statistic could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve statistic based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Execute Batch Operations
      tags:
        - Statistics
  /statistics/{tenantId}/{id}:
    get:
      description: >-
        This method will look up a statistic by the specified ID and return it
        back.
      operationId: getStatistic
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the statistic to return.
          schema:
            type: string
        - in: query
          name: parameters
          required: false
          description: Parameters to the query
          schema:
            type: string
        - in: query
          name: recalculate
          required: false
          description: >-
            If true, the latest statistic will be calculated and the cache will
            be updated
          schema:
            type: boolean
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Statistic'
          description: The statistic was retrieved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The statistic could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve statistic based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a statistic from the system by its ID.
      tags:
        - Statistics
  /stores/{tenantId}:
    get:
      description: This method will scan all stores and and return them to the caller.
      operationId: listStores
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned.
          schema:
            type: string
        - in: query
          name: exclusiveStartKey
          required: false
          description: The start key, if you're making a subsequent request
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                items:
                  $ref: '#/components/schemas/Store'
                type: array
          description: The storeswere retrieved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to add contact role based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Gets all of the stores in the system.
      tags:
        - Stores
    post:
      description: >-
        This method will auto-generate an ID and create a new store. If an ID is
        specified for the store, an error will be thrown.
      operationId: createStore
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Store'
        description: The store that you would like to be saved.
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Store'
          description: The store was saved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The store you supplied was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The store could not be saved because it refers to/depends on a
            non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to add store based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Creates a new store record that does not already exist.
      tags:
        - Stores
  /stores/{tenantId}/batch:
    post:
      description: TAllows you to perform up to 100 parallel patch/delete operations
      operationId: executeBatchOperations
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/BatchOperationRequest'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BatchOperationResponse'
          description: Request completed successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The store could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve store based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Execute Batch Operations
      tags:
        - Stores
  /stores/{tenantId}/public/{id}:
    get:
      description: Gets the public store info
      operationId: getPublicStoreInfo
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The tenant
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The id of the store
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StorePublic'
          description: The store was retrieved
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: Unable to locate records
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve records based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      summary: Gets the public store info
      tags:
        - Stores
  /stores/{tenantId}/{id}:
    delete:
      description: This method will delete a store with the specified ID.
      operationId: deleteStore
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the store to delete.
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                type: string
          description: The store was deleted successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The store could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The store could not be deleted because other objects refers
            to/depends on this one.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to delete store based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a store from the system by its ID.
      tags:
        - Stores
    get:
      description: This method will look up a store by the specified ID and return it back.
      operationId: getStore
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the store to return.
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned.
          schema:
            type: string
        - in: query
          name: consistentRead
          required: false
          description: Indicates the API should force a consistent read on the data source.
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Store'
          description: The store was retrieved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The store could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve store based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a store from the system by its ID.
      tags:
        - Stores
    patch:
      description: >-
        This method will patch an existing store with the specified ID, using
        the HTTP PATCH specification.
      operationId: patchStore
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the store to patch.
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/PatchDirectiveArray'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Store'
          description: The store was patched successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The JSON patch directive you supplied was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The store could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The store could not be saved because it refers to/depends on a
            non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve store based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Partially updates a store with the specified ID.
      tags:
        - Stores
    put:
      description: This method will update an existing store with the specified ID.
      operationId: updateStore
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the store to update.
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Store'
        description: The updated store that will be saved.
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Store'
          description: The store was updated successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The store supplied was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The store could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The store could not be saved because it refers to/depends on a
            non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to retrieve store based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Updates a store with the specified ID.
      tags:
        - Stores
  /taxClasses/{tenantId}:
    get:
      description: This method will scan all tax classes and and return them to the caller.
      operationId: listTaxClasses
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned.
          schema:
            type: string
        - in: query
          name: exclusiveStartKey
          required: false
          description: The start key, if you're making a subsequent request
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                items:
                  $ref: '#/components/schemas/TaxClass'
                type: array
          description: The tax classeswere retrieved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to add contact role based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Gets all of the tax classes in the system.
      tags:
        - Tax Classes
    post:
      description: >-
        This method will auto-generate an ID and create a new tax class. If an
        ID is specified for the tax class, an error will be thrown.
      operationId: createTaxClass
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TaxClass'
        description: The tax class that you would like to be saved.
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TaxClass'
          description: The tax class was saved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The tax class you supplied was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '405':
          description: The request method is not allowed.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The tax class could not be saved because it refers to/depends on a
            non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to add tax class based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Creates a new tax class record that does not already exist.
      tags:
        - Tax Classes
  /taxClasses/{tenantId}/batch:
    post:
      description: TAllows you to perform up to 100 parallel patch/delete operations
      operationId: executeBatchOperations
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/BatchOperationRequest'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BatchOperationResponse'
          description: Request completed successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The tax class could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve tax class based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Execute Batch Operations
      tags:
        - Tax Classes
  /taxClasses/{tenantId}/{id}:
    delete:
      description: This method will delete a tax class with the specified ID.
      operationId: deleteTaxClass
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the tax class to delete.
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                type: string
          description: The tax class was deleted successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The tax class could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '405':
          description: The request method is not allowed.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The tax class could not be deleted because other objects refers
            to/depends on this one.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to delete tax class based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a tax class from the system by its ID.
      tags:
        - Tax Classes
    get:
      description: >-
        This method will look up a tax class by the specified ID and return it
        back.
      operationId: getTaxClass
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the tax class to return.
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned.
          schema:
            type: string
        - in: query
          name: consistentRead
          required: false
          description: Indicates the API should force a consistent read on the data source.
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TaxClass'
          description: The tax class was retrieved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The tax class could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve tax class based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a tax class from the system by its ID.
      tags:
        - Tax Classes
    patch:
      description: >-
        This method will patch an existing tax class with the specified ID,
        using the HTTP PATCH specification.
      operationId: patchTaxClass
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the tax class to patch.
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/PatchDirectiveArray'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TaxClass'
          description: The tax class was patched successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The JSON patch directive you supplied was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The tax class could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '405':
          description: The request method is not allowed.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The tax class could not be saved because it refers to/depends on a
            non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve tax class based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Partially updates a tax class with the specified ID.
      tags:
        - Tax Classes
    put:
      description: This method will update an existing tax class with the specified ID.
      operationId: updateTaxClass
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the tax class to update.
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TaxClass'
        description: The updated tax class that will be saved.
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TaxClass'
          description: The tax class was updated successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The tax class supplied was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The tax class could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '405':
          description: The request method is not allowed.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The tax class could not be saved because it refers to/depends on a
            non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve tax class based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Updates a tax class with the specified ID.
      tags:
        - Tax Classes
  /taxConfigurations/{tenantId}:
    delete:
      description: This method will delete a tax configuration with the specified ID.
      operationId: deleteTaxConfiguration
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                type: string
          description: The tax configuration was deleted successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The tax configuration could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The tax configuration could not be deleted because other objects
            refers to/depends on this one.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to delete tax configuration based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a tax configuration from the system by its ID.
      tags:
        - Tax Configurations
    get:
      description: >-
        This method will look up a tax configuration by the specified ID and
        return it back.
      operationId: getTaxConfiguration
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned.
          schema:
            type: string
        - in: query
          name: consistentRead
          required: false
          description: Indicates the API should force a consistent read on the data source.
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TaxConfiguration'
          description: The tax configuration was retrieved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The tax configuration could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve tax configuration based on
            tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a tax configuration from the system by its ID.
      tags:
        - Tax Configurations
    patch:
      description: >-
        This method will patch an existing tax configuration with the specified
        ID, using the HTTP PATCH specification.
      operationId: patchTaxConfiguration
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/PatchDirectiveArray'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TaxConfiguration'
          description: The tax configuration was patched successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The JSON patch directive you supplied was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The tax configuration could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The tax configuration could not be saved because it refers
            to/depends on a non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve tax configuration based on
            tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Partially updates a tax configuration with the specified ID.
      tags:
        - Tax Configurations
    post:
      description: >-
        This method will auto-generate an ID and create a new tax configuration.
        If an ID is specified for the tax configuration, an error will be
        thrown.
      operationId: createTaxConfiguration
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TaxConfiguration'
        description: The tax configuration that you would like to be saved.
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TaxConfiguration'
          description: The tax configuration was saved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The tax configuration you supplied was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The tax configuration could not be saved because it refers
            to/depends on a non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to add tax configuration based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Creates a new tax configuration record that does not already exist.
      tags:
        - Tax Configurations
    put:
      description: >-
        This method will update an existing tax configuration with the specified
        ID.
      operationId: updateTaxConfiguration
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TaxConfiguration'
        description: The updated tax configuration that will be saved.
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TaxConfiguration'
          description: The tax configuration was updated successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The tax configuration supplied was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The tax configuration could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The tax configuration could not be saved because it refers
            to/depends on a non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve tax configuration based on
            tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Updates a tax configuration with the specified ID.
      tags:
        - Tax Configurations
  /taxProducts/{tenantId}:
    get:
      description: >-
        This method will scan all tax products and and return them to the
        caller.
      operationId: listTaxProducts
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned.
          schema:
            type: string
        - in: query
          name: exclusiveStartKey
          required: false
          description: The start key, if you're making a subsequent request
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                items:
                  $ref: '#/components/schemas/TaxProduct'
                type: array
          description: The tax productswere retrieved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to add contact role based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Gets all of the tax products in the system.
      tags:
        - Tax Products
    post:
      description: >-
        This method will auto-generate an ID and create a new tax product. If an
        ID is specified for the tax product, an error will be thrown.
      operationId: createTaxProduct
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TaxProduct'
        description: The tax product that you would like to be saved.
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TaxProduct'
          description: The tax product was saved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The tax product you supplied was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The tax product could not be saved because it refers to/depends on a
            non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to add tax product based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Creates a new tax product record that does not already exist.
      tags:
        - Tax Products
  /taxProducts/{tenantId}/batch:
    post:
      description: TAllows you to perform up to 100 parallel patch/delete operations
      operationId: executeBatchOperations
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/BatchOperationRequest'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BatchOperationResponse'
          description: Request completed successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The tax product could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve tax product based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Execute Batch Operations
      tags:
        - Tax Products
  /taxProducts/{tenantId}/{id}:
    delete:
      description: This method will delete a tax product with the specified ID.
      operationId: deleteTaxProduct
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the tax product to delete.
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                type: string
          description: The tax product was deleted successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The tax product could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The tax product could not be deleted because other objects refers
            to/depends on this one.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to delete tax product based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a tax product from the system by its ID.
      tags:
        - Tax Products
    get:
      description: >-
        This method will look up a tax product by the specified ID and return it
        back.
      operationId: getTaxProduct
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the tax product to return.
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned.
          schema:
            type: string
        - in: query
          name: consistentRead
          required: false
          description: Indicates the API should force a consistent read on the data source.
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TaxProduct'
          description: The tax product was retrieved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The tax product could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve tax product based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a tax product from the system by its ID.
      tags:
        - Tax Products
    patch:
      description: >-
        This method will patch an existing tax product with the specified ID,
        using the HTTP PATCH specification.
      operationId: patchTaxProduct
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the tax product to patch.
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/PatchDirectiveArray'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TaxProduct'
          description: The tax product was patched successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The JSON patch directive you supplied was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The tax product could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The tax product could not be saved because it refers to/depends on a
            non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve tax product based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Partially updates a tax product with the specified ID.
      tags:
        - Tax Products
    put:
      description: This method will update an existing tax product with the specified ID.
      operationId: updateTaxProduct
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the tax product to update.
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TaxProduct'
        description: The updated tax product that will be saved.
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TaxProduct'
          description: The tax product was updated successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The tax product supplied was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The tax product could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The tax product could not be saved because it refers to/depends on a
            non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve tax product based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Updates a tax product with the specified ID.
      tags:
        - Tax Products
  /warehouseBins/{tenantId}:
    get:
      description: >-
        This method will scan all warehouse bins and and return them to the
        caller.
      operationId: listWarehouseBins
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned.
          schema:
            type: string
        - in: query
          name: exclusiveStartKey
          required: false
          description: The start key, if you're making a subsequent request
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                items:
                  $ref: '#/components/schemas/WarehouseBin'
                type: array
          description: The warehouse binswere retrieved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to add contact role based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Gets all of the warehouse bins in the system.
      tags:
        - Warehouse Bins
    post:
      description: >-
        This method will auto-generate an ID and create a new warehouse bin. If
        an ID is specified for the warehouse bin, an error will be thrown.
      operationId: createWarehouseBin
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/WarehouseBin'
        description: The warehouse bin that you would like to be saved.
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WarehouseBin'
          description: The warehouse bin was saved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The warehouse bin you supplied was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '405':
          description: The request method is not allowed.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The warehouse bin could not be saved because it refers to/depends on
            a non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to add warehouse bin based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Creates a new warehouse bin record that does not already exist.
      tags:
        - Warehouse Bins
  /warehouseBins/{tenantId}/batch:
    post:
      description: TAllows you to perform up to 100 parallel patch/delete operations
      operationId: executeBatchOperations
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/BatchOperationRequest'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BatchOperationResponse'
          description: Request completed successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The warehouse bin could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve warehouse bin based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Execute Batch Operations
      tags:
        - Warehouse Bins
  /warehouseBins/{tenantId}/{id}:
    delete:
      description: This method will delete a warehouse bin with the specified ID.
      operationId: deleteWarehouseBin
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the warehouse bin to delete.
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                type: string
          description: The warehouse bin was deleted successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The warehouse bin could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '405':
          description: The request method is not allowed.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The warehouse bin could not be deleted because other objects refers
            to/depends on this one.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to delete warehouse bin based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a warehouse bin from the system by its ID.
      tags:
        - Warehouse Bins
    get:
      description: >-
        This method will look up a warehouse bin by the specified ID and return
        it back.
      operationId: getWarehouseBin
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the warehouse bin to return.
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned.
          schema:
            type: string
        - in: query
          name: consistentRead
          required: false
          description: Indicates the API should force a consistent read on the data source.
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WarehouseBin'
          description: The warehouse bin was retrieved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The warehouse bin could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve warehouse bin based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a warehouse bin from the system by its ID.
      tags:
        - Warehouse Bins
    patch:
      description: >-
        This method will patch an existing warehouse bin with the specified ID,
        using the HTTP PATCH specification.
      operationId: patchWarehouseBin
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the warehouse bin to patch.
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/PatchDirectiveArray'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WarehouseBin'
          description: The warehouse bin was patched successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The JSON patch directive you supplied was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The warehouse bin could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '405':
          description: The request method is not allowed.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The warehouse bin could not be saved because it refers to/depends on
            a non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve warehouse bin based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Partially updates a warehouse bin with the specified ID.
      tags:
        - Warehouse Bins
    put:
      description: This method will update an existing warehouse bin with the specified ID.
      operationId: updateWarehouseBin
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the warehouse bin to update.
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/WarehouseBin'
        description: The updated warehouse bin that will be saved.
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WarehouseBin'
          description: The warehouse bin was updated successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The warehouse bin supplied was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The warehouse bin could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '405':
          description: The request method is not allowed.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The warehouse bin could not be saved because it refers to/depends on
            a non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve warehouse bin based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Updates a warehouse bin with the specified ID.
      tags:
        - Warehouse Bins
  /warehouses/{tenantId}:
    get:
      description: This method will scan all warehouses and and return them to the caller.
      operationId: listWarehouses
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned.
          schema:
            type: string
        - in: query
          name: exclusiveStartKey
          required: false
          description: The start key, if you're making a subsequent request
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                items:
                  $ref: '#/components/schemas/Warehouse'
                type: array
          description: The warehouseswere retrieved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to add contact role based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Gets all of the warehouses in the system.
      tags:
        - Warehouses
    post:
      description: >-
        This method will auto-generate an ID and create a new warehouse. If an
        ID is specified for the warehouse, an error will be thrown.
      operationId: createWarehouse
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Warehouse'
        description: The warehouse that you would like to be saved.
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Warehouse'
          description: The warehouse was saved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The warehouse you supplied was invalid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The resource could not be found
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '405':
          description: The request method is not allowed.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The warehouse could not be saved because it refers to/depends on a
            non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to add warehouse based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Creates a new warehouse record that does not already exist.
      tags:
        - Warehouses
  /warehouses/{tenantId}/batch:
    post:
      description: TAllows you to perform up to 100 parallel patch/delete operations
      operationId: executeBatchOperations
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/BatchOperationRequest'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BatchOperationResponse'
          description: Request completed successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The warehouse could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve warehouse based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Execute Batch Operations
      tags:
        - Warehouses
  /warehouses/{tenantId}/{id}:
    delete:
      description: This method will delete a warehouse with the specified ID.
      operationId: deleteWarehouse
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the warehouse to delete.
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                type: string
          description: The warehouse was deleted successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The warehouse could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '405':
          description: The request method is not allowed.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The warehouse could not be deleted because other objects refers
            to/depends on this one.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: Limit exceeded... unable to delete warehouse based on tenant limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a warehouse from the system by its ID.
      tags:
        - Warehouses
    get:
      description: >-
        This method will look up a warehouse by the specified ID and return it
        back.
      operationId: getWarehouse
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the warehouse to return.
          schema:
            type: string
        - in: query
          name: fields
          required: false
          description: >-
            The fields that you want to retrieve; if omitted, the entire object
            is returned.
          schema:
            type: string
        - in: query
          name: consistentRead
          required: false
          description: Indicates the API should force a consistent read on the data source.
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Warehouse'
          description: The warehouse was retrieved successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The request was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The warehouse could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve warehouse based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Returns a warehouse from the system by its ID.
      tags:
        - Warehouses
    patch:
      description: >-
        This method will patch an existing warehouse with the specified ID,
        using the HTTP PATCH specification.
      operationId: patchWarehouse
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the warehouse to patch.
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/PatchDirectiveArray'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Warehouse'
          description: The warehouse was patched successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The JSON patch directive you supplied was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The warehouse could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '405':
          description: The request method is not allowed.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The warehouse could not be saved because it refers to/depends on a
            non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve warehouse based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Partially updates a warehouse with the specified ID.
      tags:
        - Warehouses
    put:
      description: This method will update an existing warehouse with the specified ID.
      operationId: updateWarehouse
      parameters:
        - in: path
          name: tenantId
          required: true
          description: The id of the tenant being accessed.
          schema:
            type: string
        - in: path
          name: id
          required: true
          description: The ID of the warehouse to update.
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Warehouse'
        description: The updated warehouse that will be saved.
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Warehouse'
          description: The warehouse was updated successfully.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '400':
          description: The warehouse supplied was not valid.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '401':
          description: Unauthorized.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '403':
          description: Forbidden.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '404':
          description: The warehouse could not be found.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '405':
          description: The request method is not allowed.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '409':
          description: >-
            The warehouse could not be saved because it refers to/depends on a
            non-existent object.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '429':
          description: >-
            Limit exceeded... unable to retrieve warehouse based on tenant
            limits.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
        '500':
          description: General server error.
          headers:
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Access-Control-Allow-Origin:
              schema:
                type: string
      security:
        - knox-authorizer: []
      summary: Updates a warehouse with the specified ID.
      tags:
        - Warehouses
servers:
  - url: https://commerce.api.rhythmsoftware.com
tags:
  - name: Cancellation Fees
    description: Cancellation Fees
  - name: Cancellations
    description: Cancellations
  - name: Carts
    description: Carts
  - name: Coupon Code Gen Processes
    description: Coupon Code Gen Processes
  - name: Coupon Codes
    description: Coupon Codes
  - name: Coupons
    description: Coupons
  - name: Discount Products
    description: Discount Products
  - name: Entitlement Types
    description: Entitlement Types
  - name: Entitlements
    description: Entitlements
  - name: Inventory Transactions
    description: Inventory Transactions
  - name: Merchandise
    description: Merchandise
  - name: Orders
    description: Orders
  - name: Product Categories
    description: Product Categories
  - name: Product Confirmation Emails
    description: Product Confirmation Emails
  - name: Product Inventories
    description: Product Inventories
  - name: Query Definitions
    description: Query Definitions
  - name: Returns
    description: Returns
  - name: Settings
    description: Settings
  - name: Shared Modifier Options
    description: Shared Modifier Options
  - name: Shared Variant Options
    description: Shared Variant Options
  - name: Shipments
    description: Shipments
  - name: Shipping Configurations
    description: Shipping Configurations
  - name: Shipping Products
    description: Shipping Products
  - name: Statistics
    description: Statistics
  - name: Stores
    description: Stores
  - name: Tax Classes
    description: Tax Classes
  - name: Tax Configurations
    description: Tax Configurations
  - name: Tax Products
    description: Tax Products
  - name: Warehouse Bins
    description: Warehouse Bins
  - name: Warehouses
    description: Warehouses
