Browse endpoints

Show an adhoc check

GET /api/v1/adhoc-checks/{adhoc_check_uuid} operationId: adhoc-check.show

Base: https://portal.watcheye.com.au/api/v1/adhoc-checks/{adhoc_check_uuid}

Returns a single adhoc check by its UUID, including:

  • The base envelope (created_by, outcome, timestamps, etc.) - same shape as the list endpoint
  • results_overview[] - one row per result, with a uniform {title, status, alert_ids} shape across all operation types
  • children[] - per-child summaries when the check is a group; empty otherwise
  • details - the typed per-operation details block. The exact shape depends on check_type and uses the same per-operation discriminated union as the entity check show endpoint. Group checks (check_type = group) always return details: null - fetch each child via this endpoint to read its typed details.

PDF version

A printable PDF of the adhoc check (including subject, configuration and per-match details) is available via the PDF download endpoint.

Path parameters

FieldDescription
adhoc_check_uuidrequired string (uuid)

The adhoc check UUID

Responses

200

Adhoc check response

application/json
FieldDescription
data object

Same as AdhocCheck, plus the uniform results_overview and children arrays and the typed per-operation details block. Returned by the show endpoint so callers do not need a follow-up request to read match-level data.

data.uuid string (uuid)

The adhoc check's UUID

Example: 6f9e0a8e-2b9f-4f0e-8d1a-1e2b3c4d5e6f

data.check_number string

A short obfuscated public identifier for the adhoc check

Example: Q-A1B2CD

data.check_type string

The type of check that was run (see AdhocCheck.check_type)

Example: pep_sanction_check

data.check_type_name string

Display name for the check type

Example: PEP and Sanction Screening

data.status string

Lifecycle status of the adhoc check (see AdhocCheck.status)

Enum: pending, processing, complete, failed

Example: complete

data.failed_reason string or null

Short reason why the check failed (see AdhocCheck.failed_reason)

data.outcome string or null

High-level outcome of the check (see AdhocCheck.outcome)

Enum: pass, warning

Example: warning

data.check_summary string or null

Short, human-readable summary of the result

Example: Found 2 PEP matches

data.data_summary string or null

Short, human-readable summary of the subject the check ran against

Example: John A Smith, 1980-06-23

data.checked_at string (date-time) or null

Example: 2025-01-01T00:00:00Z

data.created_by object or null

Actor who launched the adhoc check - see AdhocCheck.created_by

data.created_by.type string

Enum: user, api_key

data.created_by.uuid string (uuid)
data.created_by.username string

Present only when type is user.

data.created_by.label string

Present only when type is api_key.

data.parent_uuid string (uuid) or null
data.results_overview array of objects

A uniform per-result summary across all operation types. Empty for group checks and for operations that pack everything into a single record (in which case details.record carries the full data).

data.results_overview[].title string

Short label for the result, suitable for display in a list (e.g. "Match 1: John Smith - PEP", "0412 345 678 (Connected)", "5 records at 12 Main St, Sydney").

Example: Match 1: John Smith - PEP

data.results_overview[].status string

Per-result status:

  • pass - this individual result is clean
  • warning - this individual result needs review (the default for any non-pass row when an operation does not assign a finer-grained status)
  • fail - this individual result is a definitive failure (used by email and phone checks for undeliverable / disconnected entries)

Enum: pass, warning, fail

Example: warning

data.results_overview[].alert_ids array of strings

Provider-side identifiers for the alert(s) this row generated. Use these to match up against check_result_ids on a related event from the events endpoint. Empty when the result is pass.

data.children array of objects

Summaries of the child adhoc checks for a group check. Empty for non-group checks. Fetch each child via the show adhoc check endpoint to get its full payload.

data.children[].uuid string (uuid)

Example: 6f9e0a8e-2b9f-4f0e-8d1a-1e2b3c4d5e6f

data.children[].check_number string

Example: Q-A1B2CD

data.children[].check_type string

