v5

latestOpenAPI 3.1.02026-08-025631,1012.8 MB
Resource Search

Search Resources

Search across all resource names and IDs within your namespace.

This endpoint performs a case-insensitive search across:
- Buckets (bucket_name, bucket_id)
- Collections (collection_name, collection_id)
- Retrievers (retriever_name, retriever_id)
- Taxonomies (taxonomy_name, taxonomy_id)
- Clusters (cluster_name, cluster_id)
- Namespaces (namespace_name, namespace_id)

Results are sorted by relevance (exact matches first) and creation time (newest first).
Use the resource_types parameter to filter searches to specific resource types.
Pagination is supported via limit and offset parameters.
post/v1/resources/search

Request body

querystring required

Search term to match against resource names and IDs. REQUIRED. Minimum 1 character. Case-insensitive partial matching is performed. Matches against: bucket_name, bucket_id, collection_name, collection_id, retriever_name, retriever_id, taxonomy_name, taxonomy_id, cluster_name, cluster_id, namespace_name, namespace_id. Example: 'prod' matches 'production-videos', 'bkt_prod123', 'Products Collection'.

resource_typesstring[] nullable

Filter search to specific resource types. OPTIONAL - If not provided, searches all resource types. Valid values: 'bucket', 'collection', 'retriever', 'taxonomy', 'cluster', 'published_retriever', 'namespace'. Example: ['bucket', 'collection'] searches only buckets and collections.

limitinteger

Maximum number of results to return. OPTIONAL - Defaults to 20. Minimum: 1, Maximum: 100. Use with offset for pagination.

offsetinteger

Number of results to skip for pagination. OPTIONAL - Defaults to 0. Minimum: 0. Use with limit for pagination. Example: offset=20 with limit=20 returns results 21-40.

Example request

{
  "description": "Search all resources for 'product'",
  "limit": 20,
  "offset": 0,
  "query": "product"
}

Response

Successful Response

totalinteger required

Total number of matches across all pages. REQUIRED. Count before pagination is applied. Use to calculate total pages: ceil(total / limit). May be 0 if no matches found. Example: total=50 with limit=20 means 3 pages of results.

limitinteger required

Results per page (from request). REQUIRED. Echo of the limit parameter from the request. Range: 1-100.

offsetinteger required

Current pagination offset (from request). REQUIRED. Echo of the offset parameter from the request. Number of results skipped. Example: offset=20 means results start from the 21st match.

Example response

{
  "description": "Successful search with multiple results",
  "limit": 20,
  "offset": 0,
  "results": [
    {
      "created_at": "2024-01-15T10:30:00Z",
      "description": "Production video content",
      "resource_id": "bkt_prod123",
      "resource_name": "production-videos",
      "resource_type": "bucket",
      "updated_at": "2024-01-20T14:22:00Z"
    },
    {
      "created_at": "2024-02-01T08:15:00Z",
      "description": "Product catalog embeddings",
      "resource_id": "col_prod456",
      "resource_name": "Product Embeddings",
      "resource_type": "collection"
    }
  ],
  "total": 15
}