🪪
faceverify.ai
  • Welcome
  • Getting Started
    • Quickstart
    • Setup new Integration
  • Start Integration
    • SDK Integration
    • API Integration
Powered by GitBook
On this page
  1. Start Integration

API Integration

You can use this API to create new sessions or get existing session link

Generate hmac signature

const crypto = require('crypto');

const generateHmac = (httpMethod, url, body, contentType, xAuthClient, secretKey) => {
  const requestUrl = new URL(url);
  const requestPath = requestUrl.pathname;
  const queryParams = requestUrl.searchParams.toString();

  const dataToHash = `${httpMethod}\n${requestPath}\n${queryParams}\n${xAuthClient}\n${contentType}\n${body}`;

  const hmac = crypto.createHmac('sha256', secretKey);
  hmac.update(dataToHash);
  return hmac.digest('hex');
};
let httpMethod = "POST";
const url = "https://start.faceverify.ai/api/v1/session";
const body = JSON.stringify({
    country: country,
    uniqueIdentifier,
});
const contentType = "application/json";
//xAuthClient is your apiKey
const xAuthClient = "xxx-xxx-xxx-xxx-xxx"
const secretKey = "xxx-xxx-xxx-xxx-xxx";
const hmacSignature = generateHmac(httpMethod,url,body,contentType,xAuthClient,secretKey);
console.log(hmacSignature);
import hashlib
import hmac
from urllib.parse import urlparse

def generate_hmac(http_method, url, body, content_type, x_auth_client, secret_key):
    parsed_url = urlparse(url)
    request_path = parsed_url.path
    query_params = parsed_url.query

    data_to_hash = f"{http_method}\n{request_path}\n{query_params}\n{x_auth_client}\n{content_type}\n{body}"
    hmac_signature = hmac.new(secret_key.encode('utf-8'), data_to_hash.encode('utf-8'), hashlib.sha256).hexdigest()
    return hmac_signature

http_method = "POST"
url = "https://start.faceverify.ai/api/v1/session"
body = '{"country": "US", "uniqueIdentifier": "user123"}'
content_type = "application/json"
x_auth_client = "xxx-xxx-xxx-xxx-xxx"  # Your API key
secret_key = "xxx-xxx-xxx-xxx-xxx"  # Your secret key

hmac_signature = generate_hmac(http_method, url, body, content_type, x_auth_client, secret_key)
print(hmac_signature)
<?php
function generateHmac($httpMethod, $url, $body, $contentType, $xAuthClient, $secretKey) {
    $parsedUrl = parse_url($url);
    $requestPath = $parsedUrl['path'];
    $queryParams = isset($parsedUrl['query']) ? $parsedUrl['query'] : '';

    $dataToHash = $httpMethod . "\n" . $requestPath . "\n" . $queryParams . "\n" . $xAuthClient . "\n" . $contentType . "\n" . $body;

    $hmacSignature = hash_hmac('sha256', $dataToHash, $secretKey);
    return $hmacSignature;
}

$httpMethod = "POST";
$url = "https://start.faceverify.ai/api/v1/session";
$body = json_encode(array(
    'country' => 'US',
    'uniqueIdentifier' => 'user123'
));
$contentType = "application/json";
// $xAuthClient is your API key
$xAuthClient = "xxx-xxx-xxx-xxx-xxx";
$secretKey = "xxx-xxx-xxx-xxx-xxx"; // Your secret key

$hmacSignature = generateHmac($httpMethod, $url, $body, $contentType, $xAuthClient, $secretKey);
echo $hmacSignature;
?>
PreviousSDK Integration

Last updated 8 months ago

Create a new verification session

post

Creates a new session to initiate the face verification process. The request must include an HMAC signature for security purposes.

Header parameters
x-auth-clientstringRequired

API key for client authentication. This key is provided to the client during integration setup.

Example: xxx-xxx-xxx-xxx-xxx
x-hmac-signaturestringRequired

HMAC signature for request validation. The signature is generated using the above process.

Example: xxx-xxx-xxx-xxx-xxx
Body
countrystringOptional

The country code for the verification session.

Example: US
uniqueIdentifierstringOptional

A unique identifier for the user or session.

Example: user123
Responses
200
Successful response with the session URL.
application/json
500
Internal Server Error
application/json
400 - case 1
Bad Request
application/json
400 - case 2
Bad Request
application/json
400 - case 3
Bad Request
application/json
400 - case 4
Bad Request
application/json
post
const response = await fetch('https://start.faceverify.ai/api/v1/session', {
  method: 'POST',
  headers: {
    'Content-Type': 'application/json',
    'x-auth-client': 'xxx-xxx-xxx-xxx-xxx',
    'x-hmac-signature': 'xxx-xxx-xxx-xxx-xxx'
  },
  body: JSON.stringify({
    country: 'US',
    uniqueIdentifier: 'user123'
  })
});
const data = await response.json();
console.log(data);
{
  "success": true,
  "data": {
    "sessionId": "session123",
    "baseUrl": "https://start.faceverify.ai",
    "Token": "eyJhbGciOi..",
    "url": "https://start.faceverify.ai/new/eyJhbGciOiJIUzI1NiIsIn..."
  }
}
  • Generate hmac signature
  • POSTCreate a new verification session