Example: pep_sanction_check

data.children[].check_type_name string

Example: PEP and Sanction Screening

data.children[].status string

Lifecycle status of the child check (see AdhocCheck.status)

Enum: pending, processing, complete, failed

Example: complete

data.children[].failed_reason string or null

Short reason why the child check failed (see AdhocCheck.failed_reason)

data.children[].outcome string or null

Enum: pass, warning

Example: warning

data.children[].check_summary string or null

Short human-readable summary of the child adhoc check result (see AdhocCheck.check_summary). null while the child is pending / processing or when the child has no summary.

Example: Found 2 PEP matches

data.children[].checked_at string (date-time) or null

Example: 2025-01-01T00:00:00Z

data.details one of 11 shapes

Typed per-operation details for the check. null for group checks. The exact shape depends on the check_type and uses the same per-operation schemas as the entity checks endpoint:

  • pep_sanction_check - see CheckDetailsPepSanction
  • adverse_media - see CheckDetailsAdverseMedia
  • adc_check - see CheckDetailsAdc
  • adc_custodian_check - see CheckDetailsAdcCustodian
  • banned_disqualified_persons - see CheckDetailsBannedDisqualified
  • court_check - see CheckDetailsCourt
  • email_check - see CheckDetailsEmail
  • phone_check - see CheckDetailsPhone
  • business_check - see CheckDetailsBusiness
  • uk_business_check - see CheckDetailsUkBusiness
  • realestate_check - see CheckDetailsRealEstate
object 1
FieldDescription
subject object
subject.full_name string or null

Example: John Smith

subject.first_name string or null

Example: John

subject.middle_name string or null

Example: Albert

subject.last_name string or null

Example: Smith

subject.dob string or null

Example: 1980-06-23

subject.business_name string or null
subject.vessel_name string or null
subject.address_country string or null

Example: AU

config object
config.search_type string or null

Enum: broad_search, medium_search, narrow_search

Example: medium_search

config.similarity_threshold integer or null

Example: 80

config.pep_countries array of strings
config.sanction_countries array of strings
config.max_results integer or null

Example: 25

config.extended_result boolean

Example: true

results array of objects
results[].uuid string or null

Provider-side identifier for the match.

Example: NK-12345

results[].name string or null

Canonical name on the matched record.

Example: John Albert Smith

results[].matched_name string or null

The name (or alias) on the matched record that scored against the subject's name.

Example: J A Smith

results[].similarity number (float) or null

Match similarity score from 0.0 to 1.0 (1.0 is an exact match). null for some extended-result records where similarity is not produced.

Example: 0.95

results[].is_pep boolean

True when the matched record is on a PEP list.

Example: true

results[].is_sanctioned boolean

True when the matched record is on a sanctions list.

Example: false

results[].pep_matches array of objects

Per-list PEP source records that contributed to this match (e.g. country lists, international PEP databases). Shape varies by source.

results[].sanction_matches array of objects

Per-list sanction source records that contributed to this match (e.g. UN, OFAC, DFAT). Shape varies by source.

results[].record object

Top-level metadata about the matched record.

results[].record.id string or null

Example: Q12345

results[].record.caption string or null

Display name for the matched record.

Example: John Albert Smith

results[].record.schema string or null

What the matched record represents (e.g. Person, Vessel, Organization). See the upstream OpenSanctions documentation for the full vocabulary.

Example: Person

results[].record.first_seen string (date-time) or null

Example: 2018-01-01T00:00:00Z

results[].record.last_seen string (date-time) or null

Example: 2025-01-01T00:00:00Z

results[].record.last_change string (date-time) or null

Example: 2024-12-01T00:00:00Z

results[].properties object

Known properties of the matched record. Most fields are arrays because the matched record can carry multiple values (e.g. multiple birthdates, multiple aliases).

