> For clean Markdown of any page, append .md to the page URL. > For a complete documentation index, see https://docs.middesk.com/accelerate-onboarding/business-enrichment/llms.txt. > For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.middesk.com/_mcp/server. # Return complete business profiles with Business enrichment > Use Business enrichment orders to retrieve business attributes with higher coverage for web analysis and industry classification. A Business enrichment order is an asynchronous process similar to the synchronous [Smart populate API](/accelerate-onboarding/smart-populate). It returns attributes about a business and performs live scraping to achieve a higher fill rate on attributes like web analysis and industry classification. > **Note** > > A Business enrichment order does not verify the business. Unlike a Business Verification order, it never goes to audit and completes relatively quickly. ## End-to-end flow 1. A user types their business name and address, or selects the name and address from the list returned by the [Autocomplete API](/accelerate-onboarding/autocomplete). 2. Your backend sends a request to Middesk's `POST /v1/businesses/` endpoint with the `business_enrichment` product. 3. Middesk returns an `id` for the Business enrichment order. 4. Because a Business enrichment order is asynchronous, set up [webhooks](/build/webhooks) to receive order updates. 5. Middesk returns information about the business that you can use to pre-fill fields during onboarding. This information has a higher fill rate than the synchronous Smart populate API. ## Create a Business enrichment order #### Set up webhooks Because Business enrichment orders are asynchronous, set up webhooks to receive notifications when the order completes. See [Implement webhooks](/build/webhooks) for details. Listen for the `order.updated` event to know when your Business enrichment order is complete. #### Create the order Send a POST request to create a new business with the `business_enrichment` product: **`Example request`** ```bash title="Example request" curl -X POST https://api.middesk.com/v1/businesses \ -H "Authorization: Bearer " \ -H "Accept: application/json" \ -H "Content-Type: application/json" \ -d '{ "name": "Dunder Mifflin Paper Company", "orders": [ { "product": "business_enrichment" } ], "addresses": [ { "full_address": "1725 Slough Avenue, Scranton, PA 18501" } ] }' ``` A successful request returns a `200 OK` with the Business object, including the order `id`: **`Example response`** ```json title="Example response" { "object": "business", "id": "021ebab4-173c-4b6c-838a-a313d566df76", "name": "Dunder Mifflin Paper Company", "created_at": "2025-11-14T17:03:47.177Z", "updated_at": "2025-11-14T17:03:51.546Z", "status": "pending", ... } ``` #### Retrieve the completed order Once you receive the webhook notification, fetch the completed Business enrichment order: **`Example request`** ```bash title="Example request" curl -X GET "https://api.middesk.com/v1/businesses/" \ -H "Authorization: Bearer " \ -H "Accept: application/json" ``` The response contains rich business data that you can use to pre-fill onboarding fields: **`Example response (truncated)`** ```json title="Example response (truncated)" { "object": "business", "id": "021ebab4-173c-4b6c-838a-a313d566df76", "name": "Dunder Mifflin Paper Company", "status": "open", "tin": { "tin": "23-1043927", "tin_type": "EIN" }, "formation": { "entity_type": "CORPORATION", "formation_date": "2002-03-19" }, "website": { "url": "http://www.dundermifflin.com" }, "names": [ { "name": "Dunder Mifflin Paper Company", "type": "legal" } ], "addresses": [ { "address_line1": "1725 Slough Avenue", "address_line2": null, "city": "Scranton", "state": "PA", "postal_code": "18501", "full_address": "1725 Slough Avenue, Scranton, PA 18501", "labels": [] } ], "people": [ { "name": "Michael Scott", "titles": [{ "title": "REGIONAL MANAGER" }], "phone_numbers": [ { "phone_number": "570-555-5555", "recommended": true, "contact_type": "personal" } ], "emails": [ { "email": "mscott@dundermifflin.com", "contact_type": "business" } ] } ], "industry_classification": { "status": "completed", "categories": [ { "name": "Stationery, Office Supplies, and Gift Stores", "sector": "WHOLESALE_TRADE", "naics_codes": ["453210"] } ] }, "created_at": "2025-11-14T17:03:47.177Z", "updated_at": "2025-11-14T17:03:51.546Z" } ``` ## API reference ### Create Business enrichment order **Method**: `POST` **URL**: `https://api.middesk.com/v1/businesses` **Headers**: Include the API key in the `Authorization` header using Bearer authorization #### Request body | Parameter | Description | Required | | :---------- | :-------------------------------------------- | :------- | | `name` | Business name. | Yes | | `addresses` | List of addresses. | Yes | | `orders` | Set to `[{"product": "business_enrichment"}]` | Yes | #### Response statuses | Code | Description | | :---- | :----------------- | | `200` | Success | | `401` | Unauthorized | | `422` | Invalid parameters | ### Fetch Business enrichment order **Method**: `GET` **URL**: `https://api.middesk.com/v1/businesses/` **Headers**: Include the API key in the `Authorization` header using Bearer authorization #### Response statuses | Code | Description | | :---- | :----------- | | `200` | Success | | `401` | Unauthorized | ### Response schema The response is a [Business object](/reference/business). For Business enrichment orders, the following fields are populated: | Property | Type | Description | Guaranteed | | :------------------------ | :---------- | :---------------------------------------------------- | :-------------------------- | | `object` | `string` | A definition of the type of object returned | Yes | | `id` | `string` | Middesk-generated unique identifier for the business | Yes | | `name` | `string` | The given name for the company | Yes | | `created_at` | `timestamp` | Creation timestamp | Yes | | `updated_at` | `timestamp` | Last update timestamp | No | | `status` | `string` | The current status of the business lifecycle | Yes | | `tin` | `object` | Tax identification number details (`tin`, `tin_type`) | No | | `formation` | `object` | Information about the formation of the business | Nullable | | `names` | `object[]` | Details about the business names | Yes | | `addresses` | `object[]` | All known addresses tied to a business entity | Yes | | `orders` | `object[]` | Contains only the Business enrichment order | Yes | | `people` | `object[]` | Information about people | Yes (can be an empty array) | | `industry_classification` | `object` | Information about Industry Classification | Nullable | | `website` | `object` | Website information | Nullable | **Person** The [Person object](/reference/person) has 2 additional keys: | Property | Type | Description | Guaranteed | | :-------------------------------- | :--------- | :--------------------------- | :-------------------------- | | email\_addresses | `object[]` | An array of objects | yes - can be an empty array | | email\_addresses\[].email | `string` | | yes | | email\_addresses\[].object | `string` | "email\_address" | yes | | email\_addresses\[].contact\_type | `string` | "professional" or "personal" | yes | | phone\_numbers | `object[]` | An array of objects | yes - can be an empty array | | phone\_numbers\[].phone | `string` | | yes | | phone\_numbers\[].object | `string` | "phone\_number" | yes | | phone\_numbers\[].contact\_type | `string` | "professional" or "personal" | | | phone\_numbers\[].recommended | `boolean` | | yes | > **Get a demo** > > Contact your account manager or [contact sales](https://www.middesk.com/contact-sales) to inquire about access. > Use Business enrichment orders to retrieve business attributes with higher coverage for web analysis and industry classification.