> For clean Markdown of any page, append .md to the page URL. > For a complete documentation index, see https://docs.middesk.com/quickstart/llms.txt. > For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.middesk.com/_mcp/server. # Quickstart—Verify a business > Begin using Middesk by verifying a business and reviewing the verification results. Learn how to use the Middesk API to quickly perform business identity verification. #### Verify a business A Business is the central object in the Middesk API. When you create a Business in Middesk, you automatically trigger the verification process. In a production integration, first collect a few key business attributes from your user through your onboarding flow. Then send this data as part of a [Create a Business](/api-reference/business-verification/businesses/create-a-business) API call. Only `name` and `addresses` parameters are required, but in real-world applications, provide Middesk with more data for a more detailed verification. To try it out, use: * Your sandbox API key, available in the [Dashboard](https://app.middesk.com/settings/credentials) * [Sample data](/environments#sandbox-trigger-values) For example, if you use a `name` value of **Corporation**, Middesk reports the business as being a registered corp. Use a `name` value of **Unregistered Business** and Middesk reports the business having no associated registrations. For `addresses`, provide **223 Grand St., New York, NY 10013** for a correct address match, or **423 Grand St., New York, NY 10013** for an approximate address match. ```curl curl -X POST https://api-sandbox.middesk.com/v1/businesses \ -u : \ -H "Accept: application/json" \ -d name=Corporation \ -d addresses\[0\]\[address_line1\]=223+Grand+St. \ -d addresses\[0\]\[city\]=new+york \ -d addresses\[0\]\[state\]=NY \ -d addresses\[0\]\[postal_code\]=10013 ``` For a successful request, Middesk returns a 201 status code along with a JSON body containing the new Business object. > **Note** > > The 201 response only indicates a successful API call, **not** that the business was verified. #### Find the verification results For a test business verification, the results come back quickly--probably by the time you've read to this point! View the results using: * The Middesk [Dashboard](https://app.middesk.com/) * A [Retrieve a Business](/api-reference/business-verification/businesses/retrieve-a-business) API call * A webhook endpoint As the Business was created in the sandbox environment, make sure you make a sandbox API call or look at sandbox data in the Dashboard. **`Retrieve a business`** ```curl title="Retrieve a business" curl -X GET https://api-sandbox.middesk.com/v1/businesses/ \ -u : \ -H "Accept: application/json" ``` > **Tip** > > The Middesk API is asynchronous in nature. While most requests can be automatically resolved and have results in a few seconds, some cases require a review by an internal analyst team, which takes longer. Additional uses of Middesk may require watching for changes in registrations or business activity. For these reasons, set up [webhooks](/build/webhooks) as part of your Middesk workflow. #### Review the verification results The code in Step 1 creates a Business object in your account, and triggers a Middesk verification review. After Middesk completes its verification process, Middesk updates the Business object with the results. The last step is for you to make a decision about this business based upon Middesk's report. However you examine the updated Business object--using the Dashboard, a retrieve API call, or your webhook endpoint--pay attention to: * `data.object.id` is the Middesk `business_id`. Middesk highly recommends storing the `business_id` on your side as it's required when peforming subsequent requests. It is also useful for debugging or reviewing activity. * `data.object.status` reflects the current status of the Business in the [Middesk lifecycle](/lifecycle-of-business). * `data.object.review.tasks` stores high-level insights based on each business attribute. Most Middesk customers render a KYB decision based on the [review tasks](/review-insights). Here is an excerpt of what the `data.object.review.tasks` array might look like if a business name, address, person, and TIN were submitted for a given business. **`Review tasks example`** ```json title="Review tasks example" "tasks": [ { "category": "name", "key": "name", "label": "Business Name", "message": "Match identified to the submitted Business Name", "name": "name", "status": "success", "sub_label": "Verified", "sources": [ { "id": "cba235c3-be54-44f9-bfeb-4f474d6f7e33", "type": "name", "metadata": { "name": "Middesk, Inc", "submitted": true } } ] }, { "category": "address", "key": "address_verification", "label": "Office Address", "message": "Match identified to the submitted Office Address", "name": "address", "status": "success", "sub_label": "Verified", "sources": [ { "id": "afa00984-1d0d-4281-806c-5aadd581d29b", "type": "address", "metadata": { "city": "San Francisco", "state": "CA", "submitted": true, "postal_code": "94105-3459", "full_address": "85 2nd St, San Francisco, CA 94105-3459", "address_line1": "85 2nd St", "address_line2": null } } ] }, { "category": "watchlist", "key": "watchlist", "label": "Watchlist", "message": "No Watchlist hits were identified", "name": "watchlist", "status": "success", "sub_label": "No Hits", "sources": [] } ] ``` More succinctly put, the JSON results are: | Attribute | Status | Sublabel | | :--------------- | :-------- | :--------- | | Business name | `success` | `Verified` | | Business address | `success` | `Verified` | | Watchlist | `success` | `No Hits` | Depending upon your compliance needs and risk tolerance, you may approve this business to use your platform, or reach back out to double-check their TIN (as example responses). Automate how you handle the verification results in your integration using [rulesets or Policies](/use-rulesets-policies). ## Next steps #### [Set up webhooks](/build/webhooks) Receive real-time notifications when business verification status changes. #### [Understand the Business lifecycle](/lifecycle-of-business) Learn how a Business moves through statuses from creation to approval. #### [Automate decisions with Policies](/use-rulesets-policies) Configure rules that approve or reject businesses based on verification results. > **Get a demo** > > Contact your account manager or [contact sales](https://www.middesk.com/contact-sales) to inquire about access. > Begin using Middesk by verifying a business and reviewing the verification results.