results[].properties.birth_date array of strings
results[].properties.death_date array of strings
results[].properties.gender array of strings
results[].properties.nationality array of strings
results[].properties.citizenship array of strings
results[].properties.birth_place array of strings
results[].properties.aliases array of strings
results[].properties.positions array of strings
results[].properties.phone array of strings
results[].properties.email array of strings
results[].properties.address array of strings
results[].properties.education array of strings
results[].properties.religion array of strings
results[].properties.notes array of strings
results[].properties.wikidata_id array of strings
results[].properties.source_urls array of strings
results[].properties.websites array of strings
object 2
FieldDescription
subject object
subject.first_name string or null
subject.middle_name string or null
subject.last_name string or null
subject.dob string or null
subject.business_name string or null
subject.address_country string or null
config object or null

Adverse media checks have no configurable options.

results array of objects
results[].name string or null

Example: John A Smith

results[].age string or null

Example: 45

results[].location string or null

Example: Sydney, AU

results[].summary string or null

Example: Local businessman charged with fraud...

results[].links array of strings
results[].categories array of strings

Categories assigned to the matched coverage (e.g. financial_crime, violent_crime, regulatory_action, terrorism). See the portal for the full category list.

object 3
FieldDescription
subject object
subject.first_name string or null
subject.middle_name string or null
subject.last_name string or null
subject.dob string or null
subject.address_state string or null
config object or null

ADC checks have no configurable options.

results array of objects
results[].reference string or null

Reference for the matched death record.

Example: ADC-12345

results[].first_name string or null

Example: John

results[].middle_name string or null

Example: Albert

results[].last_name string or null

Example: Smith

results[].date_of_birth string or null

Example: 1940-06-23

results[].date_of_death string or null

Example: 2024-01-15

results[].date_of_death_range string or null

Approximate date-of-death range when an exact date is not available (e.g. "2024-01" or "2024").

results[].state string or null

Example: NSW

object 4
FieldDescription
subject object
subject.first_name string or null
subject.middle_name string or null
subject.last_name string or null
subject.dob string or null
subject.address_state string or null
config object or null
results array of objects
results[].reference string or null

Reference for the matched death record.

Example: ADC-12345

results[].first_name string or null

Example: John

results[].middle_name string or null

Example: Albert

results[].last_name string or null

Example: Smith

results[].date_of_birth string or null

Example: 1940-06-23

results[].date_of_death string or null

Example: 2024-01-15

results[].date_of_death_range string or null

Approximate date-of-death range when an exact date is not available (e.g. "2024-01" or "2024").

results[].state string or null

Example: NSW

object 5
FieldDescription
subject object
subject.first_name string or null
subject.middle_name string or null
subject.last_name string or null
subject.address_state string or null
subject.address_country string or null
config object
config.search_type string or null

Enum: broad_search, medium_search, narrow_search

Example: medium_search

config.similarity_threshold integer or null

Example: 80

config.banned_types array of strings

The banned-type registers the check was configured to look at. Empty array means all registers.

Enum: afs_banned_disqualified, banned_futures, banned_securities, credit_banned_disqualified, disqualified_director, disqualified_smsf, ato_disqualified_trustee

results array of objects
results[].first_name string or null
results[].middle_name string or null
results[].last_name string or null
results[].banned_type string or null

Which banned-type register the match came from (see config.banned_types).

Example: disqualified_director

results[].start_date string or null

Example: 2022-04-01

results[].end_date string or null

Example: 2027-04-01

results[].document_number string or null

Provider-side document identifier for the matched record.

Example: ASIC-12345

results[].address object
results[].address.suburb string or null

Example: Sydney

results[].address.postcode string or null

Example: 2000

results[].address.state string or null

Example: NSW

results[].address.country string or null

Example: AU

results[].comments string or null

Example: Disqualified for 5 years following insolvent trading.

results[].source_url string or null

Example: https://asic.gov.au/example

object 6
FieldDescription
subject object
subject.first_name string or null
subject.middle_name string or null
subject.last_name string or null
subject.business_name string or null
subject.address_state string or null
config object
config.listing string or null

