Skip to main content

1. Overview

The Company Deep Intelligence API generates structured, source-cited intelligence on any company or set of companies. Where Company Instant Enrichment returns raw firmographic data, this API returns AI-synthesised narratives — product portfolios, strategic moves, launch timelines, key customer profiles, leadership analysis, and employee sentiment — going well beyond what structured databases can provide. This is an asynchronous POST API — submitting a request returns a request_id (a UUID string) and an initial "PENDING" status immediately. You then poll the Request Status endpoint until status becomes "COMPLETED", at which point the full result is embedded directly in the status response. The two-step workflow:
This API uses the same async pattern as Industry Deep Intelligencerequest_id (UUID string), polls request/status/, and embeds the completed result directly in the status response. It does not use the Workflow API infrastructure (report_id, get_notebook_status, download_report). The two patterns are not interchangeable.
Two capabilities make this API architecturally distinct from all others in Wokelo:
  • Multi-company in one request — pass an array of company identifiers (companies) to enrich 1–N companies simultaneously. Results are returned as a dict keyed by each company identifier.
  • Section-selective output — choose exactly which of the 9 section types to generate. Request only what you need; each additional section adds processing time.
The nine available sections: Common use cases:
  • Pre-IC product intelligence sweep — for a set of target companies, request products_and_services + product_launches + strategic_initiatives to understand product trajectory and roadmap signals before a committee meeting
  • Competitive diligence on multiple players at once — send 3–5 competitors in a single companies array and get parallel product and business model analysis without chaining calls
  • Leadership due diligence — request management_profiles for an acquisition target and its key executives to surface background, tenure, and track record data
  • Customer and partner mapping — request key_customers + partnerships to identify major accounts and technology alliances before outreach or deal structuring
  • Employee health monitoring — request employee_sentiment across a portfolio to catch early cultural warning signals or compare workplace satisfaction across peers
  • CRM enrichment pipeline — batch enrich a watchlist of companies on specific sections and push results into Salesforce, HubSpot, or DealCloud records automatically

2. Quick Start

Step 1 — Submit a request
Step 2 — Poll until completed and retrieve the result
Step 3 — Work with the result

3. Authentication

All requests must include a Bearer token in the Authorization HTTP header.
API tokens are issued from your Wokelo account. Navigate to Account Details → API Credentials in the Wokelo dashboard to get your client id and client secret. Contact support@wokelo.ai if you do not yet have API access.
Never expose your token in client-side code, browser requests, or public repositories. A missing or invalid token returns 401 Unauthorized. A valid token without sufficient plan permissions returns 403 Forbidden.

4. Request Reference

Endpoint
All parameters are passed as JSON in the request body.
There is no hard-coded limit on the number of companies per request, but processing time scales with the number of companies × sections. For large watchlists, consider batching into groups of 5–10 companies and running requests concurrently.
Full request example:

5. Response

Submission response

The initial POST returns a 202 Accepted with two fields:

Status polling response

Poll GET /api/enterprise/request/status/?request_id={request_id}. Status values:

Completed result structure

When status is "COMPLETED", the polling response includes a result object. The result is a dict keyed by company identifier — one entry per company submitted in the companies array:
The result key matches the identifier you submitted. If you sent "https://tesla.com", the result key is "https://tesla.com". If you sent "tesla", the result key is "tesla". Use the same identifier to look up each company’s data.

Per-company object structure

Each company object contains three top-level keys: firmographics A lean identity card for the company. No financials — for financial data use Peer Comparison or Company Research. CP enrichment A dict containing your requested sections. Each section key maps to a section-specific data structure (see section schemas below). meta

Section-level response schemas

products_and_services
The sources field on each product area item is a string range (e.g. "1-3", "4-6") referencing IDs in the product_overview.source array — not a standalone citations array. product_launches
summary inside each launch is an array of strings (bullet points), not a single string. sources here is an array of citation objects (not the string-range pattern used in products_and_services). strategic_initiatives
strategic_moves is an array of area objects. Area is a string label (e.g. "Layoffs", "Hiring", "Office expansion", "Awards and recognitions"). Details is an array of sourced bullet-point objects.
The sources field schema differs between sections. In products_and_services items, sources is a string range like "1-3". In product_launches and strategic_initiatives, sources is an array of citation objects with url, title, publisher, and publishedDate. Always check the type before iterating.

