curl -X POST 'https://verification.didit.me/v3/session/33333333-4444-5555-6666-777777777777/kyb/parties/0a3f1e2c-7c2f-4a1b-9d55-2f8d2a5d6b41/regenerate/' \
-H 'x-api-key: YOUR_API_KEY'import os
import requests
session_id = '33333333-4444-5555-6666-777777777777'
party_uuid = '0a3f1e2c-7c2f-4a1b-9d55-2f8d2a5d6b41'
resp = requests.post(
f'https://verification.didit.me/v3/session/{session_id}/kyb/parties/{party_uuid}/regenerate/',
headers={'x-api-key': os.environ['DIDIT_API_KEY']},
timeout=10,
)
resp.raise_for_status()
party = resp.json()
print(party['kyc_session_id'], party['kyc_session_status'])const sessionId = '33333333-4444-5555-6666-777777777777';
const partyUuid = '0a3f1e2c-7c2f-4a1b-9d55-2f8d2a5d6b41';
const resp = await fetch(`https://verification.didit.me/v3/session/${sessionId}/kyb/parties/${partyUuid}/regenerate/`, {
method: 'POST',
headers: { 'x-api-key': process.env.DIDIT_API_KEY },
});
if (!resp.ok) throw new Error(`Regenerate failed: ${resp.status}`);
const party = await resp.json();
console.log(party.kyc_session_id, party.kyc_session_status);<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://verification.didit.me/v3/session/{sessionId}/kyb/parties/{partyUuid}/regenerate/",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
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://verification.didit.me/v3/session/{sessionId}/kyb/parties/{partyUuid}/regenerate/"
req, _ := http.NewRequest("POST", 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.post("https://verification.didit.me/v3/session/{sessionId}/kyb/parties/{partyUuid}/regenerate/")
.header("x-api-key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://verification.didit.me/v3/session/{sessionId}/kyb/parties/{partyUuid}/regenerate/")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["x-api-key"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"uuid": "0a3f1e2c-7c2f-4a1b-9d55-2f8d2a5d6b41",
"entity_type": "person",
"source": "USER",
"name": "Jane Smith",
"first_name": "Jane",
"last_name": "Smith",
"company_name": null,
"registration_number": null,
"email": "user@example.com",
"nationality": "GB",
"phone_number": null,
"date_of_birth": "1980-05-04",
"position": "Director",
"custom_fields": {},
"is_active": true,
"is_skipped": false,
"requires_verification": true,
"roles": [
{
"role": "director",
"ownership_percent": null,
"voting_percent": null
}
],
"kyc_session_id": "55555555-6666-7777-8888-999999999999",
"kyc_session_status": "Not Started",
"kyc_session_url": "https://verify.didit.me/session/abc123def456",
"kyc_session_deleted": false,
"kyb_sub_session_id": null,
"kyb_sub_session_status": null,
"kyb_sub_session_url": null,
"kyb_sub_session_deleted": false,
"verification_workflow_type": "kyc",
"verification_workflow_id": "12121212-3434-5656-7878-909090909090",
"verification_workflow_label": "Key People KYC",
"verification_workflow_features": [
{
"feature": "ID_VERIFICATION",
"status": "Not Finished"
},
{
"feature": "LIVENESS",
"status": "Not Finished"
},
{
"feature": "AML",
"status": "Not Finished"
}
],
"didit_internal_id": null
}Regenerate Key People KYC Session
Create a new individual KYC session for a KYB Key People party whose previous session was deleted, and email the person a fresh link.
curl -X POST 'https://verification.didit.me/v3/session/33333333-4444-5555-6666-777777777777/kyb/parties/0a3f1e2c-7c2f-4a1b-9d55-2f8d2a5d6b41/regenerate/' \
-H 'x-api-key: YOUR_API_KEY'import os
import requests
session_id = '33333333-4444-5555-6666-777777777777'
party_uuid = '0a3f1e2c-7c2f-4a1b-9d55-2f8d2a5d6b41'
resp = requests.post(
f'https://verification.didit.me/v3/session/{session_id}/kyb/parties/{party_uuid}/regenerate/',
headers={'x-api-key': os.environ['DIDIT_API_KEY']},
timeout=10,
)
resp.raise_for_status()
party = resp.json()
print(party['kyc_session_id'], party['kyc_session_status'])const sessionId = '33333333-4444-5555-6666-777777777777';
const partyUuid = '0a3f1e2c-7c2f-4a1b-9d55-2f8d2a5d6b41';
const resp = await fetch(`https://verification.didit.me/v3/session/${sessionId}/kyb/parties/${partyUuid}/regenerate/`, {
method: 'POST',
headers: { 'x-api-key': process.env.DIDIT_API_KEY },
});
if (!resp.ok) throw new Error(`Regenerate failed: ${resp.status}`);
const party = await resp.json();
console.log(party.kyc_session_id, party.kyc_session_status);<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://verification.didit.me/v3/session/{sessionId}/kyb/parties/{partyUuid}/regenerate/",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
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://verification.didit.me/v3/session/{sessionId}/kyb/parties/{partyUuid}/regenerate/"
req, _ := http.NewRequest("POST", 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.post("https://verification.didit.me/v3/session/{sessionId}/kyb/parties/{partyUuid}/regenerate/")
.header("x-api-key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://verification.didit.me/v3/session/{sessionId}/kyb/parties/{partyUuid}/regenerate/")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["x-api-key"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"uuid": "0a3f1e2c-7c2f-4a1b-9d55-2f8d2a5d6b41",
"entity_type": "person",
"source": "USER",
"name": "Jane Smith",
"first_name": "Jane",
"last_name": "Smith",
"company_name": null,
"registration_number": null,
"email": "user@example.com",
"nationality": "GB",
"phone_number": null,
"date_of_birth": "1980-05-04",
"position": "Director",
"custom_fields": {},
"is_active": true,
"is_skipped": false,
"requires_verification": true,
"roles": [
{
"role": "director",
"ownership_percent": null,
"voting_percent": null
}
],
"kyc_session_id": "55555555-6666-7777-8888-999999999999",
"kyc_session_status": "Not Started",
"kyc_session_url": "https://verify.didit.me/session/abc123def456",
"kyc_session_deleted": false,
"kyb_sub_session_id": null,
"kyb_sub_session_status": null,
"kyb_sub_session_url": null,
"kyb_sub_session_deleted": false,
"verification_workflow_type": "kyc",
"verification_workflow_id": "12121212-3434-5656-7878-909090909090",
"verification_workflow_label": "Key People KYC",
"verification_workflow_features": [
{
"feature": "ID_VERIFICATION",
"status": "Not Finished"
},
{
"feature": "LIVENESS",
"status": "Not Finished"
},
{
"feature": "AML",
"status": "Not Finished"
}
],
"didit_internal_id": null
}Authorizations
Your application's API key, from Developers -> API keys in the Business Console. The primary key has full access. A named key can be scoped: none, read or write per resource, limited to some workflows or to approved sessions, to a list of IP addresses, and to an expiry date. 401 means the key is missing, wrong, revoked or expired; 403 means the key has no access to this resource or action, or the request came from an address outside its IP list; 404 on a session route means the session is outside the key's workflows or statuses. A key without media access receives image, video and PDF URLs as null, and a key without sessions write receives session links and tokens as null. See https://docs.didit.me/console/api-keys.
Path Parameters
UUID of the parent Business Verification (KYB) session.
"33333333-4444-5555-6666-777777777777"
UUID of the Key People party (key_people_checks[].submitted.parties[].uuid on the business session decision). Must belong to the session referenced by sessionId.
"0a3f1e2c-7c2f-4a1b-9d55-2f8d2a5d6b41"
Response
New KYC session created. Returns the updated party with its new child session.
A Key People party of a Business Verification (KYB) session, with its child verification. The same party appears in key_people_checks[].submitted.parties[] of the business session decision.
Party identifier.
Whether the party is an individual or a company.
person, company REGISTRY: taken from the company registry. USER: entered in the Key People screen.
REGISTRY, USER Display name of the party.
Whether the party is active.
Whether the party is exempt from verification. Regenerating clears it.
Whether the role and ownership rules require a verification for this party.
Roles the party holds in the company.
Show child attributes
Show child attributes
The child KYC session was deleted, so it can never settle.
Company-party counterpart of kyc_session_deleted.
First name (persons).
Last name (persons).
Company name (company parties).
Company registration number (company parties).
Email the verification link is sent to.
Nationality for persons, country of incorporation for companies.
Phone number collected for the party.
Date of birth (persons).
Free-text job title (persons).
Workflow-defined custom fields collected for the party, keyed by field key.
Child individual KYC session (persons).
Status of the child KYC session. A deleted session keeps the status it had when it was deleted.
Not Started, In Progress, Approved, Declined, In Review, Expired, Abandoned, Kyc Expired, Resubmitted, Awaiting User, null Hosted link of the child KYC session. null when there is none or it was deleted, and for a scoped API key without sessions: write.
Child KYB session (company parties).
Status of the child KYB session.
Not Started, In Progress, Approved, Declined, In Review, Expired, Abandoned, Kyc Expired, Resubmitted, Awaiting User, null Hosted link of the child KYB session, with the same null rules as kyc_session_url.
Type of the workflow the child session runs.
kyc, kyb, adaptive_age_verification, biometric_authentication, address_verification, questionnaire_verification, email_verification, phone_verification, null Workflow the child session runs.
Label of that workflow.
Features of the child session's workflow with their current status.
Show child attributes
Show child attributes
Didit's identifier of the verified person, once known.