Enum: all, civil, criminal

Example: criminal

config.search_party string or null

Enum: any, plaintiff, defendant

Example: defendant

results array of objects
results[].name string or null
results[].cases array of objects
results[].cases[].case_no string or null

Example: 2023/00123456

results[].cases[].listing string or null

Enum: all, civil, criminal

Example: criminal

results[].cases[].state string or null

Example: NSW

results[].cases[].records array of objects

One entry per listing or hearing recorded for the case.

results[].cases[].records[].date string or null

Example: 2023-05-12

results[].cases[].records[].case_title string or null

Example: R v SMITH John

results[].cases[].records[].case_no string or null

Example: 2023/00123456

results[].cases[].records[].court string or null

Example: Local Court

results[].cases[].records[].state string or null

Example: NSW

results[].cases[].records[].location string or null

Example: Downing Centre

results[].cases[].records[].court_room string or null

Example: Court 4.3

results[].cases[].records[].listing_type string or null

Example: Mention

results[].cases[].records[].additional_info string or null
results[].cases[].records[].additional_info_1 string or null
results[].cases[].records[].additional_info_2 string or null
results[].cases[].records[].additional_info_3 string or null
results[].cases[].records[].misc string or null
results[].cases[].records[].misc_1 string or null
results[].cases[].records[].misc_2 string or null
results[].cases[].records[].misc_3 string or null
results[].cases[].records[].misc_4 string or null
results[].cases[].records[].misc_5 string or null
results[].cases[].records[].misc_6 string or null
results[].cases[].records[].misc_7 string or null
results[].cases[].records[].misc_8 string or null
results[].cases[].records[].misc_9 string or null
object 7
FieldDescription
subject object
subject.emails array of strings

The email addresses on the entity at the time of the check.

config object or null

Email checks have no configurable options.

results array of objects
results[].email string or null

Example: jane@example.com

results[].ping_result string or null

Raw ping result from the verification provider:

  • Y - deliverable
  • N - undeliverable
  • U - undetermined
  • I - invalid

Enum: Y, N, U, I

Example: Y

results[].info string or null

Raw info field from the verification provider, typically of the form "<category>: <detail>".

Example: Deliverable:

results[].result_status string or null

Parsed top-level status:

  • valid, invalid, catch-all, spamtrap, abuse, do_not_mail, toxic, unknown

Example: valid

results[].result_sub_status string or null

Parsed sub-status providing additional detail on the result (e.g. does_not_accept_mail, mailbox_not_found, role_based, disposable).

Example:

results[].result_label string or null

Display-friendly label for the status (e.g. "Valid", "Mailbox not found").

Example: Valid

results[].result_description string or null

Human-readable description of what the status means.

Example: This email address has been verified as valid and deliverable.

results[].ok_to_send string or null

Convenience flag indicating whether it is safe to send email to this address:

  • Y - safe to send
  • N - do not send
  • U - unknown (use your own judgement)

Enum: Y, N, U

Example: Y

results[].status string

Normalised per-result status used in results_overview (pass when ok_to_send is Y, fail when N, warning otherwise).

Enum: pass, warning, fail

Example: pass

object 8
FieldDescription
subject object
subject.phones array of strings

The phone numbers on the entity at the time of the check.

config object or null

Phone checks have no configurable options.

results array of objects
results[].phone string or null

Example: 0412345678

results[].ping_result string or null

Raw ping result from the verification provider:

  • C - connected
  • D - disconnected
  • U - undetermined
  • I - invalid

Enum: C, D, U, I

Example: C

results[].ping_result_label string or null

Display-friendly label for the ping result.

Example: Connected

results[].info string or null
results[].carrier string or null

Carrier the number is provisioned on, when available.

Example: Telstra

results[].geo_location string or null

Geographic location for the number, when available.

Example: Sydney, NSW

results[].status string

Normalised per-result status used in results_overview (pass when ping_result is C, fail when D or I, warning otherwise).

