> For clean Markdown of any page, append .md to the page URL. > For a complete documentation index, see https://docs.middesk.com/api-reference/business-verification/businesses/list-businesses/llms.txt. > For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.middesk.com/_mcp/server. # List businesses GET https://api.middesk.com/v1/businesses Reference: https://docs.middesk.com/api-reference/business-verification/businesses/list-businesses ## Authentication - `Authorization` header (bearer token, required) — Bearer authentication of the form `Bearer `, where token is your auth token. ## Response ### 200 businesses list - `object` (string, required) - `has_more` (boolean, required) - `data` (list of BusinessItem, optional) - `total_count` (integer, optional) ## Types ### BusinessItem Simplified business object returned in list endpoints - `object` (string, required) - `id` (string, required) - `name` (string, required) - `status` (enum, required) — Current status of the business verification - Allowed values: `open`, `pending`, `in_audit`, `in_review`, `approved`, `rejected` - `created_at` (datetime, required) - `updated_at` (datetime, required) - `external_id` (string, optional, nullable) - `unique_external_id` (string, optional, nullable) - `tags` (list of string, optional) - `review` (Review, optional, nullable) - `assignee` (User, optional, nullable) - `website` (BusinessItemWebsite, optional, nullable) - `orders` (list of Order, optional) ### Review - `object` (enum, required) - Allowed values: `review` - `id` (string, required) - `created_at` (datetime, required) - `updated_at` (datetime, required) - `tasks` (list of ReviewTask, required) - `completed_at` (datetime, optional, nullable) - `analyst_read_markdown` (string, optional, nullable) — LLM-generated analyst read of the business's verification results, in CommonMark markdown: one lead sentence followed by up to five bullet findings. Inline links, when present, are dashboard-relative paths (for example /businesses/\{id}/registrations) and may be ignored by API consumers. Null until a read has been generated; generated only for businesses without a risk order, whose risk assessment carries its own read. - `analyst_read_generated_at` (datetime, optional, nullable) — When the analyst read was delivered. Null until a read has been generated. - `assignee` (User, optional, nullable) ### User - `object` (string, required) - `id` (string, required) - `name` (string, required) - `email` (string, required) - `roles` (list of string, required) - `created_at` (datetime, required) - `image_url` (string, optional) - `directory_managed` (boolean, optional) - `last_login_at` (datetime, optional, nullable) - `settings` (map from string to any, optional) ### BusinessItemWebsite - `object` (string, optional) - `id` (string, optional) - `url` (string, optional) - `title` (string, optional, nullable) - `description` (string, optional, nullable) ### Order - `object` (string, required) - `id` (string, required) - `status` (enum, required) - Allowed values: `created`, `pending`, `audited`, `completed`, `approved`, `rejected` - `business_id` (string, required) - `product` (enum, required) - Allowed values: `identity`, `liens`, `adverse_media`, `bankruptcies`, `business_enrichment`, `documents`, `enhanced_screenings`, `kyc`, `litigations`, `people_litigations`, `people_bankruptcies`, `people_tax_liens`, `people_ucc_liens`, `people_criminal_history`, `tin`, `website`, `business_verification_qualify`, `business_verification_verify`, `tax_liens`, `ucc_liens`, `email_risk` - `created_at` (datetime, required) - `updated_at` (datetime, required) - `subproducts` (list of enum, optional) - Allowed values: `Articles of Incorporation`, `Certificate of Good Standing`, `Articles of Incorporation with Certificate of Good Standing fallback`, `ucc_documents`, `web_analysis`, `industry_classification` - `completed_at` (datetime, optional, nullable) - `monitoring` (boolean, optional) - `requester` (OrderRequester, optional) ### ReviewTask - `category` (enum, required) - Allowed values: `bankruptcies`, `global_watchlists`, `name`, `people_litigations`, `loans`, `kyc`, `watchlist`, `phone`, `formation`, `people_criminal_history`, `adverse_media`, `litigations`, `tin_type`, `address`, `sos`, `web`, `liens`, `people_bankruptcies`, `industry`, `tin`, `people`, `people_liens`, `website`, `politically_exposed_persons`, `email` - `key` (enum, required) - Allowed values: `location_frequency`, `bankruptcies`, `sos_unknown`, `address_deliverability`, `website_url_discovery`, `entity_type`, `web_person_verification`, `global_watchlists`, `website_status`, `name`, `sos_sub_status`, `name_and_entity_type`, `sos_active`, `profile_status`, `phone`, `sos_domestic`, `address_high_risk`, `web_address_verification`, `address_property_type`, `sos_not_found`, `time_in_business`, `web_phone_number_verification`, `adverse_media`, `litigations`, `address_verification`, `people_litigations`, `dba_name`, `watchlist`, `entity_type_match`, `people_criminal_history`, `formation_state`, `tin_error`, `sos_inactive`, `address_frequency`, `web_business_name_verification`, `web_presence_quality`, `tin_type`, `tin_issued`, `sos_domestic_sub_status`, `risky_keywords`, `address_registered_agent`, `sos`, `kyc_decision`, `ppp_loans`, `web_email_address_verification`, `tin`, `address`, `liens`, `sos_status`, `industry`, `sos_match`, `address_risk`, `website_url_domain_ownership`, `website_parked`, `domain_redirect`, `people_bankruptcies`, `politically_exposed_persons`, `person_verification`, `profile_discovery`, `address_cmra`, `website_verification`, `website`, `people_liens`, `email_risk` - `label` (enum, required) - Allowed values: `Politically Exposed Persons`, `Web Presence Quality`, `KYC`, `People Bankruptcies`, `Address Risk`, `Global Watchlists`, `Phone Number`, `Third Party Profile Status`, `Liens`, `Third Party Profiles`, `Time in Business`, `Web - Email Address`, `Risky Keywords`, `SOS Domestic Sub‑status`, `PPP Loans`, `Secretary of State Filings`, `Entity Type`, `SOS Filings`, `People Criminal History`, `Adverse Media`, `Web - People`, `Office Address`, `Entity Type Match`, `Web - Phone Number`, `Business Name`, `Bankruptcies`, `Industry Classification`, `TIN Match`, `Watchlists`, `People Litigations`, `True Industry`, `People`, `DBA Name`, `Domain Ownership`, `Domain Redirect`, `TIN Type`, `Website`, `TIN Error`, `Watchlist`, `Litigations`, `Web - Business Name`, `Name Entity Type`, `Formation State`, `People Liens`, `Web - Office Address`, `Email Risk` - `message` (string, required) - `name` (string, required) - `status` (enum, required) - Allowed values: `success`, `failure`, `warning`, `neutral` - `sub_label` (string, required) - `sources` (list of Source, required) ### OrderRequester - `name` (string, optional, nullable) - `type` (enum, optional, nullable) - Allowed values: `account`, `user`, `api_key` ### Source - `id` (string, required) - `type` (string, required) — Origin of the resource. `risk_analysis` indicates the resource was discovered by a Risk order; for such sources, `id` is the originating risk_assessment ID. - `metadata` (map from string to any, required) ## Examples **Response** ```json { "object": "list", "has_more": true, "data": [ { "object": "business", "id": "id", "name": "name", "status": "open", "created_at": "2024-01-15T09:30:00Z", "updated_at": "2024-01-15T09:30:00Z", "external_id": "external_id", "unique_external_id": "unique_external_id", "tags": [ "tags" ], "review": { "object": "review", "id": "id", "created_at": "2024-01-15T09:30:00Z", "updated_at": "2024-01-15T09:30:00Z", "tasks": [ { "category": "bankruptcies", "key": "location_frequency", "label": "Politically Exposed Persons", "message": "message", "name": "name", "status": "success", "sub_label": "sub_label", "sources": [ { "id": "id", "type": "type", "metadata": { "key": "value" } } ] } ], "assignee": { "object": "user", "id": "id", "name": "name", "email": "email", "roles": [ "roles" ], "created_at": "2024-01-15T09:30:00Z" } }, "assignee": { "object": "user", "id": "id", "name": "name", "email": "email", "roles": [ "roles" ], "created_at": "2024-01-15T09:30:00Z" }, "website": { "object": "website" }, "orders": [ { "object": "order", "id": "id", "status": "created", "business_id": "business_id", "product": "identity", "created_at": "2024-01-15T09:30:00Z", "updated_at": "2024-01-15T09:30:00Z" } ] } ], "total_count": 1 } ``` **SDK Code** ```python import requests url = "https://api.middesk.com/v1/businesses" headers = {"Authorization": "Bearer "} response = requests.get(url, headers=headers) print(response.json()) ``` ```javascript const url = 'https://api.middesk.com/v1/businesses'; const options = {method: 'GET', headers: {Authorization: 'Bearer '}}; try { const response = await fetch(url, options); const data = await response.json(); console.log(data); } catch (error) { console.error(error); } ``` ```go package main import ( "fmt" "net/http" "io" ) func main() { url := "https://api.middesk.com/v1/businesses" req, _ := http.NewRequest("GET", url, nil) req.Header.Add("Authorization", "Bearer ") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(res) fmt.Println(string(body)) } ``` ```ruby require 'uri' require 'net/http' url = URI("https://api.middesk.com/v1/businesses") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Get.new(url) request["Authorization"] = 'Bearer ' response = http.request(request) puts response.read_body ``` ```java import com.mashape.unirest.http.HttpResponse; import com.mashape.unirest.http.Unirest; HttpResponse response = Unirest.get("https://api.middesk.com/v1/businesses") .header("Authorization", "Bearer ") .asString(); ``` ```php request('GET', 'https://api.middesk.com/v1/businesses', [ 'headers' => [ 'Authorization' => 'Bearer ', ], ]); echo $response->getBody(); ``` ```csharp using RestSharp; var client = new RestClient("https://api.middesk.com/v1/businesses"); var request = new RestRequest(Method.GET); request.AddHeader("Authorization", "Bearer "); IRestResponse response = client.Execute(request); ``` ```swift import Foundation let headers = ["Authorization": "Bearer "] let request = NSMutableURLRequest(url: NSURL(string: "https://api.middesk.com/v1/businesses")! as URL, cachePolicy: .useProtocolCachePolicy, timeoutInterval: 10.0) request.httpMethod = "GET" request.allHTTPHeaderFields = headers let session = URLSession.shared let dataTask = session.dataTask(with: request as URLRequest, completionHandler: { (data, response, error) -> Void in if (error != nil) { print(error as Any) } else { let httpResponse = response as? HTTPURLResponse print(httpResponse) } }) dataTask.resume() ```