Bright Data Deep Lookup API

Find companies and professionals across 1,000+ public sources with 95%+ accuracy. Submit a natural-language description or structured query via `POST /trigger`, preview row counts with `/preview`, optimize the query with `/enhance_query`, and enrich existing columns with `/request/{id}/enrich`. Results are downloaded via `/request/{id}/download`. Billed per result.

Bright Data Deep Lookup API is one of 11 APIs that Bright Data publishes on the APIs.io network, described by a machine-readable OpenAPI specification.

This API exposes 1 machine-runnable capability that can be deployed as REST, MCP, or Agent Skill surfaces via Naftiko.

Tagged areas include Entity Resolution, People Search, Company Search, and Enrichment. The published artifact set on APIs.io includes API documentation, an OpenAPI specification, and 1 Naftiko capability spec.

OpenAPI Specification

bright-data-deep-lookup-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Bright Data Deep Lookup API
  description: |
    Deep Lookup is an entity-research API that finds companies and professionals across 1,000+
    public sources with 95%+ accuracy. Submit a natural-language description or structured query
    via `POST /trigger`, preview row counts and shape with `/preview`, optimize the query with
    `/enhance_query`, enrich existing columns with `/request/{id}/enrich`, monitor with `/status`,
    and download results once ready. Billed per delivered result.
  version: '1.0'
  contact:
    name: Bright Data
    url: https://docs.brightdata.com
servers:
  - url: https://api.brightdata.com
    description: Production
security:
  - BearerAuth: []
tags:
  - name: Lookup
paths:
  /deep_lookup/trigger:
    post:
      summary: Trigger a Deep Lookup Request
      operationId: triggerDeepLookup
      tags: [Lookup]
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required: [query]
              properties:
                query: { type: string, description: Natural-language or structured search prompt. }
                category: { type: string, enum: [company, professional, mixed] }
                limit: { type: integer }
                output: { type: array, items: { type: string } }
      responses:
        "200":
          description: Triggered.
          content:
            application/json:
              schema:
                type: object
                properties:
                  request_id: { type: string }
  /deep_lookup/preview:
    post:
      summary: Preview a Deep Lookup Query
      operationId: previewDeepLookup
      tags: [Lookup]
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required: [query]
              properties:
                query: { type: string }
      responses:
        "200":
          description: Preview.
          content:
            application/json:
              schema:
                type: object
                properties:
                  estimated_rows: { type: integer }
                  sample:
                    type: array
                    items: { type: object, additionalProperties: true }
  /deep_lookup/enhance_query:
    post:
      summary: Enhance a Deep Lookup Query
      operationId: enhanceDeepLookupQuery
      tags: [Lookup]
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required: [query]
              properties:
                query: { type: string }
      responses:
        "200":
          description: Enhanced query.
          content:
            application/json:
              schema:
                type: object
                properties:
                  enhanced_query: { type: string }
                  suggestions:
                    type: array
                    items: { type: string }
  /deep_lookup/request/{request_id}/status:
    parameters:
      - { name: request_id, in: path, required: true, schema: { type: string } }
    get:
      summary: Get Deep Lookup Status
      operationId: getDeepLookupStatus
      tags: [Lookup]
      responses:
        "200":
          description: Status.
          content:
            application/json:
              schema:
                type: object
                properties:
                  status: { type: string, enum: [pending, running, ready, failed] }
                  rows: { type: integer }
  /deep_lookup/request/{request_id}/download:
    parameters:
      - { name: request_id, in: path, required: true, schema: { type: string } }
    get:
      summary: Download Deep Lookup Results
      operationId: downloadDeepLookup
      tags: [Lookup]
      parameters:
        - { name: format, in: query, schema: { type: string, enum: [json, ndjson, csv] } }
      responses:
        "200":
          description: Results.
          content:
            application/json:
              schema:
                type: array
                items: { type: object, additionalProperties: true }
  /deep_lookup/request/{request_id}/enrich:
    parameters:
      - { name: request_id, in: path, required: true, schema: { type: string } }
    post:
      summary: Enrich Deep Lookup Columns
      operationId: enrichDeepLookup
      tags: [Lookup]
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                columns:
                  type: array
                  items: { type: string }
      responses:
        "200":
          description: Enrichment queued.
          content:
            application/json: { schema: { type: object } }
components:
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer