# CorpVerify

CorpVerify provides company registry data and documents across **60+ jurisdictions** worldwide. Reports include registration details, shareholder information, and financial data where available.

For the full list of supported countries and their capabilities, see CorpVerify Country Coverage.

***

#### Default Flow

1. Use `/cra/{countryCode}/search/companies` to find the Company ID
2. Pass this ID to `/cra/request` to initiate the report request
3. Receive results via **webhook** or **poll** `/cra/poll`

***

#### Result Delivery

**Webhook (recommended)** — Pass a `callbackUrl` in the `/cra/request` body. When the report is ready, a `POST` request is sent to that URL with the report payload wrapped in a `WebhookPayload` envelope. Polling remains available as a fallback if delivery fails.

**Polling** — Call `/cra/poll` with the returned token until a `200` response is returned.

***

#### Retrieval Methods

**Automated Retrieval** — For supported countries (for example Hong Kong), providing a valid `companyId` enables automatic document fetching. The `/cra/poll` endpoint typically resolves within 5 minutes. Use `/cra/{countryCode}/search/companies` to obtain valid Company IDs.

**Manual Processing** — For countries without automation or when `companyId` is unavailable, Fill Easy processes requests manually. This may take up to several business days. You can still poll `/cra/poll` to check status and retrieve the document when ready.

> **Note:** The search endpoint may return an empty `companyId` for certain countries. In these cases, provide the `companyName` instead and the request will be processed manually.

***

#### Try It Out

