> ## Documentation Index
> Fetch the complete documentation index at: https://docs.bigdata.com/llms.txt
> Use this file to discover all available pages before exploring further.

# API updates

> API updates and announcements

<Update label="2026-05-05" tags={["Search v1"]} rss={{ title: "Introducing Web Search", description: "Retrieve live web results alongside premium financial content with a single API call." }}>
  **Introducing Web Search**

  Retrieve **live web results** alongside premium financial content in a single API call. Add `web` to [`query.external_search`](/api-reference/search/search-documents#body-query-external-search) with `mode` set to `INCLUDE` (both) or `ONLY` (web only). Web results return in `external_results.web`.

  **Key benefits:**

  * **Broader coverage**: Premium content + live web in one request
  * **Consistent schema**: Web results follow the same response structure
  * **Clear provenance**: Web results returned separately in `external_results.web`
  * **Opt-in**: Existing queries unchanged — only runs when enabled

  See the [Web Search blog post](/blog/search/introducing-web-search) for details.
</Update>

<Update label="2026-04-17" tags={["Content v1"]} rss={{ title: "List tags — prefix filter", description: "GET /contents/v1/tags supports an optional prefix query parameter to filter tags by name prefix (e.g. broker:, from:, to:)." }}>
  **List tags — optional `prefix` query parameter**

  **[List tags](/api-reference/tags/list-tags)** (`GET /contents/v1/tags`) now accepts an optional **`prefix`** query parameter. Only tags whose **`name`** starts with that value are returned, which helps you browse tags by category (for example **`broker:`**, **`from:`**, or **`to:`**).

  See the [List tags](/api-reference/tags/list-tags) API reference for parameter details.
</Update>

<Update label="2026-04-17" tags={["Content v1"]} rss={{ title: "Investment research connector", description: "New investment_research connector type on the Content API to sync broker research into private documents." }}>
  **Investment research connector**

  The Content API supports a new connector type, **`investment_research`**. Use **[Create connector](/api-reference/connectors/create-connector)** (`POST /contents/v1/connectors`) with broker credentials in **`config`**; Bigdata syncs research from the broker feed into private **documents** you can list, filter by tags, and use with Search Service and the Research Agent.

  For a walkthrough (documents API, tags, and grounding in Search or Research Agent), see **[Interact with your investment research content](/how-to-guides/private-content/interact-with-investment-research)**.
</Update>

<Update label="2026-04-13" tags={["Search v1"]} rss={{ title: "Content diversification enabled by default", description: "ranking_params.content_diversification is now enabled by default in the Search API, balancing results across premium sources and distinct viewpoints without requiring opt-in." }}>
  **Content diversification enabled by default**

  `ranking_params.content_diversification` is now enabled by default in the [Search](/api-reference/search/search-documents) API. Results are automatically balanced across a wider range of premium sources and distinct viewpoints, reducing single-source bias and redundant content for a more relevant, informative output.

  To disable diversification, explicitly set `ranking_params.content_diversification.enabled=false`.

  [Content diversification API documentation](/api-reference/search/search-documents#body-query-ranking-params-content-diversification)
</Update>

<Update label="2026-04-13" tags={["Search v1"]} rss={{ title: "New INVESTMENT-RESEARCH document type", description: "Search document_type filter now supports INVESTMENT-RESEARCH with 15 subtypes for filtering investment research content." }}>
  You can now filter Search queries to **investment research documents** using the new **`INVESTMENT-RESEARCH`** value in [`document_type`](/getting-started/search/query_filters#investment-research).

  This new document type includes 15 subtypes for precise filtering:

  * `COMPANY_REPORT`, `COVERAGE_ANALYSIS`, `ECONOMIC_REPORT`, `FIXED_INCOME_REPORT`, `FUND_REPORT`, `FX_AND_DERIVATIVES_REPORT`, `GENERIC_REPORT`, `INDEX_REPORT`, `INDUSTRY_REPORT`, `MARKET_UPDATE`, `PORTFOLIO_STRATEGY`, `PORTFOLIO_SUMMARY`, `RATING_REPORT`, `RESEARCH_NOTE`, `THEMATIC_ANALYSIS`

  See the [Search API](/api-reference/search/search-documents#body-query-filters-document-type) reference for usage details.
</Update>

<Update label="2026-04-10" tags={["Search v1"]} rss={{ title: "text_locations field in Search chunk results", description: "Search chunk results now include an optional text_locations array with paragraph and sentence coordinates to locate each chunk inside its source document." }}>
  Search chunk results now include an optional [**`text_locations`**](/api-reference/search/search-documents#response-results-items-chunks-items-text-locations) array. Each entry contains [**`paragraph_num`**](/api-reference/search/search-documents#response-results-items-chunks-items-text-locations-items-paragraph-num) and [**`sentence_num`**](/api-reference/search/search-documents#response-results-items-chunks-items-text-locations-items-sentence-num), giving you precise coordinates to locate a chunk inside the source document.

  The field is optional and may not be present for every chunk.
</Update>

<Update label="2026-04-10" tags={["Search v1"]} rss={{ title: "FILING document subtype SEC_DEF_14A", description: "Search document_type filter supports SEC_DEF_14A (definitive proxy) for FILING queries." }}>
  You can narrow Search queries to **definitive proxy statements** using the new **`SEC_DEF_14A`** value in [`document_type` subtypes](/getting-started/search/query_filters#filing) when `type` is **`FILING`**.

  SEC Form DEF 14A is the proxy statement companies must file before an annual meeting or shareholder vote; it typically includes financial disclosures and governance information. The [Search API](/api-reference/search/search-documents#body-query-filters-document-type-values-items-one-of-0-subtypes) OpenAPI spec lists **`SEC_DEF_14A`** alongside the other filing subtypes.
</Update>

<Update label="2026-04-07" tags={["Co-mentions"]} rss={{ title: "Filter Co-Mentioned Entities by Type" }}>
  You can now filter results from the Search [Co-mentioned Entities](/api-reference/co-mentions/connected-entities) endpoint by entity type using the new [query.entity\_categories](/api-reference/co-mentions/connected-entities#body-query-entity-categories) parameter.

  Previously, the endpoint returned all entity categories co-mentioned with no way to narrow it down. Now you can ask for exactly what you care about (`places`, `companies`, `organizations`, `people`, `products`, and/or `concepts`)

  If `query.entity_categories` is not specified, behaviour is unchanged and all entity categories are returned.
</Update>

<Update label="2026-04-01" tags={["Structured Data"]} rss={{ title: "CUSIP and ISIN Lookup Endpoints Now Support Bond Securities", description: "Company lookup via CUSIP and ISIN identifiers has been enhanced to support bond securities, enabling users to locate bond-issuing entities using bond-specific identifiers." }}>
  **CUSIP and ISIN Lookup Endpoints Now Support Bond Securities**

  The `/v1/companies/get-by-cusip` and `/v1/companies/get-by-isin` endpoints have been enhanced to support bond securities in addition to equity securities. Users can now input bond-related ISINs and CUSIPs to locate bond-issuing entities. See the [Get by CUSIP](https://docs.bigdata.com/api-reference/companies/get-by-cusip) and [Get by ISIN](https://docs.bigdata.com/api-reference/companies/get-by-isin) API references for more details.

  * Expands identifier coverage to include both equity and bond securities, enabling comprehensive issuer lookup across asset classes.
  * Supports fixed income research and credit analysis workflows by providing direct access to bond issuer information via bond identifiers.
  * Maintains consistent response format across equity and bond lookups, returning complete company profile data including RavenPack entity ID, sector, industry, and all associated identifiers.
</Update>

<Update label="2026-04-01" tags={["Structured Data"]} rss={{ title: "Get Subsidiaries REST API Launched", description: "A new REST endpoint is now available for retrieving complete subsidiary hierarchies, providing full visibility into corporate structures." }}>
  **Get Subsidiaries REST API Launched**

  A new REST endpoint (`/v1/subsidiaries`) has been launched to retrieve the complete subsidiary hierarchy for any company. For each subsidiary, the API returns ultimate parent, immediate parent, company name, and hierarchy depth level, providing full visibility into corporate structures. See the Subsidiaries API reference for more details.

  * Enables comprehensive corporate structure analysis by mapping the full subsidiary tree from parent to deepest child entities.
  * Supports due diligence, compliance, and investment research workflows by exposing ownership chains and corporate relationships.
  * Provides hierarchy depth levels for understanding organizational complexity and identifying key subsidiaries at each tier.
</Update>

<Update label="2026-03-27" tags={["Search v1", "Batch"]} rss={{ title: "Batch estimated completion time", description: "Get Batch Job Info now returns an estimated_completion_time field to help you predict when your batch job will finish" }}>
  **Batch estimated completion time**

  The [Get Batch Job Info](/api-reference/batch-search/get-batch-job-info) endpoint (`GET /v1/search/batches/{batch_id}`) now returns an **`estimated_completion_time`** field. This ISO 8601 timestamp indicates when the batch job is expected to finish processing, helping you plan downstream workflows and set appropriate polling intervals.

  The field is included in the response while the job is in progress.

  See the [Batch Search API reference](/api-reference/batch-search/get-batch-job-info) for more details.
</Update>

<Update label="2026-03-23" tags={["Search v1"]} rss={{ title: "Content diversification in Fast Mode", description: "Optional content_diversification parameter for search query ranking_params" }}>
  **Optional parameter to enable content diversification**

  New optional parameter at the [Search](/api-reference/search/search-documents) endpoint to enable content diversification.

  When `ranking_params.content_diversification.enabled=true`:

  * results are balanced across a wider range of providers and distinct viewpoints.

  Without the parameter or when parameter is set to `false`, behavior is unchanged.

  [Content diversification API documentation](/api-reference/search/search-documents#body-query-ranking-params-content-diversification)
</Update>

<Update label="2026-03-20" tags={["Subscription v1"]} rss={{ title: "Get Subscription Quotas", description: "New GET /v1/subscription/quotas endpoint to retrieve organization-wide quota or credit usage and limits with your API key" }}>
  **API to monitor your subscription quotas and usage**

  New **`GET /v1/subscription/quotas`** endpoint returns your organization’s current subscription usage and limits. Send your standard **`X-API-KEY`** header (same key as for Search and other Bigdata APIs).

  See the [Get Subscription Quotas](/api-reference/quotas/get-subscription-quotas) API reference and the [Monitor usage](/how-to-guides/monitor_usage) how-to guide for request examples and a sample script.
</Update>

<Update label="2026-03-13" tags={["Content v1"]} rss={{ title: "Direct upload and delete document", description: "New POST /contents/v1/documents for direct file upload and DELETE /contents/v1/documents/{content_id} to remove a document" }}>
  **Content API — direct upload and delete document**

  **Direct upload (POST /contents/v1/documents)**\
  You can now upload documents directly via RESTful API without using a connector. This is intended for clients that want to build their own ingestion workflow.

  * Send a **POST** to `/contents/v1/documents` with JSON metadata: `file_name` (required), and optionally `published_ts`, `tags`, and `share_with_org`.
  * The response returns a single-use **pre-signed URL** and the document **id** (content ID). Send a **PUT** request to that URL with the file as the body to complete the upload. Use the **id** with [Get document metadata](/api-reference/documents/get-document-metadata) to poll for enrichment and indexing status.

  Content can now be onboarded in two ways: via **Connectors** (async, unsupervised, or workflow-based) or via **direct upload** (manual, corpus-in-hand). See the [Content API introduction](/api-rest/content_introduction) for an overview.

  **Delete document (DELETE /contents/v1/documents/{content_id})**\
  You can remove a document from the platform. The endpoint deletes the original file, the annotated version, and the chunks from the vector database. Returns 200 with a null body on success, or 404 with `PRIVATE_CONTENT_NOT_FOUND` if the document does not exist.

  See [Enrich document](/api-reference/documents/enrich-document) and [Delete document](/api-reference/documents/delete-document) in the API reference.

  **Documentation:** For step-by-step guides using these endpoints, see [Upload your own content](/getting-started/upload_your_own_content) and [Upload and search your content](/how-to-guides/private-content/upload-and-search-your-content).
</Update>

<Update label="2026-03-13" tags={["Content v1"]} rss={{ title: "Hard delete a connector", description: "Optional force_delete query parameter for Delete connector by ID to permanently remove a connector and all related files" }}>
  **Optional parameter to delete all the content and the connector**

  New optional query parameter at the [Delete connector by ID](/api-reference/connectors/delete-connector-by-id) endpoint to erase all the uploaded content and the connector.

  When `force_delete=true`:

  * All files related to the connector are deleted.
  * The deletion process runs **asynchronously**.
  * After all related files are deleted, the connector is removed from the database (final step of the async process).

  Without the parameter, behavior is unchanged: the connector is archived, stops ingesting new content, and existing documents remain available.
</Update>

<Update label="2026-03-13" tags={["Search v1"]} rss={{ title: "Document Retrieval Response Update", description: "The /v1/documents endpoint now always returns a presigned URL and replaces the type field with a web_content boolean" }}>
  **Document Retrieval Response Update**

  The `/v1/documents` endpoint response has been updated with the following changes:

  * The `type` field (previously `"json"` or `"web"`) has been replaced by a `web_content` boolean field.
  * A presigned URL is now always returned in the `url` field, regardless of whether the document is public web content or premium content.
  * When `web_content` is `true`, the document corresponds to publicly accessible web content (e.g., news articles). When `false`, the document is premium content.

  **Updated Response Example (premium content):**

  ```json theme={null}
  {
      "url": "https://documents.bigdata.com/documents/776769957735667D2F01F695EF4F1231?signature=abc123...",
      "web_content": false
  }
  ```

  **Updated Response Example (web content):**

  ```json theme={null}
  {
      "url": "https://www.cbsnews.com/video/activists-call-for-national-shutdown...",
      "web_content": true
  }
  ```

  See the [Fetch document](/api-reference/search/fetch-document) API reference for more details.
</Update>

<Update label="2026-03-06" tags={["Search v1"]} rss={{ title: "Investment Research Category", description: "New research_investment_research category filter value for accessing high-conviction research from global financial institutions and independent firms" }}>
  **Investment Research Category**

  Added `research_investment_research` as a new category filter value for the Search endpoint (`/v1/search`) and related endpoints. This category enables access to high-conviction research from global financial institutions and independent firms, providing actionable insights across equities, fixed income, commodities, and currencies to support investment decisions and risk monitoring.

  **Key benefits:**

  * 350+ research providers spanning emerging and developed markets in 50+ countries.
  * Tailored access to investment research, designed to fit each customer's needs.
  * AI-powered, data-driven analysis delivered directly through the financial chatbot.
  * Multi-asset and alternative data access, including credit, macroeconomic indicators, ESG, and digital assets.

  **Use cases:**

  * Enable investment decisions with research from hundreds of providers across equity, macro, FX, commodities, and alternative assets.
  * Identify and monitor sovereign, corporate, and market risks across asset classes to manage exposures and downside scenarios.
  * Track key investment themes across research reports to understand evolving market narratives, sector views, and risks.
  * Spot early-stage opportunities using specialized institutional research on under-covered markets, themes, and assets.

  **Example:**

  ```json highlight={5-10} theme={null}
  {
      "query": {
          "text": "emerging market sovereign risk",
          "filters": {
              "category": {
                  "mode": "INCLUDE",
                  "values": [
                      "research_investment_research"
                  ]
              }
          }
      }
  }
  ```

  See the [Search Documents API reference](/api-reference/search/search-documents) for more details.
</Update>

<Update label="2026-02-20" tags={["Search v1"]} rss={{ title: "Include Audit Parameter", description: "New optional include_audit parameter for the Search endpoint to inspect the resolved queries that were executed" }}>
  **Include Audit Parameter**

  Added a new optional `include_audit` boolean parameter to the Search endpoint (`/v1/search`). When set to `true`, the response metadata will include an `audit` object containing the resolved queries that were actually executed, which is useful for debugging and understanding how the system interpreted your request.

  The `audit` object contains a `queries` array, where each entry shows the resolved filters, ranking parameters, and other settings used for that sub-query.

  **Example Request:**

  ```json highlight={2} theme={null}
  {
      "include_audit": true,
      "search_mode": "smart",
      "query": {
          "text": "Can you summary the Q&A in the 2025 Q4 earnings call of Figma?"
      }
  }
  ```

  **Example Response (metadata):**

  ```json theme={null}
  {
      "metadata": {
          "request_id": "47266b88-998a-4f90-84b7-f1d400d01652",
          "timestamp": "2026-02-21T21:42:55.205914+00:00",
          "audit": {
              "queries": [
                  {
                      "auto_enrich_filters": false,
                      "filters": {
                          "document_type": {
                              "mode": "INCLUDE",
                              "values": [
                                  {
                                      "type": "TRANSCRIPT",
                                      "subtypes": ["EARNINGS_CALL"]
                                  }
                              ]
                          },
                          "reporting_entities": ["BA9E0C"],
                          "reporting_periods": [
                              {
                                  "fiscal_year": 2025,
                                  "fiscal_quarter": 4
                              }
                          ]
                      },
                      "max_chunks": 100,
                      "ranking_params": {
                          "source_boost": 1.0,
                          "freshness_boost": 1.0,
                          "reranker": {
                              "enabled": true
                          }
                      }
                  }
              ]
          }
      }
  }
  ```

  See the [Search Documents API reference](/api-reference/search/search-documents) for more details.
</Update>

<Update label="2026-02-16" tags={["Search v1", "Batch"]} rss={{ title: "Batch Search API", description: "Process large volumes of search requests asynchronously with 50% lower costs using the new Batch Search endpoints" }}>
  **Batch Search API**

  Process large volumes of search requests asynchronously with [50% lower costs](/getting-started/bigdata_api_pricing). Submit a `.jsonl` file containing multiple search queries, monitor progress, and download results when complete.

  **New Endpoints:**

  * [Create a Batch Job](/api-reference/batch-search/create-a-batch-job) (`POST /v1/search/batches`) - Get a `batch_id` and `presigned_url` for uploading your input file.
  * [Upload Your Input File](/api-reference/batch-search/upload-your-input-file) - Upload your `.jsonl` file to the presigned URL.
  * [Get Batch Job Info](/api-reference/batch-search/get-batch-job-info) (`GET /v1/search/batches/{batch_id}`) - Check job status and retrieve results when complete.

  See the [Batch Search API reference](/api-reference/batch-search/create-a-batch-job) for more details, or follow the [Batch Search how-to guide](/how-to-guides/search/batch_search) for a step-by-step walkthrough.
</Update>

<Update label="2026-02-16" tags={["Content v1"]} rss={{ title: "Bigdata Content API", description: "New REST API for managing connectors, documents, and tags so your private content is available for Search and Research Services" }}>
  **Bigdata Content API**

  Introducing the **Bigdata Content API** (`/contents/v1/`), a new REST API for managing and querying content that you or your organization onboard to Bigdata. Use it to bring your own data into Bigdata and make it available for Search and Research Services.

  The API is organized around three areas:

  * **Connectors**: Create and manage ingestion sources (e.g. email inbox, SharePoint). Configure connectors to receive content and optionally share it across your organization.
  * **Documents**: Manage your uploaded documents. Get metadata, download the original file, or fetch the annotated (structured) version of your files.
  * **Tags**: Discover and use tags (e.g. sender/recipient for emails) to interact with your content.

  See the [Bigdata Content API](/api-rest/content_introduction) for full documentation.
</Update>

<Update label="2026-02-13" tags={["Search v1"]} rss={{ title: "Document and Chunk Query Filters", description: "New document and chunk filters for search and co-mention endpoints to restrict search to specific documents and chunk ranges" }}>
  **Document and Chunk Query Filters**

  Added two new query filters to the Search and Co-mention endpoints (`/v1/search`, `/v1/search/volume`, `/v1/search/co-mentions/entities`, `/v1/search/co-mentions/topics`).

  * **Document filter:** Restrict the search to a list of specified documents. Use document IDs (e.g., from a previous search response) with `mode` (`INCLUDE` or `EXCLUDE`) and `values` (array of document IDs).

  * **Chunk filter:** Narrow the search to a particular section within a document. Use `from` and `to` (1-based chunk indices, inclusive) to expand the context around a previously retrieved chunk.

  **Example:**

  ```json theme={null}
  {
      "query": {
          "filters": {
              "document": {
                  "mode": "INCLUDE",
                  "values": ["3C54E042B2B19B244F57D3C6415439D1"]
              },
              "chunk": {
                  "from": 3,
                  "to": 7
              }
          }
      }
  }
  ```

  See the [Search API reference](/api-reference/search/search-documents) for full details.
</Update>

<Update label="2026-02-11" tags={["Documents v1"]} rss={{ title: "Documents Endpoint Update", description: "Updated /v1/documents/{document_id} endpoint to support both public web content and premium documents" }}>
  **Documents Endpoint Update**

  Updated the `/v1/documents/{document_id}` endpoint to support both public web content and premium documents.

  The endpoint now returns a URL along with a `type` field indicating how the document should be accessed:

  * For public web content, the response includes a direct link to the original publisher's website.
  * For premium or licensed content, the response includes a pre-signed URL (valid for 24 hours) that can be used to download the document in JSON format.

  **Example:**

  ```bash theme={null}
  GET /v1/documents/776769957735667D2F01F695EF4F1231
  ```

  **Example Response (public web content):**

  ```json theme={null}
  {
      "url": "https://www.example.com/news/article",
      "type": "web"
  }
  ```

  **Example Response (premium content):**

  ```json theme={null}
  {
      "url": "https://documents.bigdata.com/v1/documents/776769957735667D2F01F695EF4F1231?signature=abc123...",
      "type": "json"
  }
  ```

  See the [Fetch Document API reference](/api-reference/search/fetch-document) for full details and usage guidelines.
</Update>

<Update label="2026-02-06" tags={["Search v1"]} rss={{ title: "Search Mode Parameter", description: "New search_mode parameter for Search endpoints to control query processing strategy" }}>
  **Search Mode Parameter**

  Added a new optional `search_mode` parameter to the Search endpoint (`/v1/search`). This parameter determines how the search query is processed.

  **Available modes:**

  * **`fast`** (default): Runs a single query against the vector DB using the specified filters. Best for pre-processed queries where you control the filters.
  * **`smart`**: Analyzes the query text to automatically define advanced search filters and runs multiple sub-queries to ensure better coverage. Ideal for sending user questions directly without pre-processing. Has higher latency than fast mode.

  **Important:** When using `smart` mode, only `timestamp` and `source` filters are allowed. Using any other filters will result in a 400 Bad Request error.

  **Example:**

  ```json highlight={2} theme={null}
  {
      "search_mode": "smart",
      "query": {
          "text": "What's the CapEx of Alphabet in the 2026 fiscal year?"
      }
  }
  ```

  See the [Search Documents API reference](/api-reference/search/search-documents) for more details.
</Update>

<Update label="2026-02-04" tags={["Workflows v1"]} rss={{ title: "Workflows API Launch", description: "Introducing the Workflows API for templated, reproducible research automation" }}>
  **Workflows API Launch**

  Introducing the **Workflows API** for templated, reproducible research workflows.

  **Key Features:**

  * Templated Prompts with Jinja2 and parameterized inputs
  * Template Management (CRUD operations)
  * Community Templates to discover and clone
  * Research Plans for structured execution
  * Model Selection (base, pro, gemini, claude variants)
  * Content Filtering and Time Range Control

  **Endpoints:**

  * `POST /v1/workflow/execute` - Execute a workflow
  * `GET/POST /v1/workflow/templates` - List/Create templates
  * `GET/PUT/DELETE /v1/workflow/templates/{id}` - Manage templates
  * `GET /v1/workflow/templates/community` - Browse community templates
  * `POST /v1/workflow/templates/{id}/clone` - Clone a template

  See the [Workflows API documentation](/api-rest/workflows/introduction).
</Update>

<Update label="2026-02-03" tags={["Content"]} rss={{ title: "Fetch Document Endpoint", description: "Added a new /v1/documents/{document_id} endpoint that returns the full document in JSON format with a pre-signed URL" }}>
  **Fetch Document Endpoint**

  Added a new `/documents/{document_id}` endpoint that returns the full document in JSON format. The response includes a pre-signed URL, valid for 24 hours, which can be used to download the target document.

  **Example:**

  ```bash theme={null}
  GET /v1/documents/776769957735667D2F01F695EF4F1231
  ```

  **Example Response:**

  ```json theme={null}
  {
      "url": "https://documents.bigdata.com/v1/documents/776769957735667D2F01F695EF4F1231?signature=abc123..."
  }
  ```

  See the [Fetch Document API reference](/api-reference/search/fetch-document) for full details and usage guidelines.
</Update>

<Update label="2026-01-30" tags={["Search v1"]} rss={{ title: "Auto Enrich Filters Parameter", description: "Added new auto_enrich_filters parameter to control automatic filter enrichment in search endpoints" }}>
  **Auto Enrich Filters Parameter**

  Added a new optional `auto_enrich_filters` parameter to the query object in all Search endpoints (`/v1/search`, `/v1/search/volume`, `/v1/search/co-mentions/entities`, `/v1/search/co-mentions/topics`).

  This advanced parameter controls automatic enrichment of filters using the query text:

  * **`true` (default)**: The system automatically extracts and adds relevant filter values from the query text.
  * **`false`**: Disables automatic enrichment, useful when you have created a strict query with specific keywords and entity filters and you do not want any extra values added to those filters.

  **Example:**

  ```json highlight={10} theme={null}
  {
      "query": {
          "text": "Microsoft earnings",
          "filters": {
              "entity": {
                  "any_of": ["228D42"]
              }
          },
          "max_chunks": 10,
          "auto_enrich_filters": false
      }
  }
  ```

  See the [Search Documents API reference](/api-reference/search/search-documents) for more details.
</Update>

<Update label="2026-01-09" tags={["Structured Data"]} rss={{ title: "Pagination Added to Events Calendar API", description: "Pagination is now supported on the Events Calendar API, improving usability when working with large datasets" }}>
  **Pagination Added to Events Calendar API**

  Pagination support has been added to the **Events Calendar** REST endpoint (`/v1/events-calendar`), making it easier to work with large sets of past and upcoming events and to build scalable, production-ready integrations. See the [Events Calendar API reference](/api-reference/company-&-events/events-calendar) for more details.

  * Enables efficient navigation of large event datasets through paginated responses.
  * Supports scalable client integrations by reducing payload size and request complexity.
  * Improves the ability to build responsive user interfaces and event-driven workflows.
</Update>

<Update label="2025-12-19" tags={["Search v1"]} rss={{ title: "Granular Category Filter Values", description: "Added new granular category filter values to enable more precise document filtering by category" }}>
  **Granular Category Filter Values**

  The `category` filter in the RESTful Search endpoint (`/v1/search`) and related endpoints now supports more granular category values, allowing customers to search by categories at a more precise level.

  In addition to the existing categories, the following new granular categories are now available:

  **News Categories:**

  * `news_premium` - Premium news sources

  **Research Categories:**

  * `research_academic_journals` - Academic journal research

  The original categories (`expert_interviews`, `filings`, `my_files`, `news`, `podcasts`, `research`, `transcripts`) continue to be supported for backward compatibility.

  **Example:**

  ```json highlight={5-10} theme={null}
  {
      "query": {
          "text": "market analysis",
          "filters": {
              "category": {
                  "mode": "INCLUDE",
                  "values": [
                      "news_premium"
                  ]
              }
          }
      }
  }
  ```

  See the [Search Documents API reference](/api-reference/search/search-documents) for more details.
</Update>

<Update label="2025-12-15" tags={["Search v1", "Volume"]} rss={{ title: "Search Volume Endpoint", description: "Added a new `/v1/search/volume` endpoint that returns document and chunk volume statistics over time for a search query" }}>
  **Search Volume Endpoint**

  Added a new `/v1/search/volume` endpoint that returns document and chunk volume statistics over time for a search query, aggregated by date with sentiment analysis. This endpoint uses the same request parameters as the `/v1/search` endpoint, except for `ranking_params` and `max_chunks`.

  This endpoint is valuable for several use cases:

  * **Evaluate the product**: Customers can see how many unique documents Bigdata has available for their particular query, which sets us apart from competitors.
  * **Narrative/Thematic screeners**: Users can create a query and see how the defined narrative evolves over time.
  * **Query strategy**: Users can check the coverage and plan how to create queries accordingly.

  The response includes daily volume statistics (documents, chunks, and average sentiment) for each date in the time range, as well as aggregated totals across all dates.

  **Efficient Usage**: This endpoint consumes exactly 1 API Query Unit regardless of the time period queried, making it a very efficient way to visualize narrative evolution over time without extracting specific chunks of text.

  **Example:**

  ```json highlight={3} theme={null}
  {
      "query": {
          "text": "Tariffs impact",
          "filters": {
              "timestamp": {
                  "start": "2025-01-01T14:15:22Z",
                  "end": "2025-12-15T14:15:22Z"
              }
          }
      }
  }

  ```

  **Example Response:**

  ```json theme={null}
  {
      "results": {
          "volume": [
              {
                  "date": "2025-01-01",
                  "documents": 164,
                  "chunks": 387,
                  "sentiment": -0.15
              },
              {
                  "date": "2025-01-02",
                  "documents": 1363,
                  "chunks": 3570,
                  "sentiment": -0.16
              },
              ... // other dates
          ],
          "total": {
              "documents": 3440,
              "chunks": 8196,
              "sentiment": -0.18
          }
      },
      "metadata": {
          "request_id": "473d22ea-7753-41d8-825a-4a4c7696f8cb",
          "timestamp": "2025-12-15T17:34:34.181589+00:00"
      },
      "usage": {
          "api_query_units": 1.0
      }
  }
  ```

  See the [Search Volume API reference](/api-reference/search/search-volume) for more details, or check out the [Theme Volume Evolution how-to guide](/how-to-guides/search/search-volume) for a complete example with visualization.
</Update>

<Update label="2025-12-12" tags={["Structured Data"]} rss={{ title: "Sentiment API launch & Earnings Data Enhancements", description: "Introduces the new Sentiment REST API alongside expanded and more reliable Earnings Calendar data, improving insight into market sentiment and upcoming company events" }}>
  **Sentiment API launch & Earnings Data Enhancements**

  **Added**

  * Launched the **Sentiment** REST endpoint (`/v1/entity-sentiment`), enabling programmatic access to sentiment signals derived from news and content sources. See the [Entity Sentiment API reference](/api-reference/market-data/entity-sentiment) for more details.

  **Improved**

  * Expanded Earnings Calendar API coverage, providing improved access to upcoming and historical earnings events across supported companies.
  * Improved structure, consistency, and completeness of Earnings Calendar API responses to support more reliable downstream integrations.
  * Enhanced data validation and response handling across select financial datasets to reduce inconsistencies.
  * Improved overall API reliability and performance for high-volume requests.

  **Fixed**

  * Fixed issues where certain API responses could return incomplete or inconsistent data under specific conditions.
  * Addressed minor response formatting issues across select endpoints.
</Update>

<Update label="2025-12-04" tags={["Search v1"]} rss={{ title: "Search in Headlines, Body, or Both", description: "Added a new optional `search_in` parameter to the `keyword`, `entity`, and `topic` filter objects in the RESTful Search endpoint (`/v1/search`)" }}>
  **Search in Headlines, Body, or Both**

  Added a new optional `search_in` parameter to the `keyword`, `entity`, and `topic` filter objects in the RESTful Search endpoint (`/v1/search`). See the [Search Documents API reference](/api-reference/search/search-documents) for more details.

  This parameter allows you to specify where to search for keywords, entities, or topics:

  * **`HEADLINE`**: Search only in document headlines
  * **`BODY`**: Search only in document body text
  * **`ALL`**: Search in both headlines and body text (default)

  If the `search_in` parameter is not provided, it defaults to `ALL`, maintaining backward compatibility with existing API calls.

  **Example:**

  ```json highlight={6} theme={null}
  {
      "query": {
          "text": "",
          "filters": {
              "keyword": {
                  "search_in": "HEADLINE",
                  "all_of": ["Snowflake"],
                  "any_of": [],
                  "none_of": []
              }
          },
          "ranking_params": {
              "source_boost": 10,
              "freshness_boost": 10
          },
          "max_chunks": 50
      }
  }
  ```
</Update>

<Update label="2025-11-14" tags={["Search v1"]} rss={{ title: "Sentiment Filter with Custom Ranges", description: "Added a new `ranges` parameter to the `sentiment` filter in the RESTful Search endpoint (`/v1/search`)" }}>
  **Sentiment Filter with Custom Ranges**

  Added a new `ranges` parameter to the `sentiment` filter in the RESTful Search endpoint (`/v1/search`). This parameter allows you to filter documents by custom sentiment score ranges, providing more precise control over sentiment filtering than the previous `values` parameter.

  The `ranges` parameter accepts an array of objects, each specifying a `min` and `max` sentiment score (ranging from -1.0 to 1.0). You can specify multiple ranges to capture different sentiment segments.

  **Sunsetting**: The `values` parameter (which accepted `["positive", "negative", "neutral"]`) is now sunsetting. While it will continue to work for backward compatibility, we recommend migrating to the new `ranges` parameter for more precise sentiment filtering.

  **Example:**

  ```json highlight={6-15} theme={null}
  {
      "query": {
          "text": "Solid state battery research",
          "filters": {
              "sentiment": {
                  "ranges": [
                      {
                          "min": -1,
                          "max": -0.3
                      },
                      {
                          "min": 0.3,
                          "max": 1
                      }
                  ]
              }
          },
          "ranking_params": {
              "source_boost": 10,
              "freshness_boost": 10
          },
          "max_chunks": 50
      }
  }
  ```

  See the [Search Documents API reference](/api-reference/search/search-documents) for more details.
</Update>

<Update label="2025-11-11" tags={["Search v1"]} rss={{ title: "Tag Filter for Uploaded Documents", description: "Added a new `tag` filter to the RESTful Search endpoint (`/v1/search`) that allows you to find uploaded documents with specific tags" }}>
  **Tag Filter for Uploaded Documents**

  Added a new `tag` filter to the RESTful Search endpoint (`/v1/search`) that allows you to find uploaded documents with specific tags. This filter is particularly useful when working with private uploaded files or forwarded emails that have been tagged.

  The `tag` filter accepts an `any_of` parameter containing an array of tag strings. Documents matching any of the specified tags will be included in the search results.

  **Example:**

  ```json highlight={12-14} theme={null}
  {
      "query": {
          "text": "stock",
          "filters": {
              "source": {
                  "mode": "INCLUDE",
                  "values": [
                      "000000",   // Private uploaded files
                      "9790B7"    // Private forwarded emails
                  ]
              },
              "tag": {
                  "any_of": ["Data Science Research"]
              }
          },
          "max_chunks": 10
      }
  }
  ```

  See the [Search Documents API reference](/api-reference/search/search-documents) for more details.
</Update>

<Update label="2025-11-10" tags={["Search v1"]} rss={{ title: "Custom Reranker Threshold", description: "Added a new optional `threshold` parameter to the `reranker` object in the `ranking_params` of the RESTful Search endpoint (`/v1/search`)" }}>
  **Custom Reranker Threshold**

  Added a new optional `threshold` parameter to the `reranker` object in the `ranking_params` of the RESTful Search endpoint (`/v1/search`). This parameter allows you to set a custom threshold to filter results by relevance score, improving precision and reducing noise.

  The `threshold` parameter accepts a float value ranging from 0.0 to 1.0. The default reranker uses a threshold of 0.2, but you can set a custom threshold to control result quality. Higher values return fewer, more relevant results.

  **Example:**

  ```json highlight={7-10} theme={null}
  {
      "query": {
          "text": "Quantum computer pattern",
          "ranking_params": { 
              "source_boost": 10,
              "freshness_boost": 1,
              "reranker": {
                  "enabled": true,
                  "threshold": 0.8
              }
          }
      }
  }
  ```

  See the [Search Documents API reference](/api-reference/search/search-documents) for more details.
</Update>

<Update label="2025-11-10" tags={["Search v1"]} rss={{ title: "Category Filter", description: "Added a new `category` filter to the RESTful Search endpoint (`/v1/search`) that allows you to filter documents by category" }}>
  **Category Filter**

  Added a new `category` filter to the RESTful Search endpoint (`/v1/search`) that allows you to filter documents by category. This enables selecting a related set of sources without having to add a long list of source IDs.

  The `category` filter accepts a `mode` parameter (`INCLUDE` or `EXCLUDE`) and a `values` array containing one or more category names. The currently supported categories are:

  * `expert_interviews`
  * `filings`
  * `my_files`
  * `news`
  * `podcasts`
  * `research`
  * `transcripts`

  **Example:**

  ```json highlight={5-12} theme={null}
  {
      "query": {
          "text": "tariffs",
          "filters": {
              "category": {
                  "mode": "INCLUDE",
                  "values": [
                      "expert_interviews",
                      "news",
                      "research"
                  ]
              }
          }
      }
  }
  ```

  See the [Search Documents API reference](/api-reference/search/search-documents) for more details.
</Update>

<Update label="2025-10-03" tags={["Structured Data"]} rss={{ title: "Expanded API Coverage for Companies, Financials, and Funds", description: "These new APIs give clients richer company fundamentals and the ability to screen & analyze funds with more precision" }}>
  **Expanded API Coverage for Companies, Financials, and Funds**

  These new APIs give clients richer company fundamentals and the ability to screen & analyze funds with more precision:

  * [Company Profile](/api-reference/company-&-events/company-profile) (`/v1/company-profile`) retrieving comprehensive company profile data.
  * [Revenue Geographic Segments](/api-reference/financials-&-ratios/revenue-geographic-segments) (`/v1/company-revenue-geographic-segments`) providing revenue data for a company broken down by geographic regions.
  * [Revenue Product Segments](/api-reference/financials-&-ratios/revenue-product-segments) (`/v1/company-revenue-product-segments`) delivering detailed revenue data for a company segmented by product lines or business units.
  * [Stock & Funds Screener](/api-reference/company-&-events/stocks-&-funds-screener) (`/v1/company-screener`) enabling advanced screening of stocks and funds.
  * [Fund Holdings](/api-reference/fund-holdings/fund-holdings) (`/v1/holdings/funds/stocks`) delivering institutional fund holdings and portfolio summary data.

  See the [Structured Data Introduction](/structured-data/introduction) for more details.
</Update>

<Update label="2025-09-26" tags={["Structured Data"]} rss={{ title: "New Core Financial & Market Data Endpoints", description: "This release introduces a set of core financial and market data APIs" }}>
  **New Core Financial & Market Data Endpoints**

  This release introduces a set of core financial and market data APIs, including comprehensive company financial statements, trailing ratios, daily and intraday prices, price changes, and real‑time quotes.

  * [Income Statement](/api-reference/financials-&-ratios/income-statement) (`/v1/income-statement`) returning a company’s income statement data.
  * [Cash Flow Statement](/api-reference/financials-&-ratios/cash-flow-statement) (`/v1/cash-flow-statement`) providing a company’s cash flow statement data.
  * [Daily Prices](/api-reference/market-data/daily-prices) (`/v1/price/daily`) delivering end‑of‑day pricing data for equities.
  * [Company Ratios TTM](/api-reference/financials-&-ratios/company-ratios-ttm) (`/v1/company-ratios-ttm`) returning trailing twelve‑month financial ratios for a company.
  * [Intraday Prices](/api-reference/market-data/intraday-prices) (`/v1/price/intraday`) providing intraday (within‑day) pricing data for equities.
  * [Price Changes](/api-reference/market-data/price-changes) (`/v1/price/changes`) delivering computed price change metrics.
  * [Quote](/api-reference/market-data/quote) (`/v1/quote`) returning the latest real‑time or near‑real‑time quote for an equity.

  See the [Structured Data Introduction](/structured-data/introduction) for more details.
</Update>

<Update label="2025-09-19" tags={["Structured Data"]} rss={{ title: "New Core Financial & Market Data Endpoints", description: "This release introduces a set of core financial and market data APIs" }}>
  **New Core Financial & Market Data Endpoints**

  This release introduces a set of core financial and market data APIs, including comprehensive company financial statements, trailing ratios, daily and intraday prices, price changes, and real‑time quotes.

  * [Earnings Surprises](/api-reference/analyst-estimates/earnings-surprises) (`/v1/latest-surprise`) returning actual earnings vs. consensus estimates along with surprise metrics.
  * [Key Metrics TTM](/api-reference/financials-&-ratios/key-metrics-ttm) (`/v1/key-metrics-ttm`) providing key trailing twelve‑month performance metrics.
  * [Balance Sheet](/api-reference/financials-&-ratios/balance-sheet) (`/v1/balance-sheet`) delivering a company’s balance sheet data.
  * [Analyst Ratings](/api-reference/analyst-estimates/analyst-ratings) (`/v1/analyst-ratings`) returning aggregated analyst rating data.
  * [Analayst Estimates](/api-reference/analyst-estimates/analyst-estimates) (`/v1/analyst-estimates`) providing detailed analyst forecast estimates for metrics.
  * [Events Calendar](/api-reference/company-&-events/events-calendar) (`/v1/events-calendar`) delivering scheduled company and market events.

  See the [Structured Data Introduction](/structured-data/introduction) for more details.
</Update>
