Plan a company screening
curl --request GET \
--url https://lens-api.tic.io/screening/companies/{companyId}/plan \
--header 'x-api-key: <api-key>'import requests
url = "https://lens-api.tic.io/screening/companies/{companyId}/plan"
headers = {"x-api-key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'x-api-key': '<api-key>'}};
fetch('https://lens-api.tic.io/screening/companies/{companyId}/plan', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://lens-api.tic.io/screening/companies/{companyId}/plan",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"x-api-key: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://lens-api.tic.io/screening/companies/{companyId}/plan"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-api-key", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://lens-api.tic.io/screening/companies/{companyId}/plan")
.header("x-api-key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://lens-api.tic.io/screening/companies/{companyId}/plan")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["x-api-key"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"companyId": 123,
"subjects": [
{
"subjectKey": "<string>",
"type": "person",
"personId": 123,
"companyId": 123,
"name": "<string>",
"identityNumber": "<string>",
"birthDate": "<string>",
"citizenshipCountryCode": "<string>",
"isTarget": true,
"notScreenedReason": "protectedIdentity",
"selected": true,
"selectable": true,
"roles": [
{
"group": "target",
"code": "<string>",
"description": "<string>",
"extentCode": "<string>",
"extentDescription": "<string>",
"positionStart": "2023-11-07T05:31:56Z"
}
]
}
],
"unitPrice": 123,
"companyOnlyPrice": 123,
"currency": "<string>",
"beneficialOwnerStatus": "<string>",
"beneficialOwnerStatusDescription": "<string>",
"reusable": {
"screeningId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"screenedAtUtc": "2023-11-07T05:31:56Z",
"documentOrderGuid": "3c90c3cc-0d44-4b50-8888-8dd25736052a"
}
}Screening
Plan a company screening
Who a company screening would include, with their positions and, for beneficial owners, the extent and kind of control, and what it costs. Nothing is sent or billed. Screen a selection by sending the subjectKeys in subjects to POST /screening/companies/{companyId}.
GET
/
screening
/
companies
/
{companyId}
/
plan
Plan a company screening
curl --request GET \
--url https://lens-api.tic.io/screening/companies/{companyId}/plan \
--header 'x-api-key: <api-key>'import requests
url = "https://lens-api.tic.io/screening/companies/{companyId}/plan"
headers = {"x-api-key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'x-api-key': '<api-key>'}};
fetch('https://lens-api.tic.io/screening/companies/{companyId}/plan', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://lens-api.tic.io/screening/companies/{companyId}/plan",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"x-api-key: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://lens-api.tic.io/screening/companies/{companyId}/plan"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-api-key", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://lens-api.tic.io/screening/companies/{companyId}/plan")
.header("x-api-key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://lens-api.tic.io/screening/companies/{companyId}/plan")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["x-api-key"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"companyId": 123,
"subjects": [
{
"subjectKey": "<string>",
"type": "person",
"personId": 123,
"companyId": 123,
"name": "<string>",
"identityNumber": "<string>",
"birthDate": "<string>",
"citizenshipCountryCode": "<string>",
"isTarget": true,
"notScreenedReason": "protectedIdentity",
"selected": true,
"selectable": true,
"roles": [
{
"group": "target",
"code": "<string>",
"description": "<string>",
"extentCode": "<string>",
"extentDescription": "<string>",
"positionStart": "2023-11-07T05:31:56Z"
}
]
}
],
"unitPrice": 123,
"companyOnlyPrice": 123,
"currency": "<string>",
"beneficialOwnerStatus": "<string>",
"beneficialOwnerStatusDescription": "<string>",
"reusable": {
"screeningId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"screenedAtUtc": "2023-11-07T05:31:56Z",
"documentOrderGuid": "3c90c3cc-0d44-4b50-8888-8dd25736052a"
}
}Pro+ tier
Lists everyone a company screening can include, without screening anyone or placing an order: the company, its board, management, signatories, liquidators, partners, beneficial owners, the companies in the ownership chain and the auditors. Requires the
pep scope on the API key.
Each subject has a subjectKey, its roles (the registered position, or for a beneficial owner the extent and kind of control) and selected, which says whether a screening includes it by default (everyone but auditors). The company itself has isTarget true and is always screened. Subjects that cannot be screened (a protected identity, or no name or identity number) have notScreenedReason and cost nothing.
To screen a selection, send the chosen subjectKey values in subjects to Screen a company. The price is unitPrice per screened person or company, or companyOnlyPrice when only the company is screened. reusable is set when the default selection was screened in the last 24 hours: sending that selection returns the earlier result at no cost. See Choosing who to screen.Authorizations
Path Parameters
Internal company ID
Query Parameters
Price and reuse as in the supplier's test environment