Enum: pass, warning, fail

Example: pass

object 9
FieldDescription
subject object
subject.business_number_type string or null

Enum: au_abn, au_acn

Example: au_abn

subject.business_number string or null

Example: 12345678901

subject.business_name string or null

Example: Acme Pty Ltd

config object
config.name_match string or null

Enum: exact, similar, no

Example: similar

config.abn_active string or null

Enum: yes, on_change, no

Example: yes

config.acn_active string or null

Enum: yes, on_change, no

Example: yes

config.gst_registered string or null

Enum: yes, on_change, no

Example: yes

config.recent_documents string or null

Enum: no, 1, 2, 3, 6, 12

Example: 3

config.recent_business_names string or null

Enum: no, 1, 2, 3, 6, 12

Example: 3

record object or null

The matched business record. null when no record was found for the supplied ABN/ACN; the sub_checks[] array will then contain a single failed record_exists entry on a non-null record value, or null here when nothing came back.

record.name string or null

Example: Acme Pty Ltd

record.type string or null

Entity type (e.g. "Australian Private Company").

Example: Australian Private Company

record.address object
record.address.locality string or null
record.address.state string or null
record.address.postcode string or null
record.name_history array of objects

All previous entity names recorded against the ABN.

record.name_history[].name string or null
record.name_history[].entity_name string or null
record.name_history[].from string or null

Example: 2010-01-15

record.name_history[].to string or null
record.abn string or null

Example: 12345678901

record.abn_status string or null

Current ABN status (active or cancelled).

Example: active

record.abn_gst_registered boolean or null

Example: true

record.business_names array of objects

All business names registered against the ABN.

record.business_names[].name string or null
record.business_names[].entity_name string or null
record.business_names[].from string or null

Example: 2010-01-15

record.business_names[].to string or null
record.acn string or null

Example: 123456789

record.acn_status string or null

Current ACN status (e.g. registered, deregistered).

Example: registered

record.asic_registration_date string or null

Example: 2010-01-15

record.asic_review_date string or null

Example: 2025-01-15

record.asic_deregistered_date string or null
record.asic_recent_documents array of objects

ASIC documents lodged against the record.

record.asic_recent_documents[].date string or null

Example: 2024-12-01

record.asic_recent_documents[].form_code string or null

Example: 484

record.asic_recent_documents[].description string or null

Example: Change to company details

record.asic_recent_documents[].document_number string or null

Example: 1A2B3C4D

record.asic_recent_documents[].sub_documents array of objects

Sub-documents associated with the parent document, when available.

record.asic_recent_business_names array of objects

Recently registered business names.

record.asic_recent_business_names[].name string or null
record.asic_recent_business_names[].entity_name string or null
record.asic_recent_business_names[].from string or null

Example: 2010-01-15

record.asic_recent_business_names[].to string or null
record.sub_checks array of objects

Per-sub-check evaluation against the matched record. Each sub-check carries its own pass/fail and mode (alert, on_change, observe) so you can tell which sub-checks contributed to the top-level outcome.

record.sub_checks[].check string or null

Which sub-check this row represents (e.g. record_exists, name_match, abn_active, acn_active, gst_registered, recent_documents, recent_business_names).

Example: abn_active

record.sub_checks[].passed boolean or null

true when the sub-check passed, false when it failed, null when the sub-check had no data to evaluate (e.g. acn_active on a record with no ACN).

Example: true

record.sub_checks[].result string or null

Human-readable result message for the sub-check.

Example: ABN active

record.sub_checks[].mode string or null

Enum: alert, on_change, observe

Example: alert

record.sub_checks[].document_numbers array of strings

Document numbers contributing to a recent_documents sub-check.

record.sub_checks[].business_names array of strings

Business names contributing to a recent_business_names sub-check.

object 10
FieldDescription
subject object
subject.business_number_type string or null

Enum: uk_crn

Example: uk_crn

subject.business_number string or null

Example: 12345678

subject.business_name string or null

