Newstore external-public API

The external-public API from Newstore — 89 operation(s) for external-public.

OpenAPI Specification

newstore-external-public-api-openapi.yml Raw ↑
swagger: '2.0'
info:
  version: '1.0'
  title: NewStore address external-public API
  description: NewStore public APIs
  contact:
    email: support@newstore.com
    name: NewStore API Support
    url: https://developer.newstore.com
host: dodici-demo.p.newstore.net
basePath: /
schemes:
- https
consumes:
- application/json
produces:
- application/json
security: []
tags:
- name: external-public
paths:
  /catalog/import-schemas:
    post:
      description: "Create new schema object containing jsonschema of [version 7](https://json-schema.org/draft-07/json-schema-release-notes).\nThis schema is  used during import process to validate entity object before persisting it in catalog indexes.\nValid jsonschema file\n  * is validated against [meta schema](https://json-schema.org/draft-07/schema)\n  * references only properties mentioned in whitelist\n  * #ref points only to local resource, e.g. external resources are not allowed.\n\nHere is list of whitelisted fields that can be used in schema (case sensitive):\n- brand (string, may be null)\n- title (string, may be null)\n- caption (string, may be null)\n- description (string, may be null)\n- keywords (array of strings, may be null)\n- product_id (string, max size 255, cannot contain characters `=%`)\n- variant_group_id (string, max size 255)\n- template_id (string, may be null)\n- tax_class_id (string, may be null)\n- schedule_b (string, may be null, [definition](https://usacustomsclearance.com/process/hts-code-vs-hs-code))\n- product_hts_number (string, may be null)\n- google_category (string, may be null)\n- preorder_start (time RFC 3339 string, may be null)\n- online_to (time RFC 3339 string, may be null)\n- online_from (time RFC 3339 string, may be null)\n- country_of_origin (string, may be null)\n- material (string, may be null)\n- extended_attributes (array of attributes, may be null)\n  - name (string, may be null)\n  - value (string, may be null)\n- external_identifiers (array of identifiers, may be null)\n  - type (string, may be null)\n  - value (string, may be null)\n- filterable_attributes (array of attributes, may be null)\n  - name (string, may be null)\n  - value (string, may be null)\n- searchable_attributes (object contain key value string pairs, may be null )\n  - [string] : [string] (name of searchable attribute)\n- shipping_dimension_unit (string, may be null)\n- shipping_dimension_width (number, may be null)\n- shipping_dimension_height (number, may be null)\n- shipping_dimension_length (number, may be null)\n- shipping_weight_value (number, may be null)\n- shipping_weight_unit (string, may be null)\n- variation_additional_1_name (string, may be null)\n- variation_additional_2_name (string, may be null)\n- variation_additional_1_value (string, may be null)\n- variation_additional_2_value (string, may be null)\n- variation_color_value (string, may be null)\n- variation_size_gender (string, may be null)\n- variation_size_system (string, may be null)\n- variation_size_value (string, may be null)\n- variation_size_type (string, may be null)\n"
      summary: createImportSchema
      tags:
      - external-public
      operationId: createImportSchema
      deprecated: false
      produces:
      - application/problem+json
      - application/json
      consumes:
      - application/schema+json
      parameters:
      - name: Content-Type
        in: header
        required: false
        enum:
        - application/schema+json
        type: string
        description: ''
      - name: body
        in: formData
        required: true
        type: file
        format: file
        description: ''
      - name: id
        in: query
        required: false
        type: string
        minLength: 1
        maxLength: 36
        pattern: ^[a-zA-Z0-9_-]+$
        description: default generated id is returned
      - name: entity
        in: query
        required: false
        enum:
        - PRODUCTS
        type: string
        minLength: 1
        description: default id PRODUCTS
      responses:
        default:
          description: Unexpected error
          schema:
            $ref: '#/definitions/Problem'
          headers: {}
        '201':
          description: Created
          schema:
            $ref: '#/definitions/ImportSchemaCreated'
          headers:
            Last-Modified:
              description: Date when of schema file was lastly modified
              type: string
        '400':
          description: Bad Request
          schema:
            $ref: '#/definitions/Problem'
          headers: {}
        '409':
          description: Already Exists
          schema:
            $ref: '#/definitions/Problem'
          headers: {}
        '429':
          description: Too Many Requests
          schema:
            $ref: '#/definitions/Problem'
          headers:
            Retry-After:
              type: string
        '500':
          description: Internal Server Error
          schema:
            $ref: '#/definitions/Problem'
          headers: {}
        '502':
          description: Bad Gateway
          schema:
            $ref: '#/definitions/Problem'
          headers: {}
        '503':
          description: Service Unavailable
          schema:
            $ref: '#/definitions/Problem'
          headers: {}
      security:
      - oauth:
        - catalog:import-schemas:write
  /catalog/import-schemas/{id}:
    delete:
      description: ''
      summary: destroyImportSchema
      tags:
      - external-public
      operationId: destroyImportSchema
      deprecated: false
      produces:
      - application/problem+json
      parameters:
      - name: id
        in: path
        required: true
        type: string
        minLength: 1
        maxLength: 36
        pattern: ^[a-zA-Z0-9_-]+$
        description: ''
      responses:
        default:
          description: Unexpected error
          schema:
            $ref: '#/definitions/Problem'
          headers: {}
        '204':
          description: No Content
          headers: {}
        '404':
          description: Not Found
          headers: {}
        '429':
          description: Too Many Requests
          schema:
            $ref: '#/definitions/Problem'
          headers:
            Retry-After:
              type: string
        '500':
          description: Internal Server Error
          schema:
            $ref: '#/definitions/Problem'
          headers: {}
        '502':
          description: Bad Gateway
          schema:
            $ref: '#/definitions/Problem'
          headers: {}
        '503':
          description: Service Unavailable
          schema:
            $ref: '#/definitions/Problem'
          headers: {}
      security:
      - oauth:
        - catalog:import-schemas:write
    get:
      description: ''
      summary: showImportSchema
      tags:
      - external-public
      operationId: showImportSchema
      deprecated: false
      produces:
      - application/problem+json
      - application/json
      - application/schema+json
      parameters:
      - name: id
        in: path
        required: true
        type: string
        minLength: 1
        maxLength: 36
        pattern: ^[a-zA-Z0-9_-]+$
        description: ''
      responses:
        default:
          description: Unexpected error
          schema:
            $ref: '#/definitions/Problem'
          headers: {}
        '200':
          description: OK
          schema:
            $ref: '#/definitions/ImportSchemaGet'
          headers:
            Last-Modified:
              description: Date Time when of schema file was lastly modified
              type: string
        '400':
          description: Bad Request
          schema:
            $ref: '#/definitions/Problem'
          headers: {}
        '404':
          description: Not Found
          schema:
            $ref: '#/definitions/Problem'
          headers: {}
        '429':
          description: Too Many Requests
          schema:
            $ref: '#/definitions/Problem'
          headers:
            Retry-After:
              type: string
        '500':
          description: Internal Server Error
          schema:
            $ref: '#/definitions/Problem'
          headers: {}
        '502':
          description: Bad Gateway
          schema:
            $ref: '#/definitions/Problem'
          headers: {}
        '503':
          description: Service Unavailable
          schema:
            $ref: '#/definitions/Problem'
          headers: {}
      security:
      - oauth:
        - catalog:import-schemas:read
    patch:
      description: ''
      summary: updateImportSchema
      tags:
      - external-public
      operationId: updateImportSchema
      deprecated: false
      produces:
      - application/problem+json
      consumes:
      - application/schema+json
      parameters:
      - name: id
        in: path
        required: true
        type: string
        minLength: 1
        maxLength: 36
        pattern: ^[a-zA-Z0-9_-]+$
        description: ''
      - name: Content-Type
        in: header
        required: false
        enum:
        - application/schema+json
        type: string
        description: ''
      - name: body
        in: formData
        required: true
        type: file
        format: file
        description: ''
      responses:
        default:
          description: Unexpected error
          schema:
            $ref: '#/definitions/Problem'
          headers: {}
        '204':
          description: Updated
          headers:
            Last-Modified:
              description: Date Time when of schema file was lastly modified
              type: string
        '400':
          description: Bad Request
          schema:
            $ref: '#/definitions/Problem'
          headers: {}
        '404':
          description: Not Found
          schema:
            $ref: '#/definitions/Problem'
          headers: {}
        '429':
          description: Too Many Requests
          schema:
            $ref: '#/definitions/Problem'
          headers:
            Retry-After:
              type: string
        '500':
          description: Internal Server Error
          schema:
            $ref: '#/definitions/Problem'
          headers: {}
        '502':
          description: Bad Gateway
          schema:
            $ref: '#/definitions/Problem'
          headers: {}
        '503':
          description: Service Unavailable
          schema:
            $ref: '#/definitions/Problem'
          headers: {}
      security:
      - oauth:
        - catalog:import-schemas:write
  /catalog/exports/catalogs/{catalog}/pricebooks/{pricebook}:
    get:
      description: 'Use this resource to export a specific price book. The export can be requested in CSV or SQLite format.

        The export contains the following fields:


        | product_id (string) | price (float32) | currency_code (string) |

        |---|---|---|

        |  prod1 | 16.99  |  USD |


        Export API are not immediately scheduling new export.

        Exports are automatically scheduled daily. Usually at 8:00 UTC. They are usually finished before 9:00 UTC.

        API can be used to retrieve max 1 day old snapshot of pricing data.


        Response header `Last-Modified` can be used to determine when file was updated last time (example value `Mon, 18 Dec 2023 08:00:21 GMT`).

        Response header `ETag` can be used to determine whether version you already downloaded before match current one. (example value `"2ad5ba4e24fe1c0d225e9a94049f142d"`)

        Please use it with combination with `If-None-Match` request header to download file only when something changed.

        '
      summary: showPricebookExport
      tags:
      - external-public
      operationId: showPricebookExport
      deprecated: false
      produces:
      - application/problem+json
      parameters:
      - name: catalog
        in: path
        required: true
        type: string
        description: The catalog the pricebook, the user wants to export, belongs to.
      - name: pricebook
        in: path
        required: true
        type: string
        description: The pricebook the user wants to export.
      - name: format
        in: query
        required: false
        enum:
        - csv
        - sqlite
        default: csv
        type: string
        description: The desired response format, defaults to 'csv'.
      responses:
        '302':
          description: Temporary redirect to actual export file, stored in S3.
          headers:
            Location:
              description: The S3 presigned URL to redirect to, to access the requested priceook export.
              type: string
        '400':
          description: Bad Request
          schema:
            $ref: '#/definitions/Problem'
          headers: {}
        '401':
          description: Unauthorized
          schema:
            $ref: '#/definitions/Problem'
          headers: {}
        '403':
          description: Forbidden, authentication scope did not met requirements
          schema:
            $ref: '#/definitions/Problem'
          headers: {}
        '404':
          description: Not found
          schema:
            $ref: '#/definitions/Problem'
          headers: {}
        '429':
          description: Too Many Requests
          schema:
            $ref: '#/definitions/Problem'
          headers:
            Retry-After:
              type: string
        '500':
          description: Internal Error
          schema:
            $ref: '#/definitions/Problem'
          headers: {}
        '502':
          description: Bad Gateway
          schema:
            $ref: '#/definitions/Problem'
          headers: {}
        '503':
          description: Service Unavailable
          schema:
            $ref: '#/definitions/Problem'
          headers: {}
      security:
      - oauth:
        - catalog:pricebook-export:read
  /catalog/catalogs/{catalog}/offlineproducts:
    get:
      description: "Use this resource to download products in a file. The export can be requested in CSV.\n\n- CSV delimiter is `\\t` (tab)\n- CSV line is ended with `\\n` (end line)\n- CSV cell is escaped when containing special characters `\\t` (tab) `\\n` (new line) `\\r` (carriage return) with `\\\\t` `\\\\n` `\\\\r`\n- CSV cell is escaped with `\"` (double quote) when contain double quote originally (relevant to json fields) [RFC 4180](https://www.ietf.org/rfc/rfc4180.txt)\n\nSchema:\n- product_id (string)\n- variant_group_id (string)\n- is_available (bool) - true if product ATP > 0. This value is synchronized from Order Management. This field is eventually consistent. There is no SLA how old this value can be. Please consider using OM directly for use-cases requiring strict consistency. \n- categories (json array)\n  - path (string)\n  - position (int32)\n- main_category_path (string)\n- main_category_position (int32)\n- external_identifiers (json array)\n  - type (string)\n  - value (string)\n- extended_attributes (json array)\n  - name (string)\n  - value (string)\n- title (string)\n- brand\t(string)\n- caption (string)\n- description (string)\n- keywords (json array of strings)\n- images (json array)\n  - url (string)\n  - title (string)\n  - identifier (string)\n  - altText (string)\n  - dominantColor (string)\n  - width (int32)\n  - height (int32)\n  - aspectRatio (float32)\n  - tags (json array of strings)\n- template_id string\t\n- price (float32) price from default pricebook\n- currency (string)\t\n- country_of_origin (string)\n- tax_class_id (string)\n- preorder_start (string RFC3339 truncated to seconds)\n- online_from (string RFC3339 truncated to seconds)\n- online_to (string RFC3339 truncated to seconds)\n- variation_color_value (string)\n- variation_size_value (string)\n- variation_size_gender (string)\n- variation_size_type (string)\n- variation_size_system (string)\n- variation_size_sort_position (int32) \n- variation_additional_1_name (string)\n- variation_additional_1_value (string)\n- variation_additional_2_name (string)\n- variation_additional_2_value (string)\n- product_hts_number (string)\n- schedule_b (string)\n- shipping_dimension_height (float32)\n- shipping_dimension_length (float32)\n- shipping_dimension_unit (string)\n- shipping_dimension_width (float32)\n- shipping_weight_value (float32)\n- shipping_weight_unit (string)\n- serialized_inventory  (bool)\n- variable_pricing  (bool)\n- inventory_tracked  (bool)\n- material  (string)\n- updated_at  (int64 Unix Timestamp Milliseconds) - some products may have this value empty, value is then considered to be Thu Jan 01 1970 00:00:00 GMT+0000\n\nFiles are refreshed automatically. They are scheduled daily. Usually at 8:00 UTC. They are usually finished before 9:00 UTC.\nAPI can be used to retrieve max 1 day old snapshot of product data.\n\nResponse header `Last-Modified` can be used to determine when file was updated last time (example value `Mon, 18 Dec 2023 08:00:21 GMT`).\nResponse header `ETag` can be used to determine whether version you already downloaded before match current one. (example value `\"2ad5ba4e24fe1c0d225e9a94049f142d\"`)\nPlease use it with combination with `If-None-Match` request header to download file only when something changed.\n"
      summary: listProducts
      tags:
      - external-public
      operationId: listProducts
      deprecated: false
      produces:
      - application/json
      - application/problem+json
      parameters:
      - name: catalog
        in: path
        required: true
        type: string
        description: The catalog the product, the user wants to export, belongs to.
      - name: locale
        in: query
        required: false
        default: en-us
        type: string
        description: The locale the user wants to export. Example en-us.csv
      - name: Accept
        in: header
        required: false
        enum:
        - text/csv
        default: text/csv
        type: string
      - name: redirect
        in: query
        required: false
        default: true
        type: boolean
        description: if true api will return HTTP 302 redirect to resource, otherwise it will return json response with link to a file.
      responses:
        '200':
          description: Response with a download link
          schema:
            $ref: '#/definitions/DownloadResponse'
          headers: {}
        '302':
          description: Temporary redirect to actual export file, stored in S3.
          headers:
            Location:
              description: The S3 presigned URL to redirect to, to access the requested product export.
              type: string
        '400':
          description: Bad Request
          schema:
            $ref: '#/definitions/Problem'
          headers: {}
        '401':
          description: Unauthorized
          schema:
            $ref: '#/definitions/Problem'
          headers: {}
        '403':
          description: Forbidden, authentication scope did not met requirements
          schema:
            $ref: '#/definitions/Problem'
          headers: {}
        '404':
          description: Not found
          schema:
            $ref: '#/definitions/Problem'
          headers: {}
        '429':
          description: Too Many Requests
          schema:
            $ref: '#/definitions/Problem'
          headers:
            Retry-After:
              type: string
        '500':
          description: Internal Error
          schema:
            $ref: '#/definitions/Problem'
          headers: {}
        '502':
          description: Bad Gateway
          schema:
            $ref: '#/definitions/Problem'
          headers: {}
        '503':
          description: Service Unavailable
          schema:
            $ref: '#/definitions/Problem'
          headers: {}
      security:
      - oauth:
        - catalog:product-export:read
  /checkout/carts:
    post:
      description: Creates a new empty cart.
      summary: createCart
      tags:
      - external-public
      operationId: createCart
      deprecated: false
      produces:
      - application/problem+json
      consumes:
      - application/json
      parameters:
      - name: Content-Type
        in: header
        required: false
        enum:
        - application/json
        type: string
        description: ''
      - name: body
        in: body
        required: true
        description: ''
        schema:
          $ref: '#/definitions/CreateCartRequestBody'
      responses:
        default:
          description: Unexpected error not otherwise documented
          schema:
            $ref: '#/definitions/Problem'
          headers: {}
        '201':
          description: Created
          headers:
            Access-Control-Allow-Headers:
              type: string
            Access-Control-Allow-Methods:
              type: string
            Access-Control-Allow-Origin:
              type: string
            Access-Control-Expose-Headers:
              type: string
            Location:
              type: string
        '400':
          description: Bad Request
          schema:
            $ref: '#/definitions/Problem'
          headers: {}
        '422':
          description: Unprocessable Entity
          schema:
            $ref: '#/definitions/Problem'
          headers: {}
        '429':
          description: Too Many Requests
          schema:
            $ref: '#/definitions/Problem'
          headers:
            Retry-After:
              type: string
        '500':
          description: Internal Server Error
          schema:
            $ref: '#/definitions/Problem'
          headers: {}
        '502':
          description: Bad Gateway
          schema:
            $ref: '#/definitions/Problem'
          headers: {}
        '503':
          description: Service Unavailable
          schema:
            $ref: '#/definitions/Problem'
          headers: {}
      security:
      - oauth:
        - checkout:carts:write
  /checkout/carts/{cartId}:
    get:
      description: Returns a cart by its ID.
      summary: showCart
      tags:
      - external-public
      operationId: showCart
      deprecated: false
      produces:
      - application/problem+json
      - application/json
      parameters:
      - name: cartId
        in: path
        required: true
        type: string
        description: Cart ID
      responses:
        default:
          description: Unexpected error not otherwise documented
          schema:
            $ref: '#/definitions/Problem'
          headers: {}
        '200':
          description: OK
          schema:
            $ref: '#/definitions/CartResource'
          headers: {}
        '400':
          description: Bad Request
          schema:
            $ref: '#/definitions/Problem'
          headers: {}
        '404':
          description: Not Found
          schema:
            $ref: '#/definitions/Problem'
          headers: {}
        '422':
          description: Unprocessable Entity
          schema:
            $ref: '#/definitions/Problem'
          headers: {}
        '429':
          description: Too Many Requests
          schema:
            $ref: '#/definitions/Problem'
          headers:
            Retry-After:
              type: string
        '500':
          description: Internal Server Error
          schema:
            $ref: '#/definitions/Problem'
          headers: {}
        '502':
          description: Bad Gateway
          schema:
            $ref: '#/definitions/Problem'
          headers: {}
        '503':
          description: Service Unavailable
          schema:
            $ref: '#/definitions/Problem'
          headers: {}
      security:
      - oauth:
        - checkout:carts:read
    patch:
      description: Changes a cart.
      summary: updateCart
      tags:
      - external-public
      operationId: updateCart
      deprecated: false
      produces:
      - application/problem+json
      consumes:
      - application/json
      parameters:
      - name: cartId
        in: path
        required: true
        type: string
        description: Cart ID
      - name: Content-Type
        in: header
        required: false
        enum:
        - application/json
        type: string
        description: ''
      - name: body
        in: body
        required: true
        description: ''
        schema:
          $ref: '#/definitions/ChangeCartRequestBody'
      responses:
        default:
          description: Unexpected error not otherwise documented
          schema:
            $ref: '#/definitions/Problem'
          headers: {}
        '200':
          description: OK
          headers:
            Access-Control-Allow-Headers:
              type: string
            Access-Control-Allow-Methods:
              type: string
            Access-Control-Allow-Origin:
              type: string
            Access-Control-Expose-Headers:
              type: string
        '400':
          description: Bad Request
          schema:
            $ref: '#/definitions/Problem'
          headers: {}
        '404':
          description: Not Found
          schema:
            $ref: '#/definitions/Problem'
          headers: {}
        '409':
          description: Conflict
          schema:
            $ref: '#/definitions/Problem'
          headers: {}
        '422':
          description: Unprocessable Entity
          schema:
            $ref: '#/definitions/Problem'
          headers: {}
        '429':
          description: Too Many Requests
          schema:
            $ref: '#/definitions/Problem'
          headers:
            Retry-After:
              type: string
        '500':
          description: Internal Server Error
          schema:
            $ref: '#/definitions/Problem'
          headers: {}
        '502':
          description: Bad Gateway
          schema:
            $ref: '#/definitions/Problem'
          headers: {}
        '503':
          description: Service Unavailable
          schema:
            $ref: '#/definitions/Problem'
          headers: {}
      security:
      - oauth:
        - checkout:carts:write
  /checkout/carts/{cartId}/items:
    post:
      description: Add a line item to a cart
      summary: createLineItem
      tags:
      - external-public
      operationId: createLineItem
      deprecated: false
      produces:
      - application/problem+json
      - application/json
      consumes:
      - application/json
      parameters:
      - name: cartId
        in: path
        required: true
        type: string
        description: Cart ID
      - name: Content-Type
        in: header
        required: false
        enum:
        - application/json
        type: string
        description: ''
      - name: body
        in: body
        required: true
        description: ''
        schema:
          $ref: '#/definitions/AddItemRequestBody'
      responses:
        default:
          description: Unexpected error not otherwise documented
          schema:
            $ref: '#/definitions/Problem'
          headers: {}
        '201':
          description: Created
          schema:
            $ref: '#/definitions/AddItemResponseBody'
          headers:
            Access-Control-Allow-Headers:
              type: string
            Access-Control-Allow-Methods:
              type: string
            Access-Control-Allow-Origin:
              type: string
            Access-Control-Expose-Headers:
              type: string
            Location:
              type: string
        '400':
          description: Bad Request
          schema:
            $ref: '#/definitions/Problem'
          headers: {}
        '404':
          description: Not Found
          schema:
            $ref: '#/definitions/Problem'
          headers: {}
        '409':
          description: Conflict
          schema:
            $ref: '#/definitions/Problem'
          headers: {}
        '422':
          description: Unprocessable Entity
          schema:
            $ref: '#/definitions/Problem'
          headers: {}
        '429':
          description: Too Many Requests
          schema:
            $ref: '#/definitions/Problem'
          headers:
            Retry-After:
              type: string
        '500':
          description: Internal Server Error
          schema:
            $ref: '#/definitions/Problem'
          headers: {}
        '502':
          description: Bad Gateway
          schema:
            $ref: '#/definitions/Problem'
          headers: {}
        '503':
          description: Service Unavailable
          schema:
            $ref: '#/definitions/Problem'
          headers: {}
      security:
      - oauth:
        - checkout:carts:write
  /checkout/carts/{cartId}/items/{lineItemId}:
    delete:
      description: Removes a line item and all its add-ons from the cart.
      summary: destroyLineItem
      tags:
      - external-public
      operationId: destroyLineItem
      deprecated: false
      produces:
      - application/problem+json
      - application/json
      parameters:
      - name: cartId
        in: path
        required: true
        type: string
        description: Cart ID
      - name: lineItemId
        in: path
        required: true
        type: string
        description: Line Item ID
      responses:
        default:
          description: Unexpected error not otherwise documented
          schema:
            $ref: '#/definitions/Problem'
          headers: {}
        '200':
          description: OK
          schema:
            $ref: '#/definitions/RemoveItemResponseBody'
          headers: {}
        '400':
          description: Bad Request
          schema:
            $ref: '#/definitions/Problem'
          headers: {}
        '404':
          description: Not Found
          schema:
            $ref: '#/definitions/Problem'
          headers: {}
        '409':
          description: Conflict
          schema:
            $ref: '#/definitions/Problem'
          headers: {}
        '422':
          description: Unprocessable Entity
          schema:
            $ref: '#/definitions/Problem'
          headers: {}
        '429':
          description: Too Many Requests
          schema:
            $ref: '#/definitions/Problem'
          headers:
            Retry-After:
              type: string
        '500':
          description: Internal Server Error
          schema:
            $ref: '#/definitions/Problem'
          headers: {}
        '502':
          description: Bad Gateway
          schema:
            $ref: '#/definitions/Problem'
          headers: {}
        '503':
          description: Service Unavailable
          schema:
            $ref: '#/definitions/Problem'
          headers: {}
      security:
      - oauth:
        - checkout:carts:write
    patch:
      description: Updates cart line item details
      summary: updateLineItem
      tags:
      - external-public
      operationId: updateLineItem
      deprecated: false
      produces:
      - application/problem+json
      - application/json
      consumes:
      - application/json
      parameters:
      - name: cartId
        in: path
        required: true
        type: string
        description: Cart ID
      - name: lineItemId
        in: path
        required: true
        type: string
        description: Line Item ID
      - name: Content-Type
        in: header
        required: false
        enum:
        - application/json
        type: string
        description: ''
      - name: body
        in: body
        required: true
        description: ''
        schema:
          $ref: '#/definitions/ChangeItemRequestBody'
      responses:
        default:
          description: Unexpected error not otherwise documented
          schema:
            $ref: '#/definitions/Problem'
          headers: {}
        '200':
          description: OK
          schema:
            $ref: '#/definitions/ChangeItemResponseBody'
          headers:
            Access-Control-Allow-Headers:
              type: string
            Access-Control-Allow-Methods:
              type: string
            Access-Control-Allow-Origin:
              type: string
            Access-Control-Expose-Headers:
              type: string
        '400':
          description: Bad Request
          schema:
            $ref: '#/definitions/Problem'
          headers: {}
        '404':
          description: Not Found
          schema:
            $ref: '#/definitions/Problem'
          headers: {}
        '409':
          description: Conflict
          schema:
            $ref: '#/definitions/Problem'
          head

# --- truncated at 32 KB (633 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/newstore/refs/heads/main/openapi/newstore-external-public-api-openapi.yml