6. Examples

Product intelligence on multiple companies before IC

Request product portfolio and launch data for three competitors simultaneously.
Sample submission response:

Strategic initiative monitoring — layoffs and hiring signals

Track workforce and strategic moves across a watchlist to surface adverse or growth signals.

Product launch timeline comparison

Extract and compare product launch timelines across a competitive set.

Leadership due diligence

Request management_profiles for an acquisition target to surface executive backgrounds.

Employee sentiment sweep across a portfolio

Monitor workplace health signals across portfolio companies.

Batch enrichment across a large watchlist

For large watchlists, batch companies into groups and run requests concurrently.

JavaScript / Node.js


7. Error Handling

The API uses standard HTTP status codes. The submission endpoint returns a 202 on success and synchronous errors for invalid requests. Processing errors appear as "FAILED" when polling. Handling a "FAILED" request status:
Retry with exponential back-off:

8. Best Practices

Request only the sections you need — each section adds processing time Unlike Workflow APIs that produce a fixed full report, this API generates only the sections you explicitly request. A focused two-section request (e.g. products_and_services + product_launches) completes significantly faster than all nine:
Use permalinks over website URLs for faster resolution Permalinks (e.g. "zendesk", "stripe") resolve faster and more reliably than website URLs, particularly for companies with complex domain structures. Use the Company Search API to look up a company’s permalink when you only have its name:
Batch companies into a single request rather than making separate calls This is the most important efficiency pattern for this API. Sending five companies in one companies array is significantly faster than five separate requests, because companies are processed in parallel on Wokelo’s infrastructure:
Result keys match the identifier you submitted — use it consistently If you submit "https://tesla.com", the result key is "https://tesla.com". If you submit "tesla", the key is "tesla". Mixing identifier formats in the same request (some URLs, some permalinks) produces result keys in the format you used. Be consistent within a request to simplify downstream processing:
sources schema differs between sections — check type before iterating In products_and_services, the sources field on each product area item is a string range (e.g. "1-3") referencing the product_overview.source array by ID. In product_launches and strategic_initiatives, sources is an array of citation objects. Always check the type before iterating:
product_launches.summary is an array of strings, not a single string Each launch object’s summary field is a list of bullet-point strings, not a single narrative string. Iterate it rather than printing directly:
request_id is a UUID string — use the correct polling endpoint This API returns request_id (UUID string). The Workflow APIs return report_id (integer). They use completely different polling endpoints and cannot be swapped:
Understand when to use Company Deep Intelligence vs Company Research Both APIs generate company intelligence, but they serve different needs. Company Deep Intelligence is section-selective and multi-company — ideal for focused sweeps across watchlists where you need specific intelligence types quickly, with results returned in the polling response. Company Research always generates a fixed five-section deep-dive report for one company through the Workflow infrastructure and supports PDF/DOCX/PPT export. Use Company Deep Intelligence for flexible pipeline enrichment and competitive sweeps; use Company Research when you need a complete formatted deliverable for a single company.

Industry Deep Intelligence

The industry-level equivalent — section-selective async intelligence on any sector or market, using the same request_id pattern.

Company Research

Fixed five-section deep-dive for a single company with PDF/DOCX/PPT export — use when you need a complete formatted deliverable.

Company Instant Enrichment

Synchronous firmographic data — returns raw structured fields instantly. Use for lightweight data needs where AI narratives aren’t required.

Company News Monitoring

Real-time news for any company — synchronous, no polling. Complements Company Deep Intelligence for current event context.

Peer Comparison

Side-by-side benchmarking of 2–5 companies with financial data, feature matrices, and business model comparison — async Workflow API.

Supporting APIs

Request Status and Company Search — both used alongside Company Deep Intelligence in the async workflow.