Example: Acme Limited

config object
config.name_match string or null

Enum: exact, similar, no

Example: similar

config.company_status string or null

Enum: yes, on_change, no

Example: yes

config.recent_filings string or null

Enum: no, 1, 2, 3, 6, 12

Example: 3

config.officer_changes string or null

Enum: no, 1, 2, 3, 6, 12

Example: 3

config.registered_address_change string or null

Enum: on_change, no

Example: on_change

config.sic_codes_change string or null

Enum: on_change, no

Example: on_change

record object or null
record.company_name string or null

Example: Acme Limited

record.company_number string or null

Example: 12345678

record.company_status string or null

Current company status (e.g. active, dissolved, liquidation).

Example: active

record.type string or null

Example: ltd

record.registered_office_address object (dynamic) or null

Registered office address record from Companies House. The shape mirrors the upstream object and is exposed as-is.

record.date_of_creation string or null

Example: 2010-04-01

record.date_of_cessation string or null
record.previous_company_names array of objects
record.sic_codes array of strings
record.officers array of objects
record.officers[].name string or null

Example: SMITH, John Albert

record.officers[].appointed_on string or null

Example: 2010-04-01

record.officers[].resigned_on string or null
record.officers[].officer_id string or null

Example: abcDEF123

record.officers[].officer_role string or null

Example: director

record.filing_history array of objects
record.filing_history[].date string or null

Example: 2024-12-01

record.filing_history[].type string or null

Example: AA

record.filing_history[].description string or null

Example: accounts-with-accounts-type-small

record.filing_history[].transaction_id string or null

Example: MzM5OTQ0NzU4MGFkaXF6a2N4

record.filing_history[].document_id string or null

Example: MzM5OTQ0NzU4MGFkaXF6a2N4

record.sub_checks array of objects
record.sub_checks[].check string or null

Which sub-check this row represents (e.g. record_exists, name_match, company_status, recent_filings, officer_changes, registered_address_change, sic_codes_change).

Example: company_status

record.sub_checks[].passed boolean or null
record.sub_checks[].result string or null
record.sub_checks[].mode string or null

Enum: alert, on_change, observe

record.sub_checks[].filing_ids array of strings

Filing IDs contributing to a recent_filings sub-check.

record.sub_checks[].officer_ids array of strings

Officer IDs contributing to an officer_changes sub-check.

record.sub_checks[].address_hash string or null

Stable hash of the registered office address used by registered_address_change to detect changes between runs.

record.sub_checks[].sic_hash string or null

Stable hash of the SIC codes used by sic_codes_change.

object 11
FieldDescription
subject object
subject.address_country string or null

Example: AU

subject.address_line1 string or null

Example: 12 Main St

subject.address_line2 string or null
subject.address_suburb string or null

Example: Sydney

subject.address_state string or null

Example: NSW

subject.address_postcode string or null

Example: 2000

config object
config.date_from string or null

Optional lower bound (inclusive) on listing dates returned.

Example: 2020-01-01

results array of objects
results[].address object
results[].address.address string or null

Example: 12 Main St

results[].address.suburb string or null

Example: Sydney

results[].address.state string or null

Example: NSW

results[].address.postcode string or null

Example: 2000

results[].address.address_id string or null

Example: rea-12345

results[].listings array of objects
results[].listings[].listing_type string or null

Type of listing (e.g. sale, rent, sold). Vocabulary mirrors the upstream provider.

Example: sold

results[].listings[].date string or null

Example: 2024-08-12

results[].listings[].property_type string or null

Example: House

results[].listings[].price string or null

Example: $1,250,000

results[].listings[].num_bedrooms integer or null

Example: 4

results[].listings[].num_bathrooms integer or null

Example: 2

results[].listings[].num_car_spaces integer or null

Example: 2

results[].listings[].estate_agent string or null

Example: Sample Realty

api_reference string (uuid)
Standard error responses: 400 401 403 404 429 5XX See common error responses