This is the documentation for Recommendations AI, Retail Search, and the new Retail console.

CatalogAttribute

Catalog level attribute config for an attribute. For example, if customers want to enable/disable facet for a specific attribute.

JSON representation
{
  "key": string,
  "inUse": boolean,
  "type": enum (AttributeType),
  "indexableOption": enum (IndexableOption),
  "dynamicFacetableOption": enum (DynamicFacetableOption),
  "searchableOption": enum (SearchableOption)
}
Fields
key

string

Required. Attribute name. For example: color, brands, attributes.custom_attribute, such as attributes.xyz.

inUse

boolean

Output only. Indicates whether this attribute has been used by any products. True if at least one Product is using this attribute in Product.attributes. Otherwise, this field is False.

CatalogAttribute can be pre-loaded by using [attributesConfig.addCatalogAttribute][], [attributesConfig.importCatalogAttributes][], or [catalogs.updateAttributesConfig][] APIs. This field is False for pre-loaded CatalogAttributes.

Only CatalogAttributes that are not in use by products can be deleted. CatalogAttributes that are in use by products cannot be deleted; however, their configuration properties will reset to default values upon removal request.

After catalog changes, it takes about 10 minutes for this field to update.

type

enum (AttributeType)

Output only. The type of this attribute. This is derived from the attribute in Product.attributes.

indexableOption

enum (IndexableOption)

When AttributesConfig.attribute_config_level is CATALOG_LEVEL_ATTRIBUTE_CONFIG, if INDEXABLE_ENABLED attribute values are indexed so that it can be filtered, faceted, or boosted in SearchService.Search.

dynamicFacetableOption

enum (DynamicFacetableOption)

If DYNAMIC_FACETABLE_ENABLED, attribute values are available for dynamic facet. Could only be DYNAMIC_FACETABLE_DISABLED if CatalogAttribute.indexable_option is INDEXABLE_DISABLED. Otherwise, an INVALID_ARGUMENT error is returned.

searchableOption

enum (SearchableOption)

When AttributesConfig.attribute_config_level is CATALOG_LEVEL_ATTRIBUTE_CONFIG, if SEARCHABLE_ENABLED, attribute values are searchable by text queries in SearchService.Search.

If SEARCHABLE_ENABLED but attribute type is numerical, attribute values will not be searchable by text queries in SearchService.Search, as there are no text values associated to numerical attributes.

AttributeType

The type of an attribute.

Enums
UNKNOWN

The type of the attribute is unknown.

Used when type cannot be derived from attribute that is not inUse.

TEXTUAL Textual attribute.
NUMERICAL Numerical attribute.

IndexableOption

The status of the indexable option of a catalog attribute.

Enums
INDEXABLE_OPTION_UNSPECIFIED Value used when unset. Defaults to INDEXABLE_ENABLED.
INDEXABLE_ENABLED Indexable option enabled for an attribute.
INDEXABLE_DISABLED Indexable option disabled for an attribute.

DynamicFacetableOption

The status of the dynamic facetable option of a catalog attribute.

Enums
DYNAMIC_FACETABLE_OPTION_UNSPECIFIED Value used when unset. Defaults to DYNAMIC_FACETABLE_ENABLED.
DYNAMIC_FACETABLE_ENABLED Dynamic facetable option enabled for an attribute.
DYNAMIC_FACETABLE_DISABLED Dynamic facetable option disabled for an attribute.

SearchableOption

The status of the searchable option of a catalog attribute.

Enums
SEARCHABLE_OPTION_UNSPECIFIED Value used when unset. Defaults to SEARCHABLE_DISABLED.
SEARCHABLE_ENABLED Searchable option enabled for an attribute.
SEARCHABLE_DISABLED Searchable option disabled for an attribute.