Explore available regions, search for companies, and purchase documents using our web interface: [search.fill-easy.com](https://search.fill-easy.com)

## Request

> Initiate a company report request. Returns a JWT token for use with \`/cra/poll\`.\
> \
> \*\*Required:\*\* \`countryCode\` (ISO 3166 alpha-2)\
> \
> \*\*Recommended:\*\* \`companyId\` from \`/cra/{countryCode}/search/companies\` for faster automated processing.\
> \
> \*\*Fallback:\*\* Provide \`companyName\` if \`companyId\` is unavailable — request will be processed manually.\
> \
> \*\*Document Request:\*\* Provide \`documentId\` from \`/cra/{countryCode}/search/documents\` to request specific document. If \`/cra/info\` indicates that the documentId is \*\*required\*\* for retrieval, it must be provided.\
> \
> \*\*Document Type:\*\* Each country has a \`defaultDocumentType\` (see \[\`/cra/info\`]\(#get-cra-info)). Omitting \`documentType\` selects that default. To request a specific document, pass its \`name\` or alias from the country's \`documentTypes\` list.\
> \
> \*\*Dry Run:\*\* Set \`dryRun: true\` to test the integration without incurring costs.\
> The response includes \`dryRun: true\` and a token that can be polled normally via \`/cra/poll\`.\
> \
> \*\*Webhook Delivery:\*\* Provide \`callbackUrl\` to receive a \`POST\` when a report is available.\
> The webhook body is a \[\`WebhookPayload\`]\(#/components/schemas/WebhookPayload)\
> containing the same data as a \`200\` response from \`/cra/poll\`.\
> Requests that support partial reports may send one webhook with \`reportMetadata.status: processing\`\
> and another with \`reportMetadata.status: completed\`.\
> The request includes \`X-Webhook-Event: cra.report.completed\` and \`X-Request-Id\` headers,\
> plus any custom headers supplied in \`callbackHeaders\`.\
> Polling via \`/cra/poll\` remains available regardless of whether a \`callbackUrl\` is provided.<br>

```json
{"openapi":"3.1.0","info":{"title":"Fill Easy Services","version":"1.0.0"},"tags":[{"name":"CorpVerify","description":"CorpVerify provides company registry data and documents across **60+ jurisdictions** worldwide.\nReports include registration details, shareholder information, and financial data where available.\n\nFor the full list of supported countries and their capabilities, see\n[CorpVerify Country Coverage](#countries).\n\n\n---\n\n### Default Flow\n\n1. Use `/cra/{countryCode}/search/companies` to find the Company ID\n\n2. Pass this ID to `/cra/request` to initiate the report request\n\n3. Receive results via **webhook** or **poll** `/cra/poll`\n\n---\n\n### Result Delivery\n\n**Webhook (recommended)** — Pass a `callbackUrl` in the `/cra/request` body.\nWhen the report is ready, a `POST` request is sent to that URL with the report payload\nwrapped in a [`WebhookPayload`](#/components/schemas/WebhookPayload) envelope.\nPolling remains available as a fallback if delivery fails.\n\n**Polling** — Call `/cra/poll` with the returned token until a `200` response is returned.\n\n---\n\n### Retrieval Methods\n\n**Automated Retrieval** — For supported countries (for example Hong Kong), providing a valid\n`companyId` enables automatic document fetching. The `/cra/poll` endpoint typically resolves\nwithin 5 minutes. Use `/cra/{countryCode}/search/companies` to obtain valid Company IDs.\n\n**Manual Processing** — For countries without automation or when `companyId` is unavailable, Fill Easy\nprocesses requests manually. This may take up to several business days. You can still poll\n`/cra/poll` to check status and retrieve the document when ready.\n\n> **Note:** The search endpoint may return an empty `companyId` for certain countries.\n> In these cases, provide the `companyName` instead and the request will be processed manually.\n\n---\n\n### Try It Out\n\nExplore available regions, search for companies, and purchase documents using our web interface:\n[search.fill-easy.com](https://search.fill-easy.com)\n"}],"servers":[{"url":"sandbox.staging-api.fill-easy.com"}],"security":[{"ClientID":[],"ClientSecret":[]}],"components":{"securitySchemes":{"ClientID":{"type":"apiKey","description":"Client ID in x-client-id header.","name":"x-client-id","in":"header"}}},"paths":{"/cra/request":{"post":{"tags":["CorpVerify"],"summary":"Request","description":"Initiate a company report request. Returns a JWT token for use with `/cra/poll`.\n\n**Required:** `countryCode` (ISO 3166 alpha-2)\n\n**Recommended:** `companyId` from `/cra/{countryCode}/search/companies` for faster automated processing.\n\n**Fallback:** Provide `companyName` if `companyId` is unavailable — request will be processed manually.\n\n**Document Request:** Provide `documentId` from `/cra/{countryCode}/search/documents` to request specific document. If `/cra/info` indicates that the documentId is **required** for retrieval, it must be provided.\n\n**Document Type:** Each country has a `defaultDocumentType` (see [`/cra/info`](#get-cra-info)). Omitting `documentType` selects that default. To request a specific document, pass its `name` or alias from the country's `documentTypes` list.\n\n**Dry Run:** Set `dryRun: true` to test the integration without incurring costs.\nThe response includes `dryRun: true` and a token that can be polled normally via `/cra/poll`.\n\n**Webhook Delivery:** Provide `callbackUrl` to receive a `POST` when a report is available.\nThe webhook body is a [`WebhookPayload`](#/components/schemas/WebhookPayload)\ncontaining the same data as a `200` response from `/cra/poll`.\nRequests that support partial reports may send one webhook with `reportMetadata.status: processing`\nand another with `reportMetadata.status: completed`.\nThe request includes `X-Webhook-Event: cra.report.completed` and `X-Request-Id` headers,\nplus any custom headers supplied in `callbackHeaders`.\nPolling via `/cra/poll` remains available regardless of whether a `callbackUrl` is provided.\n","operationId":"craRequest","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["countryCode"],"properties":{"companyName":{"type":"string","description":"Name of the company"},"companyId":{"type":"string","description":"Company ID (e.g., BRN for Hong Kong, ACN for Australia)"},"countryCode":{"type":"string","pattern":"^[A-Za-z]{2}$","description":"[ISO 3166 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-2) country code (case insensitive)"},"documentType":{"type":"string","description":"The document type to retrieve. Must match a `name` (or alias) from the country's `documentTypes` list in [`/cra/info`](#tag/CorpVerify/operation/craInfo).\n\nIf omitted, defaults to the country's `defaultDocumentType` from `/cra/info` (unless a specific documentId is provided).\n"},"documentYear":{"type":["string","number"],"description":"Year of the document. Only provide it when the retrieval supports or requires it.\n"},"documentId":{"type":"string","description":"Specific document ID - if provided, it is prioritized over \"documentType\" and \"documentYear\""},"dryRun":{"type":"boolean","description":"Set to `true` to test the full request-poll flow without incurring costs.\n"},"emailList":{"type":"array","items":{"type":"string","format":"email"},"description":"Optional field for usage analytics"},"externalRefId":{"type":"string","description":"Your own reference ID (optional field for usage analytics)"},"express":{"type":"boolean","description":"Expediate request speed (Only used if turn-around times have been agreed upon)"},"callbackUrl":{"type":"string","format":"uri","pattern":"^https://.+","description":"HTTPS URL to receive a webhook POST when the report is ready.\nWhen provided, available reports use the same payload as a `200` response from `/cra/poll`.\nRequests that support partial reports may send both a `processing` and `completed` payload.\nPolling remains available as a fallback.\n"},"callbackHeaders":{"type":"object","additionalProperties":{"type":"string"},"description":"Custom HTTP headers to include in the webhook request.\nUse this to pass authentication or any other headers your endpoint requires\n(e.g. `{\"Authorization\": \"Bearer <token>\", \"X-Api-Key\": \"...\"}`).\n"}}}}}},"responses":{"200":{"description":"Successfully initiated the request","content":{"application/json":{"schema":{"type":"object","required":["token"],"properties":{"token":{"type":"string","description":"JWT token that encodes the request details and should be used in the /cra/poll endpoint to check the status and retrieve the document"},"dryRun":{"description":"Echoed back as `true` when the request was a dry run — no cost incurred","type":"boolean"}}}}}},"400":{"description":"Bad Request - Unsupported country code, document not available for the specified company, or request cannot be fulfilled","content":{"application/json":{"schema":{"type":"object","required":["message"],"properties":{"requestId":{"type":"string","description":"The request ID for tracking purposes"},"message":{"type":"string"}}}}}},"500":{"description":"Internal server error"}}}}}}
```

## Poll Report

> Check the status of a company registry report request.\
> Keep polling until a \`200\` response is returned.\
> \
> Returns \`202\` while the report is still being processed.\
> \
> If a \`callbackUrl\` was provided in \`/cra/request\`, available report states are also\
> delivered via webhook. Polling is always available as a fallback.<br>

```json
{"openapi":"3.1.0","info":{"title":"Fill Easy Services","version":"1.0.0"},"tags":[{"name":"CorpVerify","description":"CorpVerify provides company registry data and documents across **60+ jurisdictions** worldwide.\nReports include registration details, shareholder information, and financial data where available.\n\nFor the full list of supported countries and their capabilities, see\n[CorpVerify Country Coverage](#countries).\n\n\n---\n\n### Default Flow\n\n1. Use `/cra/{countryCode}/search/companies` to find the Company ID\n\n2. Pass this ID to `/cra/request` to initiate the report request\n\n3. Receive results via **webhook** or **poll** `/cra/poll`\n\n---\n\n### Result Delivery\n\n**Webhook (recommended)** — Pass a `callbackUrl` in the `/cra/request` body.\nWhen the report is ready, a `POST` request is sent to that URL with the report payload\nwrapped in a [`WebhookPayload`](#/components/schemas/WebhookPayload) envelope.\nPolling remains available as a fallback if delivery fails.\n\n**Polling** — Call `/cra/poll` with the returned token until a `200` response is returned.\n\n---\n\n### Retrieval Methods\n\n**Automated Retrieval** — For supported countries (for example Hong Kong), providing a valid\n`companyId` enables automatic document fetching. The `/cra/poll` endpoint typically resolves\nwithin 5 minutes. Use `/cra/{countryCode}/search/companies` to obtain valid Company IDs.\n\n**Manual Processing** — For countries without automation or when `companyId` is unavailable, Fill Easy\nprocesses requests manually. This may take up to several business days. You can still poll\n`/cra/poll` to check status and retrieve the document when ready.\n\n> **Note:** The search endpoint may return an empty `companyId` for certain countries.\n> In these cases, provide the `companyName` instead and the request will be processed manually.\n\n---\n\n### Try It Out\n\nExplore available regions, search for companies, and purchase documents using our web interface:\n[search.fill-easy.com](https://search.fill-easy.com)\n"}],"servers":[{"url":"sandbox.staging-api.fill-easy.com"}],"security":[{"ClientID":[],"ClientSecret":[]}],"components":{"securitySchemes":{"ClientID":{"type":"apiKey","description":"Client ID in x-client-id header.","name":"x-client-id","in":"header"}},"schemas":{"Token":{"type":"string","pattern":"^[A-Za-z0-9-_]+\\.[A-Za-z0-9-_]+\\.[A-Za-z0-9-_]*$","description":"JWT token"},"Error":{"type":"object","required":["error"],"properties":{"error":{"type":"string","description":"Error message"}}}},"responses":{"BadRequest":{"description":"Bad Request - Invalid input parameters","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}},"paths":{"/cra/poll":{"post":{"tags":["CorpVerify"],"summary":"Poll Report","description":"Check the status of a company registry report request.\nKeep polling until a `200` response is returned.\n\nReturns `202` while the report is still being processed.\n\nIf a `callbackUrl` was provided in `/cra/request`, available report states are also\ndelivered via webhook. Polling is always available as a fallback.\n","operationId":"craPoll","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["token"],"properties":{"token":{"$ref":"#/components/schemas/Token"}}}}}},"responses":{"200":{"description":"Report is ready","content":{"application/json":{"schema":{"type":"object","required":["reportMetadata"],"properties":{"reportMetadata":{"type":"object","description":"Metadata about the report generation","required":["status","countryCode"],"properties":{"reportDate":{"type":"string","format":"date","description":"Date when the report was generated"},"countryCode":{"type":"string","description":"[ISO country code](https://en.wikipedia.org/wiki/ISO_3166-2) of the report source","pattern":"^[A-Z]{2}$"},"status":{"type":"string","description":"Status of the report generation","enum":["completed","processing"]},"requestedYears":{"type":"array","items":{"type":"number"},"description":"Requested financial years for reports that support year ranges."},"readyYears":{"type":"array","items":{"type":"number"},"description":"Financial years currently included in the returned report."},"pendingYears":{"type":"array","items":{"type":"number"},"description":"Financial years still being processed for partial reports."}}},"originalDocuments":{"type":"array","description":"Array of documents with per-document status.\nAlways includes the original document entry. Includes a translated document entry\nwhen translation is applicable or still processing.\n","items":{"type":"object","required":["type","status"],"properties":{"type":{"type":"string","description":"Type of document","enum":["original","translated"]},"variant":{"type":"string","description":"Report stage for requests that can return an interim report before the completed report.","enum":["standard","fast","full"]},"status":{"type":"string","description":"Per-document status:\n- \"ready\": Document is available, url and fileName are populated\n- \"processing\": Document is being generated\n- \"not_applicable\": Document won't be generated (e.g., no translation needed for English-language source)\n","enum":["ready","processing","not_applicable"]},"url":{"type":"string","format":"uri","description":"Presigned URL to download the document (only when status is \"ready\"). Valid for 7 days."},"fileName":{"type":"string","description":"Name of the document file (only when status is \"ready\")"}}}},"companyIdentification":{"type":["object","null"],"description":"Company identification details with bilingual support","properties":{"companyName":{"type":"object","properties":{"english":{"type":["string","null"]},"local":{"type":["string","null"]}}},"companyId":{"type":["string","null"],"description":"Company registration number"},"idType":{"type":["string","null"],"description":"Type of company number (e.g., USCC, BRN)"},"previousCompanyNames":{"type":"array","items":{"type":"object","properties":{"english":{"type":["string","null"]},"local":{"type":["string","null"]}}}}}},"registrationDetails":{"type":["object","null"],"description":"Company registration details with bilingual support","properties":{"incorporationDate":{"type":["string","null"],"format":"date"},"status":{"type":["object","null"],"properties":{"english":{"type":["string","null"]},"local":{"type":["string","null"]}}},"companyType":{"type":["object","null"],"properties":{"english":{"type":["string","null"]},"local":{"type":["string","null"]}}},"jurisdiction":{"type":"string"}}},"location":{"type":["object","null"],"description":"Company location information with bilingual support","properties":{"registeredAddress":{"type":["object","null"],"properties":{"english":{"type":["string","null"]},"local":{"type":["string","null"]}}},"principalPlaceOfBusiness":{"type":["object","null"],"properties":{"english":{"type":["string","null"]},"local":{"type":["string","null"]}}}}},"management":{"type":["object","null"],"description":"Company management structure with bilingual support","properties":{"directors":{"type":"array","items":{"type":"object","properties":{"name":{"type":"object","properties":{"english":{"type":["string","null"]},"local":{"type":["string","null"]}}},"role":{"type":["object","null"],"properties":{"english":{"type":["string","null"]},"local":{"type":["string","null"]}}},"identityDocuments":{"type":"array","items":{"type":"string"}},"address":{"type":["string","null"]},"appointmentDate":{"type":["string","null"],"format":"date"}}}},"companySecretary":{"type":["object","null"],"properties":{"name":{"type":"object","properties":{"english":{"type":["string","null"]},"local":{"type":["string","null"]}}},"address":{"type":["string","null"]}}},"legalRepresentative":{"type":["object","null"],"properties":{"name":{"type":"object","properties":{"english":{"type":["string","null"]},"local":{"type":["string","null"]}}},"isCorporate":{"type":"boolean"}}}}},"ownership":{"type":["object","null"],"description":"Company ownership/shareholder information with bilingual support","properties":{"shareholders":{"type":"array","items":{"type":"object","properties":{"name":{"type":"object","properties":{"english":{"type":["string","null"]},"local":{"type":["string","null"]}}},"isCorporate":{"type":"boolean"},"address":{"type":["string","null"]},"sharesHeld":{"type":"array","items":{"type":"object","properties":{"class":{"type":"object","properties":{"english":{"type":["string","null"]},"local":{"type":["string","null"]}}},"count":{"type":"number"}}}},"totalShares":{"type":["number","null"]},"ownershipPercentage":{"type":["number","null"]}}}},"ultimateHoldingCompany":{"type":["object","null"],"properties":{"name":{"type":"object","properties":{"english":{"type":["string","null"]},"local":{"type":["string","null"]}}},"jurisdiction":{"type":["string","null"]}}}}},"shareCapital":{"type":["object","null"],"description":"Share capital information with bilingual support","properties":{"issuedCapital":{"type":["object","null"],"properties":{"amount":{"type":"number"},"currency":{"type":"string"}}},"paidUpCapital":{"type":["object","null"],"properties":{"amount":{"type":"number"},"currency":{"type":"string"}}},"authorizedCapital":{"type":["object","null"],"properties":{"amount":{"type":"number"},"currency":{"type":"string"}}}}},"operations":{"type":["object","null"],"description":"Company operations details with bilingual support","properties":{"businessActivity":{"type":["object","null"],"properties":{"english":{"type":["string","null"]},"local":{"type":"string"}}},"financialYearEnd":{"type":["string","null"]}}},"compliance":{"type":["object","null"],"description":"Company compliance, filing history, change records, and risk information","properties":{"registeredAgent":{"type":["object","null"],"properties":{"name":{"type":"string"},"address":{"type":"string"}}},"filingHistory":{"type":["object","null"],"description":"Official filed documents from the company registry (e.g., HK ICRIS)","properties":{"totalDocuments":{"type":"number"},"summary":{"type":"array","items":{"type":"object","properties":{"category":{"type":"object","properties":{"english":{"type":"string"},"local":{"type":["string","null"]}}},"count":{"type":"number"}}}}}},"changeHistory":{"type":["object","null"],"description":"Business change records from company registries (e.g., name changes, capital changes, director changes)","properties":{"totalChanges":{"type":"number"},"summary":{"type":"array","items":{"type":"object","properties":{"category":{"type":"object","properties":{"english":{"type":"string"},"local":{"type":["string","null"]}}},"count":{"type":"number"}}}}}},"riskInformation":{"type":["object","null"],"description":"Risk and compliance indicators (e.g., abnormalities, penalties, enforcement actions)","properties":{"totalIssues":{"type":"number"},"summary":{"type":"array","items":{"type":"object","properties":{"category":{"type":"object","properties":{"english":{"type":"string"},"local":{"type":["string","null"]}}},"count":{"type":"number"}}}}}},"intellectualProperty":{"type":["object","null"]}}}}}}}},"202":{"description":"Report is still being processed","content":{"application/json":{"schema":{"type":"object","required":["reportMetadata"],"properties":{"reportMetadata":{"type":"object","description":"Metadata about the report generation","required":["status","countryCode"],"properties":{"reportDate":{"type":"string","format":"date","description":"Date when the report was generated"},"countryCode":{"type":"string","description":"[ISO country code](https://en.wikipedia.org/wiki/ISO_3166-2) of the report source","pattern":"^[A-Z]{2}$"},"status":{"type":"string","description":"Status of the report generation","enum":["completed","processing"]},"requestedYears":{"type":"array","items":{"type":"number"},"description":"Requested financial years for reports that support year ranges."},"readyYears":{"type":"array","items":{"type":"number"},"description":"Financial years currently included in the returned report."},"pendingYears":{"type":"array","items":{"type":"number"},"description":"Financial years still being processed for partial reports."}}},"originalDocuments":{"type":"array","description":"Array of documents with per-document status.\nIncluded during processing to show which documents are expected.\n","items":{"type":"object","required":["type","status"],"properties":{"type":{"type":"string","enum":["original","translated"]},"variant":{"type":"string","enum":["standard","fast","full"]},"status":{"type":"string","enum":["ready","processing","not_applicable"]},"url":{"type":"string","format":"uri"},"fileName":{"type":"string"}}}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"500":{"description":"Internal server error"}}}}}}
```

## Search Companies by Name

> This endpoint performs a search for companies in the respective country's\
> Companies Registry by company name. It supports both English and Chinese\
> company names and returns a list of matching companies.\
> \
> Certain countries are unable to return a companyId - in those cases the\
> idType in the response will be "Unavailable" and companyId will be an\
> empty string.\
> \
> The search will automatically detect if the input is in Chinese\
> characters and adjust the search parameters accordingly.\
> \
> The type of search is dependent on the country:\
> \
> \*Substring search\*: KY, TH, PH, JP\
> \
> \*Tokenized search (e.g. searching "PLE" will not result in "APPLE")\*: AU, SG\
> \
> \*Left partial search\*: HK, BM, MY, FR\
> \
> \*Partial name search\*: US<br>

```json
{"openapi":"3.1.0","info":{"title":"Fill Easy Services","version":"1.0.0"},"tags":[{"name":"CorpVerify","description":"CorpVerify provides company registry data and documents across **60+ jurisdictions** worldwide.\nReports include registration details, shareholder information, and financial data where available.\n\nFor the full list of supported countries and their capabilities, see\n[CorpVerify Country Coverage](#countries).\n\n\n---\n\n### Default Flow\n\n1. Use `/cra/{countryCode}/search/companies` to find the Company ID\n\n2. Pass this ID to `/cra/request` to initiate the report request\n\n3. Receive results via **webhook** or **poll** `/cra/poll`\n\n---\n\n### Result Delivery\n\n**Webhook (recommended)** — Pass a `callbackUrl` in the `/cra/request` body.\nWhen the report is ready, a `POST` request is sent to that URL with the report payload\nwrapped in a [`WebhookPayload`](#/components/schemas/WebhookPayload) envelope.\nPolling remains available as a fallback if delivery fails.\n\n**Polling** — Call `/cra/poll` with the returned token until a `200` response is returned.\n\n---\n\n### Retrieval Methods\n\n**Automated Retrieval** — For supported countries (for example Hong Kong), providing a valid\n`companyId` enables automatic document fetching. The `/cra/poll` endpoint typically resolves\nwithin 5 minutes. Use `/cra/{countryCode}/search/companies` to obtain valid Company IDs.\n\n**Manual Processing** — For countries without automation or when `companyId` is unavailable, Fill Easy\nprocesses requests manually. This may take up to several business days. You can still poll\n`/cra/poll` to check status and retrieve the document when ready.\n\n> **Note:** The search endpoint may return an empty `companyId` for certain countries.\n> In these cases, provide the `companyName` instead and the request will be processed manually.\n\n---\n\n### Try It Out\n\nExplore available regions, search for companies, and purchase documents using our web interface:\n[search.fill-easy.com](https://search.fill-easy.com)\n"}],"servers":[{"url":"sandbox.staging-api.fill-easy.com"}],"security":[{"ClientID":[],"ClientSecret":[]}],"components":{"securitySchemes":{"ClientID":{"type":"apiKey","description":"Client ID in x-client-id header.","name":"x-client-id","in":"header"}},"schemas":{"Company":{"required":["companyId","companyName","idType","registrationDetails"],"type":"object","description":"Company information returned from the Companies Registry search","properties":{"companyId":{"type":"string","description":"Unique company identifier used in subsequent API calls.\nFor Hong Kong: Business Registration Number (BRN) - an 8-digit number.\nFor Australia: Australian Company Number (ACN).\nFor Singapore: Unique Entity Number (UEN).\n"},"idType":{"type":"string","description":"Type of company identifier returned.\n- \"BRN\" - Business Registration Number (Hong Kong)\n- \"ACN\" - Australian Company Number (Australia)\n- \"UEN\" - Unique Entity Number (Singapore)\n- \"CIN\" - Corporate Identification Number (India)\n- \"FCRN\" - Foreign Company Registration Number (India)\n- \"LLPIN\" - Limited Liability Partnership Identification Number (India)\n- \"FLLPIN\" - Foreign LLP Identification Number (India)\n- \"Unavailable\" - When the country does not provide a company ID\n"},"companyName":{"type":"string","description":"Official registered company name (in English or Chinese depending on the search)"},"localName":{"type":"string","description":"Name of the company in local language (if applicable and different from companyName)"},"status":{"type":"string","enum":["Live","Distressed","Dissolved"],"description":"Current active status of the company.\n- \"Live\" - Company is currently active and in good standing\n- \"Distressed\" - Company is undergoing liquidation, insolvency proceedings, or striking-off process\n- \"Dissolved\" - Company has been dissolved/deregistered\n"},"nameType":{"type":"string","enum":["current","old"],"description":"Indicates whether the returned name is the current or a previous name.\n- \"current\" - This is the company's current registered name\n- \"old\" - This is a previous/historical name of the company\n"},"address":{"type":"string","description":"Registered address of the company (when available)"},"state":{"type":"string","description":"State or province of the company's registered office (when available)"},"registrationDetails":{"type":"array","description":"A list of attributes defining the company's legal structure, registration category, or public/private status as defined by the local jurisdiction.","items":{"$ref":"#/components/schemas/registrationDetail"}},"dissolutionDate":{"type":"string","format":"date","description":"Date of dissolution (YYYY-MM-DD format, empty string if not dissolved)"},"incorporationDate":{"type":"string","format":"date","description":"Date of incorporation/registration (YYYY-MM-DD format)"},"remarks":{"type":"string","description":"Any remarks or notes about the company"},"nameHistory":{"type":"array","description":"Historical company names (previous names the company has used)","items":{"type":"object","properties":{"companyName":{"type":"string","description":"English company name"},"localName":{"type":"string","description":"Chinese company name (if available)"},"effectiveDate":{"type":"string","format":"date","description":"Date when this name became effective (YYYY-MM-DD format)"}}}}}},"registrationDetail":{"type":"string","description":"Legal classification or entity type identifier. \nProvides details about a company based on its incorporation structure (e.g., Limited by Shares) or its regulatory category (e.g., Private vs. Public) according to the relevant national companies legislation.\n","enum":["Corporation","Company Limited by Shares","Registered Non-Hong Kong Company","Company Limited by Guarantee","Limited Company","Limited Liability Company","Unlimited Company","Registered Society/Organization","Open-ended Fund Company","Open-ended Investment Company","Limited Partnership Fund","Public Company","Private Company","Foreign Company","Foreign Company Branch","Registered Overseas Entity","Registered Australian Corporation under non-Corporations Law","Company Limited by Both Shares and Guarantees","No Liability Company","Sole Proprietorship/ Partnership","Sole Proprietorship","Limited Liability Partnership","Limited Partnership","Unlimited Partnership","Local Company","Juristic Ordinary Partnership","Foreign Juristic Person","Joint Venture","Chamber of Commerce","Private Limited by Guarantee (Section 60 Exemption)","Assurance Company","European Economic Interest Grouping","Royal Charter Body","United Kingdom Societas","United Kingdom Economic Interest Grouping","Charitable Incorporated Organisation","Educational Corporation","Government Body","General Partnership Company","Limited Partnership Company","Special Registered Corporation","One Person Company","Section 8 Company","Nidhi Company","Producer Company","IFSC Company","Partnership","Entity Registered Under Myanmar Companies Act 1914","Economic Interest Grouping","Civil Company","Other","N/A"]}}},"paths":{"/cra/{countryCode}/search/companies":{"post":{"tags":["CorpVerify"],"summary":"Search Companies by Name","description":"This endpoint performs a search for companies in the respective country's\nCompanies Registry by company name. It supports both English and Chinese\ncompany names and returns a list of matching companies.\n\nCertain countries are unable to return a companyId - in those cases the\nidType in the response will be \"Unavailable\" and companyId will be an\nempty string.\n\nThe search will automatically detect if the input is in Chinese\ncharacters and adjust the search parameters accordingly.\n\nThe type of search is dependent on the country:\n\n*Substring search*: KY, TH, PH, JP\n\n*Tokenized search (e.g. searching \"PLE\" will not result in \"APPLE\")*: AU, SG\n\n*Left partial search*: HK, BM, MY, FR\n\n*Partial name search*: US\n","operationId":"searchCompanies","parameters":[{"name":"countryCode","in":"path","required":true,"description":"[ISO 3166 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-2) country code in lowercase.","schema":{"pattern":"^[a-z]{2}(-[a-z]{2})?$","type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["companyName"],"properties":{"companyName":{"type":"string","description":"Company name to search (English or Chinese)"},"page":{"type":"integer","minimum":1,"default":1,"description":"Page of results to return. Pagination support varies by country — for countries where it is not supported, only the first N results are returned regardless of this value. Check `meta.page` in the response to confirm whether pagination was applied."}}}}}},"responses":{"200":{"description":"Successfully retrieved matching companies","content":{"application/json":{"schema":{"required":["message"],"type":"object","properties":{"message":{"type":"string","description":"Response message"},"meta":{"type":"object","required":["page","totalPages"],"properties":{"page":{"description":"Current page of results returned, or null if the data source does not support pagination (either all available results are included in a single response, or only limited results are provided). When non-null, check `totalPages` to determine whether more pages exist.","type":"integer","nullable":true},"totalPages":{"description":"Total number of pages available, or null if not paginated or unknown.","type":"integer","nullable":true}}},"result":{"type":"array","description":"Array of companies matching the search criteria","items":{"$ref":"#/components/schemas/Company"}}}}}}},"400":{"description":"Bad Request - Unsupported country code or search not implemented","content":{"application/json":{"schema":{"type":"object","required":["message"],"properties":{"message":{"type":"string"}}}}}},"422":{"description":"Too many results - search term is too broad","content":{"application/json":{"schema":{"type":"object","required":["message"],"properties":{"message":{"type":"string","enum":["too many results, please refine your search term"]}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["message"],"properties":{"message":{"type":"string","enum":["search error"]}}}}}}}}}}}
```

## Search Company Documents

> This endpoint searches for and returns documents filed by a company with\
> the Companies Registry. Documents are grouped by category (e.g., Annual\
> Return, Director/Secretary Changes, Charges Filed, etc.).\
> \
> You can optionally filter by document type and year to narrow down the\
> results.\
> \
> Document categories include: Annual Return, Director / Secretary\
> Changes, Charges Filed, Incorporation & Name Change, Liquidation &\
> Deregistration, Registered Office / Address, Share Capital, and Other.\
> \
> Note: Not all countries have document search available, please refer to \`/cra/info\`\
> to confirm\
> \
> Recommended: First retrieve/confirm the companyId from \`/cra/{countryCode}/search/companies\`\
> or \`/cra/{countryCode}/search/company\` prior to calling this endpoint<br>

```json
{"openapi":"3.1.0","info":{"title":"Fill Easy Services","version":"1.0.0"},"tags":[{"name":"CorpVerify","description":"CorpVerify provides company registry data and documents across **60+ jurisdictions** worldwide.\nReports include registration details, shareholder information, and financial data where available.\n\nFor the full list of supported countries and their capabilities, see\n[CorpVerify Country Coverage](#countries).\n\n\n---\n\n### Default Flow\n\n1. Use `/cra/{countryCode}/search/companies` to find the Company ID\n\n2. Pass this ID to `/cra/request` to initiate the report request\n\n3. Receive results via **webhook** or **poll** `/cra/poll`\n\n---\n\n### Result Delivery\n\n**Webhook (recommended)** — Pass a `callbackUrl` in the `/cra/request` body.\nWhen the report is ready, a `POST` request is sent to that URL with the report payload\nwrapped in a [`WebhookPayload`](#/components/schemas/WebhookPayload) envelope.\nPolling remains available as a fallback if delivery fails.\n\n**Polling** — Call `/cra/poll` with the returned token until a `200` response is returned.\n\n---\n\n### Retrieval Methods\n\n**Automated Retrieval** — For supported countries (for example Hong Kong), providing a valid\n`companyId` enables automatic document fetching. The `/cra/poll` endpoint typically resolves\nwithin 5 minutes. Use `/cra/{countryCode}/search/companies` to obtain valid Company IDs.\n\n**Manual Processing** — For countries without automation or when `companyId` is unavailable, Fill Easy\nprocesses requests manually. This may take up to several business days. You can still poll\n`/cra/poll` to check status and retrieve the document when ready.\n\n> **Note:** The search endpoint may return an empty `companyId` for certain countries.\n> In these cases, provide the `companyName` instead and the request will be processed manually.\n\n---\n\n### Try It Out\n\nExplore available regions, search for companies, and purchase documents using our web interface:\n[search.fill-easy.com](https://search.fill-easy.com)\n"}],"servers":[{"url":"sandbox.staging-api.fill-easy.com"}],"security":[{"ClientID":[],"ClientSecret":[]}],"components":{"securitySchemes":{"ClientID":{"type":"apiKey","description":"Client ID in x-client-id header.","name":"x-client-id","in":"header"}},"schemas":{"Document":{"type":"object","required":["category","companyId","documentName"],"properties":{"category":{"type":"string","description":"Document category (e.g., Annual Return & Accounts, Directors & Company Secretaries)","enum":["Incorporation & Registration","Annual Return & Accounts","Directors & Company Secretaries","Registered Office & Name Changes","Share Capital","Charges","Articles of Association","Deregistration & Liquidation","Amalgamation","Open-Ended Fund Companies","Limited Partnership Funds","Rectification & Administration","Annual Return / Financial Statements","Articles of Association / Members","Auditors","Change of Company Name","Deregistration","Directors and Company Secretary","Incorporation of Local Companies","Inspectors","Mortgage & Charges","Re-domiciliation","Registered Foreign Companies","Registered Offices and Location of Registers","Registration of Eligible Companies","Re-Registration","Share Acquisition or Buy-back/Share Certificates","Receivership","Winding Up","Others"]},"documentYear":{"type":"string","description":"Accounting year (for annual returns)"},"documentName":{"type":"string","description":"English name of the document"},"pages":{"type":"string","description":"Number of pages"},"filingDate":{"type":"string","format":"date","description":"Filing date (YYYY-MM-DD format), can be date of processing or date filed depending on country"},"documentId":{"type":"string","description":"Unique document identifier"},"companyId":{"type":"string","description":"Company ID"},"hasLinked":{"type":"boolean","description":"Whether the document has linked files"},"description":{"type":"object","description":"Additional useful info regarding the document","additionalProperties":{"type":"string"}}}}}},"paths":{"/cra/{countryCode}/search/documents":{"post":{"tags":["CorpVerify"],"summary":"Search Company Documents","description":"This endpoint searches for and returns documents filed by a company with\nthe Companies Registry. Documents are grouped by category (e.g., Annual\nReturn, Director/Secretary Changes, Charges Filed, etc.).\n\nYou can optionally filter by document type and year to narrow down the\nresults.\n\nDocument categories include: Annual Return, Director / Secretary\nChanges, Charges Filed, Incorporation & Name Change, Liquidation &\nDeregistration, Registered Office / Address, Share Capital, and Other.\n\nNote: Not all countries have document search available, please refer to `/cra/info`\nto confirm\n\nRecommended: First retrieve/confirm the companyId from `/cra/{countryCode}/search/companies`\nor `/cra/{countryCode}/search/company` prior to calling this endpoint\n","operationId":"searchDocuments","parameters":[{"name":"countryCode","in":"path","required":true,"description":"[ISO 3166 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-2) country code.","schema":{"pattern":"^[a-z]{2}$","type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["companyId"],"properties":{"companyId":{"type":"string","description":"Company ID (e.g., BRN for Hong Kong, ACN for Australia)"},"documentType":{"type":"string","description":"Optional filter by document type. (Country Specific)\n- HK: financialStatement, annualReturn\n- PH: GIS, AFS\n- GB: Specific filing type codes (e.g. CS01, AA, AR01, AP01, TM01, SH01, MR01) or\n  category names (e.g. accounts, officers, confirmation-statement). Specific codes\n  are the primary interface and match the `documentName` values returned by this\n  endpoint and the `documentType` accepted by `/cra/request`.\n"},"documentYear":{"type":"string","description":"Optional filter by year"},"page":{"type":"integer","minimum":1,"default":1,"description":"Page of results to return. Check `meta.totalPages` in the response to determine total pages available."}}}}}},"responses":{"200":{"description":"Successfully retrieved documents as a flat array","content":{"application/json":{"schema":{"type":"object","required":["message"],"properties":{"message":{"type":"string","enum":["success","search error"],"description":"Status of the operation"},"meta":{"type":"object","required":["page","totalPages"],"properties":{"page":{"type":"integer","nullable":true,"description":"Current page returned, or null if pagination is not supported for this country."},"totalPages":{"type":"integer","nullable":true,"description":"Total pages available, or null if unknown. When filtering by a specific GB document code this is an overestimate based on the parent category total."}}},"result":{"type":"array","description":"array of documents filed by the company.","items":{"$ref":"#/components/schemas/Document"}}}}}}},"400":{"description":"Bad Request - Unsupported country code or search not implemented","content":{"application/json":{"schema":{"type":"object","required":["message"],"properties":{"message":{"type":"string"}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["message"],"properties":{"message":{"type":"string","enum":["search error"]}}}}}}}}}}}
```

## Get Company Base Information

> This endpoint retrieves the base information for a specific company from\
> the Companies Registry using its Company ID.\
> \
> For Hong Kong Companies, the information includes company name (English and Chinese), status,\
> type, category, incorporation date, dissolution date (if applicable),\
> and any remarks.\
> \
> For other countries, the information includes company name, status, category, incorporation date,\
> and other available details such as entity type, registration address, and remarks where\
> applicable. The exact fields returned may vary depending on the data provided by each\
> country’s registry.<br>

```json
{"openapi":"3.1.0","info":{"title":"Fill Easy Services","version":"1.0.0"},"tags":[{"name":"CorpVerify","description":"CorpVerify provides company registry data and documents across **60+ jurisdictions** worldwide.\nReports include registration details, shareholder information, and financial data where available.\n\nFor the full list of supported countries and their capabilities, see\n[CorpVerify Country Coverage](#countries).\n\n\n---\n\n### Default Flow\n\n1. Use `/cra/{countryCode}/search/companies` to find the Company ID\n\n2. Pass this ID to `/cra/request` to initiate the report request\n\n3. Receive results via **webhook** or **poll** `/cra/poll`\n\n---\n\n### Result Delivery\n\n**Webhook (recommended)** — Pass a `callbackUrl` in the `/cra/request` body.\nWhen the report is ready, a `POST` request is sent to that URL with the report payload\nwrapped in a [`WebhookPayload`](#/components/schemas/WebhookPayload) envelope.\nPolling remains available as a fallback if delivery fails.\n\n**Polling** — Call `/cra/poll` with the returned token until a `200` response is returned.\n\n---\n\n### Retrieval Methods\n\n**Automated Retrieval** — For supported countries (for example Hong Kong), providing a valid\n`companyId` enables automatic document fetching. The `/cra/poll` endpoint typically resolves\nwithin 5 minutes. Use `/cra/{countryCode}/search/companies` to obtain valid Company IDs.\n\n**Manual Processing** — For countries without automation or when `companyId` is unavailable, Fill Easy\nprocesses requests manually. This may take up to several business days. You can still poll\n`/cra/poll` to check status and retrieve the document when ready.\n\n> **Note:** The search endpoint may return an empty `companyId` for certain countries.\n> In these cases, provide the `companyName` instead and the request will be processed manually.\n\n---\n\n### Try It Out\n\nExplore available regions, search for companies, and purchase documents using our web interface:\n[search.fill-easy.com](https://search.fill-easy.com)\n"}],"servers":[{"url":"sandbox.staging-api.fill-easy.com"}],"security":[{"ClientID":[],"ClientSecret":[]}],"components":{"securitySchemes":{"ClientID":{"type":"apiKey","description":"Client ID in x-client-id header.","name":"x-client-id","in":"header"}},"schemas":{"Company":{"required":["companyId","companyName","idType","registrationDetails"],"type":"object","description":"Company information returned from the Companies Registry search","properties":{"companyId":{"type":"string","description":"Unique company identifier used in subsequent API calls.\nFor Hong Kong: Business Registration Number (BRN) - an 8-digit number.\nFor Australia: Australian Company Number (ACN).\nFor Singapore: Unique Entity Number (UEN).\n"},"idType":{"type":"string","description":"Type of company identifier returned.\n- \"BRN\" - Business Registration Number (Hong Kong)\n- \"ACN\" - Australian Company Number (Australia)\n- \"UEN\" - Unique Entity Number (Singapore)\n- \"CIN\" - Corporate Identification Number (India)\n- \"FCRN\" - Foreign Company Registration Number (India)\n- \"LLPIN\" - Limited Liability Partnership Identification Number (India)\n- \"FLLPIN\" - Foreign LLP Identification Number (India)\n- \"Unavailable\" - When the country does not provide a company ID\n"},"companyName":{"type":"string","description":"Official registered company name (in English or Chinese depending on the search)"},"localName":{"type":"string","description":"Name of the company in local language (if applicable and different from companyName)"},"status":{"type":"string","enum":["Live","Distressed","Dissolved"],"description":"Current active status of the company.\n- \"Live\" - Company is currently active and in good standing\n- \"Distressed\" - Company is undergoing liquidation, insolvency proceedings, or striking-off process\n- \"Dissolved\" - Company has been dissolved/deregistered\n"},"nameType":{"type":"string","enum":["current","old"],"description":"Indicates whether the returned name is the current or a previous name.\n- \"current\" - This is the company's current registered name\n- \"old\" - This is a previous/historical name of the company\n"},"address":{"type":"string","description":"Registered address of the company (when available)"},"state":{"type":"string","description":"State or province of the company's registered office (when available)"},"registrationDetails":{"type":"array","description":"A list of attributes defining the company's legal structure, registration category, or public/private status as defined by the local jurisdiction.","items":{"$ref":"#/components/schemas/registrationDetail"}},"dissolutionDate":{"type":"string","format":"date","description":"Date of dissolution (YYYY-MM-DD format, empty string if not dissolved)"},"incorporationDate":{"type":"string","format":"date","description":"Date of incorporation/registration (YYYY-MM-DD format)"},"remarks":{"type":"string","description":"Any remarks or notes about the company"},"nameHistory":{"type":"array","description":"Historical company names (previous names the company has used)","items":{"type":"object","properties":{"companyName":{"type":"string","description":"English company name"},"localName":{"type":"string","description":"Chinese company name (if available)"},"effectiveDate":{"type":"string","format":"date","description":"Date when this name became effective (YYYY-MM-DD format)"}}}}}},"registrationDetail":{"type":"string","description":"Legal classification or entity type identifier. \nProvides details about a company based on its incorporation structure (e.g., Limited by Shares) or its regulatory category (e.g., Private vs. Public) according to the relevant national companies legislation.\n","enum":["Corporation","Company Limited by Shares","Registered Non-Hong Kong Company","Company Limited by Guarantee","Limited Company","Limited Liability Company","Unlimited Company","Registered Society/Organization","Open-ended Fund Company","Open-ended Investment Company","Limited Partnership Fund","Public Company","Private Company","Foreign Company","Foreign Company Branch","Registered Overseas Entity","Registered Australian Corporation under non-Corporations Law","Company Limited by Both Shares and Guarantees","No Liability Company","Sole Proprietorship/ Partnership","Sole Proprietorship","Limited Liability Partnership","Limited Partnership","Unlimited Partnership","Local Company","Juristic Ordinary Partnership","Foreign Juristic Person","Joint Venture","Chamber of Commerce","Private Limited by Guarantee (Section 60 Exemption)","Assurance Company","European Economic Interest Grouping","Royal Charter Body","United Kingdom Societas","United Kingdom Economic Interest Grouping","Charitable Incorporated Organisation","Educational Corporation","Government Body","General Partnership Company","Limited Partnership Company","Special Registered Corporation","One Person Company","Section 8 Company","Nidhi Company","Producer Company","IFSC Company","Partnership","Entity Registered Under Myanmar Companies Act 1914","Economic Interest Grouping","Civil Company","Other","N/A"]}}},"paths":{"/cra/{countryCode}/search/company":{"post":{"tags":["CorpVerify"],"summary":"Get Company Base Information","description":"This endpoint retrieves the base information for a specific company from\nthe Companies Registry using its Company ID.\n\nFor Hong Kong Companies, the information includes company name (English and Chinese), status,\ntype, category, incorporation date, dissolution date (if applicable),\nand any remarks.\n\nFor other countries, the information includes company name, status, category, incorporation date,\nand other available details such as entity type, registration address, and remarks where\napplicable. The exact fields returned may vary depending on the data provided by each\ncountry’s registry.\n","operationId":"searchCompany","parameters":[{"name":"countryCode","in":"path","required":true,"description":"[ISO 3166 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-2) country code.","schema":{"pattern":"^[a-z]{2}(-[a-z]{2})?$","type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["companyId"],"properties":{"companyId":{"type":"string","description":"Company ID (e.g., BRN for Hong Kong, ACN for Australia)"}}}}}},"responses":{"200":{"description":"Successfully retrieved company information","content":{"application/json":{"schema":{"type":"object","required":["message"],"properties":{"message":{"type":"string","enum":["success","search error"],"description":"Status of the operation"},"result":{"description":"Company base information object or null if not found","oneOf":[{"$ref":"#/components/schemas/Company"},{"type":"null"}]}}}}}},"400":{"description":"Bad Request - Unsupported country code or search not implemented","content":{"application/json":{"schema":{"type":"object","required":["message"],"properties":{"message":{"type":"string"}}}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["message"],"properties":{"message":{"type":"string","enum":["search error"]}}}}}}}}}}}
```

## Info

> Returns metadata and a list of all countries supported by the CorpVerify service,\
> including their automation status, available search capabilities, report contents,\
> and the available document types per country. Each country includes a \`defaultDocumentType\`\
> indicating which document is returned when \`documentType\` is omitted from a \`/cra/request\` call.\
> \
> \> This contains the same data as the \[CorpVerify Country Coverage table]\(#COUNTRIES.md).<br>

```json
{"openapi":"3.1.0","info":{"title":"Fill Easy Services","version":"1.0.0"},"tags":[{"name":"CorpVerify","description":"CorpVerify provides company registry data and documents across **60+ jurisdictions** worldwide.\nReports include registration details, shareholder information, and financial data where available.\n\nFor the full list of supported countries and their capabilities, see\n[CorpVerify Country Coverage](#countries).\n\n\n---\n\n### Default Flow\n\n1. Use `/cra/{countryCode}/search/companies` to find the Company ID\n\n2. Pass this ID to `/cra/request` to initiate the report request\n\n3. Receive results via **webhook** or **poll** `/cra/poll`\n\n---\n\n### Result Delivery\n\n**Webhook (recommended)** — Pass a `callbackUrl` in the `/cra/request` body.\nWhen the report is ready, a `POST` request is sent to that URL with the report payload\nwrapped in a [`WebhookPayload`](#/components/schemas/WebhookPayload) envelope.\nPolling remains available as a fallback if delivery fails.\n\n**Polling** — Call `/cra/poll` with the returned token until a `200` response is returned.\n\n---\n\n### Retrieval Methods\n\n**Automated Retrieval** — For supported countries (for example Hong Kong), providing a valid\n`companyId` enables automatic document fetching. The `/cra/poll` endpoint typically resolves\nwithin 5 minutes. Use `/cra/{countryCode}/search/companies` to obtain valid Company IDs.\n\n**Manual Processing** — For countries without automation or when `companyId` is unavailable, Fill Easy\nprocesses requests manually. This may take up to several business days. You can still poll\n`/cra/poll` to check status and retrieve the document when ready.\n\n> **Note:** The search endpoint may return an empty `companyId` for certain countries.\n> In these cases, provide the `companyName` instead and the request will be processed manually.\n\n---\n\n### Try It Out\n\nExplore available regions, search for companies, and purchase documents using our web interface:\n[search.fill-easy.com](https://search.fill-easy.com)\n"}],"servers":[{"url":"sandbox.staging-api.fill-easy.com"}],"security":[{"ClientID":[],"ClientSecret":[]}],"components":{"securitySchemes":{"ClientID":{"type":"apiKey","description":"Client ID in x-client-id header.","name":"x-client-id","in":"header"}},"schemas":{"Country":{"type":"object","required":["name","code","region","status","sourceLanguage","search","contents","documentTypes","defaultDocumentType"],"properties":{"name":{"type":"string","description":"Country name"},"code":{"type":"string","description":"[ISO 3166 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-2) country code."},"region":{"type":"string","description":"Geographic region"},"sourceLanguage":{"type":"string","description":"ISO 639-1 language code for the source language of documents"},"status":{"type":"string","enum":["automated","manual"],"description":"Whether the country is fully automated or requires manual processing"},"search":{"type":"object","required":["documents","companies","company"],"properties":{"documents":{"type":"boolean","description":"Whether document search is available"},"companies":{"type":"boolean","description":"Whether company name search is available"},"company":{"type":"boolean","description":"Whether company ID lookup is available"}}},"contents":{"type":"object","required":["registration","shareholder","financial"],"properties":{"registration":{"type":"boolean","description":"Whether registration information is available"},"shareholder":{"type":"boolean","description":"Whether shareholder information is available"},"financial":{"type":"boolean","description":"Whether financial information is available"}}},"defaultDocumentType":{"type":"string","description":"The document type used when `documentType` is omitted from a `/cra/request` call.\nAlways matches one of the `name` values in `documentTypes`.\n"},"documentTypes":{"type":"array","description":"Available document types for this country","items":{"type":"object","required":["name","contents","source"],"properties":{"name":{"type":"string","description":"Document type name"},"aliases":{"type":"array","description":"Alternative names for the document type. Not allowed into the documentType field of `/cra/request`"},"contents":{"type":"array","items":{"$ref":"#/components/schemas/DocumentContents"},"description":"List of content fields included in this document type"},"source":{"type":"string","description":"Source of the document"},"sampleUrl":{"type":"string","format":"uri","description":"URL to a sample document"},"retrievalRequiresDocumentId":{"type":"boolean","description":"When true, the `documentId` field is required in `/cra/request` for this document type"},"retrievalRequiresDocumentYear":{"type":"boolean","description":"When true, the `documentYear` field is required in `/cra/request` for this document type"},"retrievalSupportsDocumentYear":{"type":"boolean","description":"When true, the `documentYear` field is accepted but optional in `/cra/request` for this document type"}}}}}},"DocumentContents":{"type":"string","description":"Granular data points available in a company registry document","enum":["Company Name","Unique Identifier","Date of Incorporation","Company Type","Registered Office Address","Company Status","Status Date","Jurisdiction","Authorized Capital","Paid-Up Capital","Share Information","Shareholder Name","Ownership Ratio","Ownership Volume","Director Name","Director Position","Director Nationality","Registered Agent","Registered Agent Contact","Filing History","Branches and Subsidiaries","Insolvency Information","Notary Name","Notary Deed Number","Notary Deed Date","Business Activities","Subscribed Capital","Commissioner Name","Commissioner Position","Business Capital","Owner Name","Owner Position","Beneficial Owner Name","Beneficial Owner Criteria","Financial Statement","Company Secretary","Mortgages and Charges"]}}},"paths":{"/cra/info":{"get":{"tags":["CorpVerify"],"summary":"Info","description":"Returns metadata and a list of all countries supported by the CorpVerify service,\nincluding their automation status, available search capabilities, report contents,\nand the available document types per country. Each country includes a `defaultDocumentType`\nindicating which document is returned when `documentType` is omitted from a `/cra/request` call.\n\n> This contains the same data as the [CorpVerify Country Coverage table](#COUNTRIES.md).\n","operationId":"craInfo","parameters":[{"name":"country","in":"query","required":false,"schema":{"type":"string"},"description":"[ISO 3166 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-2) country code (e.g. `HK`). Case insensitive."}],"responses":{"200":{"description":"Successfully retrieved country information","content":{"application/json":{"schema":{"type":"object","required":["meta","countries"],"properties":{"meta":{"type":"object","required":["totalCountries","automated","manual","searchable"],"properties":{"totalCountries":{"type":"number","description":"Total number of countries"},"automated":{"type":"number","description":"Number of automated countries"},"manual":{"type":"number","description":"Number of manual countries"},"searchable":{"type":"number","description":"Number of countries with at least one search capability"}}},"countries":{"type":"array","items":{"$ref":"#/components/schemas/Country"}}}}}}},"400":{"description":"Bad Request"},"500":{"description":"Internal server error"}}}}}}
```


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.fill-easy.com/corpverify.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
