Catalogs tools

search_discovery_catalogs

Searches the catalogs in your account, or fetches one by name. A catalog holds the products and variants that power search and category pages. Omit catalog_name to list all catalogs, each with its name, language, environment (production or staging), and statistics such as document counts and index refresh timestamps.

Pass catalog_name to fetch a single catalog's details, including its statistics, properties, and Data hub properties for the chosen environment. The catalog name is required by most other catalog tools, so start here. Set account_name if you have access to more than one account.

Request parameters

NameTypeRequired?Description
catalog_namestr | nullNoThe catalog name. Omit to list all catalogs; provide to fetch one.
account_namestr | nullNoThe account name. If you have exactly one account, it's selected automatically. Use list_discovery_accounts to see available accounts.
environmentstrNoThe environment: production or staging. Only applies when catalog_name is set.

Response parameters

The tool returns a DiscoveryCatalogsResponse when catalog_name is omitted, or a DiscoveryCatalogResponse when it's provided.

The DiscoveryCatalogsResponse object has the following parameters:

ParameterTypeDescription
successboolWhether the request succeeded.
datalist[CatalogSummary]The catalogs in your account.
errorstr | nullError message if the request failed.

The DiscoveryCatalogResponse object has the following parameters:

ParameterTypeDescription
successboolWhether the request succeeded.
dataCatalogSummary | nullThe catalog details.
errorstr | nullError message if the request failed.

The CatalogSummary object has the following fields:

FieldTypeDescription
namestrThe catalog name. Pass this to the other catalog tools.
languagestr | nullThe catalog language code, for example en.
environmentstr | nullThe environment: production or staging.
statsCatalogStats | nullCatalog statistics: document counts and index timestamps.
propertiesany | nullCatalog properties.
data_hub_propertiesany | nullData hub integration properties.

The CatalogStats object has the following fields:

FieldTypeDescription
last_index_refresh_atstr | nullISO timestamp of the last index refresh.
last_keyword_suggest_refresh_atstr | nullISO timestamp of the last keyword suggest refresh.
product_doc_countint | nullThe number of product documents.
product_doc_byte_countint | nullThe size of product documents, in bytes.
variant_doc_byte_countint | nullThe size of variant documents, in bytes.
catalog_searchable_byte_countint | nullThe size of searchable catalog data, in bytes.
catalog_displayable_byte_countint | nullThe size of displayable catalog data, in bytes.
catalog_facetable_manual_byte_countint | nullThe size of manually-facetable catalog data, in bytes.
catalog_facetable_auto_byte_countint | nullThe size of auto-facetable catalog data, in bytes.

get_discovery_catalog_config

Returns the latest attribute configuration for a catalog. The configuration defines which attributes are searchable, displayable, facetable (manual and auto), and sortable. Use it to understand what attributes a catalog exposes and how they're set up for search and merchandising.

The configuration is a large freeform JSON object. Use search_discovery_catalogs to find catalog names.

Request parameters

NameTypeRequired?Description
catalog_namestrYesThe catalog name, for example ucg_automation_com.
environmentstrNoThe environment: production or staging. Defaults to production.

Response parameters

The tool returns a DiscoveryCatalogConfigResponse object with the following parameters:

ParameterTypeDescription
successboolWhether the request succeeded.
dataany | nullThe catalog configuration, as freeform JSON: searchable, displayable, facetable, and sortable attribute definitions.
errorstr | nullError message if the request failed.

search_discovery_catalog_products

Searches the products in a catalog, or fetches one by ID. Omit product_id to list products: paginated records, each with the product ID, its attribute key-value pairs, and a variant count. Pages are 1-based, so the first page is 1.

Pass product_id to fetch a single product's full attribute set and variant count. Use search_discovery_catalog_product_variants to list a product's variants.

Request parameters

NameTypeRequired?Description
catalog_namestrYesThe catalog name returned by search_discovery_catalogs.
product_idstr | nullNoThe product ID. Omit to list all products; provide to fetch one.
account_namestr | nullNoThe account name. If you have exactly one account, it's selected automatically. Use list_discovery_accounts to see available accounts.
environmentstrNoThe environment: production or staging.
pageintNoPage number, 1-based. Defaults to 1. Ignored when product_id is set.
limitintNoResults per page. Defaults to 10. Ignored when product_id is set.

Response parameters

The tool returns a DiscoveryCatalogProductsResponse when product_id is omitted, or a DiscoveryCatalogProductResponse when it's provided.

The DiscoveryCatalogProductsResponse object has the following parameters:

ParameterTypeDescription
successboolWhether the request succeeded.
datalist[CatalogProduct]The products in the catalog.
countint | nullThe total number of products.
errorstr | nullError message if the request failed.

The DiscoveryCatalogProductResponse object has the following parameters:

ParameterTypeDescription
successboolWhether the request succeeded.
dataCatalogProduct | nullThe product details.
errorstr | nullError message if the request failed.

The CatalogProduct object has the following fields:

FieldTypeDescription
idstrThe product ID.
attributesdict | nullThe product's attribute key-value pairs.
variant_record_countint | nullThe number of variants for this product.

search_discovery_catalog_product_variants

Searches the variants for a product in a catalog, or fetches one by ID. Omit variant_id to list variants: paginated records, each with the variant ID and its attribute key-value pairs. Pages are 1-based, so the first page is 1.

Pass variant_id to fetch a single variant's full attribute set. Use search_discovery_catalog_products to find product IDs.

Request parameters

