Skip to main content

When to use this path

This path is best when your team wants a single API call, and your applicant base is primarily registered businesses. If your platform onboards sole proprietors or you want online presence data on every application regardless of KYB outcome, run POST /web_presence_requests as a separate call instead. See the Overview for the full decision guide.

The options array

Online presence data is not returned unless you include options in your request. Sending options: [], or omitting the field entirely, returns orderables: [] - no Website Analysis, no Industry Prediction, no social or review data. This is the most common reason customers don’t see web presence data in their responses.
Include options in your POST /searches payload with one or more of the values below: The granular sub-product orders - Order.SocialMedia, Order.ReviewSummary, Order.ReviewFull, and Order.DirectoryListing - are only available on POST /web_presence_requests.

Why Order.Enhanced is more than a bundle

Order.Enhanced covers the same four sub-products as requesting Website Analysis, Industry Prediction, Social Profiles, and Reviews individually, but it does something none of those individual orders do: it merges discovered addresses and officers back into the business object. Any addresses Baselayer finds through Website Analysis, social profiles, or reviews are added to business.addresses[]. Any officers discovered online are added to business.business_officers[], alongside their sources and titles. These enriched fields feed directly into the KYB matching logic, which can meaningfully increase match rates for:
  • Newer businesses with thin Secretary of State records
  • Businesses operating under a DBA or trade name
  • Common business names where the address is the primary disambiguator
Because Order.Enhanced performs a broader discovery across multiple sources, it takes on average around 25 seconds to complete - longer than a standard POST /searches call. Order.WebsiteAnalysis also runs inside the search and adds time. Order.NaicsPrediction can finish after the search completes unless Order.Enhanced is requested. For high-value KYB use cases where match rate matters more than speed, it is the recommended default.

Where the data lives in the response

For field-level definitions and a clear structure across all paths, see Response Reference.

Sample request

In this example, the applicant submitted acmecorp-solutions.com as their website, but Baselayer independently discovered acmecorp.com as the operating domain. This triggers two WebsiteAnalysisRequest orderables - one per domain analyzed.

Sample response

This response illustrates three important behaviors:
  • Website Analysis and Industry Prediction are not inline. The main response only contains orderable tracking objects. To access the full website_analysis or industry_prediction data, call GET on each orderable’s url.
  • Two WebsiteAnalysisRequest orderables. The applicant submitted acmecorp-solutions.com, but Baselayer independently discovered acmecorp.com. Both domains are analyzed and each gets its own orderable, but the two entries in orderables[] look identical. Call GET /website_analysis_requests/{id} on each to determine which domain was analyzed. business_website_match: false reflects that the submitted domain did not match the discovered one.
  • Social profiles are inline, reviews are null. business.social_profiles[] is populated directly in the response when Order.Enhanced is requested. business.reviews is null when no reviews were found - no orderable is generated for these two items.

What happens when Business Search fails

If the submitted business doesn’t match any registration record (common for sole proprietors and other unregistered entities) /searches returns state: FAILED and orderables are not triggered. The orderables[] array will be empty even when valid options were included in the request. If your platform onboards applicants who may not have an SoS registration, use POST /web_presence_requests as a follow-up call - or as your primary path - to ensure online presence data is always returned. See The Web Presence API.

Webhooks

Each orderable fires its own lifecycle events. When using Order.Enhanced (or any combination of orderables), you can expect the following events: Each .completed event payload includes the orderable id and a url for retrieving full results.