- Resource: Brand
- JSON representation
- ConfigRuleBinding
- McpConfig
- MenuIngestionConfig
- AvailabilityConfig
- ProductMatcher
- NameNormalizationConfig
- ProductNameOverride
- RegexReplacement
- ItemBuildingConfig
- ItemNumberConfig
- IngestionStoreMatcher
- ItemNumberMapping
- ModifierGroupOrderingRule
- SortStrategy
- ModifierGroupReplicationRule
- ModifierGroupNamingRule
- NamingStrategy
- AutoBundleConfig
- CategoryConfig
- SearchConfig
- ChildSynonym
- ModifierGroupIntegrationAttributeConfig
- ItemIntegrationAttributeConfig
- LocalizedConfig
- StoreIngestionConfig
- StoreTimeZoneConfig
- Methods
Resource: Brand
A brand, which can be a restaurant chain or an individual restaurant.
| JSON representation |
|---|
{ "name": string, "displayName": string, "createTime": string, "updateTime": string, "defaultChannelConfig": string, "configRuleBindings": [ { object ( |
| Fields | |
|---|---|
name |
Identifier. The brand name. Format: projects/{project}/locations/{location}/brands/{brand} |
displayName |
Optional. Optional, human-readable display name for this brand for user interfaces. |
createTime |
Output only. The time this brand was created. Uses RFC 3339, where generated output will always be Z-normalized and use 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: |
updateTime |
Output only. The time this brand was last updated. Uses RFC 3339, where generated output will always be Z-normalized and use 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: |
defaultChannelConfig |
Optional. Name of the ChannelConfig to use as the brand default for agent customization. Format: projects/{project}/locations/{location}/brands/{brand}/channelConfigs/{channelConfig} |
configRuleBindings[] |
Optional. Conditional agent config overrides for the brand. These allow for overriding agent behavior based on certain conditions. |
defaultUpsellStrategyChannelConfig |
Optional. Name of the ChannelConfig to use as the brand default for upsell strategy. Format: projects/{project}/locations/{location}/brands/{brand}/channelConfigs/{channelConfig} |
kmsKey |
Optional. Immutable. The Cloud KMS key to encrypt conversational session data at rest. Format: This field can only be set when creating a Brand and cannot be updated or disabled later. |
mcpConfig |
Optional. Configuration for Model Context Protocol (MCP) service. |
timeZone |
Optional. The time zone of the brand. This is used for brand-level analytics and reporting rollups. |
menuIngestionConfig |
Optional. Configuration for menu ingestion. |
geoApiConsentGranted |
Optional. Whether customer has granted legal consent to use the Geocoding API. |
storeIngestionConfig |
Optional. Configuration for store ingestion. |
defaultChannelType |
Optional. The default channel type for this brand if not specified in the session config. |
ConfigRuleBinding
Defines a conditional override of agent behavior.
| JSON representation |
|---|
{ "configApplicationRule": string, "channelConfig": string } |
| Fields | |
|---|---|
configApplicationRule |
Required. The condition to check for whether to apply the override. Format: projects/{project}/locations/{location}/brands/{brand}/configApplicationRules/{configApplicationRule} |
channelConfig |
Required. The configuration to apply if the override condition is met. Format: projects/{project}/locations/{location}/brands/{brand}/channelConfigs/{channelConfig} |
McpConfig
Configuration for Model Context Protocol (MCP) service.
| JSON representation |
|---|
{ "enabled": boolean } |
| Fields | |
|---|---|
enabled |
Optional. Whether the MCP service is enabled for the brand. |
MenuIngestionConfig
Configuration for menu ingestion.
| JSON representation |
|---|
{ "availabilityConfig": { object ( |
| Fields | |
|---|---|
availabilityConfig |
Optional. Configuration for menu item availability. |
nameNormalizationConfig |
Optional. Configuration for name normalization during menu ingestion. |
itemBuildingConfig |
Optional. Configuration for building items during menu ingestion. |
customConfig |
Optional. Custom configurations for brand-specific menu ingestion. |
localizedConfigs[] |
Optional. Language-specific menu ingestion configurations. Name-based configurations (e.g., name matchers, name normalization, search synonyms, category configs) for specific languages are grouped here under their respective BCP-47 language code. Duplicate language codes are not allowed. |
AvailabilityConfig
Configuration for menu item availability.
| JSON representation |
|---|
{
"conditionalExclusions": [
{
object ( |
| Fields | |
|---|---|
conditionalExclusions[] |
Optional. Items that are conditionally excluded based on matching criteria. |
modifierOnlyProductIds[] |
Optional. Products that are only available in meals or combos and not directly orderable. |
ProductMatcher
Matcher used to match one or multiple menu entities like items/modifierGroup/modifiers during menu ingestion time.
| JSON representation |
|---|
{ "productIds": [ string ], "productExactNames": [ string ], "productRegexName": string, "productType": string, "parentProductType": string, "daypartId": string, "existingProductId": string, "parentProductId": string } |
| Fields | |
|---|---|
productIds[] |
Optional. The product IDs to match. |
productExactNames[] |
Optional. The exact product names to match. |
productRegexName |
Optional. A regular expression to match product names. |
productType |
Optional. The product type to match. |
parentProductType |
Optional. The parent product type under which the product is matched. |
daypartId |
Optional. The daypart during which the match applies. |
existingProductId |
Optional. The product ID that must exist for the match to trigger. |
parentProductId |
Optional. The parent product ID under which the product is matched (e.g. only match a modifier when it is offered on a specific item). |
NameNormalizationConfig
Configuration for name normalization during menu ingestion.
| JSON representation |
|---|
{ "productNameOverrides": [ { object ( |
| Fields | |
|---|---|
productNameOverrides[] |
Optional. Overrides product names for matched item(s). |
regexReplacements[] |
Optional. Ordered list of regular expression replacements applied to normalize item names. |
casingExceptions[] |
Optional. Words or tokens whose casing should be preserved during title casing. |
ProductNameOverride
A rule for overriding a product name for matched item(s).
| JSON representation |
|---|
{
"productMatcher": {
object ( |
| Fields | |
|---|---|
productMatcher |
Optional. The product matcher to identify the item(s). |
targetName |
Required. Target product name to use when matched. |
RegexReplacement
A regular expression replacement rule.
| JSON representation |
|---|
{ "pattern": string, "replacement": string } |
| Fields | |
|---|---|
pattern |
Required. The regular expression pattern to match. |
replacement |
Optional. The string to replace matches with. If omitted, matches are replaced with an empty string. |
ItemBuildingConfig
Optional. Configuration for building items during menu ingestion.
| JSON representation |
|---|
{ "itemNumberConfigs": [ { object ( |
| Fields | |
|---|---|
itemNumberConfigs[] |
Optional. Rules for assigning item numbers to items. |
modifierGroupOrderingRules[] |
Optional. Rules for ordering/sorting modifier groups. |
modifierGroupReplicationRules[] |
Optional. Rules for replicating multi-quantity modifier groups into individual slots. |
modifierGroupNamingRules[] |
Optional. Rules for naming modifier groups. |
autoBundleConfig |
Optional. Configuration for auto-bundling combos. |
categoryConfigs[] |
Optional. Configuration for the categories assigned to items. |
searchConfigs[] |
Optional. Configuration for the search attributes assigned to items. |
modifierGroupIntegrationAttributeConfigs[] |
Optional. Configuration for the integration attributes assigned to modifier groups. |
itemIntegrationAttributeConfigs[] |
Optional. Configuration for the integration attributes assigned to items. |
ItemNumberConfig
Configuration for assigning item/menu numbers to items.
| JSON representation |
|---|
{ "storeMatcher": { object ( |
| Fields | |
|---|---|
storeMatcher |
Optional. Matcher for stores where these item number mappings apply. If not specified or empty, applies across all stores as the default. |
itemNumberMappings[] |
Optional. List of item matcher to item number mappings. |
IngestionStoreMatcher
Matcher used to match one or multiple stores during menu ingestion time.
| JSON representation |
|---|
{ "storeIds": [ string ] } |
| Fields | |
|---|---|
storeIds[] |
Optional. Specific store IDs where the configuration applies. If not specified, applies across all stores as the default. |
ItemNumberMapping
Mapping from an item matcher to its item numbers.
| JSON representation |
|---|
{
"productMatcher": {
object ( |
| Fields | |
|---|---|
productMatcher |
Optional. The product matcher to identify the item(s). |
itemNumbers[] |
Optional. The item numbers to assign (e.g., ["1"], ["2", "2a"]). |
ModifierGroupOrderingRule
Configuration for ordering/sorting modifier groups.
| JSON representation |
|---|
{ "productMatcher": { object ( |
| Fields | |
|---|---|
productMatcher |
Optional. The product matcher to identify the item(s) to which this ordering rule applies. |
sortStrategy |
Optional. The sorting strategy to apply to modifier groups. |
priorityList[] |
Optional. Ordered list of terms (e.g. keywords, modifier group names, or types) used when sortStrategy is PRIORITY_LIST. Modifier groups matching earlier terms in the list are sorted first. |
SortStrategy
Strategy for sorting modifier groups.
| Enums | |
|---|---|
SORT_STRATEGY_UNSPECIFIED |
Unspecified sorting strategy. |
ALPHABETICAL |
Sort modifier groups alphabetically by display name. |
PRIORITY_LIST |
Sort modifier groups by priority list. |
ModifierGroupReplicationRule
Configuration for replicating/expanding multi-quantity modifier groups into individual single-quantity slots (e.g., expanding a 2-drink choice into Drink 1 and Drink 2).
| JSON representation |
|---|
{
"productMatcher": {
object ( |
| Fields | |
|---|---|
productMatcher |
Optional. The product matcher to identify the item(s) to which this replication rule applies. |
modifierGroupTypes[] |
Optional. Modifier group types or names to replicate (e.g., "Side", "Drink", "Entree"). If not specified, applies to all modifier groups of the matched items. |
enabled |
Optional. Whether replication is enabled for the matched items and modifier groups. Defaults to true. |
ModifierGroupNamingRule
Configuration for naming modifier groups.
| JSON representation |
|---|
{ "productMatcher": { object ( |
| Fields | |
|---|---|
productMatcher |
Optional. The product matcher to identify the item(s) to which this naming rule applies. |
namingStrategy |
Optional. The naming strategy to apply to modifier groups of the matched items. |
NamingStrategy
Strategy for naming modifier groups.
| Enums | |
|---|---|
NAMING_STRATEGY_UNSPECIFIED |
Unspecified naming strategy. |
CATEGORY_NAME |
Name modifier groups using the category or modifier group type (e.g., Entree, Side, Drink). |
CHOICE_GROUP_NAME |
Name modifier groups using the choice group name from the source POS/catalog. |
AutoBundleConfig
Configuration for auto-bundling items into combos.
| JSON representation |
|---|
{ "defaultAllowAutoBundle": boolean, "allowAutoBundleItemMatchers": [ { object ( |
| Fields | |
|---|---|
defaultAllowAutoBundle |
Optional. Whether auto-bundling is allowed by default for all combos. |
allowAutoBundleItemMatchers[] |
Optional. Item matchers of combos that allow auto-bundling (overriding the default when defaultAllowAutoBundle is false). |
disallowAutoBundleItemMatchers[] |
Optional. Item matchers of combos that disallow auto-bundling (overriding the default when defaultAllowAutoBundle is true). |
CategoryConfig
Configuration for the categories assigned to items.
| JSON representation |
|---|
{
"productMatcher": {
object ( |
| Fields | |
|---|---|
productMatcher |
Optional. The product matcher to identify the item(s) to which this category config applies. |
categoryIds[] |
Optional. The IDs of the categories to assign to the items. |
hierarchicalCategories[] |
Optional. The hierarchical categories to assign to the items. |
SearchConfig
Configuration for the search attributes assigned to items.
| JSON representation |
|---|
{ "productMatcher": { object ( |
| Fields | |
|---|---|
productMatcher |
Optional. The product matcher to identify the item(s) to which this search config applies. |
synonyms[] |
Optional. The synonyms to assign to the items. |
childSynonyms[] |
Optional. The child synonyms to assign to the items. |
ChildSynonym
Child synonym for a menu entity. This is to support cases like "Sausage Egg Cheese Biscuit" to "Sausage Egg Biscuit" with modifier "Cheese".
| JSON representation |
|---|
{ "synonym": string, "children": [ string ] } |
| Fields | |
|---|---|
synonym |
Optional. The synonym for the menu entity. |
children[] |
Optional. Additional child that needs to match for that synonym. |
ModifierGroupIntegrationAttributeConfig
Configuration for integration attributes assigned to modifier groups.
| JSON representation |
|---|
{
"productMatcher": {
object ( |
| Fields | |
|---|---|
productMatcher |
Optional. The product matcher to identify the item(s) to which this modifier group integration attribute config applies. |
modifierGroupNames[] |
Optional. The names or types of the modifier groups to which this integration attribute config applies. |
integrationAttribute |
Optional. Custom integration attributes to assign to the matched modifier groups. |
ItemIntegrationAttributeConfig
Configuration for integration attributes assigned to items.
| JSON representation |
|---|
{
"productMatcher": {
object ( |
| Fields | |
|---|---|
productMatcher |
Optional. The product matcher to identify the item(s) to which this item integration attribute config applies. |
integrationAttribute |
Optional. Custom integration attributes to assign to the matched items. |
LocalizedConfig
High-level localized configuration for menu ingestion. Groups name-based configurations (e.g. name normalization rules, search synonyms, category configs, name matchers) that belong to a specific language.
| JSON representation |
|---|
{ "languageCode": string, "nameNormalizationConfig": { object ( |
| Fields | |
|---|---|
languageCode |
Required. The BCP-47 language code for this configuration (e.g., |
nameNormalizationConfig |
Optional. Configuration for name normalization for this language. |
itemBuildingConfig |
Optional. Configuration for building items specific to this language (e.g., language-specific search synonyms, category configs, modifier group ordering rules). |
availabilityConfig |
Optional. Language-specific availability rules (e.g. conditional exclusions matching localized product names). |
customConfig |
Optional. Language-specific custom configurations. |
StoreIngestionConfig
Configuration for store ingestion.
| JSON representation |
|---|
{ "stagingStoreIds": [ string ], "testStoreIds": [ string ], "storeTimeZoneConfigs": [ { object ( |
| Fields | |
|---|---|
stagingStoreIds[] |
Optional. Store IDs routed to the staging environment during ingestion. |
testStoreIds[] |
Optional. Store IDs designated for testing during ingestion. |
storeTimeZoneConfigs[] |
Optional. Time zone mappings for specific stores. |
defaultOrderLimits |
Optional. Default order limits applied to stores when not provided by the store data source. |
defaultSchedule |
Optional. Default operating schedule applied to stores when not provided by the store data source. |
defaultDayparts[] |
Optional. Default dayparts applied to stores when not provided by the store data source. |
customConfig |
Optional. Custom configurations for brand-specific store ingestion. |
StoreTimeZoneConfig
Mapping of a time zone to specific stores.
| JSON representation |
|---|
{
"timeZone": {
object ( |
| Fields | |
|---|---|
timeZone |
Optional. The time zone to apply to the matched stores. |
storeIds[] |
Optional. The store IDs that use this time zone. |
Methods |
|
|---|---|
|
Computes analytics metrics for a given brand for specified time period with optional store filter. |
|
Creates a brand. |
|
Deletes the specified brand. |
|
Gets a brand. |
|
Lists brands. |
|
Lists history entries for a brand. |
|
Updates the specified brand. |