Skip to main content
 print this page

Search catalog assets

POST 

/catalog/search

Searches across catalog data sources and returns the assets associated with each. Despite being a POST, this operation takes no request body: every input is a query parameter, and any body sent is ignored.

Two search modes are available via search_type. "traditional" does keyword matching over the fields named in FieldsToMatch. "semantic" does embedding-based matching, requires a non-empty query, requires AI services to be enabled, and returns extra per-asset attributes.

Setting get_metrics=true changes the response shape entirely: it returns only facet counts and total_count, with no Results array and no pagination keys. Use it to populate filter controls, then run the real search separately.

Filtering: any query parameter that is not one of the documented system parameters is treated as a filter on the catalog field of that exact name, with comma-separated values. Filter values are lower-cased before matching, except for FieldsToMatch. There is no allow-list, so a misspelled filter name silently matches nothing rather than erroring.

Pagination: paging is by page_number, which is zero-based, combined with limit as the page size. Read next_available in the response; while it is "yes" increment page_number, and stop when it is "no". total_pages is also returned. Note that the offset parameter is validated but has no effect.

Request

Responses

Search results. The body is CatalogSearchResponse normally, or CatalogSearchMetricsResponse when get_metrics=true. When the request sends Accept-Encoding: gzip the body is gzip-compressed and base64-encoded.

Response Headers
    Access-Control-Allow-Origin
    Access-Control-Allow-Methods
    Access-Control-Allow-Headers
    Content-Encoding

    Set to "gzip" when the request asked for compression.