Validation suite tests for supported features
Testing embedded links and iframes
If your integration includes external_resources
such as an embedded link or iframe, the URL provided in your responses also requires testing for authentication and standard use.
These tests are as follows:
Request to your URL is not signed.
The status code to this should be a 400.
Request to your URL is incorrectly signed; this is tested twice.
The status code to this should be a 404.
Request to your URL is missing query parameters.
The status code to this should be a 400.
Sends a valid request to your integration, correctly signed.
This status code to this should be a 200.
Request to your URL is outside the
valid_until
period.The status code to this should be a 404.
Note
Valid requests to your URL should return a 200 status code as normal.
Testing company search
If your integration has added COMPANY_SEARCH
as a supported_features
item on its /config
endpoint, the validation suite also tests that your integration is working correctly. Requests are sent to the /search
endpoint rather than /checks
and runs tests with the following demo_result
values.
NO_HITS
You can return the following:
{ "search_output": [], "errors": [], "warnings": [], "provider_data": "Demo result. Did not make request to provider." }
ONE_HIT
You can return the following:
{ "search_output": [ { "name": "MAXSIGHT", "number": "09565115", "country_of_incorporation": "GBR", "status": "ACTIVE", "provider_reference": { "label": "COMPANY_DATA_REFERENCE_INTEGRATION", "reference": "GB-09565115" } } ], "errors": [], "warnings": [], "provider_data": "Demo result. Did not make request to provider." }
MANY_HITS
You can return the following:
{ "search_output": [ { "name": "MAXSIGHT", "number": "09565115", "number_label": "Company Number", "country_of_incorporation": "GBR", "status": "ACTIVE", "provider_reference": { "label": "COMPANY_DATA_REFERENCE_INTEGRATION", "reference": "GB-09565115" }, "addresses": [ { "type": "registered_address", "address": { "type": "STRUCTURED", "route": "MEZZANINE FLOOR 24 CORNHILL", "postal_code": "EC3V 3ND", "original_freeform_address": "MEZZANINE FLOOR 24 CORNHILL, EC3V 3ND, LONDON, United Kingdom", "locality": "LONDON", "country": "GBR", "address_lines": [ "MEZZANINE FLOOR 24 CORNHILL" ] } } ], "contact": { "url": "www.maxsight.com", "phone_number": "+44 20 3633 1761", "email": "info@maxsight.com" }, "incorporation_date": "2022-10-11", "structure_type": { "is_public": false, "is_limited": true, "ownership_type": "COMPANY" }, "lei": "SOMELEI123123", "tax_ids": [ { "value": "n.a.", "tax_id_type": "EUROVAT" } ] }, { "name": "MAXSITE PROPERTIES LIMITED", "number": "03852680", "number_label": "Company Number", "country_of_incorporation": "GBR", "status": "DORMANT", "provider_reference": { "label": "COMPANY_DATA_REFERENCE_INTEGRATION", "reference": "GB-03852680" }, "addresses": [ { "type": "registered_address", "address": { "type": "FREEFORM", "text": "PASSFORD HOUSE, PASSFORD HOUSE, LOWER KINGSDOWN ROAD, KINGSDOWN", "country": "GBR" } } ], "lei": "MAXSITELEI" }, { "name": "MAXSITE PROPERTY DEVELOPMENT", "number": "048521723", "country_of_incorporation": "GBR", "status": "DISSOLVED", "provider_reference": { "label": "COMPANY_DATA_REFERENCE_INTEGRATION", "reference": "GB-03852680" } } ], "errors": [], "warnings": [], "provider_data": "Demo result. Did not make request to provider." }
Testing custom output data
If you've specified support for CUSTOM_DATA_OUTPUT
in your /config
endpoint, this is tested in the validation suite.
The demo_result
value is CUSTOM_DATA_OUTPUT
, and your response should return a valid response that contains the properly formatted custom data that matches the schema that you specified in your /config
endpoint.
To learn more, see Add custom data output.
For example, if your /config
endpoint response looked like:
{ "check_type": "COMPANY_DATA", "check_template": { "type": "ONE_TIME_SYNCHRONOUS", "timeout": 240 }, "pricing": { "supports_reselling": false }, "supported_countries": ["GBR", "CAN", "USA"], "supported_features": [ "COMPANY_SEARCH", "CUSTOM_DATA_OUTPUT", ], "credentials": { "fields": [ { "type": "string", "name": "username", "label": "Username" }, { "type": "password", "name": "password", "label": "Password" } ] }, "config": { "fields": [] }, "output_custom_fields": { "version": "1", "fields": { "n_esg_score": { "type": "DECIMAL", "label": "ESG Score" }, "n_esg_e_score": { "type": "DECIMAL", "label": "ESG Environment Sub-score" }, "n_esg_s_score": { "type": "DECIMAL", "label": "ESG Social Sub-score" }, "b_product_assessment": { "type": "BOOLEAN", "label": "Passes ESG assessment" } } } } }
A valid response, if using a custom check type, might be:
{ "provider_data": "Made up example response.", "errors": [], "warnings": [], "external_resources": [], "result": { "decision": "PASS", "summary": "The overall result is a pass." }, "check_output": { "entity_type": "INDIVIDUAL", "custom_fields_data": { "n_esg_score": 123.4, "n_esg_e_score": 43, "n_esg_s_score": 1.13, "b_product_assessment": true } } }