Get verification status
curl --request GET \
--url https://api.proofage.net/v1/verifications/{verification} \
--header 'X-API-Key: <api-key>' \
--header 'X-HMAC-Signature: <api-key>'import requests
url = "https://api.proofage.net/v1/verifications/{verification}"
headers = {
"X-API-Key": "<api-key>",
"X-HMAC-Signature": "<api-key>"
}
response = requests.get(url, headers=headers)
print(response.text)const options = {
method: 'GET',
headers: {'X-API-Key': '<api-key>', 'X-HMAC-Signature': '<api-key>'}
};
fetch('https://api.proofage.net/v1/verifications/{verification}', 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.proofage.net/v1/verifications/{verification}",
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>",
"X-HMAC-Signature: <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://api.proofage.net/v1/verifications/{verification}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("X-API-Key", "<api-key>")
req.Header.Add("X-HMAC-Signature", "<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://api.proofage.net/v1/verifications/{verification}")
.header("X-API-Key", "<api-key>")
.header("X-HMAC-Signature", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.proofage.net/v1/verifications/{verification}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["X-API-Key"] = '<api-key>'
request["X-HMAC-Signature"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"id": "550e8400-e29b-41d4-a716-446655440000",
"external_id": "user-123",
"external_metadata": {
"plan": "premium"
},
"redirect_url": "https://example.com/callback",
"status": "approved",
"reason": null,
"duplicate_check": {
"checked": true,
"duplicate_count": 2,
"duplicates": [
{
"verification_id": "771a9200-c3df-4e88-b201-112233445566",
"external_id": "user-456",
"similarity_score": 0.93,
"verified_at": "2026-03-11T09:22:41+00:00"
}
]
},
"erasure": null,
"consent_accepted_at": "2026-03-19T12:01:00+00:00",
"created_at": "2026-03-19T12:00:00+00:00",
"updated_at": "2026-03-19T12:05:00+00:00"
}{
"message": "<string>"
}{
"message": "<string>",
"errors": {}
}Verifications
Get verification status
Retrieves the current state of a verification session including its status and decision reason.
GET
/
verifications
/
{verification}
Get verification status
curl --request GET \
--url https://api.proofage.net/v1/verifications/{verification} \
--header 'X-API-Key: <api-key>' \
--header 'X-HMAC-Signature: <api-key>'import requests
url = "https://api.proofage.net/v1/verifications/{verification}"
headers = {
"X-API-Key": "<api-key>",
"X-HMAC-Signature": "<api-key>"
}
response = requests.get(url, headers=headers)
print(response.text)const options = {
method: 'GET',
headers: {'X-API-Key': '<api-key>', 'X-HMAC-Signature': '<api-key>'}
};
fetch('https://api.proofage.net/v1/verifications/{verification}', 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.proofage.net/v1/verifications/{verification}",
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>",
"X-HMAC-Signature: <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://api.proofage.net/v1/verifications/{verification}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("X-API-Key", "<api-key>")
req.Header.Add("X-HMAC-Signature", "<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://api.proofage.net/v1/verifications/{verification}")
.header("X-API-Key", "<api-key>")
.header("X-HMAC-Signature", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.proofage.net/v1/verifications/{verification}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["X-API-Key"] = '<api-key>'
request["X-HMAC-Signature"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"id": "550e8400-e29b-41d4-a716-446655440000",
"external_id": "user-123",
"external_metadata": {
"plan": "premium"
},
"redirect_url": "https://example.com/callback",
"status": "approved",
"reason": null,
"duplicate_check": {
"checked": true,
"duplicate_count": 2,
"duplicates": [
{
"verification_id": "771a9200-c3df-4e88-b201-112233445566",
"external_id": "user-456",
"similarity_score": 0.93,
"verified_at": "2026-03-11T09:22:41+00:00"
}
]
},
"erasure": null,
"consent_accepted_at": "2026-03-19T12:01:00+00:00",
"created_at": "2026-03-19T12:00:00+00:00",
"updated_at": "2026-03-19T12:05:00+00:00"
}{
"message": "<string>"
}{
"message": "<string>",
"errors": {}
}Authorizations
Your workspace public key (pk_test_… or pk_live_…).
HMAC-SHA256 of the request, hex-encoded, keyed with the workspace secret key. See API authentication.
Path Parameters
The verification ID
Response
Verification session state.
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes