Deep Search

Create a deep search

Changed on

Create a new deep search over one or more collections. Deep search uses agentic retrieval and LLM summarization to find specific moments across your video data.

The search can be processed synchronously (default), streamed via SSE, or run in the background.

post/deepSearch

Request

  • Base URL
    https://api.cloudglue.dev/v1
  • Auth
    HTTP bearer

Request body

querystring required

The search query.

scope'segment' | 'file'

The scope of results to return. 'segment' returns individual segments, 'file' returns file-level results — explicit values behave exactly as before, and every collection in the knowledge base must be searchable at the requested scope (metadata and file-level entities collections require 'file'; segment-level entities collections require 'segment'). Omit for auto: the search planner picks a scope per search plan, each collection is searched at the scopes its documents support, and results from both scopes are fused — so a knowledge base can mix collection types (e.g. rich-transcripts + metadata + entities) without a scope.

limitinteger

Maximum number of results to return. Actual count may be lower when exclude_weak_results is enabled.

exclude_weak_resultsboolean

When true, removes results tagged as weak matches by the synthesis LLM.

includestring[]

Additional fields to include in the response. 'search_queries' includes the intermediate search query plan.

streamboolean

Stream the response via SSE. Mutually exclusive with background.

backgroundboolean

Process in the background. Returns immediately with status 'in_progress'. Mutually exclusive with stream.

Response

Deep search created successfully

idstring uuid

Deep search ID

object'deep_search'

Object type identifier

status'in_progress' | 'completed' | 'failed' | 'cancelled'

Current status of the deep search

created_atnumber

Unix timestamp of when the deep search was created

querystring

The original search query

scope'segment' | 'file' nullable

The scope the caller requested. Null when the request omitted scope (auto: the planner chose scopes per search plan, so results may mix segment and file types).

textstring nullable

LLM-generated synthesis text summarizing the results

totalinteger

Total number of results

limitinteger

Maximum number of results requested

Changes

    • info

      added the non-success response with the status

    • info

      added the optional property to the response with the status

    • info

      added the optional property to the response with the status

    • info

      added the optional property to the response with the status

    • breaking

      the response property became nullable for the status

    • info

      the request property default value segment was removed