curl --request POST \
--url https://ivs.idenfy.com/kyb/tokens/ \
--header 'Authorization: Basic <encoded-value>' \
--header 'Content-Type: application/json' \
--data '
{
"clientId": "<string>",
"lifetime": 3600,
"externalRef": "<string>",
"flow": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"theme": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"questionnaire": "<string>",
"questionnaireRequired": true,
"tags": [],
"scanRefs": [
"<string>"
]
}
'import requests
url = "https://ivs.idenfy.com/kyb/tokens/"
payload = {
"clientId": "<string>",
"lifetime": 3600,
"externalRef": "<string>",
"flow": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"theme": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"questionnaire": "<string>",
"questionnaireRequired": True,
"tags": [],
"scanRefs": ["<string>"]
}
headers = {
"Authorization": "Basic <encoded-value>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Basic <encoded-value>', 'Content-Type': 'application/json'},
body: JSON.stringify({
clientId: '<string>',
lifetime: 3600,
externalRef: '<string>',
flow: '3c90c3cc-0d44-4b50-8888-8dd25736052a',
theme: '3c90c3cc-0d44-4b50-8888-8dd25736052a',
questionnaire: '<string>',
questionnaireRequired: true,
tags: [],
scanRefs: ['<string>']
})
};
fetch('https://ivs.idenfy.com/kyb/tokens/', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));HttpResponse<String> response = Unirest.post("https://ivs.idenfy.com/kyb/tokens/")
.header("Authorization", "Basic <encoded-value>")
.header("Content-Type", "application/json")
.body("{\n \"clientId\": \"<string>\",\n \"lifetime\": 3600,\n \"externalRef\": \"<string>\",\n \"flow\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"theme\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"questionnaire\": \"<string>\",\n \"questionnaireRequired\": true,\n \"tags\": [],\n \"scanRefs\": [\n \"<string>\"\n ]\n}")
.asString();<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://ivs.idenfy.com/kyb/tokens/",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'clientId' => '<string>',
'lifetime' => 3600,
'externalRef' => '<string>',
'flow' => '3c90c3cc-0d44-4b50-8888-8dd25736052a',
'theme' => '3c90c3cc-0d44-4b50-8888-8dd25736052a',
'questionnaire' => '<string>',
'questionnaireRequired' => true,
'tags' => [
],
'scanRefs' => [
'<string>'
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: Basic <encoded-value>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}require 'uri'
require 'net/http'
url = URI("https://ivs.idenfy.com/kyb/tokens/")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Basic <encoded-value>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"clientId\": \"<string>\",\n \"lifetime\": 3600,\n \"externalRef\": \"<string>\",\n \"flow\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"theme\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"questionnaire\": \"<string>\",\n \"questionnaireRequired\": true,\n \"tags\": [],\n \"scanRefs\": [\n \"<string>\"\n ]\n}"
response = http.request(request)
puts response.read_bodyusing RestSharp;
var options = new RestClientOptions("https://ivs.idenfy.com/kyb/tokens/");
var client = new RestClient(options);
var request = new RestRequest("");
request.AddHeader("Authorization", "Basic <encoded-value>");
request.AddJsonBody("{\n \"clientId\": \"<string>\",\n \"lifetime\": 3600,\n \"externalRef\": \"<string>\",\n \"flow\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"theme\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"questionnaire\": \"<string>\",\n \"questionnaireRequired\": true,\n \"tags\": [],\n \"scanRefs\": [\n \"<string>\"\n ]\n}", false);
var response = await client.PostAsync(request);
Console.WriteLine("{0}", response.Content);
package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://ivs.idenfy.com/kyb/tokens/"
payload := strings.NewReader("{\n \"clientId\": \"<string>\",\n \"lifetime\": 3600,\n \"externalRef\": \"<string>\",\n \"flow\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"theme\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"questionnaire\": \"<string>\",\n \"questionnaireRequired\": true,\n \"tags\": [],\n \"scanRefs\": [\n \"<string>\"\n ]\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Basic <encoded-value>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}val client = OkHttpClient()
val mediaType = MediaType.parse("application/json")
val body = RequestBody.create(mediaType, "{\n \"clientId\": \"<string>\",\n \"lifetime\": 3600,\n \"externalRef\": \"<string>\",\n \"flow\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"theme\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"questionnaire\": \"<string>\",\n \"questionnaireRequired\": true,\n \"tags\": [],\n \"scanRefs\": [\n \"<string>\"\n ]\n}")
val request = Request.Builder()
.url("https://ivs.idenfy.com/kyb/tokens/")
.post(body)
.addHeader("Authorization", "Basic <encoded-value>")
.addHeader("Content-Type", "application/json")
.build()
val response = client.newCall(request).execute()import Foundation
let parameters = [
"clientId": "<string>",
"lifetime": 3600,
"externalRef": "<string>",
"flow": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"theme": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"questionnaire": "<string>",
"questionnaireRequired": true,
"tags": [],
"scanRefs": ["<string>"]
] as [String : Any?]
let postData = try JSONSerialization.data(withJSONObject: parameters, options: [])
let url = URL(string: "https://ivs.idenfy.com/kyb/tokens/")!
var request = URLRequest(url: url)
request.httpMethod = "POST"
request.timeoutInterval = 10
request.allHTTPHeaderFields = [
"Authorization": "Basic <encoded-value>",
"Content-Type": "application/json"
]
request.httpBody = postData
let (data, _) = try await URLSession.shared.data(for: request)
print(String(decoding: data, as: UTF8.self)){
"tokenType": "FORM",
"tokenString": "<string>",
"expiration": "2023-11-07T05:31:56Z",
"isActive": true,
"isValid": true,
"companyId": "<string>",
"clientId": "<string>",
"externalRef": "<string>",
"locale": "en",
"flow": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"theme": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"tags": [],
"scanRefs": [
"<string>"
]
}Generate KYB form token
curl --request POST \
--url https://ivs.idenfy.com/kyb/tokens/ \
--header 'Authorization: Basic <encoded-value>' \
--header 'Content-Type: application/json' \
--data '
{
"clientId": "<string>",
"lifetime": 3600,
"externalRef": "<string>",
"flow": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"theme": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"questionnaire": "<string>",
"questionnaireRequired": true,
"tags": [],
"scanRefs": [
"<string>"
]
}
'import requests
url = "https://ivs.idenfy.com/kyb/tokens/"
payload = {
"clientId": "<string>",
"lifetime": 3600,
"externalRef": "<string>",
"flow": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"theme": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"questionnaire": "<string>",
"questionnaireRequired": True,
"tags": [],
"scanRefs": ["<string>"]
}
headers = {
"Authorization": "Basic <encoded-value>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Basic <encoded-value>', 'Content-Type': 'application/json'},
body: JSON.stringify({
clientId: '<string>',
lifetime: 3600,
externalRef: '<string>',
flow: '3c90c3cc-0d44-4b50-8888-8dd25736052a',
theme: '3c90c3cc-0d44-4b50-8888-8dd25736052a',
questionnaire: '<string>',
questionnaireRequired: true,
tags: [],
scanRefs: ['<string>']
})
};
fetch('https://ivs.idenfy.com/kyb/tokens/', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));HttpResponse<String> response = Unirest.post("https://ivs.idenfy.com/kyb/tokens/")
.header("Authorization", "Basic <encoded-value>")
.header("Content-Type", "application/json")
.body("{\n \"clientId\": \"<string>\",\n \"lifetime\": 3600,\n \"externalRef\": \"<string>\",\n \"flow\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"theme\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"questionnaire\": \"<string>\",\n \"questionnaireRequired\": true,\n \"tags\": [],\n \"scanRefs\": [\n \"<string>\"\n ]\n}")
.asString();<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://ivs.idenfy.com/kyb/tokens/",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'clientId' => '<string>',
'lifetime' => 3600,
'externalRef' => '<string>',
'flow' => '3c90c3cc-0d44-4b50-8888-8dd25736052a',
'theme' => '3c90c3cc-0d44-4b50-8888-8dd25736052a',
'questionnaire' => '<string>',
'questionnaireRequired' => true,
'tags' => [
],
'scanRefs' => [
'<string>'
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: Basic <encoded-value>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}require 'uri'
require 'net/http'
url = URI("https://ivs.idenfy.com/kyb/tokens/")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Basic <encoded-value>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"clientId\": \"<string>\",\n \"lifetime\": 3600,\n \"externalRef\": \"<string>\",\n \"flow\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"theme\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"questionnaire\": \"<string>\",\n \"questionnaireRequired\": true,\n \"tags\": [],\n \"scanRefs\": [\n \"<string>\"\n ]\n}"
response = http.request(request)
puts response.read_bodyusing RestSharp;
var options = new RestClientOptions("https://ivs.idenfy.com/kyb/tokens/");
var client = new RestClient(options);
var request = new RestRequest("");
request.AddHeader("Authorization", "Basic <encoded-value>");
request.AddJsonBody("{\n \"clientId\": \"<string>\",\n \"lifetime\": 3600,\n \"externalRef\": \"<string>\",\n \"flow\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"theme\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"questionnaire\": \"<string>\",\n \"questionnaireRequired\": true,\n \"tags\": [],\n \"scanRefs\": [\n \"<string>\"\n ]\n}", false);
var response = await client.PostAsync(request);
Console.WriteLine("{0}", response.Content);
package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://ivs.idenfy.com/kyb/tokens/"
payload := strings.NewReader("{\n \"clientId\": \"<string>\",\n \"lifetime\": 3600,\n \"externalRef\": \"<string>\",\n \"flow\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"theme\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"questionnaire\": \"<string>\",\n \"questionnaireRequired\": true,\n \"tags\": [],\n \"scanRefs\": [\n \"<string>\"\n ]\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Basic <encoded-value>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}val client = OkHttpClient()
val mediaType = MediaType.parse("application/json")
val body = RequestBody.create(mediaType, "{\n \"clientId\": \"<string>\",\n \"lifetime\": 3600,\n \"externalRef\": \"<string>\",\n \"flow\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"theme\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"questionnaire\": \"<string>\",\n \"questionnaireRequired\": true,\n \"tags\": [],\n \"scanRefs\": [\n \"<string>\"\n ]\n}")
val request = Request.Builder()
.url("https://ivs.idenfy.com/kyb/tokens/")
.post(body)
.addHeader("Authorization", "Basic <encoded-value>")
.addHeader("Content-Type", "application/json")
.build()
val response = client.newCall(request).execute()import Foundation
let parameters = [
"clientId": "<string>",
"lifetime": 3600,
"externalRef": "<string>",
"flow": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"theme": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"questionnaire": "<string>",
"questionnaireRequired": true,
"tags": [],
"scanRefs": ["<string>"]
] as [String : Any?]
let postData = try JSONSerialization.data(withJSONObject: parameters, options: [])
let url = URL(string: "https://ivs.idenfy.com/kyb/tokens/")!
var request = URLRequest(url: url)
request.httpMethod = "POST"
request.timeoutInterval = 10
request.allHTTPHeaderFields = [
"Authorization": "Basic <encoded-value>",
"Content-Type": "application/json"
]
request.httpBody = postData
let (data, _) = try await URLSession.shared.data(for: request)
print(String(decoding: data, as: UTF8.self)){
"tokenType": "FORM",
"tokenString": "<string>",
"expiration": "2023-11-07T05:31:56Z",
"isActive": true,
"isValid": true,
"companyId": "<string>",
"clientId": "<string>",
"externalRef": "<string>",
"locale": "en",
"flow": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"theme": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"tags": [],
"scanRefs": [
"<string>"
]
}Authorizations
The request must contain basic auth headers where username is API key and password is API secret.
In order for you to start using our API you will need an API key and API secret.
Both can be retrieved by contacting iDenfy's support or iDenfy's sales team.
Body
FORM, GOV1, GOV2 A unique string identifying a client on your side.
1 - 100The duration in seconds of KYB token validity.
0 <= x <= 2592000Any additional value chosen by you.
40The default client's language. By default selected by a client's IP address.
en, es, fr, ru, de, it, pl, lt, lv, et, cs, ro, hu, ja, bg, nl, pt KYB flow's id to use for this KYB session.
KYB theme's id to use for this KYB session.
KYB questionnaire's key to use for this KYB session. null for no questionnaire. If not given, the default questionnaire (from your KYB settings) will be used. Ignored when KYB flow is used, then questionnaire is taken according to used flow.
1If KYB session should have a questionnaire.
List of case-sensitive strings. Each tag can not be longer than 32 characters.
51 - 32^[^,]+$1 - 40^[^,]+$Response
FORM, GOV1, GOV2 Token string used for authentication.
Date and time when this token will become expired.
Indicates whether this token is not deactivated.
Indicates whether this token is valid.
A unique string identifying a client on your side.
100Any additional value chosen by you.
40The default client's language. By default selected by a client's IP address.
en, es, fr, ru, de, it, pl, lt, lv, et, cs, ro, hu, ja, bg, nl, pt KYB flow's id to use for this KYB session.
KYB theme's id to use for this KYB session.
List of case-sensitive strings. Each tag can not be longer than 32 characters.
532^[^,]+$40^[^,]+$Was this page helpful?