Send remove-from-cart signals with the API

Send a remove-from-cart signal to Connect with the createSignals mutation. For authentication, contact mapping, consent and the response, see Send signals with the API (GraphQL).

To learn what this signal captures and how to use it in Connect, see Removed from cart signal guide. To send it from your website or app instead, use Log signal: web, Android, iOS.

Triggered when a visitor removes products from their cart.

mutation {
  createSignals(
    signals: [
      {
        appKey: "{YOUR_APP_KEY}"
        audience: [{ name: "Customer ID", value: "AAUN-1417508" }]
        sessionId: "SESS-789456123AB"
        signalContent: {
          signalType: "removedFromCart"
          category: "Behavior"
          name: "Remove product from cart in online store"
          currency: "USD"
          productId: "AC-PNT-WHT-SM"
          productName: "AWESOME COLORS Interior Paint Satin Finish 32 Fl Oz"
          itemQuantity: 1
          unitPrice: 39.99
          discount: 7
          productCategory: "Painting & Decorating / Paint"
          productUrls: [
            "https://www.example.com/painting-and-decorating/paint/awesome-colors-interior-satin-paint"
          ]
          imageUrls: ["https://www.example.com/images/awesome-colors-paint.jpg"]
          shoppingCartUrl: "https://www.example.com/cart"
          signalTimestamp: "2026-02-22T08:29:30.001Z"
        }
      }
    ]
  ) {
    signalIds
  }
}

Required fields

  • itemQuantity: Number - Quantity of product removed from cart. Use integers.
  • productId: String - Product identifier (may match SKU)
  • productName: String - Product name
  • signalType: String - Signal type (valid value: removedFromCart)
  • unitPrice: Number - Unit price of the product

Optional fields

  • category: String - Signal category (valid value: Behavior)
  • currency: String - Price currency. Valid values: ISO 4217 currency codes. Examples: "USD", "EUR", "GBP".
  • description: String - Description of the signal
  • discount: Number - Discount amount or difference between original and current price
  • effect: String - Signal engagement effect. Valid values: negative, positive. Use negative for all remove-from-cart signals.
  • imageUrls: Array of strings - The URLs of product images
  • name: String - Signal name to differentiate from other signals. Max length - 256 chars.
  • productCategory: String - Product category name based on catalog
  • productCategoryId: String - Product category identifier
  • productDescription: String - Product description
  • productUrls: Array of strings - The URLs of product pages
  • promotionId: String - ID from marketing campaigns associated with this product
  • shoppingCartUrl: String - Shopping cart URL
  • signalCustomAttributes: Array of objects - Additional custom attributes (each object needs name and value string fields)
  • signalTimestamp: Date - When signal happened (if omitted, Connect uses time when signal was received). Valid values: DateTime strings (ISO 8601). Example: 2026-02-28T16:22:15.001Z.
  • virtualCategory: String - Category based on navigation path (e.g., "New arrivals", "Sale")