curl --request GET \
--url https://rest.kyckr.com/core/company/profile/{countryISO}/{companyCode} \
--header 'Authorization: <api-key>'import requests
url = "https://rest.kyckr.com/core/company/profile/{countryISO}/{companyCode}"
headers = {"Authorization": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: '<api-key>'}};
fetch('https://rest.kyckr.com/core/company/profile/{countryISO}/{companyCode}', 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://rest.kyckr.com/core/company/profile/{countryISO}/{companyCode}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: <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://rest.kyckr.com/core/company/profile/{countryISO}/{companyCode}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "<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://rest.kyckr.com/core/company/profile/{countryISO}/{companyCode}")
.header("Authorization", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://rest.kyckr.com/core/company/profile/{countryISO}/{companyCode}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"companyProfileField": {
"activityField": [
{
"codeField": "63120",
"descriptionField": "Web portals"
}
],
"addressesField": [
{
"countryField": "United Kingdom",
"addressInOneLineField": "Kemp House, 160 City Road, London, United Kingdom, EC1V 2NX",
"addressLine1Field": "Kemp House",
"addressLine2Field": "160 City Road",
"cityTownField": "London",
"postcodeField": "EC1V 2NX"
}
],
"codeField": "11655290",
"dateField": "2023-03-01T09:49:08.9919958Z",
"foundationDateField": "2018-11-01",
"legalFormField": "ltd",
"legalStatusField": "active",
"nameField": "NewCo UK LIMITED",
"officialField": false,
"registrationAuthorityField": "Companies House, United Kingdom",
"directorAndShareDetailsField": {
"directorsField": [
{
"titleField": "Director",
"nameField": "Joe Bloggs",
"address1Field": "Kemp House 160 City Road",
"address2Field": "",
"address3Field": "London",
"address4Field": "",
"address5Field": "",
"address6Field": "",
"postcodeField": "EC1V 2NX",
"birthdateField": "1960-06-01",
"nationalityField": "",
"appointedOnField": "2019-10-02",
"directorshipsField": [
{
"companyNumberField": "06419578",
"companyNameField": "OLDCO PLC",
"companyStatusField": "Active - Accounts Filed",
"functionField": "Director",
"appointedDateField": "2020-04-20"
}
]
},
{
"titleField": "Director",
"nameField": "Jane Bloggs",
"address1Field": "Kemp House 160 City Road",
"address2Field": "",
"address3Field": "London",
"address4Field": "",
"address5Field": "",
"address6Field": "",
"postcodeField": "EC1V 2NX",
"birthdateField": "1981-01-01",
"nationalityField": "Australian",
"appointedOnField": "2022-11-04",
"directorshipsField": []
},
{
"titleField": "Director",
"nameField": "John Bloggs",
"address1Field": "Kemp House 160 City Road",
"address2Field": "",
"address3Field": "London",
"address4Field": "",
"address5Field": "",
"address6Field": "",
"postcodeField": "EC1V 2NX",
"birthdateField": "1973-09-01",
"nationalityField": "Australian",
"appointedOnField": "2022-11-04",
"directorshipsField": []
}
],
"shareHoldersField": [
{
"nameField": "OLDCO PLC",
"percentageField": "100",
"allInfoField": "1.00 ORDINARY GBP 1.00",
"currencyField": "GBP",
"nominalValueField": "1",
"shareCountField": 1,
"shareTypeField": "ORDINARY",
"shareholderTypeField": "Company",
"totalShareCountField": 1,
"totalShareValueField": 1,
"totalSharesField": 1
}
],
"personsOfSignificantControlField": [
{
"natureOfControlField": [
"ownership-of-shares-75-to-100-percent",
"voting-rights-75-to-100-percent",
"right-to-appoint-and-remove-directors"
],
"nameField": "Jim Bloggs",
"kindField": "individual-person-with-significant-control",
"nationalityField": "Australian",
"countryOfResidenceField": "Australia",
"addressField": "1, Main Street, 2015, Alexandria, Nsw, Australia",
"notifiedOnField": "2022-11-18",
"dOBDayField": 1,
"dOBMonthField": 12,
"dOBYearField": 1954
}
],
"shareHolderSummaryField": {
"shareCapitalField": "1"
}
}
},
"transactionIdField": "9039815",
"retrievalLocationField": "https://download.kyckr.com",
"responseCodeField": "100"
}{
"orderId": 123,
"estimatedCompletion": "2023-11-07T05:31:56Z",
"customerReference": "<string>"
}Enhanced Profile
Retrieve an enhanced company profile. The server holds the connection for up to approximately 40 seconds. If the profile is ready within that time, it is returned with HTTP 200. If not, HTTP 202 is returned with a numeric orderId. Poll GET /core/filing/order-status/ (e.g. orderedWithin=1 for orders from the last day) and match the productOrderIdField in each returned item against the orderId. When the matching item’s statusField indicates completion, retrieve the profile from urlField or structuredDataUrlField. You will need the code field (this can be retrieved from the company search by name), ISO country code of the registry and registration authority code (where populated). From this you will be able to retrieve an enhanced company profile (in structured XML/JSON form) containing Registry Information, Capital Structure, Company Officials, Shareholders and UBOs (where available).
curl --request GET \
--url https://rest.kyckr.com/core/company/profile/{countryISO}/{companyCode} \
--header 'Authorization: <api-key>'import requests
url = "https://rest.kyckr.com/core/company/profile/{countryISO}/{companyCode}"
headers = {"Authorization": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: '<api-key>'}};
fetch('https://rest.kyckr.com/core/company/profile/{countryISO}/{companyCode}', 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://rest.kyckr.com/core/company/profile/{countryISO}/{companyCode}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: <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://rest.kyckr.com/core/company/profile/{countryISO}/{companyCode}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "<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://rest.kyckr.com/core/company/profile/{countryISO}/{companyCode}")
.header("Authorization", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://rest.kyckr.com/core/company/profile/{countryISO}/{companyCode}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"companyProfileField": {
"activityField": [
{
"codeField": "63120",
"descriptionField": "Web portals"
}
],
"addressesField": [
{
"countryField": "United Kingdom",
"addressInOneLineField": "Kemp House, 160 City Road, London, United Kingdom, EC1V 2NX",
"addressLine1Field": "Kemp House",
"addressLine2Field": "160 City Road",
"cityTownField": "London",
"postcodeField": "EC1V 2NX"
}
],
"codeField": "11655290",
"dateField": "2023-03-01T09:49:08.9919958Z",
"foundationDateField": "2018-11-01",
"legalFormField": "ltd",
"legalStatusField": "active",
"nameField": "NewCo UK LIMITED",
"officialField": false,
"registrationAuthorityField": "Companies House, United Kingdom",
"directorAndShareDetailsField": {
"directorsField": [
{
"titleField": "Director",
"nameField": "Joe Bloggs",
"address1Field": "Kemp House 160 City Road",
"address2Field": "",
"address3Field": "London",
"address4Field": "",
"address5Field": "",
"address6Field": "",
"postcodeField": "EC1V 2NX",
"birthdateField": "1960-06-01",
"nationalityField": "",
"appointedOnField": "2019-10-02",
"directorshipsField": [
{
"companyNumberField": "06419578",
"companyNameField": "OLDCO PLC",
"companyStatusField": "Active - Accounts Filed",
"functionField": "Director",
"appointedDateField": "2020-04-20"
}
]
},
{
"titleField": "Director",
"nameField": "Jane Bloggs",
"address1Field": "Kemp House 160 City Road",
"address2Field": "",
"address3Field": "London",
"address4Field": "",
"address5Field": "",
"address6Field": "",
"postcodeField": "EC1V 2NX",
"birthdateField": "1981-01-01",
"nationalityField": "Australian",
"appointedOnField": "2022-11-04",
"directorshipsField": []
},
{
"titleField": "Director",
"nameField": "John Bloggs",
"address1Field": "Kemp House 160 City Road",
"address2Field": "",
"address3Field": "London",
"address4Field": "",
"address5Field": "",
"address6Field": "",
"postcodeField": "EC1V 2NX",
"birthdateField": "1973-09-01",
"nationalityField": "Australian",
"appointedOnField": "2022-11-04",
"directorshipsField": []
}
],
"shareHoldersField": [
{
"nameField": "OLDCO PLC",
"percentageField": "100",
"allInfoField": "1.00 ORDINARY GBP 1.00",
"currencyField": "GBP",
"nominalValueField": "1",
"shareCountField": 1,
"shareTypeField": "ORDINARY",
"shareholderTypeField": "Company",
"totalShareCountField": 1,
"totalShareValueField": 1,
"totalSharesField": 1
}
],
"personsOfSignificantControlField": [
{
"natureOfControlField": [
"ownership-of-shares-75-to-100-percent",
"voting-rights-75-to-100-percent",
"right-to-appoint-and-remove-directors"
],
"nameField": "Jim Bloggs",
"kindField": "individual-person-with-significant-control",
"nationalityField": "Australian",
"countryOfResidenceField": "Australia",
"addressField": "1, Main Street, 2015, Alexandria, Nsw, Australia",
"notifiedOnField": "2022-11-18",
"dOBDayField": 1,
"dOBMonthField": 12,
"dOBYearField": 1954
}
],
"shareHolderSummaryField": {
"shareCapitalField": "1"
}
}
},
"transactionIdField": "9039815",
"retrievalLocationField": "https://download.kyckr.com",
"responseCodeField": "100"
}{
"orderId": 123,
"estimatedCompletion": "2023-11-07T05:31:56Z",
"customerReference": "<string>"
}Authorizations
Path Parameters
2-digit ISO country code
Retrieved from search results "codeField" attribute
Query Parameters
Registration Authority string from search query
Optional client order reference
Where supported (currently GB/UK only), includes additional directorship information for each director, showing other companies where the director holds positions. When set to true, the directorships array will be populated for each director.