- Action ID
actions.intent.UPDATE_CART
- Description
- Add an item to a purchasing queue, such as a shopping cart. Filter the item to add by the
name of the product using the
cart.itemListElement.orderedItem.name
parameter.
Locale support
Functionality | Locales |
---|---|
Preview creation using App Actions test tool | en-US |
User invocation from Google Assistant | en-US |
Example queries
Recommended fields
The following fields represent essential information that users often provide in queries that trigger this built-in intent:
cart.itemListElement.orderedItem.name
Other supported fields
The following fields represent information that users often provide to disambiguate their needs or otherwise improve their results:
cart.@type
cart.itemListElement.@type
cart.itemListElement.orderedItem.@type
Supported text values by field
Inventory availability by field
Sample actions.xml
For information about the actions schema, read Create actions.xml.
Handle intent parameters as URL parameters
<?xml version="1.0" encoding="utf-8"?>
<!-- This is a sample actions.xml -->
<actions>
<action intentName="actions.intent.UPDATE_CART">
<fulfillment urlTemplate="myapp://custom-deeplink{?name}">
<!-- Eg. name = "example name" -->
<!-- (Optional) Require a field eg.name for fulfillment with required="true" -->
<parameter-mapping urlParameter="name" intentParameter="cart.itemListElement.orderedItem.name" required="true" />
</fulfillment>
<!-- Provide a fallback fulfillment with no required parameters. For example, to your app search or router deeplink -->
<fulfillment urlTemplate="myapp://deeplink" />
</action>
</actions>
Use web inventory to discover URLs for fulfillment
cart.itemListElement.orderedItem.name
is a field
that supports web inventory.
In the following example, Google Assistant performs a web search for the user
query and determines the fulfillment URL. Assistant filters for search results
that match the provided urlFilter
value of
https://www.mywebsite.com/link1/.*
.
<?xml version="1.0" encoding="utf-8"?>
<!-- This is a sample actions.xml -->
<actions>
<action intentName="actions.intent.UPDATE_CART">
<!-- Use URL from entity match for deep link fulfillment -->
<!-- Example: url = 'https://www.mywebsite.com/link1/item1' -->
<fulfillment urlTemplate="{@url}" />
<!-- Provide a fallback fulfillment with no required parameters. For example, to your app search or router deeplink -->
<fulfillment urlTemplate="myapp://deeplink" />
<!-- Define parameters with web inventories using urlFilter -->
<parameter name="cart.itemListElement.orderedItem.name">
<entity-set-reference urlFilter="https://www.mywebsite.com/link1/.*" />"/>
</parameter>
</action>
</actions>
JSON-LD sample
The following JSON-LD sample provides some example values that you can use in the App Actions test tool:
{ "@context": "http://schema.googleapis.com", "@type": "Cart", "itemListElement": { "@type": "OrderItem", "orderedItem": { "@type": "Product", "name": "example name" } } }