openapi: 3.2.0 info: version: 2.4.6 title: Commerce Customer REST endpoints - All inclusive Carts/mine API description: $ref: intro/redocly-intro.md servers: - url: https://example.com/rest/default tags: - name: carts/mine paths: /V1/carts/mine: put: tags: - carts/mine description: Save quote operationId: PutV1CartsMine responses: '401': description: 401 Unauthorized content: application/json: schema: $ref: '#/components/schemas/error-response' application/xml: schema: $ref: '#/components/schemas/error-response' default: description: Unexpected error content: application/json: schema: $ref: '#/components/schemas/error-response' application/xml: schema: $ref: '#/components/schemas/error-response' summary: carts/mine requestBody: content: application/json: schema: required: - quote properties: quote: $ref: '#/components/schemas/quote-data-cart-interface' type: object xml: name: request application/xml: schema: required: - quote properties: quote: $ref: '#/components/schemas/quote-data-cart-interface' type: object xml: name: request get: tags: - carts/mine description: Returns information for the cart for a specified customer. operationId: GetV1CartsMine responses: '200': description: 200 Success. content: application/json: schema: $ref: '#/components/schemas/quote-data-cart-interface' application/xml: schema: $ref: '#/components/schemas/quote-data-cart-interface' '400': description: 400 Bad Request content: application/json: schema: $ref: '#/components/schemas/error-response' application/xml: schema: $ref: '#/components/schemas/error-response' '401': description: 401 Unauthorized content: application/json: schema: $ref: '#/components/schemas/error-response' application/xml: schema: $ref: '#/components/schemas/error-response' default: description: Unexpected error content: application/json: schema: $ref: '#/components/schemas/error-response' application/xml: schema: $ref: '#/components/schemas/error-response' summary: carts/mine components: schemas: quote-data-shipping-assignment-extension-interface: type: object description: ExtensionInterface class for @see \Magento\Quote\Api\Data\ShippingAssignmentInterface customer-data-address-extension-interface: type: object description: ExtensionInterface class for @see \Magento\Customer\Api\Data\AddressInterface configurable-product-data-configurable-item-option-value-interface: type: object description: Interface ConfigurableItemOptionValueInterface properties: option_id: type: string description: Option SKU option_value: type: integer description: Item id extension_attributes: $ref: '#/components/schemas/configurable-product-data-configurable-item-option-value-extension-interface' required: - option_id downloadable-data-downloadable-option-interface: type: object description: Downloadable Option properties: downloadable_links: type: array description: The list of downloadable links items: type: integer required: - downloadable_links quote-data-shipping-assignment-interface: type: object description: Interface ShippingAssignmentInterface properties: shipping: $ref: '#/components/schemas/quote-data-shipping-interface' items: type: array items: $ref: '#/components/schemas/quote-data-cart-item-interface' extension_attributes: $ref: '#/components/schemas/quote-data-shipping-assignment-extension-interface' required: - shipping - items quote-data-cart-interface: type: object description: Interface CartInterface properties: id: type: integer description: Cart/quote ID. created_at: type: string description: Cart creation date and time. Otherwise, null. updated_at: type: string description: Cart last update date and time. Otherwise, null. converted_at: type: string description: Cart conversion date and time. Otherwise, null. is_active: type: boolean description: Active status flag value. Otherwise, null. is_virtual: type: boolean description: Virtual flag value. Otherwise, null. items: type: array description: Array of items. Otherwise, null. items: $ref: '#/components/schemas/quote-data-cart-item-interface' items_count: type: integer description: Number of different items or products in the cart. Otherwise, null. items_qty: type: number description: Total quantity of all cart items. Otherwise, null. customer: $ref: '#/components/schemas/customer-data-customer-interface' billing_address: $ref: '#/components/schemas/quote-data-address-interface' reserved_order_id: type: string description: Reserved order ID. Otherwise, null. orig_order_id: type: integer description: Original order ID. Otherwise, null. currency: $ref: '#/components/schemas/quote-data-currency-interface' customer_is_guest: type: boolean description: For guest customers, false for logged in customers customer_note: type: string description: Notice text customer_note_notify: type: boolean description: Customer notification flag customer_tax_class_id: type: integer description: Customer tax class ID. store_id: type: integer description: Store identifier extension_attributes: $ref: '#/components/schemas/quote-data-cart-extension-interface' required: - id - customer - store_id bundle-data-bundle-option-interface: type: object description: Interface BundleOptionInterface properties: option_id: type: integer description: Bundle option id. option_qty: type: integer description: Bundle option quantity. option_selections: type: array description: Bundle option selection ids. items: type: integer extension_attributes: $ref: '#/components/schemas/bundle-data-bundle-option-extension-interface' required: - option_id - option_qty - option_selections bundle-data-bundle-option-extension-interface: type: object description: ExtensionInterface class for @see \Magento\Bundle\Api\Data\BundleOptionInterface grouped-product-data-grouped-options-interface: type: object description: Represents `product item id with qty` of a grouped product. properties: id: type: integer description: Associated product id qty: type: integer description: Associated product qty extension_attributes: $ref: '#/components/schemas/grouped-product-data-grouped-options-extension-interface' customer-data-region-interface: type: object description: Customer address region interface. properties: region_code: type: string description: Region code region: type: string description: Region region_id: type: integer description: Region id extension_attributes: $ref: '#/components/schemas/customer-data-region-extension-interface' required: - region_code - region - region_id customer-data-customer-extension-interface: type: object description: ExtensionInterface class for @see \Magento\Customer\Api\Data\CustomerInterface properties: company_attributes: $ref: '#/components/schemas/company-data-company-customer-interface' assistance_allowed: type: integer is_subscribed: type: boolean quote-data-shipping-interface: type: object description: Interface ShippingInterface properties: address: $ref: '#/components/schemas/quote-data-address-interface' method: type: string description: Shipping method extension_attributes: $ref: '#/components/schemas/quote-data-shipping-extension-interface' required: - address - method negotiable-quote-data-negotiable-quote-extension-interface: type: object description: ExtensionInterface class for @see \Magento\NegotiableQuote\Api\Data\NegotiableQuoteInterface framework-attribute-interface: type: object description: Interface for custom attribute value. properties: attribute_code: type: string description: Attribute code value: type: string description: Attribute value required: - attribute_code - value customer-data-customer-interface: type: object description: Customer entity interface for API handling. properties: id: type: integer description: Customer id group_id: type: integer description: Group id default_billing: type: string description: Default billing address id default_shipping: type: string description: Default shipping address id confirmation: type: string description: Confirmation created_at: type: string description: Created at time updated_at: type: string description: Updated at time created_in: type: string description: Created in area dob: type: string description: In keeping with current security and privacy best practices, be sure you are aware of any potential legal and security risks associated with the storage of customers’ full date of birth (month, day, year) along with other personal identifiers (e.g., full name) before collecting or processing such data. email: type: string description: Email address firstname: type: string description: First name lastname: type: string description: Last name middlename: type: string description: Middle name prefix: type: string description: Prefix suffix: type: string description: Suffix gender: type: integer description: Gender store_id: type: integer description: Store id taxvat: type: string description: Tax Vat website_id: type: integer description: Website id addresses: type: array description: Customer addresses. items: $ref: '#/components/schemas/customer-data-address-interface' disable_auto_group_change: type: integer description: Disable auto group change flag. extension_attributes: $ref: '#/components/schemas/customer-data-customer-extension-interface' custom_attributes: type: array description: Custom attributes values. items: $ref: '#/components/schemas/framework-attribute-interface' required: - email - firstname - lastname quote-data-product-option-extension-interface: type: object description: ExtensionInterface class for @see \Magento\Quote\Api\Data\ProductOptionInterface properties: custom_options: type: array items: $ref: '#/components/schemas/catalog-data-custom-option-interface' bundle_options: type: array items: $ref: '#/components/schemas/bundle-data-bundle-option-interface' downloadable_option: $ref: '#/components/schemas/downloadable-data-downloadable-option-interface' giftcard_item_option: $ref: '#/components/schemas/gift-card-data-gift-card-option-interface' configurable_item_options: type: array items: $ref: '#/components/schemas/configurable-product-data-configurable-item-option-value-interface' grouped_options: type: array items: $ref: '#/components/schemas/grouped-product-data-grouped-options-interface' grouped-product-data-grouped-options-extension-interface: type: object description: ExtensionInterface class for @see \Magento\GroupedProduct\Api\Data\GroupedOptionsInterface negotiable-quote-data-negotiable-quote-item-interface: type: object description: Interface CompanyQuoteConfigInterface properties: item_id: type: integer description: Quote item id original_price: type: number description: Quote item original price original_tax_amount: type: number description: Quote item original tax amount original_discount_amount: type: number description: Quote item original discount amount extension_attributes: $ref: '#/components/schemas/negotiable-quote-data-negotiable-quote-item-extension-interface' required: - item_id - original_price - original_tax_amount - original_discount_amount quote-data-currency-extension-interface: type: object description: ExtensionInterface class for @see \Magento\Quote\Api\Data\CurrencyInterface company-data-company-customer-extension-interface: type: object description: ExtensionInterface class for @see \Magento\Company\Api\Data\CompanyCustomerInterface gift-card-data-gift-card-option-interface: type: object description: Interface GiftCardOptionInterface properties: giftcard_amount: type: string description: Gift card amount. custom_giftcard_amount: type: number description: Gift card open amount value. giftcard_sender_name: type: string description: Gift card sender name. giftcard_recipient_name: type: string description: Gift card recipient name. giftcard_sender_email: type: string description: Gift card sender email. giftcard_recipient_email: type: string description: Gift card recipient email. giftcard_message: type: string description: Giftcard message. extension_attributes: $ref: '#/components/schemas/gift-card-data-gift-card-option-extension-interface' required: - giftcard_amount - giftcard_sender_name - giftcard_recipient_name - giftcard_sender_email - giftcard_recipient_email quote-data-address-interface: type: object description: Interface AddressInterface properties: id: type: integer description: Id region: type: string description: Region name region_id: type: integer description: Region id region_code: type: string description: Region code country_id: type: string description: Country id street: type: array description: Street items: type: string company: type: string description: Company telephone: type: string description: Telephone number fax: type: string description: Fax number postcode: type: string description: Postcode city: type: string description: City name firstname: type: string description: First name lastname: type: string description: Last name middlename: type: string description: Middle name prefix: type: string description: Prefix suffix: type: string description: Suffix vat_id: type: string description: Vat id customer_id: type: integer description: Customer id email: type: string description: Billing/shipping email same_as_billing: type: integer description: Same as billing flag customer_address_id: type: integer description: Customer address id save_in_address_book: type: integer description: Save in address book flag extension_attributes: $ref: '#/components/schemas/quote-data-address-extension-interface' custom_attributes: type: array description: Custom attributes values. items: $ref: '#/components/schemas/framework-attribute-interface' required: - region - region_id - region_code - country_id - street - telephone - postcode - city - firstname - lastname - email error-errors: type: array description: Errors list items: $ref: '#/components/schemas/error-errors-item' error-errors-item: type: object description: Error details properties: message: type: string description: Error message parameters: $ref: '#/components/schemas/error-parameters' sales-rule-data-rule-discount-interface: type: object description: Rule discount Interface properties: discount_data: $ref: '#/components/schemas/sales-rule-data-discount-data-interface' rule_label: type: string description: Rule Label rule_id: type: integer description: Rule ID required: - discount_data - rule_label - rule_id quote-data-cart-extension-interface: type: object description: ExtensionInterface class for @see \Magento\Quote\Api\Data\CartInterface properties: shipping_assignments: type: array items: $ref: '#/components/schemas/quote-data-shipping-assignment-interface' negotiable_quote: $ref: '#/components/schemas/negotiable-quote-data-negotiable-quote-interface' quote-data-currency-interface: type: object description: Interface CurrencyInterface properties: global_currency_code: type: string description: Global currency code base_currency_code: type: string description: Base currency code store_currency_code: type: string description: Store currency code quote_currency_code: type: string description: Quote currency code store_to_base_rate: type: number description: Store currency to base currency rate store_to_quote_rate: type: number description: Store currency to quote currency rate base_to_global_rate: type: number description: Base currency to global currency rate base_to_quote_rate: type: number description: Base currency to quote currency rate extension_attributes: $ref: '#/components/schemas/quote-data-currency-extension-interface' catalog-data-custom-option-extension-interface: type: object description: ExtensionInterface class for @see \Magento\Catalog\Api\Data\CustomOptionInterface properties: file_info: $ref: '#/components/schemas/framework-data-image-content-interface' quote-data-address-extension-interface: type: object description: ExtensionInterface class for @see \Magento\Quote\Api\Data\AddressInterface properties: discounts: type: array items: $ref: '#/components/schemas/sales-rule-data-rule-discount-interface' gift_registry_id: type: integer pickup_location_code: type: string bolt_id: type: string quote-data-shipping-extension-interface: type: object description: ExtensionInterface class for @see \Magento\Quote\Api\Data\ShippingInterface company-data-company-customer-interface: type: object description: Extended customer custom attributes interface. properties: customer_id: type: integer description: Customer ID. company_id: type: integer description: Company ID. job_title: type: string description: Get job title. status: type: integer description: Customer status. telephone: type: string description: Get telephone. extension_attributes: $ref: '#/components/schemas/company-data-company-customer-extension-interface' error-parameters: type: array description: Error parameters list items: $ref: '#/components/schemas/error-parameters-item' catalog-data-custom-option-interface: type: object description: Interface CustomOptionInterface properties: option_id: type: string description: Option id option_value: type: string description: Option value extension_attributes: $ref: '#/components/schemas/catalog-data-custom-option-extension-interface' required: - option_id - option_value sales-rule-data-discount-data-interface: type: object description: Discount Data Interface properties: amount: type: number description: Amount base_amount: type: number description: Base Amount original_amount: type: number description: Original Amount base_original_amount: type: number description: Base Original Amount required: - amount - base_amount - original_amount - base_original_amount gift-card-data-gift-card-option-extension-interface: type: object description: ExtensionInterface class for @see \Magento\GiftCard\Api\Data\GiftCardOptionInterface properties: giftcard_created_codes: type: array items: type: string quote-data-product-option-interface: type: object description: Product option interface properties: extension_attributes: $ref: '#/components/schemas/quote-data-product-option-extension-interface' quote-data-cart-item-extension-interface: type: object description: ExtensionInterface class for @see \Magento\Quote\Api\Data\CartItemInterface properties: discounts: type: array items: $ref: '#/components/schemas/sales-rule-data-rule-discount-interface' negotiable_quote_item: $ref: '#/components/schemas/negotiable-quote-data-negotiable-quote-item-interface' customer-data-region-extension-interface: type: object description: ExtensionInterface class for @see \Magento\Customer\Api\Data\RegionInterface negotiable-quote-data-negotiable-quote-item-extension-interface: type: object description: ExtensionInterface class for @see \Magento\NegotiableQuote\Api\Data\NegotiableQuoteItemInterface negotiable-quote-data-negotiable-quote-interface: type: object description: Interface NegotiableQuoteInterface properties: quote_id: type: integer description: Negotiable quote ID. is_regular_quote: type: boolean description: Is regular quote. status: type: string description: Negotiable quote status. negotiated_price_type: type: integer description: Negotiated price type. negotiated_price_value: type: number description: Negotiated price value. shipping_price: type: number description: Proposed shipping price. quote_name: type: string description: Negotiable quote name. expiration_period: type: string description: Expiration period. email_notification_status: type: integer description: Email notification status. has_unconfirmed_changes: type: boolean description: Has unconfirmed changes. is_shipping_tax_changed: type: boolean description: Shipping tax changes. is_customer_price_changed: type: boolean description: Customer price changes. notifications: type: integer description: Quote notifications. applied_rule_ids: type: string description: Quote rules. is_address_draft: type: boolean description: Is address draft. deleted_sku: type: string description: Deleted products sku. creator_id: type: integer description: Quote creator id. creator_type: type: integer description: Quote creator type. original_total_price: type: number description: Quote original total price. base_original_total_price: type: number description: Quote original total price in base currency. negotiated_total_price: type: number description: Quote negotiated total price. base_negotiated_total_price: type: number description: Quote negotiated total price in base currency. extension_attributes: $ref: '#/components/schemas/negotiable-quote-data-negotiable-quote-extension-interface' required: - quote_id - is_regular_quote - status - negotiated_price_type - negotiated_price_value - shipping_price - quote_name - expiration_period - email_notification_status - has_unconfirmed_changes - is_shipping_tax_changed - is_customer_price_changed - notifications - applied_rule_ids - is_address_draft - deleted_sku - creator_id - creator_type error-parameters-item: type: object description: Error parameters item properties: resources: type: string description: ACL resource fieldName: type: string description: Missing or invalid field name fieldValue: type: string description: Incorrect field value error-response: type: object properties: message: type: string description: Error message errors: $ref: '#/components/schemas/error-errors' code: type: integer description: Error code parameters: $ref: '#/components/schemas/error-parameters' trace: type: string description: Stack trace required: - message framework-data-image-content-interface: type: object description: Image Content data interface properties: base64_encoded_data: type: string description: Media data (base64 encoded content) type: type: string description: MIME type name: type: string description: Image name required: - base64_encoded_data - type - name quote-data-cart-item-interface: type: object description: Interface CartItemInterface properties: item_id: type: integer description: Item ID. Otherwise, null. sku: type: string description: Product SKU. Otherwise, null. qty: type: number description: Product quantity. name: type: string description: Product name. Otherwise, null. price: type: number description: Product price. Otherwise, null. product_type: type: string description: Product type. Otherwise, null. quote_id: type: string description: Quote id. product_option: $ref: '#/components/schemas/quote-data-product-option-interface' extension_attributes: $ref: '#/components/schemas/quote-data-cart-item-extension-interface' required: - qty - quote_id customer-data-address-interface: type: object description: Customer address interface. properties: id: type: integer description: ID customer_id: type: integer description: Customer ID region: $ref: '#/components/schemas/customer-data-region-interface' region_id: type: integer description: Region ID country_id: type: string description: Country code in ISO_3166-2 format street: type: array description: Street items: type: string company: type: string description: Company telephone: type: string description: Telephone number fax: type: string description: Fax number postcode: type: string description: Postcode city: type: string description: City name firstname: type: string description: First name lastname: type: string description: Last name middlename: type: string description: Middle name prefix: type: string description: Prefix suffix: type: string description: Suffix vat_id: type: string description: Vat id default_shipping: type: boolean description: If this address is default shipping address. default_billing: type: boolean description: If this address is default billing address extension_attributes: $ref: '#/components/schemas/customer-data-address-extension-interface' custom_attributes: type: array description: Custom attributes values. items: $ref: '#/components/schemas/framework-attribute-interface' configurable-product-data-configurable-item-option-value-extension-interface: type: object description: ExtensionInterface class for @see \Magento\ConfigurableProduct\Api\Data\ConfigurableItemOptionValueInterface securitySchemes: api_key: type: apiKey name: api_key in: header x-tagGroups: - name: applepay tags: - applepay/auth - name: carts tags: - carts/guest-carts/{cartId}/checkGiftCard/{giftCardCode} - carts/guest-carts/{cartId}/giftCards - carts/guest-carts/{cartId}/giftCards/{giftCardCode} - carts/mine - carts/mine/balance/apply - carts/mine/checkGiftCard/{giftCardCode} - carts/mine/collect-totals - carts/mine/payment-information - carts/mine/po-payment-information - carts/mine/set-payment-information - name: customers tags: - customers - customers/isEmailAvailable - customers/me/activate - customers/me/password - customers/password - customers/resetPassword - customers/{customerId}/password/resetLinkToken/{resetPasswordLinkToken} - name: directory tags: - directory/countries - directory/countries/{countryId} - directory/currency - name: giftregistry tags: - giftregistry/mine/estimate-shipping-methods - name: guest carts tags: - guest-carts - guest-carts/{cartId} - guest-carts/{cartId}/billing-address - guest-carts/{cartId}/collect-totals - guest-carts/{cartId}/coupons - guest-carts/{cartId}/coupons/{couponCode} - guest-carts/{cartId}/estimate-shipping-methods - guest-carts/{cartId}/gift-message - guest-carts/{cartId}/gift-message/{itemId} - guest-carts/{cartId}/items - guest-carts/{cartId}/items/{itemId} - guest-carts/{cartId}/order - guest-carts/{cartId}/payment-information - guest-carts/{cartId}/payment-methods - guest-carts/{cartId}/selected-payment-method - guest-carts/{cartId}/set-payment-information - guest-carts/{cartId}/shipping-information - guest-carts/{cartId}/shipping-methods - guest-carts/{cartId}/totals - guest-carts/{cartId}/totals-information - name: guest giftregistry tags: - guest-giftregistry/{cartId}/estimate-shipping-methods - name: integration tags: - integration/admin/token - integration/customer/revoke-customer-token - integration/customer/token - name: inventory tags: - inventory/in-store-pickup/pickup-locations/ - name: negotiable carts tags: - negotiable-carts/{cartId}/billing-address - negotiable-carts/{cartId}/coupons - negotiable-carts/{cartId}/coupons/{couponCode} - negotiable-carts/{cartId}/estimate-shipping-methods - negotiable-carts/{cartId}/estimate-shipping-methods-by-address-id - negotiable-carts/{cartId}/giftCards - negotiable-carts/{cartId}/giftCards/{giftCardCode} - negotiable-carts/{cartId}/payment-information - negotiable-carts/{cartId}/set-payment-information - negotiable-carts/{cartId}/shipping-information - negotiable-carts/{cartId}/totals - name: products render info tags: - products-render-info - name: purchase order carts tags: - purchase-order-carts/{cartId}/payment-information - purchase-order-carts/{cartId}/set-payment-information - name: quick checkout tags: - quick-checkout/account-details - quick-checkout/has-account - quick-checkout/storefront/has-account - name: requisition_lists tags: - requisition_lists - name: reward tags: - reward/mine/use-reward - name: search tags: - search - name: tfa tags: - tfa/provider/authy/activate - tfa/provider/authy/authenticate - tfa/provider/authy/authenticate-onetouch - tfa/provider/authy/configure - tfa/provider/authy/send-token/{via} - tfa/provider/duo_security/activate - tfa/provider/duo_security/authenticate - tfa/provider/duo_security/configure - tfa/provider/duo_security/get-authentication-data - tfa/provider/google/activate - tfa/provider/google/authenticate - tfa/provider/google/configure - tfa/provider/u2fkey/activate - tfa/provider/u2fkey/authentication-challenge - tfa/provider/u2fkey/configure - tfa/provider/u2fkey/verify - tfa/tfat-providers-to-activate - tfa/tfat-user-providers