Create Verification Pack
curl --request POST \
--url https://api.truthlocks.com/v1/attestation-packs \
--header 'Content-Type: application/json' \
--header 'X-API-Key: <api-key>' \
--data '
{
"name": "KYC Identity Verification",
"description": "Know Your Customer identity proofing package",
"category": "Identity",
"region": "Global"
}
'import requests
url = "https://api.truthlocks.com/v1/attestation-packs"
payload = {
"name": "KYC Identity Verification",
"description": "Know Your Customer identity proofing package",
"category": "Identity",
"region": "Global"
}
headers = {
"X-API-Key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'X-API-Key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
name: 'KYC Identity Verification',
description: 'Know Your Customer identity proofing package',
category: 'Identity',
region: 'Global'
})
};
fetch('https://api.truthlocks.com/v1/attestation-packs', 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://api.truthlocks.com/v1/attestation-packs",
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([
'name' => 'KYC Identity Verification',
'description' => 'Know Your Customer identity proofing package',
'category' => 'Identity',
'region' => 'Global'
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"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"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.truthlocks.com/v1/attestation-packs"
payload := strings.NewReader("{\n \"name\": \"KYC Identity Verification\",\n \"description\": \"Know Your Customer identity proofing package\",\n \"category\": \"Identity\",\n \"region\": \"Global\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("X-API-Key", "<api-key>")
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))
}HttpResponse<String> response = Unirest.post("https://api.truthlocks.com/v1/attestation-packs")
.header("X-API-Key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"name\": \"KYC Identity Verification\",\n \"description\": \"Know Your Customer identity proofing package\",\n \"category\": \"Identity\",\n \"region\": \"Global\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.truthlocks.com/v1/attestation-packs")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["X-API-Key"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"name\": \"KYC Identity Verification\",\n \"description\": \"Know Your Customer identity proofing package\",\n \"category\": \"Identity\",\n \"region\": \"Global\"\n}"
response = http.request(request)
puts response.read_body{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a"
}{
"code": "AUTH_REQUIRED",
"message": "Authentication required",
"http_status": 401
}Verification Packs
Create Verification Pack
Creates a new custom verification pack for the tenant.
POST
/
v1
/
attestation-packs
Create Verification Pack
curl --request POST \
--url https://api.truthlocks.com/v1/attestation-packs \
--header 'Content-Type: application/json' \
--header 'X-API-Key: <api-key>' \
--data '
{
"name": "KYC Identity Verification",
"description": "Know Your Customer identity proofing package",
"category": "Identity",
"region": "Global"
}
'import requests
url = "https://api.truthlocks.com/v1/attestation-packs"
payload = {
"name": "KYC Identity Verification",
"description": "Know Your Customer identity proofing package",
"category": "Identity",
"region": "Global"
}
headers = {
"X-API-Key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'X-API-Key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
name: 'KYC Identity Verification',
description: 'Know Your Customer identity proofing package',
category: 'Identity',
region: 'Global'
})
};
fetch('https://api.truthlocks.com/v1/attestation-packs', 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://api.truthlocks.com/v1/attestation-packs",
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([
'name' => 'KYC Identity Verification',
'description' => 'Know Your Customer identity proofing package',
'category' => 'Identity',
'region' => 'Global'
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"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"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.truthlocks.com/v1/attestation-packs"
payload := strings.NewReader("{\n \"name\": \"KYC Identity Verification\",\n \"description\": \"Know Your Customer identity proofing package\",\n \"category\": \"Identity\",\n \"region\": \"Global\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("X-API-Key", "<api-key>")
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))
}HttpResponse<String> response = Unirest.post("https://api.truthlocks.com/v1/attestation-packs")
.header("X-API-Key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"name\": \"KYC Identity Verification\",\n \"description\": \"Know Your Customer identity proofing package\",\n \"category\": \"Identity\",\n \"region\": \"Global\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.truthlocks.com/v1/attestation-packs")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["X-API-Key"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"name\": \"KYC Identity Verification\",\n \"description\": \"Know Your Customer identity proofing package\",\n \"category\": \"Identity\",\n \"region\": \"Global\"\n}"
response = http.request(request)
puts response.read_body{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a"
}{
"code": "AUTH_REQUIRED",
"message": "Authentication required",
"http_status": 401
}Creates a custom verification pack for the tenant. New packs start in ‘draft’ status and must be activated before attestations can be linked to them. Categories help organize packs by industry vertical.
Parameters
string
required
Display name for the verification pack
string
Detailed description of the pack’s purpose and included verification types
string
Pack category. One of: Identity, Compliance, Financial, Healthcare, Education,
Supply Chain, Other
Responses
⌘I

