Skip to main content
POST
/
api
/
gateway
/
execute
/
{project_hash}
/
api
Execute Company Verification (sync)
curl --request POST \
  --url https://instance.prod.onboardapp.io/api/gateway/execute/{project_hash}/api \
  --header 'Content-Type: application/json' \
  --header 'X-API-KEY: <api-key>' \
  --data '
{
  "company_name": "Acme Holdings Ltd",
  "registration_number": "12345678",
  "country": "GB",
  "company_type": "<string>",
  "incorporation_date": "2023-12-25",
  "industry": "<string>",
  "address_line_1": "<string>",
  "city": "<string>",
  "postcode": "<string>",
  "annual_revenue": "<string>",
  "employee_count": "<string>",
  "sic_codes": "<string>",
  "status": "<string>",
  "external_reference": "<string>",
  "directors": [
    {
      "first_name": "<string>",
      "last_name": "<string>",
      "date_of_birth": "2023-12-25",
      "nationality": "<string>",
      "role": "<string>",
      "appointed_date": "2023-12-25",
      "zenoo_entity_id": "<string>"
    }
  ],
  "ubos": [
    {
      "first_name": "<string>",
      "last_name": "<string>",
      "date_of_birth": "2023-12-25",
      "nationality": "<string>",
      "ownership_percentage": 123,
      "role": "<string>",
      "zenoo_entity_id": "<string>"
    }
  ]
}
'
{
  "case_reference": "AML-2026-0042",
  "external_reference": "<string>",
  "processing_status": "complete",
  "overall_verdict": "Pass",
  "risk_tier": "High",
  "completed_at": "2023-11-07T05:31:56Z",
  "next_review_date": "2023-12-25",
  "company": {},
  "screening": {},
  "directors": [
    {}
  ],
  "beneficial_owners": [
    {}
  ],
  "identity": {},
  "document": {},
  "biometric": {},
  "risk_assessment": {},
  "checks_summary": {},
  "compliance_metadata": {}
}

Authorizations

X-API-KEY
string
header
required

Project-scoped API key for server-to-server authentication. Obtain keys from the Zenoo dashboard under Project Settings > API Keys. Staging and production environments use separate keys.

Headers

X-API-KEY
string
required

Project-scoped API key.

X-SYNC-TIMEOUT
integer

Sync timeout in milliseconds. The API blocks until all checks complete or the timeout is reached. Recommended: 30000 for registry-only, 60000 for registry + screening. Range: 5000-120000.

Required range: 5000 <= x <= 120000
Idempotency-Key
string

Unique key for idempotent request handling. Same key within 24 hours returns the original response.

Path Parameters

project_hash
string
required

Project identifier from Zenoo Studio.

Body

application/json

Request body for Company Verification. Zenoo accepts three tiers of data — more data produces richer results and fewer false positives.

TierFieldsResult Quality
Minimumcompany_name, registration_number, countryRegistry lookup + company screening
Standard+ directors[], ubos[], addressIndividual screening for each person
Full+ external_reference, annual_revenue, sic_codesIdempotency, enriched risk scoring
company_name
string
required

Legal name as registered with the company registry.

Example:

"Acme Holdings Ltd"

registration_number
string
required

Official company registration number.

Example:

"12345678"

country
string
required

Country of incorporation. ISO 3166-1 alpha-2 code.

Example:

"GB"

company_type
string

Legal entity type (e.g., Private Limited Company (Ltd), PLC, LLP).

incorporation_date
string<date>

Date of incorporation. ISO 8601 format (YYYY-MM-DD).

industry
string

Industry sector or classification.

address_line_1
string

Registered address street.

city
string

Registered address city.

postcode
string

Postal code.

annual_revenue
string

Annual revenue in base currency. Pass as a string.

employee_count
string

Number of employees. Pass as a string.

sic_codes
string

SIC codes, comma-separated (e.g., "64110,64191").

status
string

Current company status: Active, Dissolved, Struck Off.

external_reference
string

Your internal reference ID. Enables idempotency — submitting the same external_reference returns the existing result without creating a duplicate.

Maximum string length: 255
directors
object[]

Known directors. Each person is automatically screened for PEP/sanctions.

ubos
object[]

Known beneficial owners. Each person is automatically screened.

Response

All checks completed within timeout. Full compliance report.

Top-level verification result from the pull endpoint or sync response. Contains overall verdict, risk assessment, and detailed check results.

case_reference
string

Zenoo's unique case identifier.

Example:

"AML-2026-0042"

external_reference
string

Your reference ID, echoed back from the request.

processing_status
enum<string>

Current processing state.

Available options:
complete,
processing,
failed
overall_verdict
enum<string>

Aggregated verification outcome.

Available options:
Pass,
Refer,
Fail
risk_tier
enum<string>

Assessed risk level.

Available options:
High,
Medium,
Low
completed_at
string<date-time>

ISO 8601 completion timestamp.

next_review_date
string<date>

Recommended next review date.

company
object

Registry-verified company data (Company Verification only).

screening
object

Screening summary with PEP/sanctions/adverse media status.

directors
object[]

Director screening results (Company Verification only).

beneficial_owners
object[]

UBO screening results (Company Verification only).

identity
object

Identity verification result (Person Verification only).

document
object

Document verification result (Person Verification only).

biometric
object

Biometric liveness result (Person Verification only).

risk_assessment
object

Risk score breakdown.

checks_summary
object

Summary of all checks performed.

compliance_metadata
object

CDD/EDD status and case URL.