NameTypeRequired?Description
catalog_namestrYesThe catalog name returned by search_discovery_catalogs.
product_idstrYesThe product ID returned by search_discovery_catalog_products.
variant_idstr | nullNoThe variant ID. Omit to list all variants; provide to fetch one.
account_namestr | nullNoThe account name. If you have exactly one account, it's selected automatically. Use list_discovery_accounts to see available accounts.
environmentstrNoThe environment: production or staging.
pageintNoPage number, 1-based. Defaults to 1. Ignored when variant_id is set.
limitintNoResults per page. Defaults to 10. Ignored when variant_id is set.

Response parameters

The tool returns a DiscoveryCatalogVariantsResponse when variant_id is omitted, or a DiscoveryCatalogVariantResponse when it's provided.

The DiscoveryCatalogVariantsResponse object has the following parameters:

ParameterTypeDescription
successboolWhether the request succeeded.
datalist[CatalogVariant]The variants for the product.
countint | nullThe total number of variants.
errorstr | nullError message if the request failed.

The DiscoveryCatalogVariantResponse object has the following parameters:

ParameterTypeDescription
successboolWhether the request succeeded.
dataCatalogVariant | nullThe variant details.
errorstr | nullError message if the request failed.

The CatalogVariant object has the following fields:

FieldTypeDescription
idstrThe variant ID.
attributesdict | nullThe variant's attribute key-value pairs.

search_discovery_catalog_jobs

Searches the feed and index jobs for a catalog, or fetches one by ID. Jobs process catalog feeds and rebuild the search index. Omit job_id to list jobs: paginated records, each with the job status, type, timestamps, and document-count statistics. Filter by status, visibility, or a creation-date range. Pages are 1-based, so the first page is 1.

Pass job_id to fetch a single job's full details, including its status, timestamps, properties, and statistics. To find jobs that failed, set status to failure.

Request parameters

NameTypeRequired?Description
catalog_namestrYesThe catalog name returned by search_discovery_catalogs.
job_idstr | nullNoThe job ID. Omit to list all jobs; provide to fetch one.
account_namestr | nullNoThe account name. If you have exactly one account, it's selected automatically. Use list_discovery_accounts to see available accounts.
environmentstrNoThe environment: production or staging.
pageintNoPage number, 1-based. Defaults to 1. Ignored when job_id is set.
limitintNoResults per page. Defaults to 50. Ignored when job_id is set.
statusstr | nullNoStatus filter: running, queued, success, failure, failed, killed, or skipped. Ignored when job_id is set.
visibilitystr | nullNoVisibility filter: external, internal, or all. Ignored when job_id is set.
created_at_minstr | nullNoISO 8601 timestamp lower bound for the job creation date. Ignored when job_id is set.
created_at_maxstr | nullNoISO 8601 timestamp upper bound for the job creation date. Ignored when job_id is set.

Response parameters

The tool returns a DiscoveryCatalogJobsResponse when job_id is omitted, or a DiscoveryCatalogJobResponse when it's provided.

The DiscoveryCatalogJobsResponse object has the following parameters:

ParameterTypeDescription
successboolWhether the request succeeded.
datalist[CatalogJob]The feed and index jobs for the catalog.
countint | nullThe total number of jobs.
errorstr | nullError message if the request failed.

The DiscoveryCatalogJobResponse object has the following parameters:

ParameterTypeDescription
successboolWhether the request succeeded.
dataCatalogJob | nullThe job details.
errorstr | nullError message if the request failed.

The CatalogJob object has the following fields:

FieldTypeDescription
idstrThe job ID.
typestr | nullThe job type: feed, index, or suggest.
statusstr | nullThe job status: running, queued, success, failure, failed, killed, or skipped.
status_messagestr | nullA human-readable status message.
created_atstr | nullISO timestamp of when the job was created.
started_atstr | nullISO timestamp of when the job started.
stopped_atstr | nullISO timestamp of when the job stopped.
visibilitystr | nullThe job visibility: external, internal, or all.
propertiesJobProperties | nullJob properties: feed type, mode, and input source.
statsJobStats | nullJob statistics: document counts.

The JobProperties object has the following fields:

FieldTypeDescription
feed_data_typestr | nullThe feed data type: products, ae, qd, ltr, or product_vectors.
feed_modestr | nullThe feed mode: full or delta.
input_sourcestr | nullThe input source: sftp_file_upload or api_request_body.
input_filenameslist[str] | nullThe input file names.
config_etagstr | nullThe config ETag at the time the job ran.
index_modestr | nullThe index mode: update, refresh, or export.
ignore_count_dropbool | nullWhether count-drop protection was bypassed.

The JobStats object has the following fields:

FieldTypeDescription
patch_operation_countint | nullThe number of patch operations.
product_doc_countint | nullThe number of product documents processed.
variant_doc_countint | nullThe number of variant documents processed.
search_variant_countint | nullThe number of search variant documents.
search_product_countint | nullThe number of search product documents.
deleted_parent_countint | nullThe number of deleted parent documents.

get_discovery_catalog_reserved_attributes

Returns the reserved attribute names for a catalog. Reserved attributes are system-defined names that you can't use as custom attribute names in a catalog feed. Using a reserved name as a custom attribute causes feed ingestion errors.

Check this list before you add new attributes to your feed to avoid naming conflicts. Use search_discovery_catalogs to find catalog names.

Request parameters

NameTypeRequired?Description
catalog_namestrYesThe catalog name, for example ucg_automation_com.
environmentstrNoThe environment: production or staging. Defaults to production.

Response parameters

The tool returns a DiscoveryReservedAttributesResponse object with the following parameters:

ParameterTypeDescription
successboolWhether the request succeeded.
dataany | nullThe reserved attribute names, as freeform JSON.
errorstr | nullError message if the request failed.


Did this page help you?

© Bloomreach, Inc. All rights reserved.