# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand. overlay: 1.0.0 info: title: API Evangelist conversational phrasing for Shopify Ajax Cart API version: 1.0.0 extends: openapi/shopify-cart-api-openapi.yml actions: - target: $.info update: x-apievangelist-phrasing: method: generated generated: '2026-09-24' generator: build-phrasing.py label: Generated by API Evangelist operations: 6 - target: $.paths['/cart.js'].get update: x-apievangelist-phrasing: intent: See what's in the shopper's cart effect: read questions: - What's currently in the shopper's cart, with totals and currency? - How can my storefront script read the cart note and attributes? instructions: - text: Show me the current cart. - text: Get the cart contents with line items and totals. method: generated generated: '2026-09-24' - target: $.paths['/cart/add.js'].post update: x-apievangelist-phrasing: intent: Add product variants to the cart effect: write questions: - How do I add a product variant to the cart from my theme's JavaScript? - Can I add several variants with a subscription selling plan in one request? instructions: - text: 'Add these items to the cart: {items}.' slots: items: requestBody.items - text: Add {items} to the cart and render sections {sections} in the response. slots: items: requestBody.items sections: requestBody.sections method: generated generated: '2026-09-24' - target: $.paths['/cart/update.js'].post update: x-apievangelist-phrasing: intent: Update cart quantities, note or discount effect: write questions: - Can I apply a discount code to the whole cart? - Is there a way to set several line quantities and a cart note in one call? instructions: - text: Update cart quantities to {updates}. slots: updates: requestBody.updates - text: Apply discount code {discount} to the cart. slots: discount: requestBody.discount - text: Set the cart note to {note} and cart attributes to {attributes}. slots: note: requestBody.note attributes: requestBody.attributes method: generated generated: '2026-09-24' - target: $.paths['/cart/change.js'].post update: x-apievangelist-phrasing: intent: Change a single cart line item effect: write questions: - How do I change the quantity of just one line in the cart? - Can I switch the selling plan on one cart line? instructions: - text: Change cart line {line} to quantity {quantity}. slots: line: requestBody.line quantity: requestBody.quantity - text: Set the line with key {id} to quantity {quantity} and selling plan {selling_plan}. slots: id: requestBody.id quantity: requestBody.quantity selling_plan: requestBody.selling_plan method: generated generated: '2026-09-24' - target: $.paths['/cart/clear.js'].post update: x-apievangelist-phrasing: intent: Empty the cart effect: write questions: - Is there a way to remove every item from the cart at once? - What does the cart look like after it's cleared? instructions: - text: Clear the cart. - text: Remove all line items from the shopper's cart. method: generated generated: '2026-09-24' - target: $.paths['/cart/shipping_rates.json'].get update: x-apievangelist-phrasing: intent: Estimate shipping for the cart effect: read questions: - How much will shipping cost for this cart to a given postcode? - Which shipping rates are available for the cart in another country? instructions: - text: Estimate shipping for the cart to zip {zip} in {country}. slots: zip: query.shipping_address[zip] country: query.shipping_address[country] - text: Get cart shipping rates for {country}, {province}, postal code {zip}. slots: zip: query.shipping_address[zip] country: query.shipping_address[country] province: query.shipping_address[province] method: generated generated: '2026-09-24'