NAV
Shell HTTP C# Ruby Python JavaScript PHP JAVA GO

API Documentation v1.0.0

Scroll down for code samples, example requests and responses. Select a language for code samples from the tabs above or the mobile navigation menu.

It contains various APIs to scan various type of documents

Base URLs:

General:

Health Check

Health Check

Code samples

# You can also use wget
curl -X GET https://{environment}.doxai.co/{basePath}/health \
  -H 'Accept: application/json' \
  -H 'x-access-key: 5d46e3a8-b2a0-4593-81ad-71b20ad7c4ab' \
  -H 'x-secret-key: 6d40374f-704c-593d-93df-b076ffe1427f'

GET https://{environment}.doxai.co/{basePath}/health HTTP/1.1

Accept: application/json
x-access-key: 5d46e3a8-b2a0-4593-81ad-71b20ad7c4ab
x-secret-key: 6d40374f-704c-593d-93df-b076ffe1427f

using System;
using System.Collections.Generic;
using System.Net.Http;
using System.Net.Http.Headers;
using System.Text;
using System.Threading.Tasks;
using Newtonsoft.Json;

/// <<summary>>
/// Example of Http Client
/// <</summary>>
public class HttpExample
{
    private HttpClient Client { get; set; }

    /// <<summary>>
    /// Setup http client
    /// <</summary>>
    public HttpExample()
    {
      Client = new HttpClient();
    }

    /// Make a dummy request
    public async Task MakeGetRequest()
    {
      string url = "https://{environment}.doxai.co/{basePath}/health";
      var result = await GetAsync(url);
    }

    /// Performs a GET Request
    public async Task GetAsync(string url)
    {
        //Start the request
        HttpResponseMessage response = await Client.GetAsync(url);

        //Validate result
        response.EnsureSuccessStatusCode();

    }




    /// Deserialize object from request response
    private async Task DeserializeObject(HttpResponseMessage response)
    {
        //Read body 
        string responseBody = await response.Content.ReadAsStringAsync();

        //Deserialize Body to object
        var result = JsonConvert.DeserializeObject(responseBody);
    }
}

require 'rest-client'
require 'json'

headers = {
  'Accept' => 'application/json',
  'x-access-key' => '5d46e3a8-b2a0-4593-81ad-71b20ad7c4ab',
  'x-secret-key' => '6d40374f-704c-593d-93df-b076ffe1427f'
}

result = RestClient.get 'https://{environment}.doxai.co/{basePath}/health',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': 'application/json',
  'x-access-key': '5d46e3a8-b2a0-4593-81ad-71b20ad7c4ab',
  'x-secret-key': '6d40374f-704c-593d-93df-b076ffe1427f'
}

r = requests.get('https://{environment}.doxai.co/{basePath}/health', headers = headers)

print(r.json())


const headers = {
  'Accept':'application/json',
  'x-access-key':'5d46e3a8-b2a0-4593-81ad-71b20ad7c4ab',
  'x-secret-key':'6d40374f-704c-593d-93df-b076ffe1427f'
};

fetch('https://{environment}.doxai.co/{basePath}/health',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

<?php

require 'vendor/autoload.php';

$headers = array(
    'Accept' => 'application/json',
    'x-access-key' => '5d46e3a8-b2a0-4593-81ad-71b20ad7c4ab',
    'x-secret-key' => '6d40374f-704c-593d-93df-b076ffe1427f',
);

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
    $response = $client->request('GET','https://{environment}.doxai.co/{basePath}/health', array(
        'headers' => $headers,
        'json' => $request_body,
       )
    );
    print_r($response->getBody()->getContents());
 }
 catch (\GuzzleHttp\Exception\BadResponseException $e) {
    // handle exception or api errors.
    print_r($e->getMessage());
 }

 // ...

URL obj = new URL("https://{environment}.doxai.co/{basePath}/health");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Accept": []string{"application/json"},
        "x-access-key": []string{"5d46e3a8-b2a0-4593-81ad-71b20ad7c4ab"},
        "x-secret-key": []string{"6d40374f-704c-593d-93df-b076ffe1427f"},
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("GET", "https://{environment}.doxai.co/{basePath}/health", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

GET /health

Health check

Parameters

Name In Type Required Description
x-access-key header string true none
x-secret-key header string true none

Example responses

200 Response

{
  "msg": "Request Success"
}

Responses

Status Meaning Description Schema
200 OK Successfull Operation Inline
401 Unauthorized Bad Request Inline
500 Internal Server Error Failed Operation Inline

Response Schema

Status Code 200

Name Type Required Restrictions Description
» msg string false none none

Status Code 401

Name Type Required Restrictions Description
» msg string false none none

Status Code 500

Name Type Required Restrictions Description
» msg string false none none

Australian Invoice OCR

Invoice OCR

Code samples

# You can also use wget
curl -X POST https://{environment}.doxai.co/{basePath}/invoice \
  -H 'Content-Type: multipart/form-data' \
  -H 'Accept: application/json' \
  -H 'x-access-key: e8586de2-185e-4ed1-97be-d0ebbdd50eef' \
  -H 'x-secret-key: a2429a6c-be5a-5b63-a009-b99b054bb386'

POST https://{environment}.doxai.co/{basePath}/invoice HTTP/1.1

Content-Type: multipart/form-data
Accept: application/json
x-access-key: e8586de2-185e-4ed1-97be-d0ebbdd50eef
x-secret-key: a2429a6c-be5a-5b63-a009-b99b054bb386

using System;
using System.Collections.Generic;
using System.Net.Http;
using System.Net.Http.Headers;
using System.Text;
using System.Threading.Tasks;
using Newtonsoft.Json;

/// <<summary>>
/// Example of Http Client
/// <</summary>>
public class HttpExample
{
    private HttpClient Client { get; set; }

    /// <<summary>>
    /// Setup http client
    /// <</summary>>
    public HttpExample()
    {
      Client = new HttpClient();
    }


    /// Make a dummy request
    public async Task MakePostRequest()
    {
      string url = "https://{environment}.doxai.co/{basePath}/invoice";


      await PostAsync(null, url);

    }

    /// Performs a POST Request
    public async Task PostAsync(undefined content, string url)
    {
        //Serialize Object
        StringContent jsonContent = SerializeObject(content);

        //Execute POST request
        HttpResponseMessage response = await Client.PostAsync(url, jsonContent);
    }



    /// Serialize an object to Json
    private StringContent SerializeObject(undefined content)
    {
        //Serialize Object
        string jsonObject = JsonConvert.SerializeObject(content);

        //Create Json UTF8 String Content
        return new StringContent(jsonObject, Encoding.UTF8, "application/json");
    }

    /// Deserialize object from request response
    private async Task DeserializeObject(HttpResponseMessage response)
    {
        //Read body 
        string responseBody = await response.Content.ReadAsStringAsync();

        //Deserialize Body to object
        var result = JsonConvert.DeserializeObject(responseBody);
    }
}

require 'rest-client'
require 'json'

headers = {
  'Content-Type' => 'multipart/form-data',
  'Accept' => 'application/json',
  'x-access-key' => 'e8586de2-185e-4ed1-97be-d0ebbdd50eef',
  'x-secret-key' => 'a2429a6c-be5a-5b63-a009-b99b054bb386'
}

result = RestClient.post 'https://{environment}.doxai.co/{basePath}/invoice',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Content-Type': 'multipart/form-data',
  'Accept': 'application/json',
  'x-access-key': 'e8586de2-185e-4ed1-97be-d0ebbdd50eef',
  'x-secret-key': 'a2429a6c-be5a-5b63-a009-b99b054bb386'
}

r = requests.post('https://{environment}.doxai.co/{basePath}/invoice', headers = headers)

print(r.json())

const inputBody = '{
  "file1": "",
  "file2": ""
}';
const headers = {
  'Content-Type':'multipart/form-data',
  'Accept':'application/json',
  'x-access-key':'e8586de2-185e-4ed1-97be-d0ebbdd50eef',
  'x-secret-key':'a2429a6c-be5a-5b63-a009-b99b054bb386'
};

fetch('https://{environment}.doxai.co/{basePath}/invoice',
{
  method: 'POST',
  body: inputBody,
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

<?php

require 'vendor/autoload.php';

$headers = array(
    'Content-Type' => 'multipart/form-data',
    'Accept' => 'application/json',
    'x-access-key' => 'e8586de2-185e-4ed1-97be-d0ebbdd50eef',
    'x-secret-key' => 'a2429a6c-be5a-5b63-a009-b99b054bb386',
);

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
    $response = $client->request('POST','https://{environment}.doxai.co/{basePath}/invoice', array(
        'headers' => $headers,
        'json' => $request_body,
       )
    );
    print_r($response->getBody()->getContents());
 }
 catch (\GuzzleHttp\Exception\BadResponseException $e) {
    // handle exception or api errors.
    print_r($e->getMessage());
 }

 // ...

URL obj = new URL("https://{environment}.doxai.co/{basePath}/invoice");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("POST");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Content-Type": []string{"multipart/form-data"},
        "Accept": []string{"application/json"},
        "x-access-key": []string{"e8586de2-185e-4ed1-97be-d0ebbdd50eef"},
        "x-secret-key": []string{"a2429a6c-be5a-5b63-a009-b99b054bb386"},
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("POST", "https://{environment}.doxai.co/{basePath}/invoice", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

POST /invoice

Extracting data fields from an invoice for utility bill payments

Body parameter

file1: ""
file2: ""

Parameters

Name In Type Required Description
x-access-key header string true none
x-secret-key header string true none
body body object true none
» file1 body string(binary) true Upload image page 1
» file2 body string(binary) false Upload image page 2

Example responses

200 Response

{
  "msg": "Request Success",
  "data": {
    "companyName": "Power water",
    "utilityType": "water",
    "accountType": "Personal",
    "billerCode": "7000",
    "billerRef": "11111",
    "state": "NSW",
    "postCode": "0801",
    "amount": "$30",
    "amountSybol": "$"
  }
}

Responses

Status Meaning Description Schema
200 OK Successfull Operation OCRInvoice
400 Bad Request Bad Request Inline
401 Unauthorized Bad Request Inline
500 Internal Server Error Failed Operation Inline

Response Schema

Status Code 400

Name Type Required Restrictions Description
» msg string false none none

Status Code 401

Name Type Required Restrictions Description
» msg string false none none

Status Code 500

Name Type Required Restrictions Description
» msg string false none none

Passport OCR

Passport OCR

Code samples

# You can also use wget
curl -X POST https://{environment}.doxai.co/{basePath}/passport \
  -H 'Content-Type: multipart/form-data' \
  -H 'Accept: application/json' \
  -H 'x-access-key: facff60e-4880-48ca-b16d-d3e878fb8f9d' \
  -H 'x-secret-key: d2e06ba3-5eb4-575f-bfa2-2e3a5fda11ea'

POST https://{environment}.doxai.co/{basePath}/passport HTTP/1.1

Content-Type: multipart/form-data
Accept: application/json
x-access-key: facff60e-4880-48ca-b16d-d3e878fb8f9d
x-secret-key: d2e06ba3-5eb4-575f-bfa2-2e3a5fda11ea

using System;
using System.Collections.Generic;
using System.Net.Http;
using System.Net.Http.Headers;
using System.Text;
using System.Threading.Tasks;
using Newtonsoft.Json;

/// <<summary>>
/// Example of Http Client
/// <</summary>>
public class HttpExample
{
    private HttpClient Client { get; set; }

    /// <<summary>>
    /// Setup http client
    /// <</summary>>
    public HttpExample()
    {
      Client = new HttpClient();
    }


    /// Make a dummy request
    public async Task MakePostRequest()
    {
      string url = "https://{environment}.doxai.co/{basePath}/passport";


      await PostAsync(null, url);

    }

    /// Performs a POST Request
    public async Task PostAsync(undefined content, string url)
    {
        //Serialize Object
        StringContent jsonContent = SerializeObject(content);

        //Execute POST request
        HttpResponseMessage response = await Client.PostAsync(url, jsonContent);
    }



    /// Serialize an object to Json
    private StringContent SerializeObject(undefined content)
    {
        //Serialize Object
        string jsonObject = JsonConvert.SerializeObject(content);

        //Create Json UTF8 String Content
        return new StringContent(jsonObject, Encoding.UTF8, "application/json");
    }

    /// Deserialize object from request response
    private async Task DeserializeObject(HttpResponseMessage response)
    {
        //Read body 
        string responseBody = await response.Content.ReadAsStringAsync();

        //Deserialize Body to object
        var result = JsonConvert.DeserializeObject(responseBody);
    }
}

require 'rest-client'
require 'json'

headers = {
  'Content-Type' => 'multipart/form-data',
  'Accept' => 'application/json',
  'x-access-key' => 'facff60e-4880-48ca-b16d-d3e878fb8f9d',
  'x-secret-key' => 'd2e06ba3-5eb4-575f-bfa2-2e3a5fda11ea'
}

result = RestClient.post 'https://{environment}.doxai.co/{basePath}/passport',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Content-Type': 'multipart/form-data',
  'Accept': 'application/json',
  'x-access-key': 'facff60e-4880-48ca-b16d-d3e878fb8f9d',
  'x-secret-key': 'd2e06ba3-5eb4-575f-bfa2-2e3a5fda11ea'
}

r = requests.post('https://{environment}.doxai.co/{basePath}/passport', headers = headers)

print(r.json())

const inputBody = '{
  "file": ""
}';
const headers = {
  'Content-Type':'multipart/form-data',
  'Accept':'application/json',
  'x-access-key':'facff60e-4880-48ca-b16d-d3e878fb8f9d',
  'x-secret-key':'d2e06ba3-5eb4-575f-bfa2-2e3a5fda11ea'
};

fetch('https://{environment}.doxai.co/{basePath}/passport',
{
  method: 'POST',
  body: inputBody,
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

<?php

require 'vendor/autoload.php';

$headers = array(
    'Content-Type' => 'multipart/form-data',
    'Accept' => 'application/json',
    'x-access-key' => 'facff60e-4880-48ca-b16d-d3e878fb8f9d',
    'x-secret-key' => 'd2e06ba3-5eb4-575f-bfa2-2e3a5fda11ea',
);

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
    $response = $client->request('POST','https://{environment}.doxai.co/{basePath}/passport', array(
        'headers' => $headers,
        'json' => $request_body,
       )
    );
    print_r($response->getBody()->getContents());
 }
 catch (\GuzzleHttp\Exception\BadResponseException $e) {
    // handle exception or api errors.
    print_r($e->getMessage());
 }

 // ...

URL obj = new URL("https://{environment}.doxai.co/{basePath}/passport");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("POST");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Content-Type": []string{"multipart/form-data"},
        "Accept": []string{"application/json"},
        "x-access-key": []string{"facff60e-4880-48ca-b16d-d3e878fb8f9d"},
        "x-secret-key": []string{"d2e06ba3-5eb4-575f-bfa2-2e3a5fda11ea"},
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("POST", "https://{environment}.doxai.co/{basePath}/passport", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

POST /passport

Recognizes data in passport image and returns the structured information.

Body parameter

file: ""

Parameters

Name In Type Required Description
x-access-key header string true none
x-secret-key header string true none
body body object true none
» file body string(binary) true Upload passport

Example responses

200 Response

{
  "msg": "Request Success",
  "data": {
    "documentCode": "P",
    "issuingState": "ITA",
    "lastName": "Michael",
    "firstName": "John",
    "documentNumber": "DQS000000",
    "documentNumberCheckDigit": "9",
    "nationality": "ITA",
    "birthDate": "981125",
    "birthDateCheckDigit": "11",
    "sex": "male",
    "expirationDate": "270710",
    "expirationDateCheckDigit": "7",
    "personalNumber": "00000000",
    "personalNumberCheckDigit": "0",
    "compositeCheckDigit": "0"
  }
}

Responses

Status Meaning Description Schema
200 OK Successfull Operation OCRPassport
400 Bad Request Bad Request Inline
401 Unauthorized Bad Request Inline
500 Internal Server Error Failed Operation Inline

Response Schema

Status Code 400

Name Type Required Restrictions Description
» msg string false none none

Status Code 401

Name Type Required Restrictions Description
» msg string false none none

Status Code 500

Name Type Required Restrictions Description
» msg string false none none

Medicare OCR

Medicare OCR

Code samples

# You can also use wget
curl -X POST https://{environment}.doxai.co/{basePath}/medicare \
  -H 'Content-Type: multipart/form-data' \
  -H 'Accept: application/json' \
  -H 'x-access-key: e7153edd-a397-44fd-8eb2-49e8a6a419e5' \
  -H 'x-secret-key: 0a44578a-270c-5fa9-9f18-08fa3483cdc1'

POST https://{environment}.doxai.co/{basePath}/medicare HTTP/1.1

Content-Type: multipart/form-data
Accept: application/json
x-access-key: e7153edd-a397-44fd-8eb2-49e8a6a419e5
x-secret-key: 0a44578a-270c-5fa9-9f18-08fa3483cdc1

using System;
using System.Collections.Generic;
using System.Net.Http;
using System.Net.Http.Headers;
using System.Text;
using System.Threading.Tasks;
using Newtonsoft.Json;

/// <<summary>>
/// Example of Http Client
/// <</summary>>
public class HttpExample
{
    private HttpClient Client { get; set; }

    /// <<summary>>
    /// Setup http client
    /// <</summary>>
    public HttpExample()
    {
      Client = new HttpClient();
    }


    /// Make a dummy request
    public async Task MakePostRequest()
    {
      string url = "https://{environment}.doxai.co/{basePath}/medicare";


      await PostAsync(null, url);

    }

    /// Performs a POST Request
    public async Task PostAsync(undefined content, string url)
    {
        //Serialize Object
        StringContent jsonContent = SerializeObject(content);

        //Execute POST request
        HttpResponseMessage response = await Client.PostAsync(url, jsonContent);
    }



    /// Serialize an object to Json
    private StringContent SerializeObject(undefined content)
    {
        //Serialize Object
        string jsonObject = JsonConvert.SerializeObject(content);

        //Create Json UTF8 String Content
        return new StringContent(jsonObject, Encoding.UTF8, "application/json");
    }

    /// Deserialize object from request response
    private async Task DeserializeObject(HttpResponseMessage response)
    {
        //Read body 
        string responseBody = await response.Content.ReadAsStringAsync();

        //Deserialize Body to object
        var result = JsonConvert.DeserializeObject(responseBody);
    }
}

require 'rest-client'
require 'json'

headers = {
  'Content-Type' => 'multipart/form-data',
  'Accept' => 'application/json',
  'x-access-key' => 'e7153edd-a397-44fd-8eb2-49e8a6a419e5',
  'x-secret-key' => '0a44578a-270c-5fa9-9f18-08fa3483cdc1'
}

result = RestClient.post 'https://{environment}.doxai.co/{basePath}/medicare',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Content-Type': 'multipart/form-data',
  'Accept': 'application/json',
  'x-access-key': 'e7153edd-a397-44fd-8eb2-49e8a6a419e5',
  'x-secret-key': '0a44578a-270c-5fa9-9f18-08fa3483cdc1'
}

r = requests.post('https://{environment}.doxai.co/{basePath}/medicare', headers = headers)

print(r.json())

const inputBody = '{
  "front": ""
}';
const headers = {
  'Content-Type':'multipart/form-data',
  'Accept':'application/json',
  'x-access-key':'e7153edd-a397-44fd-8eb2-49e8a6a419e5',
  'x-secret-key':'0a44578a-270c-5fa9-9f18-08fa3483cdc1'
};

fetch('https://{environment}.doxai.co/{basePath}/medicare',
{
  method: 'POST',
  body: inputBody,
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

<?php

require 'vendor/autoload.php';

$headers = array(
    'Content-Type' => 'multipart/form-data',
    'Accept' => 'application/json',
    'x-access-key' => 'e7153edd-a397-44fd-8eb2-49e8a6a419e5',
    'x-secret-key' => '0a44578a-270c-5fa9-9f18-08fa3483cdc1',
);

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
    $response = $client->request('POST','https://{environment}.doxai.co/{basePath}/medicare', array(
        'headers' => $headers,
        'json' => $request_body,
       )
    );
    print_r($response->getBody()->getContents());
 }
 catch (\GuzzleHttp\Exception\BadResponseException $e) {
    // handle exception or api errors.
    print_r($e->getMessage());
 }

 // ...

URL obj = new URL("https://{environment}.doxai.co/{basePath}/medicare");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("POST");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Content-Type": []string{"multipart/form-data"},
        "Accept": []string{"application/json"},
        "x-access-key": []string{"e7153edd-a397-44fd-8eb2-49e8a6a419e5"},
        "x-secret-key": []string{"0a44578a-270c-5fa9-9f18-08fa3483cdc1"},
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("POST", "https://{environment}.doxai.co/{basePath}/medicare", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

POST /medicare

Data extraction from medicare through OCR.

Body parameter

front: ""

Parameters

Name In Type Required Description
x-access-key header string true none
x-secret-key header string true none
body body object true none
» front body string(binary) true Upload image(front)

Example responses

200 Response

{
  "msg": "Request Success",
  "data": {
    "name": "Benjamin",
    "individualReferenceNumber": "2",
    "cardNumber": "00000000",
    "validity": "06/2028"
  }
}

Responses

Status Meaning Description Schema
200 OK Successfull Operation OCRMedicare
400 Bad Request Bad Request Inline
401 Unauthorized Bad Request Inline
500 Internal Server Error Failed Operation Inline

Response Schema

Status Code 400

Name Type Required Restrictions Description
» msg string false none none

Status Code 401

Name Type Required Restrictions Description
» msg string false none none

Status Code 500

Name Type Required Restrictions Description
» msg string false none none

Australian Driving License OCR

License OCR

Code samples

# You can also use wget
curl -X POST https://{environment}.doxai.co/{basePath}/license \
  -H 'Content-Type: multipart/form-data' \
  -H 'Accept: application/json' \
  -H 'x-access-key: 09206b4d-7661-48f5-add3-b0b6a15d5039' \
  -H 'x-secret-key: ffe84bcc-1fbb-57c6-b5ff-3f5f0c870054'

POST https://{environment}.doxai.co/{basePath}/license HTTP/1.1

Content-Type: multipart/form-data
Accept: application/json
x-access-key: 09206b4d-7661-48f5-add3-b0b6a15d5039
x-secret-key: ffe84bcc-1fbb-57c6-b5ff-3f5f0c870054

using System;
using System.Collections.Generic;
using System.Net.Http;
using System.Net.Http.Headers;
using System.Text;
using System.Threading.Tasks;
using Newtonsoft.Json;

/// <<summary>>
/// Example of Http Client
/// <</summary>>
public class HttpExample
{
    private HttpClient Client { get; set; }

    /// <<summary>>
    /// Setup http client
    /// <</summary>>
    public HttpExample()
    {
      Client = new HttpClient();
    }


    /// Make a dummy request
    public async Task MakePostRequest()
    {
      string url = "https://{environment}.doxai.co/{basePath}/license";


      await PostAsync(null, url);

    }

    /// Performs a POST Request
    public async Task PostAsync(undefined content, string url)
    {
        //Serialize Object
        StringContent jsonContent = SerializeObject(content);

        //Execute POST request
        HttpResponseMessage response = await Client.PostAsync(url, jsonContent);
    }



    /// Serialize an object to Json
    private StringContent SerializeObject(undefined content)
    {
        //Serialize Object
        string jsonObject = JsonConvert.SerializeObject(content);

        //Create Json UTF8 String Content
        return new StringContent(jsonObject, Encoding.UTF8, "application/json");
    }

    /// Deserialize object from request response
    private async Task DeserializeObject(HttpResponseMessage response)
    {
        //Read body 
        string responseBody = await response.Content.ReadAsStringAsync();

        //Deserialize Body to object
        var result = JsonConvert.DeserializeObject(responseBody);
    }
}

require 'rest-client'
require 'json'

headers = {
  'Content-Type' => 'multipart/form-data',
  'Accept' => 'application/json',
  'x-access-key' => '09206b4d-7661-48f5-add3-b0b6a15d5039',
  'x-secret-key' => 'ffe84bcc-1fbb-57c6-b5ff-3f5f0c870054'
}

result = RestClient.post 'https://{environment}.doxai.co/{basePath}/license',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Content-Type': 'multipart/form-data',
  'Accept': 'application/json',
  'x-access-key': '09206b4d-7661-48f5-add3-b0b6a15d5039',
  'x-secret-key': 'ffe84bcc-1fbb-57c6-b5ff-3f5f0c870054'
}

r = requests.post('https://{environment}.doxai.co/{basePath}/license', headers = headers)

print(r.json())

const inputBody = '{
  "front": "",
  "back": ""
}';
const headers = {
  'Content-Type':'multipart/form-data',
  'Accept':'application/json',
  'x-access-key':'09206b4d-7661-48f5-add3-b0b6a15d5039',
  'x-secret-key':'ffe84bcc-1fbb-57c6-b5ff-3f5f0c870054'
};

fetch('https://{environment}.doxai.co/{basePath}/license',
{
  method: 'POST',
  body: inputBody,
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

<?php

require 'vendor/autoload.php';

$headers = array(
    'Content-Type' => 'multipart/form-data',
    'Accept' => 'application/json',
    'x-access-key' => '09206b4d-7661-48f5-add3-b0b6a15d5039',
    'x-secret-key' => 'ffe84bcc-1fbb-57c6-b5ff-3f5f0c870054',
);

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
    $response = $client->request('POST','https://{environment}.doxai.co/{basePath}/license', array(
        'headers' => $headers,
        'json' => $request_body,
       )
    );
    print_r($response->getBody()->getContents());
 }
 catch (\GuzzleHttp\Exception\BadResponseException $e) {
    // handle exception or api errors.
    print_r($e->getMessage());
 }

 // ...

URL obj = new URL("https://{environment}.doxai.co/{basePath}/license");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("POST");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Content-Type": []string{"multipart/form-data"},
        "Accept": []string{"application/json"},
        "x-access-key": []string{"09206b4d-7661-48f5-add3-b0b6a15d5039"},
        "x-secret-key": []string{"ffe84bcc-1fbb-57c6-b5ff-3f5f0c870054"},
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("POST", "https://{environment}.doxai.co/{basePath}/license", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

POST /license

Data extraction from driving license through OCR.

Body parameter

front: ""
back: ""

Parameters

Name In Type Required Description
x-access-key header string true none
x-secret-key header string true none
body body object true none
» front body string(binary) true Upload image(front)
» back body string(binary) false Upload image(Back)

Example responses

200 Response

{
  "msg": "Request Success",
  "data": {
    "name": "Benjamin",
    "middleName": "Franklin",
    "surname": "James",
    "address": "Unit 1 LANGLEY NSW 2147",
    "licenseNumber": "00000000",
    "stateIssue": "NSW",
    "dateOfBirth": "1988-09-26",
    "expiryDate": "2028-09-11",
    "newaddress": "Unit 1 LANGLEY NSW 2147"
  }
}

Responses

Status Meaning Description Schema
200 OK Successfull Operation OCRDrivingLicense
400 Bad Request Bad Request Inline
401 Unauthorized Bad Request Inline
500 Internal Server Error Failed Operation Inline

Response Schema

Status Code 400

Name Type Required Restrictions Description
» msg string false none none

Status Code 401

Name Type Required Restrictions Description
» msg string false none none

Status Code 500

Name Type Required Restrictions Description
» msg string false none none

Face Match

Face Match

Code samples

# You can also use wget
curl -X POST https://{environment}.doxai.co/{basePath}/face-match \
  -H 'Content-Type: multipart/form-data' \
  -H 'Accept: application/json' \
  -H 'x-access-key: 08a1c025-0022-459a-8fd4-d31643e21963' \
  -H 'x-secret-key: 4d9b290a-8d4f-58b3-ab61-d1bf94614e76'

POST https://{environment}.doxai.co/{basePath}/face-match HTTP/1.1

Content-Type: multipart/form-data
Accept: application/json
x-access-key: 08a1c025-0022-459a-8fd4-d31643e21963
x-secret-key: 4d9b290a-8d4f-58b3-ab61-d1bf94614e76

using System;
using System.Collections.Generic;
using System.Net.Http;
using System.Net.Http.Headers;
using System.Text;
using System.Threading.Tasks;
using Newtonsoft.Json;

/// <<summary>>
/// Example of Http Client
/// <</summary>>
public class HttpExample
{
    private HttpClient Client { get; set; }

    /// <<summary>>
    /// Setup http client
    /// <</summary>>
    public HttpExample()
    {
      Client = new HttpClient();
    }


    /// Make a dummy request
    public async Task MakePostRequest()
    {
      string url = "https://{environment}.doxai.co/{basePath}/face-match";


      await PostAsync(null, url);

    }

    /// Performs a POST Request
    public async Task PostAsync(undefined content, string url)
    {
        //Serialize Object
        StringContent jsonContent = SerializeObject(content);

        //Execute POST request
        HttpResponseMessage response = await Client.PostAsync(url, jsonContent);
    }



    /// Serialize an object to Json
    private StringContent SerializeObject(undefined content)
    {
        //Serialize Object
        string jsonObject = JsonConvert.SerializeObject(content);

        //Create Json UTF8 String Content
        return new StringContent(jsonObject, Encoding.UTF8, "application/json");
    }

    /// Deserialize object from request response
    private async Task DeserializeObject(HttpResponseMessage response)
    {
        //Read body 
        string responseBody = await response.Content.ReadAsStringAsync();

        //Deserialize Body to object
        var result = JsonConvert.DeserializeObject(responseBody);
    }
}

require 'rest-client'
require 'json'

headers = {
  'Content-Type' => 'multipart/form-data',
  'Accept' => 'application/json',
  'x-access-key' => '08a1c025-0022-459a-8fd4-d31643e21963',
  'x-secret-key' => '4d9b290a-8d4f-58b3-ab61-d1bf94614e76'
}

result = RestClient.post 'https://{environment}.doxai.co/{basePath}/face-match',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Content-Type': 'multipart/form-data',
  'Accept': 'application/json',
  'x-access-key': '08a1c025-0022-459a-8fd4-d31643e21963',
  'x-secret-key': '4d9b290a-8d4f-58b3-ab61-d1bf94614e76'
}

r = requests.post('https://{environment}.doxai.co/{basePath}/face-match', headers = headers)

print(r.json())

const inputBody = '{
  "id": "",
  "images": ""
}';
const headers = {
  'Content-Type':'multipart/form-data',
  'Accept':'application/json',
  'x-access-key':'08a1c025-0022-459a-8fd4-d31643e21963',
  'x-secret-key':'4d9b290a-8d4f-58b3-ab61-d1bf94614e76'
};

fetch('https://{environment}.doxai.co/{basePath}/face-match',
{
  method: 'POST',
  body: inputBody,
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

<?php

require 'vendor/autoload.php';

$headers = array(
    'Content-Type' => 'multipart/form-data',
    'Accept' => 'application/json',
    'x-access-key' => '08a1c025-0022-459a-8fd4-d31643e21963',
    'x-secret-key' => '4d9b290a-8d4f-58b3-ab61-d1bf94614e76',
);

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
    $response = $client->request('POST','https://{environment}.doxai.co/{basePath}/face-match', array(
        'headers' => $headers,
        'json' => $request_body,
       )
    );
    print_r($response->getBody()->getContents());
 }
 catch (\GuzzleHttp\Exception\BadResponseException $e) {
    // handle exception or api errors.
    print_r($e->getMessage());
 }

 // ...

URL obj = new URL("https://{environment}.doxai.co/{basePath}/face-match");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("POST");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Content-Type": []string{"multipart/form-data"},
        "Accept": []string{"application/json"},
        "x-access-key": []string{"08a1c025-0022-459a-8fd4-d31643e21963"},
        "x-secret-key": []string{"4d9b290a-8d4f-58b3-ab61-d1bf94614e76"},
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("POST", "https://{environment}.doxai.co/{basePath}/face-match", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

POST /face-match

Biometric face analysis on ID and photo.

Body parameter

id: ""
images: ""

Parameters

Name In Type Required Description
x-access-key header string true none
x-secret-key header string true none
body body object true none
» id body string(binary) true Take snapshot
» images body string(binary) true Upload image to compare

Example responses

200 Response

{
  "msg": "Request Success",
  "data": {
    "faceMatched": "true",
    "similarity": 99.01,
    "image1": {
      "result": "The face doesn't match",
      "details": {
        "isFaceCenter": true,
        "isFaceLeft": true,
        "isFaceRight": true,
        "isEyesOpen": false,
        "isWearingEyeGlasses": false,
        "isWearingSunglasses": false,
        "eyesConfidence": 95.71,
        "similarity": 95.71,
        "faceMatched": false,
        "age": {
          "low": null,
          "high": null
        }
      }
    },
    "id": {
      "type": "Driving License",
      "confidence": 86.68
    }
  }
}

Responses

Status Meaning Description Schema
200 OK Successfull Operation faceMatch
400 Bad Request Bad Request Inline
401 Unauthorized Bad Request Inline
500 Internal Server Error Failed Operation Inline

Response Schema

Status Code 400

Name Type Required Restrictions Description
» msg string false none none

Status Code 401

Name Type Required Restrictions Description
» msg string false none none

Status Code 500

Name Type Required Restrictions Description
» msg string false none none

Liveness Check

Live Match

Code samples

# You can also use wget
curl -X POST https://{environment}.doxai.co/{basePath}/live-match/eyes \
  -H 'Content-Type: multipart/form-data' \
  -H 'Accept: application/json' \
  -H 'x-access-key: ed86deba-c5c9-488e-b90b-dc645785f12b' \
  -H 'x-secret-key: 5a9c2dbf-0d26-598d-8f92-932c7ae550e1'

POST https://{environment}.doxai.co/{basePath}/live-match/eyes HTTP/1.1

Content-Type: multipart/form-data
Accept: application/json
x-access-key: ed86deba-c5c9-488e-b90b-dc645785f12b
x-secret-key: 5a9c2dbf-0d26-598d-8f92-932c7ae550e1

using System;
using System.Collections.Generic;
using System.Net.Http;
using System.Net.Http.Headers;
using System.Text;
using System.Threading.Tasks;
using Newtonsoft.Json;

/// <<summary>>
/// Example of Http Client
/// <</summary>>
public class HttpExample
{
    private HttpClient Client { get; set; }

    /// <<summary>>
    /// Setup http client
    /// <</summary>>
    public HttpExample()
    {
      Client = new HttpClient();
    }


    /// Make a dummy request
    public async Task MakePostRequest()
    {
      string url = "https://{environment}.doxai.co/{basePath}/live-match/eyes";


      await PostAsync(null, url);

    }

    /// Performs a POST Request
    public async Task PostAsync(undefined content, string url)
    {
        //Serialize Object
        StringContent jsonContent = SerializeObject(content);

        //Execute POST request
        HttpResponseMessage response = await Client.PostAsync(url, jsonContent);
    }



    /// Serialize an object to Json
    private StringContent SerializeObject(undefined content)
    {
        //Serialize Object
        string jsonObject = JsonConvert.SerializeObject(content);

        //Create Json UTF8 String Content
        return new StringContent(jsonObject, Encoding.UTF8, "application/json");
    }

    /// Deserialize object from request response
    private async Task DeserializeObject(HttpResponseMessage response)
    {
        //Read body 
        string responseBody = await response.Content.ReadAsStringAsync();

        //Deserialize Body to object
        var result = JsonConvert.DeserializeObject(responseBody);
    }
}

require 'rest-client'
require 'json'

headers = {
  'Content-Type' => 'multipart/form-data',
  'Accept' => 'application/json',
  'x-access-key' => 'ed86deba-c5c9-488e-b90b-dc645785f12b',
  'x-secret-key' => '5a9c2dbf-0d26-598d-8f92-932c7ae550e1'
}

result = RestClient.post 'https://{environment}.doxai.co/{basePath}/live-match/eyes',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Content-Type': 'multipart/form-data',
  'Accept': 'application/json',
  'x-access-key': 'ed86deba-c5c9-488e-b90b-dc645785f12b',
  'x-secret-key': '5a9c2dbf-0d26-598d-8f92-932c7ae550e1'
}

r = requests.post('https://{environment}.doxai.co/{basePath}/live-match/eyes', headers = headers)

print(r.json())

const inputBody = '{
  "id": "",
  "image1": "",
  "image2": ""
}';
const headers = {
  'Content-Type':'multipart/form-data',
  'Accept':'application/json',
  'x-access-key':'ed86deba-c5c9-488e-b90b-dc645785f12b',
  'x-secret-key':'5a9c2dbf-0d26-598d-8f92-932c7ae550e1'
};

fetch('https://{environment}.doxai.co/{basePath}/live-match/eyes',
{
  method: 'POST',
  body: inputBody,
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

<?php

require 'vendor/autoload.php';

$headers = array(
    'Content-Type' => 'multipart/form-data',
    'Accept' => 'application/json',
    'x-access-key' => 'ed86deba-c5c9-488e-b90b-dc645785f12b',
    'x-secret-key' => '5a9c2dbf-0d26-598d-8f92-932c7ae550e1',
);

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
    $response = $client->request('POST','https://{environment}.doxai.co/{basePath}/live-match/eyes', array(
        'headers' => $headers,
        'json' => $request_body,
       )
    );
    print_r($response->getBody()->getContents());
 }
 catch (\GuzzleHttp\Exception\BadResponseException $e) {
    // handle exception or api errors.
    print_r($e->getMessage());
 }

 // ...

URL obj = new URL("https://{environment}.doxai.co/{basePath}/live-match/eyes");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("POST");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Content-Type": []string{"multipart/form-data"},
        "Accept": []string{"application/json"},
        "x-access-key": []string{"ed86deba-c5c9-488e-b90b-dc645785f12b"},
        "x-secret-key": []string{"5a9c2dbf-0d26-598d-8f92-932c7ae550e1"},
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("POST", "https://{environment}.doxai.co/{basePath}/live-match/eyes", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

POST /live-match/eyes

Biometric face analysis on ID and photo with eyes check.

Body parameter

id: ""
image1: ""
image2: ""

Parameters

Name In Type Required Description
x-access-key header string true none
x-secret-key header string true none
body body object true none
» id body string(binary) true Upload Valid Id Proof
» image1 body string(binary) true Upload image with face center and eyes open
» image2 body string(binary) true Upload image with face center and eyes closed

Example responses

200 Response

{
  "msg": "Request Success",
  "data": {
    "faceComparision": "Failed",
    "faceMatched": "false",
    "imageLiveness": "false",
    "idType": "Driving License",
    "idConfidence": 97.12,
    "image1": {
      "result": "The face doesn't match",
      "details": {
        "isFaceCenter": true,
        "isFaceLeft": true,
        "isFaceRight": true,
        "isEyesOpen": false,
        "isWearingEyeGlasses": false,
        "isWearingSunglasses": false,
        "eyesConfidence": 95.71,
        "similarity": 95.71,
        "faceMatched": false,
        "age": {
          "low": null,
          "high": null
        }
      }
    },
    "image2": {
      "result": "The face doesn't match",
      "details": {
        "isFaceCenter": true,
        "isFaceLeft": true,
        "isFaceRight": true,
        "isEyesOpen": false,
        "isWearingEyeGlasses": false,
        "isWearingSunglasses": false,
        "eyesConfidence": 95.71,
        "similarity": 95.71,
        "faceMatched": false,
        "age": {
          "low": null,
          "high": null
        }
      }
    }
  }
}

Responses

Status Meaning Description Schema
200 OK Successfull Operation liveMatchEyes
400 Bad Request Bad Request Inline
401 Unauthorized Bad Request Inline
500 Internal Server Error Failed Operation Inline

Response Schema

Status Code 400

Name Type Required Restrictions Description
» msg string false none none

Status Code 401

Name Type Required Restrictions Description
» msg string false none none

Status Code 500

Name Type Required Restrictions Description
» msg string false none none

Live Match Five Step Eyes

Code samples

# You can also use wget
curl -X POST https://{environment}.doxai.co/{basePath}/live-match/five-step/eyes \
  -H 'Content-Type: multipart/form-data' \
  -H 'Accept: application/json' \
  -H 'x-access-key: 0da258b0-ba6f-4088-8594-c9f83b5f1a5a' \
  -H 'x-secret-key: aed8970e-627d-51d0-aa09-366de2ea595a'

POST https://{environment}.doxai.co/{basePath}/live-match/five-step/eyes HTTP/1.1

Content-Type: multipart/form-data
Accept: application/json
x-access-key: 0da258b0-ba6f-4088-8594-c9f83b5f1a5a
x-secret-key: aed8970e-627d-51d0-aa09-366de2ea595a

using System;
using System.Collections.Generic;
using System.Net.Http;
using System.Net.Http.Headers;
using System.Text;
using System.Threading.Tasks;
using Newtonsoft.Json;

/// <<summary>>
/// Example of Http Client
/// <</summary>>
public class HttpExample
{
    private HttpClient Client { get; set; }

    /// <<summary>>
    /// Setup http client
    /// <</summary>>
    public HttpExample()
    {
      Client = new HttpClient();
    }


    /// Make a dummy request
    public async Task MakePostRequest()
    {
      string url = "https://{environment}.doxai.co/{basePath}/live-match/five-step/eyes";


      await PostAsync(null, url);

    }

    /// Performs a POST Request
    public async Task PostAsync(undefined content, string url)
    {
        //Serialize Object
        StringContent jsonContent = SerializeObject(content);

        //Execute POST request
        HttpResponseMessage response = await Client.PostAsync(url, jsonContent);
    }



    /// Serialize an object to Json
    private StringContent SerializeObject(undefined content)
    {
        //Serialize Object
        string jsonObject = JsonConvert.SerializeObject(content);

        //Create Json UTF8 String Content
        return new StringContent(jsonObject, Encoding.UTF8, "application/json");
    }

    /// Deserialize object from request response
    private async Task DeserializeObject(HttpResponseMessage response)
    {
        //Read body 
        string responseBody = await response.Content.ReadAsStringAsync();

        //Deserialize Body to object
        var result = JsonConvert.DeserializeObject(responseBody);
    }
}

require 'rest-client'
require 'json'

headers = {
  'Content-Type' => 'multipart/form-data',
  'Accept' => 'application/json',
  'x-access-key' => '0da258b0-ba6f-4088-8594-c9f83b5f1a5a',
  'x-secret-key' => 'aed8970e-627d-51d0-aa09-366de2ea595a'
}

result = RestClient.post 'https://{environment}.doxai.co/{basePath}/live-match/five-step/eyes',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Content-Type': 'multipart/form-data',
  'Accept': 'application/json',
  'x-access-key': '0da258b0-ba6f-4088-8594-c9f83b5f1a5a',
  'x-secret-key': 'aed8970e-627d-51d0-aa09-366de2ea595a'
}

r = requests.post('https://{environment}.doxai.co/{basePath}/live-match/five-step/eyes', headers = headers)

print(r.json())

const inputBody = '{
  "id": "",
  "image1": "",
  "image2": "",
  "image3": "",
  "image4": ""
}';
const headers = {
  'Content-Type':'multipart/form-data',
  'Accept':'application/json',
  'x-access-key':'0da258b0-ba6f-4088-8594-c9f83b5f1a5a',
  'x-secret-key':'aed8970e-627d-51d0-aa09-366de2ea595a'
};

fetch('https://{environment}.doxai.co/{basePath}/live-match/five-step/eyes',
{
  method: 'POST',
  body: inputBody,
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

<?php

require 'vendor/autoload.php';

$headers = array(
    'Content-Type' => 'multipart/form-data',
    'Accept' => 'application/json',
    'x-access-key' => '0da258b0-ba6f-4088-8594-c9f83b5f1a5a',
    'x-secret-key' => 'aed8970e-627d-51d0-aa09-366de2ea595a',
);

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
    $response = $client->request('POST','https://{environment}.doxai.co/{basePath}/live-match/five-step/eyes', array(
        'headers' => $headers,
        'json' => $request_body,
       )
    );
    print_r($response->getBody()->getContents());
 }
 catch (\GuzzleHttp\Exception\BadResponseException $e) {
    // handle exception or api errors.
    print_r($e->getMessage());
 }

 // ...

URL obj = new URL("https://{environment}.doxai.co/{basePath}/live-match/five-step/eyes");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("POST");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Content-Type": []string{"multipart/form-data"},
        "Accept": []string{"application/json"},
        "x-access-key": []string{"0da258b0-ba6f-4088-8594-c9f83b5f1a5a"},
        "x-secret-key": []string{"aed8970e-627d-51d0-aa09-366de2ea595a"},
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("POST", "https://{environment}.doxai.co/{basePath}/live-match/five-step/eyes", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

POST /live-match/five-step/eyes

Biometric face analysis on ID and photo with eyes and face orientation check.

Body parameter

id: ""
image1: ""
image2: ""
image3: ""
image4: ""

Parameters

Name In Type Required Description
x-access-key header string true none
x-secret-key header string true none
body body object true none
» id body string(binary) true Upload Valid Id Proof
» image1 body string(binary) true Upload images with Face center and eyes open
» image2 body string(binary) true Upload images with Face center and eyes closed
» image3 body string(binary) true Upload images with Face slightly turned towards left
» image4 body string(binary) true Upload images with Face slightly turned towards right

Example responses

200 Response

{
  "msg": "Request Success",
  "data": {
    "faceComparision": "Failed",
    "faceMatched": false,
    "imageLiveness": false,
    "idType": "Driving License",
    "idConfidence": 97.12,
    "image1": {
      "result": "The face doesn't match",
      "details": {
        "isFaceCenter": true,
        "isFaceLeft": true,
        "isFaceRight": true,
        "isEyesOpen": false,
        "isWearingEyeGlasses": false,
        "isWearingSunglasses": false,
        "eyesConfidence": 95.71,
        "similarity": 95.71,
        "faceMatched": false,
        "age": {
          "low": null,
          "high": null
        }
      }
    },
    "image2": {
      "result": "The face doesn't match",
      "details": {
        "isFaceCenter": true,
        "isFaceLeft": true,
        "isFaceRight": true,
        "isEyesOpen": false,
        "isWearingEyeGlasses": false,
        "isWearingSunglasses": false,
        "eyesConfidence": 86.68,
        "age": {
          "low": null,
          "high": null
        }
      }
    },
    "Image3": {
      "result": "The face doesn't match",
      "details": {
        "isFaceCenter": true,
        "isFaceLeft": true,
        "isFaceRight": true,
        "isEyesOpen": false,
        "eyesConfidence": 86.68,
        "age": {
          "low": null,
          "high": null
        }
      }
    },
    "Image4": {
      "result": "string",
      "details": {
        "isFaceCenter": false,
        "isEyesOpen": false,
        "eyesConfidence": 86.68,
        "age": {
          "low": null,
          "high": null
        }
      }
    },
    "Image5": {
      "result": "string",
      "details": {
        "isFaceCenter": true,
        "isFaceLeft": true,
        "isFaceRight": true,
        "isEyesOpen": false,
        "isWearingEyeGlasses": false,
        "isWearingSunglasses": false,
        "eyesConfidence": 95.71,
        "similarity": 95.71,
        "faceMatched": false,
        "age": {
          "low": null,
          "high": null
        }
      }
    }
  }
}

Responses

Status Meaning Description Schema
200 OK Successfull Operation liveMatchFiveStepEyes
400 Bad Request Bad Request Inline
401 Unauthorized Bad Request Inline
500 Internal Server Error Failed Operation Inline

Response Schema

Status Code 400

Name Type Required Restrictions Description
» msg string false none none

Status Code 401

Name Type Required Restrictions Description
» msg string false none none

Status Code 500

Name Type Required Restrictions Description
» msg string false none none

Live Match Smile

Code samples

# You can also use wget
curl -X POST https://{environment}.doxai.co/{basePath}/live-match/smile \
  -H 'Content-Type: multipart/form-data' \
  -H 'Accept: application/json' \
  -H 'x-access-key: c4abae7c-37d4-4ff7-933e-e79da42509a8' \
  -H 'x-secret-key: 77cd8cae-b097-5c57-b0b4-e0a85670d4d8'

POST https://{environment}.doxai.co/{basePath}/live-match/smile HTTP/1.1

Content-Type: multipart/form-data
Accept: application/json
x-access-key: c4abae7c-37d4-4ff7-933e-e79da42509a8
x-secret-key: 77cd8cae-b097-5c57-b0b4-e0a85670d4d8

using System;
using System.Collections.Generic;
using System.Net.Http;
using System.Net.Http.Headers;
using System.Text;
using System.Threading.Tasks;
using Newtonsoft.Json;

/// <<summary>>
/// Example of Http Client
/// <</summary>>
public class HttpExample
{
    private HttpClient Client { get; set; }

    /// <<summary>>
    /// Setup http client
    /// <</summary>>
    public HttpExample()
    {
      Client = new HttpClient();
    }


    /// Make a dummy request
    public async Task MakePostRequest()
    {
      string url = "https://{environment}.doxai.co/{basePath}/live-match/smile";


      await PostAsync(null, url);

    }

    /// Performs a POST Request
    public async Task PostAsync(undefined content, string url)
    {
        //Serialize Object
        StringContent jsonContent = SerializeObject(content);

        //Execute POST request
        HttpResponseMessage response = await Client.PostAsync(url, jsonContent);
    }



    /// Serialize an object to Json
    private StringContent SerializeObject(undefined content)
    {
        //Serialize Object
        string jsonObject = JsonConvert.SerializeObject(content);

        //Create Json UTF8 String Content
        return new StringContent(jsonObject, Encoding.UTF8, "application/json");
    }

    /// Deserialize object from request response
    private async Task DeserializeObject(HttpResponseMessage response)
    {
        //Read body 
        string responseBody = await response.Content.ReadAsStringAsync();

        //Deserialize Body to object
        var result = JsonConvert.DeserializeObject(responseBody);
    }
}

require 'rest-client'
require 'json'

headers = {
  'Content-Type' => 'multipart/form-data',
  'Accept' => 'application/json',
  'x-access-key' => 'c4abae7c-37d4-4ff7-933e-e79da42509a8',
  'x-secret-key' => '77cd8cae-b097-5c57-b0b4-e0a85670d4d8'
}

result = RestClient.post 'https://{environment}.doxai.co/{basePath}/live-match/smile',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Content-Type': 'multipart/form-data',
  'Accept': 'application/json',
  'x-access-key': 'c4abae7c-37d4-4ff7-933e-e79da42509a8',
  'x-secret-key': '77cd8cae-b097-5c57-b0b4-e0a85670d4d8'
}

r = requests.post('https://{environment}.doxai.co/{basePath}/live-match/smile', headers = headers)

print(r.json())

const inputBody = '{
  "id": "",
  "image1": "",
  "image2": ""
}';
const headers = {
  'Content-Type':'multipart/form-data',
  'Accept':'application/json',
  'x-access-key':'c4abae7c-37d4-4ff7-933e-e79da42509a8',
  'x-secret-key':'77cd8cae-b097-5c57-b0b4-e0a85670d4d8'
};

fetch('https://{environment}.doxai.co/{basePath}/live-match/smile',
{
  method: 'POST',
  body: inputBody,
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

<?php

require 'vendor/autoload.php';

$headers = array(
    'Content-Type' => 'multipart/form-data',
    'Accept' => 'application/json',
    'x-access-key' => 'c4abae7c-37d4-4ff7-933e-e79da42509a8',
    'x-secret-key' => '77cd8cae-b097-5c57-b0b4-e0a85670d4d8',
);

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
    $response = $client->request('POST','https://{environment}.doxai.co/{basePath}/live-match/smile', array(
        'headers' => $headers,
        'json' => $request_body,
       )
    );
    print_r($response->getBody()->getContents());
 }
 catch (\GuzzleHttp\Exception\BadResponseException $e) {
    // handle exception or api errors.
    print_r($e->getMessage());
 }

 // ...

URL obj = new URL("https://{environment}.doxai.co/{basePath}/live-match/smile");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("POST");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Content-Type": []string{"multipart/form-data"},
        "Accept": []string{"application/json"},
        "x-access-key": []string{"c4abae7c-37d4-4ff7-933e-e79da42509a8"},
        "x-secret-key": []string{"77cd8cae-b097-5c57-b0b4-e0a85670d4d8"},
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("POST", "https://{environment}.doxai.co/{basePath}/live-match/smile", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

POST /live-match/smile

Biometric face analysis on ID and photo with smile check.

Body parameter

id: ""
image1: ""
image2: ""

Parameters

Name In Type Required Description
x-access-key header string true none
x-secret-key header string true none
body body object true none
» id body string(binary) true Upload Valid Id Proof
» image1 body string(binary) true Upload images with face center and without smiling
» image2 body string(binary) true Upload images with face center and with smiling

Example responses

200 Response

{
  "msg": "Request Success",
  "data": {
    "faceComparision": "Failed",
    "faceMatched": "false",
    "imageLiveness": "false",
    "idType": "Driving License",
    "idConfidence": 97.12,
    "image1": {
      "result": "The face doesn't match",
      "details": {
        "isFaceCenter": true,
        "isFaceLeft": true,
        "isFaceRight": true,
        "smilingConfidence": 95.71,
        "similarity": 95.71,
        "faceMatched": false,
        "age": {
          "low": null,
          "high": null
        }
      }
    },
    "image2": {
      "result": "The face doesn't match",
      "details": {
        "isFaceCenter": true,
        "isFaceLeft": true,
        "isFaceRight": true,
        "smilingConfidence": 95.71,
        "similarity": 95.71,
        "faceMatched": false,
        "age": {
          "low": null,
          "high": null
        }
      }
    }
  }
}

Responses

Status Meaning Description Schema
200 OK Successfull Operation liveMatchSmile
400 Bad Request Bad Request Inline
401 Unauthorized Bad Request Inline
500 Internal Server Error Failed Operation Inline

Response Schema

Status Code 400

Name Type Required Restrictions Description
» msg string false none none

Status Code 401

Name Type Required Restrictions Description
» msg string false none none

Status Code 500

Name Type Required Restrictions Description
» msg string false none none

Live Match Five Step Smile

Code samples

# You can also use wget
curl -X POST https://{environment}.doxai.co/{basePath}/live-match/five-step/smile \
  -H 'Content-Type: multipart/form-data' \
  -H 'Accept: application/json' \
  -H 'x-access-key: 8c54fb1c-f72a-4386-a51a-aeb5715e4e5f' \
  -H 'x-secret-key: e9ff1637-10f5-53ee-bb2c-52b6b3996dc1'

POST https://{environment}.doxai.co/{basePath}/live-match/five-step/smile HTTP/1.1

Content-Type: multipart/form-data
Accept: application/json
x-access-key: 8c54fb1c-f72a-4386-a51a-aeb5715e4e5f
x-secret-key: e9ff1637-10f5-53ee-bb2c-52b6b3996dc1

using System;
using System.Collections.Generic;
using System.Net.Http;
using System.Net.Http.Headers;
using System.Text;
using System.Threading.Tasks;
using Newtonsoft.Json;

/// <<summary>>
/// Example of Http Client
/// <</summary>>
public class HttpExample
{
    private HttpClient Client { get; set; }

    /// <<summary>>
    /// Setup http client
    /// <</summary>>
    public HttpExample()
    {
      Client = new HttpClient();
    }


    /// Make a dummy request
    public async Task MakePostRequest()
    {
      string url = "https://{environment}.doxai.co/{basePath}/live-match/five-step/smile";


      await PostAsync(null, url);

    }

    /// Performs a POST Request
    public async Task PostAsync(undefined content, string url)
    {
        //Serialize Object
        StringContent jsonContent = SerializeObject(content);

        //Execute POST request
        HttpResponseMessage response = await Client.PostAsync(url, jsonContent);
    }



    /// Serialize an object to Json
    private StringContent SerializeObject(undefined content)
    {
        //Serialize Object
        string jsonObject = JsonConvert.SerializeObject(content);

        //Create Json UTF8 String Content
        return new StringContent(jsonObject, Encoding.UTF8, "application/json");
    }

    /// Deserialize object from request response
    private async Task DeserializeObject(HttpResponseMessage response)
    {
        //Read body 
        string responseBody = await response.Content.ReadAsStringAsync();

        //Deserialize Body to object
        var result = JsonConvert.DeserializeObject(responseBody);
    }
}

require 'rest-client'
require 'json'

headers = {
  'Content-Type' => 'multipart/form-data',
  'Accept' => 'application/json',
  'x-access-key' => '8c54fb1c-f72a-4386-a51a-aeb5715e4e5f',
  'x-secret-key' => 'e9ff1637-10f5-53ee-bb2c-52b6b3996dc1'
}

result = RestClient.post 'https://{environment}.doxai.co/{basePath}/live-match/five-step/smile',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Content-Type': 'multipart/form-data',
  'Accept': 'application/json',
  'x-access-key': '8c54fb1c-f72a-4386-a51a-aeb5715e4e5f',
  'x-secret-key': 'e9ff1637-10f5-53ee-bb2c-52b6b3996dc1'
}

r = requests.post('https://{environment}.doxai.co/{basePath}/live-match/five-step/smile', headers = headers)

print(r.json())

const inputBody = '{
  "id": "",
  "image1": "",
  "image2": "",
  "image3": "",
  "image4": ""
}';
const headers = {
  'Content-Type':'multipart/form-data',
  'Accept':'application/json',
  'x-access-key':'8c54fb1c-f72a-4386-a51a-aeb5715e4e5f',
  'x-secret-key':'e9ff1637-10f5-53ee-bb2c-52b6b3996dc1'
};

fetch('https://{environment}.doxai.co/{basePath}/live-match/five-step/smile',
{
  method: 'POST',
  body: inputBody,
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

<?php

require 'vendor/autoload.php';

$headers = array(
    'Content-Type' => 'multipart/form-data',
    'Accept' => 'application/json',
    'x-access-key' => '8c54fb1c-f72a-4386-a51a-aeb5715e4e5f',
    'x-secret-key' => 'e9ff1637-10f5-53ee-bb2c-52b6b3996dc1',
);

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
    $response = $client->request('POST','https://{environment}.doxai.co/{basePath}/live-match/five-step/smile', array(
        'headers' => $headers,
        'json' => $request_body,
       )
    );
    print_r($response->getBody()->getContents());
 }
 catch (\GuzzleHttp\Exception\BadResponseException $e) {
    // handle exception or api errors.
    print_r($e->getMessage());
 }

 // ...

URL obj = new URL("https://{environment}.doxai.co/{basePath}/live-match/five-step/smile");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("POST");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Content-Type": []string{"multipart/form-data"},
        "Accept": []string{"application/json"},
        "x-access-key": []string{"8c54fb1c-f72a-4386-a51a-aeb5715e4e5f"},
        "x-secret-key": []string{"e9ff1637-10f5-53ee-bb2c-52b6b3996dc1"},
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("POST", "https://{environment}.doxai.co/{basePath}/live-match/five-step/smile", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

POST /live-match/five-step/smile

Biometric face analysis on ID and photo with smile and face orientation check.

Body parameter

id: ""
image1: ""
image2: ""
image3: ""
image4: ""

Parameters

Name In Type Required Description
x-access-key header string true none
x-secret-key header string true none
body body object true none
» id body string(binary) true Upload Valid Id Proof
» image1 body string(binary) true Upload images with Face center and without smiling
» image2 body string(binary) true Upload images with Face center and with smiling
» image3 body string(binary) true Upload images with Face slightly turned towards left
» image4 body string(binary) true Upload images with Face slightly turned towards right

Example responses

200 Response

{
  "msg": "Request Success",
  "data": {
    "faceComparision": "Failed",
    "faceMatched": false,
    "imageLiveness": false,
    "idType": "Driving License",
    "idConfidence": 97.12,
    "image1": {
      "result": "The face doesn't match",
      "details": {
        "isFaceCenter": true,
        "isFaceLeft": true,
        "isFaceRight": true,
        "smilingConfidence": 95.71,
        "similarity": 95.71,
        "faceMatched": false,
        "age": {
          "low": null,
          "high": null
        }
      }
    },
    "image2": {
      "result": "The face doesn't match",
      "details": {
        "isFaceCenter": true,
        "isFaceLeft": true,
        "isFaceRight": true,
        "smilingConfidence": 95.71,
        "similarity": 95.71,
        "faceMatched": false,
        "age": {
          "low": null,
          "high": null
        }
      }
    },
    "image3": {
      "result": "The face doesn't match",
      "details": {
        "isFaceCenter": true,
        "isFaceLeft": true,
        "isFaceRight": true,
        "smilingConfidence": 95.71,
        "similarity": 95.71,
        "faceMatched": false,
        "age": {
          "low": null,
          "high": null
        }
      }
    },
    "image4": {
      "result": "The face doesn't match",
      "details": {
        "isFaceCenter": true,
        "isFaceLeft": true,
        "isFaceRight": true,
        "smilingConfidence": 95.71,
        "similarity": 95.71,
        "faceMatched": false,
        "age": {
          "low": null,
          "high": null
        }
      }
    }
  }
}

Responses

Status Meaning Description Schema
200 OK Successfull Operation liveMatchFiveStepSmile
400 Bad Request Bad Request Inline
401 Unauthorized Bad Request Inline
500 Internal Server Error Failed Operation Inline

Response Schema

Status Code 400

Name Type Required Restrictions Description
» msg string false none none

Status Code 401

Name Type Required Restrictions Description
» msg string false none none

Status Code 500

Name Type Required Restrictions Description
» msg string false none none

Redact AI

Redact Upload

Code samples

# You can also use wget
curl -X POST https://{environment}.doxai.co/{basePath}/redact/upload \
  -H 'Content-Type: multipart/form-data' \
  -H 'Accept: application/json' \
  -H 'x-access-key: 6165eb51-dcce-47a3-8d60-9c375c8f143a' \
  -H 'x-secret-key: 1c5ba1ed-8676-57aa-9e62-e0ebe440e5c8'

POST https://{environment}.doxai.co/{basePath}/redact/upload HTTP/1.1

Content-Type: multipart/form-data
Accept: application/json
x-access-key: 6165eb51-dcce-47a3-8d60-9c375c8f143a
x-secret-key: 1c5ba1ed-8676-57aa-9e62-e0ebe440e5c8

using System;
using System.Collections.Generic;
using System.Net.Http;
using System.Net.Http.Headers;
using System.Text;
using System.Threading.Tasks;
using Newtonsoft.Json;

/// <<summary>>
/// Example of Http Client
/// <</summary>>
public class HttpExample
{
    private HttpClient Client { get; set; }

    /// <<summary>>
    /// Setup http client
    /// <</summary>>
    public HttpExample()
    {
      Client = new HttpClient();
    }


    /// Make a dummy request
    public async Task MakePostRequest()
    {
      string url = "https://{environment}.doxai.co/{basePath}/redact/upload";


      await PostAsync(null, url);

    }

    /// Performs a POST Request
    public async Task PostAsync(undefined content, string url)
    {
        //Serialize Object
        StringContent jsonContent = SerializeObject(content);

        //Execute POST request
        HttpResponseMessage response = await Client.PostAsync(url, jsonContent);
    }



    /// Serialize an object to Json
    private StringContent SerializeObject(undefined content)
    {
        //Serialize Object
        string jsonObject = JsonConvert.SerializeObject(content);

        //Create Json UTF8 String Content
        return new StringContent(jsonObject, Encoding.UTF8, "application/json");
    }

    /// Deserialize object from request response
    private async Task DeserializeObject(HttpResponseMessage response)
    {
        //Read body 
        string responseBody = await response.Content.ReadAsStringAsync();

        //Deserialize Body to object
        var result = JsonConvert.DeserializeObject(responseBody);
    }
}

require 'rest-client'
require 'json'

headers = {
  'Content-Type' => 'multipart/form-data',
  'Accept' => 'application/json',
  'x-access-key' => '6165eb51-dcce-47a3-8d60-9c375c8f143a',
  'x-secret-key' => '1c5ba1ed-8676-57aa-9e62-e0ebe440e5c8'
}

result = RestClient.post 'https://{environment}.doxai.co/{basePath}/redact/upload',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Content-Type': 'multipart/form-data',
  'Accept': 'application/json',
  'x-access-key': '6165eb51-dcce-47a3-8d60-9c375c8f143a',
  'x-secret-key': '1c5ba1ed-8676-57aa-9e62-e0ebe440e5c8'
}

r = requests.post('https://{environment}.doxai.co/{basePath}/redact/upload', headers = headers)

print(r.json())

const inputBody = '{
  "file": "",
  "docId": "60b8a1071cd21b526cc42800",
  "autoRedact": "true",
  "fields": [
    {
      "key": "ABN",
      "percentage": "25"
    }
  ],
  "customfields": [
    "string"
  ],
  "color": "yellow",
  "draw": [
    {
      "pageNumber": "1",
      "coordinates": [
        "86,171,178,209"
      ]
    }
  ]
}';
const headers = {
  'Content-Type':'multipart/form-data',
  'Accept':'application/json',
  'x-access-key':'6165eb51-dcce-47a3-8d60-9c375c8f143a',
  'x-secret-key':'1c5ba1ed-8676-57aa-9e62-e0ebe440e5c8'
};

fetch('https://{environment}.doxai.co/{basePath}/redact/upload',
{
  method: 'POST',
  body: inputBody,
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

<?php

require 'vendor/autoload.php';

$headers = array(
    'Content-Type' => 'multipart/form-data',
    'Accept' => 'application/json',
    'x-access-key' => '6165eb51-dcce-47a3-8d60-9c375c8f143a',
    'x-secret-key' => '1c5ba1ed-8676-57aa-9e62-e0ebe440e5c8',
);

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
    $response = $client->request('POST','https://{environment}.doxai.co/{basePath}/redact/upload', array(
        'headers' => $headers,
        'json' => $request_body,
       )
    );
    print_r($response->getBody()->getContents());
 }
 catch (\GuzzleHttp\Exception\BadResponseException $e) {
    // handle exception or api errors.
    print_r($e->getMessage());
 }

 // ...

URL obj = new URL("https://{environment}.doxai.co/{basePath}/redact/upload");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("POST");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Content-Type": []string{"multipart/form-data"},
        "Accept": []string{"application/json"},
        "x-access-key": []string{"6165eb51-dcce-47a3-8d60-9c375c8f143a"},
        "x-secret-key": []string{"1c5ba1ed-8676-57aa-9e62-e0ebe440e5c8"},
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("POST", "https://{environment}.doxai.co/{basePath}/redact/upload", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

POST /redact/upload

Redact the values of Tax File Number, Australian Company Number, Australian Business Number

Body parameter

file: ""
docId: 60b8a1071cd21b526cc42800
autoRedact: "true"
fields:
  - key: ABN
    percentage: "25"
customfields:
  - string
color: yellow
draw:
  - pageNumber: "1"
    coordinates:
      - 86,171,178,209

Parameters

Name In Type Required Description
x-access-key header string true none
x-secret-key header string true none
body body object true none
» file body string(binary) true Upload the file in image, pdf, doc, docx, xlsx, and csv format
» docId body string false Enter the docId of particular document
» autoRedact body boolean false AutoRedact field should be always in True state to complete Redaction Process
» fields body [object] false Fields must contain atleast one of the following ABN, ACN, AN, DCN, CCN, REF, TFN, DLN, PN, PRN, EFT, CRN, PII, BII
»» key body string false none
»» percentage body any false none
» customfields body [string] false Add custom field values that needs to be Redacted
» color body string false Color is optional
» draw body [object] false Add custom points to Redact
»» pageNumber body string false custom points pageNumber
»» coordinates body [string] false none

Detailed descriptions

» fields: Fields must contain atleast one of the following ABN, ACN, AN, DCN, CCN, REF, TFN, DLN, PN, PRN, EFT, CRN, PII, BII
PII and BII field percentages must always be 100
The Spreadsheet format(xlsx,xls,csv) files support only ABN, ACN, TFN, CCN, DCN fields. currently supports up to 5 sheets in a workbook and maximum of 100 rows/columns

Enumerated Values

Parameter Value
»» percentage 25
»» percentage 50
»» percentage 75
»» percentage 100

Example responses

202 Response

{
  "msg": "File Uploading has been initiated",
  "data": {
    "requestId": "fe25db69-7ef0-4054-92ef-2ea6e5b4b130"
  }
}

Responses

Status Meaning Description Schema
202 Accepted Successfull Operation redact
400 Bad Request Bad Request Inline
401 Unauthorized Unauthorized Inline
403 Forbidden Forbidden Inline
500 Internal Server Error Failed Operation Inline

Response Schema

Status Code 400

Name Type Required Restrictions Description
» msg string false none none

Status Code 401

Name Type Required Restrictions Description
» msg string false none none

Status Code 403

Name Type Required Restrictions Description
» msg string false none none

Status Code 500

Name Type Required Restrictions Description
» msg string false none none

Redact details

Code samples

# You can also use wget
curl -X GET https://{environment}.doxai.co/{basePath}/redact/detail \
  -H 'Accept: application/json' \
  -H 'x-access-key: 5d46e3a8-b2a0-4593-81ad-71b20ad7c4ab' \
  -H 'x-secret-key: 6d40374f-704c-593d-93df-b076ffe1427f'

GET https://{environment}.doxai.co/{basePath}/redact/detail HTTP/1.1

Accept: application/json
x-access-key: 5d46e3a8-b2a0-4593-81ad-71b20ad7c4ab
x-secret-key: 6d40374f-704c-593d-93df-b076ffe1427f

using System;
using System.Collections.Generic;
using System.Net.Http;
using System.Net.Http.Headers;
using System.Text;
using System.Threading.Tasks;
using Newtonsoft.Json;

/// <<summary>>
/// Example of Http Client
/// <</summary>>
public class HttpExample
{
    private HttpClient Client { get; set; }

    /// <<summary>>
    /// Setup http client
    /// <</summary>>
    public HttpExample()
    {
      Client = new HttpClient();
    }

    /// Make a dummy request
    public async Task MakeGetRequest()
    {
      string url = "https://{environment}.doxai.co/{basePath}/redact/detail";
      var result = await GetAsync(url);
    }

    /// Performs a GET Request
    public async Task GetAsync(string url)
    {
        //Start the request
        HttpResponseMessage response = await Client.GetAsync(url);

        //Validate result
        response.EnsureSuccessStatusCode();

    }




    /// Deserialize object from request response
    private async Task DeserializeObject(HttpResponseMessage response)
    {
        //Read body 
        string responseBody = await response.Content.ReadAsStringAsync();

        //Deserialize Body to object
        var result = JsonConvert.DeserializeObject(responseBody);
    }
}

require 'rest-client'
require 'json'

headers = {
  'Accept' => 'application/json',
  'x-access-key' => '5d46e3a8-b2a0-4593-81ad-71b20ad7c4ab',
  'x-secret-key' => '6d40374f-704c-593d-93df-b076ffe1427f'
}

result = RestClient.get 'https://{environment}.doxai.co/{basePath}/redact/detail',
  params: {
  'requestId' => 'undefined'
}, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': 'application/json',
  'x-access-key': '5d46e3a8-b2a0-4593-81ad-71b20ad7c4ab',
  'x-secret-key': '6d40374f-704c-593d-93df-b076ffe1427f'
}

r = requests.get('https://{environment}.doxai.co/{basePath}/redact/detail', params={
  'requestId': undefined
}, headers = headers)

print(r.json())


const headers = {
  'Accept':'application/json',
  'x-access-key':'5d46e3a8-b2a0-4593-81ad-71b20ad7c4ab',
  'x-secret-key':'6d40374f-704c-593d-93df-b076ffe1427f'
};

fetch('https://{environment}.doxai.co/{basePath}/redact/detail',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

<?php

require 'vendor/autoload.php';

$headers = array(
    'Accept' => 'application/json',
    'x-access-key' => '5d46e3a8-b2a0-4593-81ad-71b20ad7c4ab',
    'x-secret-key' => '6d40374f-704c-593d-93df-b076ffe1427f',
);

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
    $response = $client->request('GET','https://{environment}.doxai.co/{basePath}/redact/detail', array(
        'headers' => $headers,
        'json' => $request_body,
       )
    );
    print_r($response->getBody()->getContents());
 }
 catch (\GuzzleHttp\Exception\BadResponseException $e) {
    // handle exception or api errors.
    print_r($e->getMessage());
 }

 // ...

URL obj = new URL("https://{environment}.doxai.co/{basePath}/redact/detail");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Accept": []string{"application/json"},
        "x-access-key": []string{"5d46e3a8-b2a0-4593-81ad-71b20ad7c4ab"},
        "x-secret-key": []string{"6d40374f-704c-593d-93df-b076ffe1427f"},
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("GET", "https://{environment}.doxai.co/{basePath}/redact/detail", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

GET /redact/detail

Redact the values of Tax File Number, Australian Company Number, Australian Business Number

Parameters

Name In Type Required Description
x-access-key header string true none
x-secret-key header string true none
requestId query undefined true Request reference Id

Example responses

200 Response

{
  "message": "Request success",
  "data": {
    "redactionDetails": {
      "url": "https://doxaistag.blob.core.windows.net/redact/fe25db69-7ef0-4054-92ef-2ea6e5b4b130.pdf",
      "fileName": "vodafone.pdf",
      "events": "completed",
      "msg": "File processed successfully",
      "originalFileUrl": "https://doxaistag.blob.core.windows.net/redact/fe25db69-7ef0-4054-92ef-2ea6e5b4b130.pdf",
      "requestId": "76b4562e-dedf-407c-a454-39bd4512aac5"
    }
  }
}

Responses

Status Meaning Description Schema
200 OK Successfull Operation detail
400 Bad Request Bad Request Inline
401 Unauthorized Unauthorized Inline
403 Forbidden Forbidden Inline
500 Internal Server Error Failed Operation Inline

Response Schema

Status Code 400

Name Type Required Restrictions Description
» msg string false none none

Status Code 401

Name Type Required Restrictions Description
» msg string false none none

Status Code 403

Name Type Required Restrictions Description
» msg string false none none

Status Code 500

Name Type Required Restrictions Description
» msg string false none none

Australian DVS

Verifying biographic information on identity documents.

Driver Licence

Code samples

# You can also use wget
curl -X POST https://{environment}.doxai.co/{basePath}/australian-dvs/driverLicence \
  -H 'Content-Type: application/json' \
  -H 'Accept: application/json' \
  -H 'x-access-key: eb2f724d-e7da-47f7-91a9-36fa3454796e' \
  -H 'x-secret-key: 2a3f9689-cfb5-540c-b525-0ff6dd2facd9'

POST https://{environment}.doxai.co/{basePath}/australian-dvs/driverLicence HTTP/1.1

Content-Type: application/json
Accept: application/json
x-access-key: eb2f724d-e7da-47f7-91a9-36fa3454796e
x-secret-key: 2a3f9689-cfb5-540c-b525-0ff6dd2facd9

using System;
using System.Collections.Generic;
using System.Net.Http;
using System.Net.Http.Headers;
using System.Text;
using System.Threading.Tasks;
using Newtonsoft.Json;

/// <<summary>>
/// Example of Http Client
/// <</summary>>
public class HttpExample
{
    private HttpClient Client { get; set; }

    /// <<summary>>
    /// Setup http client
    /// <</summary>>
    public HttpExample()
    {
      Client = new HttpClient();
    }


    /// Make a dummy request
    public async Task MakePostRequest()
    {
      string url = "https://{environment}.doxai.co/{basePath}/australian-dvs/driverLicence";


      await PostAsync(null, url);

    }

    /// Performs a POST Request
    public async Task PostAsync(undefined content, string url)
    {
        //Serialize Object
        StringContent jsonContent = SerializeObject(content);

        //Execute POST request
        HttpResponseMessage response = await Client.PostAsync(url, jsonContent);
    }



    /// Serialize an object to Json
    private StringContent SerializeObject(undefined content)
    {
        //Serialize Object
        string jsonObject = JsonConvert.SerializeObject(content);

        //Create Json UTF8 String Content
        return new StringContent(jsonObject, Encoding.UTF8, "application/json");
    }

    /// Deserialize object from request response
    private async Task DeserializeObject(HttpResponseMessage response)
    {
        //Read body 
        string responseBody = await response.Content.ReadAsStringAsync();

        //Deserialize Body to object
        var result = JsonConvert.DeserializeObject(responseBody);
    }
}

require 'rest-client'
require 'json'

headers = {
  'Content-Type' => 'application/json',
  'Accept' => 'application/json',
  'x-access-key' => 'eb2f724d-e7da-47f7-91a9-36fa3454796e',
  'x-secret-key' => '2a3f9689-cfb5-540c-b525-0ff6dd2facd9'
}

result = RestClient.post 'https://{environment}.doxai.co/{basePath}/australian-dvs/driverLicence',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json',
  'x-access-key': 'eb2f724d-e7da-47f7-91a9-36fa3454796e',
  'x-secret-key': '2a3f9689-cfb5-540c-b525-0ff6dd2facd9'
}

r = requests.post('https://{environment}.doxai.co/{basePath}/australian-dvs/driverLicence', headers = headers)

print(r.json())

const inputBody = '{
  "BirthDate": "1965-01-01",
  "GivenName": "john",
  "MiddleName": "allen",
  "FamilyName": "smith",
  "LicenceNumber": "94977000",
  "CardNumber": "94977000",
  "StateOfIssue": "NSW"
}';
const headers = {
  'Content-Type':'application/json',
  'Accept':'application/json',
  'x-access-key':'eb2f724d-e7da-47f7-91a9-36fa3454796e',
  'x-secret-key':'2a3f9689-cfb5-540c-b525-0ff6dd2facd9'
};

fetch('https://{environment}.doxai.co/{basePath}/australian-dvs/driverLicence',
{
  method: 'POST',
  body: inputBody,
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

<?php

require 'vendor/autoload.php';

$headers = array(
    'Content-Type' => 'application/json',
    'Accept' => 'application/json',
    'x-access-key' => 'eb2f724d-e7da-47f7-91a9-36fa3454796e',
    'x-secret-key' => '2a3f9689-cfb5-540c-b525-0ff6dd2facd9',
);

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
    $response = $client->request('POST','https://{environment}.doxai.co/{basePath}/australian-dvs/driverLicence', array(
        'headers' => $headers,
        'json' => $request_body,
       )
    );
    print_r($response->getBody()->getContents());
 }
 catch (\GuzzleHttp\Exception\BadResponseException $e) {
    // handle exception or api errors.
    print_r($e->getMessage());
 }

 // ...

URL obj = new URL("https://{environment}.doxai.co/{basePath}/australian-dvs/driverLicence");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("POST");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Content-Type": []string{"application/json"},
        "Accept": []string{"application/json"},
        "x-access-key": []string{"eb2f724d-e7da-47f7-91a9-36fa3454796e"},
        "x-secret-key": []string{"2a3f9689-cfb5-540c-b525-0ff6dd2facd9"},
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("POST", "https://{environment}.doxai.co/{basePath}/australian-dvs/driverLicence", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

POST /australian-dvs/driverLicence

Validate driving License

Body parameter

{
  "BirthDate": "1965-01-01",
  "GivenName": "john",
  "MiddleName": "allen",
  "FamilyName": "smith",
  "LicenceNumber": "94977000",
  "CardNumber": "94977000",
  "StateOfIssue": "NSW"
}

Parameters

Name In Type Required Description
x-access-key header string true none
x-secret-key header string true none
body body object true none
» BirthDate body string(date) false BirthDate must be in YYYY-MM-DD format
» GivenName body string false GivenName can not contain more than 20 characters
If your given name is longer than 20 characters, only enter in the first 20 characters of your given name
If you have a single name, it can be entered in either the Given Name or Family Name field.
Enter a full stop ‘.’ or hyphen ‘-‘ in the blank field.
Recommended: Enter the single name into the Family Name field.
Single names with multiple fragments may represent a name with a Middle Name.
  • Example: "John James" might be Given/Family Name = John, Middle Name = James
  • In such cases, enter the Middle Name fragment into the Middle Name field, or omit it as the Middle Name field is optional.

    » MiddleName body string false MiddleName can not contain more than 20 characters
    If your middle name is longer than 20 characters, only enter in the first 20 characters of your middle name
    If the middle name is not on your licence – leave the field blank
    If the middle name appears as an initial – enter only the initial
    If the middle name appears as 2 initials – enter the full name of the first initial only
    » FamilyName body string false FamilyName can not contain more than 40 characters
    If your family name is longer than 40 characters, only enter in the first 40 characters of your family name
    » LicenceNumber body string false
    State/TerritoryFormatLength
    ACTNumericMax 10 characters
    NTNumericMax 10 characters
    QLDNumeric8 to 9 characters
    NSWAlphanumeric6 to 8 characters
    SAAlphanumericMax 6 character
    TASAlphanumeric6 to 8 characters
    VICNumericMax 10 characters
    WANumericMax 7 characters
    » CardNumber body string false
    State/TerritoryFormatLength
    ACTAlphanumericMax 10 characters
    NTNumericMax 6 to 8 characters
    QLDAlphanumericMax 10 characters
    NSWNumericMax 10 characters
    SAAlphanumericMax 9 character
    TASAlphanumericMax 9 characters
    VICAlphanumericMax 8 characters
    WAAlphanumeric 8 to 10 characters

    The below table provides information about the states that have mandated card number field against mentioned dates.
    State/Territory Date
    NSW,ACT,SA,WA,TAS,NT 1st Sept 2022
    QLD 7th Nov 2022
    VIC 8:00 AM AEDT, 19th Dec 2022
    » StateOfIssue body string false StateofIssue must be one of the following NSW, QLD, SA, TAS, VIC, WA, ACT, JBT, NT

    Additional information:
    Please note Your licence cannot be verified online if:
    it’s been cancelled, refused or is no longer active (this is when it’s held in another state or territory or has expired in ACT, TAS or SA)
    you’re using a WA extraordinary licence issued by a magistrate to allow limited use of your vehicle.
    If you had a change of name (resulting from marriage) in NSW before 2006, you will need to contact your document provider to update your details.
    Please find the common locations for the required details on your Australia driver’s licence Driver Licence Template

    Example responses

    Successfull Operation

    {
      "msg": "Request Success",
      "data": {
        "VerifyDocumentResult": {
          "VerificationResultCode": "P",
          "VerificationRequestNumber": "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX",
          "OriginatingAgencyCode": "XXXX",
          "ActivityId": "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX",
          "attributes": {
            "i:type": "DriverLicenceResponse"
          }
        }
      }
    }
    
    {
      "msg": "Request Success",
      "data": {
        "VerifyDocumentResult": {
          "VerificationResultCode": "Likely Genuine",
          "VerificationRequestNumber": "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX",
          "OriginatingAgencyCode": "XXXX",
          "ActivityId": "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX",
          "attributes": {
            "i:type": "DriverLicenceResponse"
          }
        }
      }
    }
    

    400 Response

    {
      "msg": "Unable to process"
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successfull Operation Inline
    400 Bad Request Bad Request Inline
    401 Unauthorized Bad Request Inline
    500 Internal Server Error Failed Operation Inline

    Response Schema

    Status Code 400

    Name Type Required Restrictions Description
    » msg string false none none

    Status Code 401

    Name Type Required Restrictions Description
    » msg string false none none

    Status Code 500

    Name Type Required Restrictions Description
    » msg string false none none

    Code samples

    # You can also use wget
    curl -X POST https://{environment}.doxai.co/{basePath}/australian-dvs/centreLink \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'x-access-key: eb2f724d-e7da-47f7-91a9-36fa3454796e' \
      -H 'x-secret-key: 2a3f9689-cfb5-540c-b525-0ff6dd2facd9'
    
    
    POST https://{environment}.doxai.co/{basePath}/australian-dvs/centreLink HTTP/1.1
    
    Content-Type: application/json
    Accept: application/json
    x-access-key: eb2f724d-e7da-47f7-91a9-36fa3454796e
    x-secret-key: 2a3f9689-cfb5-540c-b525-0ff6dd2facd9
    
    
    using System;
    using System.Collections.Generic;
    using System.Net.Http;
    using System.Net.Http.Headers;
    using System.Text;
    using System.Threading.Tasks;
    using Newtonsoft.Json;
    
    /// <<summary>>
    /// Example of Http Client
    /// <</summary>>
    public class HttpExample
    {
        private HttpClient Client { get; set; }
    
        /// <<summary>>
        /// Setup http client
        /// <</summary>>
        public HttpExample()
        {
          Client = new HttpClient();
        }
    
    
        /// Make a dummy request
        public async Task MakePostRequest()
        {
          string url = "https://{environment}.doxai.co/{basePath}/australian-dvs/centreLink";
    
    
          await PostAsync(null, url);
    
        }
    
        /// Performs a POST Request
        public async Task PostAsync(undefined content, string url)
        {
            //Serialize Object
            StringContent jsonContent = SerializeObject(content);
    
            //Execute POST request
            HttpResponseMessage response = await Client.PostAsync(url, jsonContent);
        }
    
    
    
        /// Serialize an object to Json
        private StringContent SerializeObject(undefined content)
        {
            //Serialize Object
            string jsonObject = JsonConvert.SerializeObject(content);
    
            //Create Json UTF8 String Content
            return new StringContent(jsonObject, Encoding.UTF8, "application/json");
        }
    
        /// Deserialize object from request response
        private async Task DeserializeObject(HttpResponseMessage response)
        {
            //Read body 
            string responseBody = await response.Content.ReadAsStringAsync();
    
            //Deserialize Body to object
            var result = JsonConvert.DeserializeObject(responseBody);
        }
    }
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'x-access-key' => 'eb2f724d-e7da-47f7-91a9-36fa3454796e',
      'x-secret-key' => '2a3f9689-cfb5-540c-b525-0ff6dd2facd9'
    }
    
    result = RestClient.post 'https://{environment}.doxai.co/{basePath}/australian-dvs/centreLink',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'x-access-key': 'eb2f724d-e7da-47f7-91a9-36fa3454796e',
      'x-secret-key': '2a3f9689-cfb5-540c-b525-0ff6dd2facd9'
    }
    
    r = requests.post('https://{environment}.doxai.co/{basePath}/australian-dvs/centreLink', headers = headers)
    
    print(r.json())
    
    
    const inputBody = '{
      "BirthDate": "1953-12-06",
      "Name": "John Smith",
      "CardType": "HCC",
      "CardExpiry": "2020-03-29",
      "CustomerReferenceNumber": "204647416C"
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'x-access-key':'eb2f724d-e7da-47f7-91a9-36fa3454796e',
      'x-secret-key':'2a3f9689-cfb5-540c-b525-0ff6dd2facd9'
    };
    
    fetch('https://{environment}.doxai.co/{basePath}/australian-dvs/centreLink',
    {
      method: 'POST',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    <?php
    
    require 'vendor/autoload.php';
    
    $headers = array(
        'Content-Type' => 'application/json',
        'Accept' => 'application/json',
        'x-access-key' => 'eb2f724d-e7da-47f7-91a9-36fa3454796e',
        'x-secret-key' => '2a3f9689-cfb5-540c-b525-0ff6dd2facd9',
    );
    
    $client = new \GuzzleHttp\Client();
    
    // Define array of request body.
    $request_body = array();
    
    try {
        $response = $client->request('POST','https://{environment}.doxai.co/{basePath}/australian-dvs/centreLink', array(
            'headers' => $headers,
            'json' => $request_body,
           )
        );
        print_r($response->getBody()->getContents());
     }
     catch (\GuzzleHttp\Exception\BadResponseException $e) {
        // handle exception or api errors.
        print_r($e->getMessage());
     }
    
     // ...
    
    
    URL obj = new URL("https://{environment}.doxai.co/{basePath}/australian-dvs/centreLink");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "x-access-key": []string{"eb2f724d-e7da-47f7-91a9-36fa3454796e"},
            "x-secret-key": []string{"2a3f9689-cfb5-540c-b525-0ff6dd2facd9"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://{environment}.doxai.co/{basePath}/australian-dvs/centreLink", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /australian-dvs/centreLink

    Validate Centre Link Card

    Body parameter

    {
      "BirthDate": "1953-12-06",
      "Name": "John Smith",
      "CardType": "HCC",
      "CardExpiry": "2020-03-29",
      "CustomerReferenceNumber": "204647416C"
    }
    
    Name In Type Required Description
    x-access-key header string true none
    x-secret-key header string true none
    body body object true none
    » BirthDate body string(date) false BirthDate must be in YYYY-MM-DD format
    » Name body string false Name can not contain more than 32 characters and only contain alphanumeric characters, hyphens, apostrophes and spaces
    » CardType body string false Must be one of the following PCC (Pension Concession), HCC (Health Care), SHC (Seniors Health)
    » CardExpiry body string(date) false CardExpiry must be in YYYY-MM-DD format
    » CustomerReferenceNumber body string false Centrelink customer reference number in format of 9 numbers followed by 1 letter

    Example responses

    Successfull Operation

    {
      "msg": "Request Success",
      "data": {
        "VerifyDocumentResult": {
          "VerificationResultCode": "P",
          "VerificationRequestNumber": "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX",
          "OriginatingAgencyCode": "XXXX",
          "ActivityId": "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX",
          "attributes": {
            "i:type": "CentrelinkResponse"
          }
        }
      }
    }
    
    {
      "msg": "Request Success",
      "data": {
        "VerifyDocumentResult": {
          "VerificationResultCode": "Likely Genuine",
          "VerificationRequestNumber": "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX",
          "OriginatingAgencyCode": "XXXX",
          "ActivityId": "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX",
          "attributes": {
            "i:type": "CentrelinkResponse"
          }
        }
      }
    }
    

    400 Response

    {
      "msg": "Unable to process"
    }
    
    Status Meaning Description Schema
    200 OK Successfull Operation Inline
    400 Bad Request Bad Request Inline
    401 Unauthorized Bad Request Inline
    500 Internal Server Error Failed Operation Inline

    Status Code 400

    Name Type Required Restrictions Description
    » msg string false none none

    Status Code 401

    Name Type Required Restrictions Description
    » msg string false none none

    Status Code 500

    Name Type Required Restrictions Description
    » msg string false none none

    Citizenship

    Code samples

    # You can also use wget
    curl -X POST https://{environment}.doxai.co/{basePath}/australian-dvs/citizenship \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'x-access-key: eb2f724d-e7da-47f7-91a9-36fa3454796e' \
      -H 'x-secret-key: 2a3f9689-cfb5-540c-b525-0ff6dd2facd9'
    
    
    POST https://{environment}.doxai.co/{basePath}/australian-dvs/citizenship HTTP/1.1
    
    Content-Type: application/json
    Accept: application/json
    x-access-key: eb2f724d-e7da-47f7-91a9-36fa3454796e
    x-secret-key: 2a3f9689-cfb5-540c-b525-0ff6dd2facd9
    
    
    using System;
    using System.Collections.Generic;
    using System.Net.Http;
    using System.Net.Http.Headers;
    using System.Text;
    using System.Threading.Tasks;
    using Newtonsoft.Json;
    
    /// <<summary>>
    /// Example of Http Client
    /// <</summary>>
    public class HttpExample
    {
        private HttpClient Client { get; set; }
    
        /// <<summary>>
        /// Setup http client
        /// <</summary>>
        public HttpExample()
        {
          Client = new HttpClient();
        }
    
    
        /// Make a dummy request
        public async Task MakePostRequest()
        {
          string url = "https://{environment}.doxai.co/{basePath}/australian-dvs/citizenship";
    
    
          await PostAsync(null, url);
    
        }
    
        /// Performs a POST Request
        public async Task PostAsync(undefined content, string url)
        {
            //Serialize Object
            StringContent jsonContent = SerializeObject(content);
    
            //Execute POST request
            HttpResponseMessage response = await Client.PostAsync(url, jsonContent);
        }
    
    
    
        /// Serialize an object to Json
        private StringContent SerializeObject(undefined content)
        {
            //Serialize Object
            string jsonObject = JsonConvert.SerializeObject(content);
    
            //Create Json UTF8 String Content
            return new StringContent(jsonObject, Encoding.UTF8, "application/json");
        }
    
        /// Deserialize object from request response
        private async Task DeserializeObject(HttpResponseMessage response)
        {
            //Read body 
            string responseBody = await response.Content.ReadAsStringAsync();
    
            //Deserialize Body to object
            var result = JsonConvert.DeserializeObject(responseBody);
        }
    }
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'x-access-key' => 'eb2f724d-e7da-47f7-91a9-36fa3454796e',
      'x-secret-key' => '2a3f9689-cfb5-540c-b525-0ff6dd2facd9'
    }
    
    result = RestClient.post 'https://{environment}.doxai.co/{basePath}/australian-dvs/citizenship',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'x-access-key': 'eb2f724d-e7da-47f7-91a9-36fa3454796e',
      'x-secret-key': '2a3f9689-cfb5-540c-b525-0ff6dd2facd9'
    }
    
    r = requests.post('https://{environment}.doxai.co/{basePath}/australian-dvs/citizenship', headers = headers)
    
    print(r.json())
    
    
    const inputBody = '{
      "BirthDate": "2001-05-16",
      "GivenName": "James",
      "MiddleName": "James",
      "FamilyName": "Smith",
      "AcquisitionDate": "2007-08-25",
      "StockNumber": "ACD0000000"
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'x-access-key':'eb2f724d-e7da-47f7-91a9-36fa3454796e',
      'x-secret-key':'2a3f9689-cfb5-540c-b525-0ff6dd2facd9'
    };
    
    fetch('https://{environment}.doxai.co/{basePath}/australian-dvs/citizenship',
    {
      method: 'POST',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    <?php
    
    require 'vendor/autoload.php';
    
    $headers = array(
        'Content-Type' => 'application/json',
        'Accept' => 'application/json',
        'x-access-key' => 'eb2f724d-e7da-47f7-91a9-36fa3454796e',
        'x-secret-key' => '2a3f9689-cfb5-540c-b525-0ff6dd2facd9',
    );
    
    $client = new \GuzzleHttp\Client();
    
    // Define array of request body.
    $request_body = array();
    
    try {
        $response = $client->request('POST','https://{environment}.doxai.co/{basePath}/australian-dvs/citizenship', array(
            'headers' => $headers,
            'json' => $request_body,
           )
        );
        print_r($response->getBody()->getContents());
     }
     catch (\GuzzleHttp\Exception\BadResponseException $e) {
        // handle exception or api errors.
        print_r($e->getMessage());
     }
    
     // ...
    
    
    URL obj = new URL("https://{environment}.doxai.co/{basePath}/australian-dvs/citizenship");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "x-access-key": []string{"eb2f724d-e7da-47f7-91a9-36fa3454796e"},
            "x-secret-key": []string{"2a3f9689-cfb5-540c-b525-0ff6dd2facd9"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://{environment}.doxai.co/{basePath}/australian-dvs/citizenship", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /australian-dvs/citizenship

    Validate Citizenship

    Body parameter

    {
      "BirthDate": "2001-05-16",
      "GivenName": "James",
      "MiddleName": "James",
      "FamilyName": "Smith",
      "AcquisitionDate": "2007-08-25",
      "StockNumber": "ACD0000000"
    }
    

    Parameters

    Name In Type Required Description
    x-access-key header string true none
    x-secret-key header string true none
    body body object true none
    » BirthDate body string(date) false BirthDate must be in YYYY-MM-DD OR YYYY-MM OR YYYY format
    » GivenName body string false GivenName can not contain more than 100 characters
    » MiddleName body string false MiddleName can not contain more than 100 characters
    » FamilyName body string false FamilyName can not contain more than 100 characters
    » AcquisitionDate body string(date) false AcquisitionDate must be in YYYY-MM-DD format
    » StockNumber body string false StockNumber must be minimum 4 characters

    Example responses

    Successfull Operation

    {
      "msg": "Request Success",
      "data": {
        "VerifyDocumentResult": {
          "VerificationResultCode": "P",
          "VerificationRequestNumber": "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX",
          "OriginatingAgencyCode": "XXXX",
          "ActivityId": "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX",
          "attributes": {
            "i:type": "CitizenshipCertificateResponse"
          }
        }
      }
    }
    
    {
      "msg": "Request Success",
      "data": {
        "VerifyDocumentResult": {
          "VerificationResultCode": "Likely Genuine",
          "VerificationRequestNumber": "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX",
          "OriginatingAgencyCode": "XXXX",
          "ActivityId": "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX",
          "attributes": {
            "i:type": "CitizenshipCertificateResponse"
          }
        }
      }
    }
    

    400 Response

    {
      "msg": "Unable to process"
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successfull Operation Inline
    400 Bad Request Bad Request Inline
    401 Unauthorized Bad Request Inline
    500 Internal Server Error Failed Operation Inline

    Response Schema

    Status Code 400

    Name Type Required Restrictions Description
    » msg string false none none

    Status Code 401

    Name Type Required Restrictions Description
    » msg string false none none

    Status Code 500

    Name Type Required Restrictions Description
    » msg string false none none

    Descent

    Code samples

    # You can also use wget
    curl -X POST https://{environment}.doxai.co/{basePath}/australian-dvs/descent \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'x-access-key: eb2f724d-e7da-47f7-91a9-36fa3454796e' \
      -H 'x-secret-key: 2a3f9689-cfb5-540c-b525-0ff6dd2facd9'
    
    
    POST https://{environment}.doxai.co/{basePath}/australian-dvs/descent HTTP/1.1
    
    Content-Type: application/json
    Accept: application/json
    x-access-key: eb2f724d-e7da-47f7-91a9-36fa3454796e
    x-secret-key: 2a3f9689-cfb5-540c-b525-0ff6dd2facd9
    
    
    using System;
    using System.Collections.Generic;
    using System.Net.Http;
    using System.Net.Http.Headers;
    using System.Text;
    using System.Threading.Tasks;
    using Newtonsoft.Json;
    
    /// <<summary>>
    /// Example of Http Client
    /// <</summary>>
    public class HttpExample
    {
        private HttpClient Client { get; set; }
    
        /// <<summary>>
        /// Setup http client
        /// <</summary>>
        public HttpExample()
        {
          Client = new HttpClient();
        }
    
    
        /// Make a dummy request
        public async Task MakePostRequest()
        {
          string url = "https://{environment}.doxai.co/{basePath}/australian-dvs/descent";
    
    
          await PostAsync(null, url);
    
        }
    
        /// Performs a POST Request
        public async Task PostAsync(undefined content, string url)
        {
            //Serialize Object
            StringContent jsonContent = SerializeObject(content);
    
            //Execute POST request
            HttpResponseMessage response = await Client.PostAsync(url, jsonContent);
        }
    
    
    
        /// Serialize an object to Json
        private StringContent SerializeObject(undefined content)
        {
            //Serialize Object
            string jsonObject = JsonConvert.SerializeObject(content);
    
            //Create Json UTF8 String Content
            return new StringContent(jsonObject, Encoding.UTF8, "application/json");
        }
    
        /// Deserialize object from request response
        private async Task DeserializeObject(HttpResponseMessage response)
        {
            //Read body 
            string responseBody = await response.Content.ReadAsStringAsync();
    
            //Deserialize Body to object
            var result = JsonConvert.DeserializeObject(responseBody);
        }
    }
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'x-access-key' => 'eb2f724d-e7da-47f7-91a9-36fa3454796e',
      'x-secret-key' => '2a3f9689-cfb5-540c-b525-0ff6dd2facd9'
    }
    
    result = RestClient.post 'https://{environment}.doxai.co/{basePath}/australian-dvs/descent',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'x-access-key': 'eb2f724d-e7da-47f7-91a9-36fa3454796e',
      'x-secret-key': '2a3f9689-cfb5-540c-b525-0ff6dd2facd9'
    }
    
    r = requests.post('https://{environment}.doxai.co/{basePath}/australian-dvs/descent', headers = headers)
    
    print(r.json())
    
    
    const inputBody = '{
      "BirthDate": "1965-01-01",
      "GivenName": "John",
      "MiddleName": "Allen",
      "FamilyName": "Smith",
      "AcquisitionDate": "2020-01-01",
      "StockNumber": "53268020432"
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'x-access-key':'eb2f724d-e7da-47f7-91a9-36fa3454796e',
      'x-secret-key':'2a3f9689-cfb5-540c-b525-0ff6dd2facd9'
    };
    
    fetch('https://{environment}.doxai.co/{basePath}/australian-dvs/descent',
    {
      method: 'POST',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    <?php
    
    require 'vendor/autoload.php';
    
    $headers = array(
        'Content-Type' => 'application/json',
        'Accept' => 'application/json',
        'x-access-key' => 'eb2f724d-e7da-47f7-91a9-36fa3454796e',
        'x-secret-key' => '2a3f9689-cfb5-540c-b525-0ff6dd2facd9',
    );
    
    $client = new \GuzzleHttp\Client();
    
    // Define array of request body.
    $request_body = array();
    
    try {
        $response = $client->request('POST','https://{environment}.doxai.co/{basePath}/australian-dvs/descent', array(
            'headers' => $headers,
            'json' => $request_body,
           )
        );
        print_r($response->getBody()->getContents());
     }
     catch (\GuzzleHttp\Exception\BadResponseException $e) {
        // handle exception or api errors.
        print_r($e->getMessage());
     }
    
     // ...
    
    
    URL obj = new URL("https://{environment}.doxai.co/{basePath}/australian-dvs/descent");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "x-access-key": []string{"eb2f724d-e7da-47f7-91a9-36fa3454796e"},
            "x-secret-key": []string{"2a3f9689-cfb5-540c-b525-0ff6dd2facd9"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://{environment}.doxai.co/{basePath}/australian-dvs/descent", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /australian-dvs/descent

    Validate Descent

    Body parameter

    {
      "BirthDate": "1965-01-01",
      "GivenName": "John",
      "MiddleName": "Allen",
      "FamilyName": "Smith",
      "AcquisitionDate": "2020-01-01",
      "StockNumber": "53268020432"
    }
    

    Parameters

    Name In Type Required Description
    x-access-key header string true none
    x-secret-key header string true none
    body body object true none
    » BirthDate body string(date) false BirthDate must be in YYYY-MM-DD OR YYYY-MM OR YYYY format
    » GivenName body string false GivenName can not contain more than 100 characters
    » MiddleName body string false MiddleName can not contain more than 100 characters
    » FamilyName body string false FamilyName can not contain more than 100 characters
    » AcquisitionDate body string(date) false AcquisitionDate must be in YYYY-MM-DD format
    » StockNumber body string false StockNumber must be minimum 4 characters

    Example responses

    Successfull Operation

    {
      "msg": "Request Success",
      "data": {
        "VerifyDocumentResult": {
          "VerificationResultCode": "P",
          "VerificationRequestNumber": "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX",
          "OriginatingAgencyCode": "XXXX",
          "ActivityId": "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX",
          "attributes": {
            "i:type": "DescentResponse"
          }
        }
      }
    }
    
    {
      "msg": "Request Success",
      "data": {
        "VerifyDocumentResult": {
          "VerificationResultCode": "Likely Genuine",
          "VerificationRequestNumber": "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX",
          "OriginatingAgencyCode": "XXXX",
          "ActivityId": "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX",
          "attributes": {
            "i:type": "DescentResponse"
          }
        }
      }
    }
    

    400 Response

    {
      "msg": "Unable to process"
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successfull Operation Inline
    400 Bad Request Bad Request Inline
    401 Unauthorized Bad Request Inline
    500 Internal Server Error Failed Operation Inline

    Response Schema

    Status Code 400

    Name Type Required Restrictions Description
    » msg string false none none

    Status Code 401

    Name Type Required Restrictions Description
    » msg string false none none

    Status Code 500

    Name Type Required Restrictions Description
    » msg string false none none

    Immicard

    Code samples

    # You can also use wget
    curl -X POST https://{environment}.doxai.co/{basePath}/australian-dvs/immiCard \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'x-access-key: eb2f724d-e7da-47f7-91a9-36fa3454796e' \
      -H 'x-secret-key: 2a3f9689-cfb5-540c-b525-0ff6dd2facd9'
    
    
    POST https://{environment}.doxai.co/{basePath}/australian-dvs/immiCard HTTP/1.1
    
    Content-Type: application/json
    Accept: application/json
    x-access-key: eb2f724d-e7da-47f7-91a9-36fa3454796e
    x-secret-key: 2a3f9689-cfb5-540c-b525-0ff6dd2facd9
    
    
    using System;
    using System.Collections.Generic;
    using System.Net.Http;
    using System.Net.Http.Headers;
    using System.Text;
    using System.Threading.Tasks;
    using Newtonsoft.Json;
    
    /// <<summary>>
    /// Example of Http Client
    /// <</summary>>
    public class HttpExample
    {
        private HttpClient Client { get; set; }
    
        /// <<summary>>
        /// Setup http client
        /// <</summary>>
        public HttpExample()
        {
          Client = new HttpClient();
        }
    
    
        /// Make a dummy request
        public async Task MakePostRequest()
        {
          string url = "https://{environment}.doxai.co/{basePath}/australian-dvs/immiCard";
    
    
          await PostAsync(null, url);
    
        }
    
        /// Performs a POST Request
        public async Task PostAsync(undefined content, string url)
        {
            //Serialize Object
            StringContent jsonContent = SerializeObject(content);
    
            //Execute POST request
            HttpResponseMessage response = await Client.PostAsync(url, jsonContent);
        }
    
    
    
        /// Serialize an object to Json
        private StringContent SerializeObject(undefined content)
        {
            //Serialize Object
            string jsonObject = JsonConvert.SerializeObject(content);
    
            //Create Json UTF8 String Content
            return new StringContent(jsonObject, Encoding.UTF8, "application/json");
        }
    
        /// Deserialize object from request response
        private async Task DeserializeObject(HttpResponseMessage response)
        {
            //Read body 
            string responseBody = await response.Content.ReadAsStringAsync();
    
            //Deserialize Body to object
            var result = JsonConvert.DeserializeObject(responseBody);
        }
    }
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'x-access-key' => 'eb2f724d-e7da-47f7-91a9-36fa3454796e',
      'x-secret-key' => '2a3f9689-cfb5-540c-b525-0ff6dd2facd9'
    }
    
    result = RestClient.post 'https://{environment}.doxai.co/{basePath}/australian-dvs/immiCard',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'x-access-key': 'eb2f724d-e7da-47f7-91a9-36fa3454796e',
      'x-secret-key': '2a3f9689-cfb5-540c-b525-0ff6dd2facd9'
    }
    
    r = requests.post('https://{environment}.doxai.co/{basePath}/australian-dvs/immiCard', headers = headers)
    
    print(r.json())
    
    
    const inputBody = '{
      "BirthDate": "1980-10-31",
      "GivenName": "James",
      "MiddleName": "Robert",
      "FamilyName": "Smith",
      "ImmiCardNumber": "PRE008948"
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'x-access-key':'eb2f724d-e7da-47f7-91a9-36fa3454796e',
      'x-secret-key':'2a3f9689-cfb5-540c-b525-0ff6dd2facd9'
    };
    
    fetch('https://{environment}.doxai.co/{basePath}/australian-dvs/immiCard',
    {
      method: 'POST',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    <?php
    
    require 'vendor/autoload.php';
    
    $headers = array(
        'Content-Type' => 'application/json',
        'Accept' => 'application/json',
        'x-access-key' => 'eb2f724d-e7da-47f7-91a9-36fa3454796e',
        'x-secret-key' => '2a3f9689-cfb5-540c-b525-0ff6dd2facd9',
    );
    
    $client = new \GuzzleHttp\Client();
    
    // Define array of request body.
    $request_body = array();
    
    try {
        $response = $client->request('POST','https://{environment}.doxai.co/{basePath}/australian-dvs/immiCard', array(
            'headers' => $headers,
            'json' => $request_body,
           )
        );
        print_r($response->getBody()->getContents());
     }
     catch (\GuzzleHttp\Exception\BadResponseException $e) {
        // handle exception or api errors.
        print_r($e->getMessage());
     }
    
     // ...
    
    
    URL obj = new URL("https://{environment}.doxai.co/{basePath}/australian-dvs/immiCard");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "x-access-key": []string{"eb2f724d-e7da-47f7-91a9-36fa3454796e"},
            "x-secret-key": []string{"2a3f9689-cfb5-540c-b525-0ff6dd2facd9"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://{environment}.doxai.co/{basePath}/australian-dvs/immiCard", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /australian-dvs/immiCard

    Validate ImmiCard

    Body parameter

    {
      "BirthDate": "1980-10-31",
      "GivenName": "James",
      "MiddleName": "Robert",
      "FamilyName": "Smith",
      "ImmiCardNumber": "PRE008948"
    }
    

    Parameters

    Name In Type Required Description
    x-access-key header string true none
    x-secret-key header string true none
    body body object true none
    » BirthDate body string(date) false BirthDate must be in YYYY-MM-DD OR YYYY-MM OR YYYY format
    » GivenName body string false GivenName can not contain more than 49 characters
    » MiddleName body string false MiddleName is optional and can not contain more than 49 characters
    » FamilyName body string false FamilyName can not contain more than 49 characters
    » ImmiCardNumber body string false ImmiCardNumber must contain minimum 9 characters

    Example responses

    Successfull Operation

    {
      "msg": "Request Success",
      "data": {
        "VerifyDocumentResult": {
          "VerificationResultCode": "P",
          "VerificationRequestNumber": "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX",
          "OriginatingAgencyCode": "XXXX",
          "ActivityId": "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX",
          "attributes": {
            "i:type": "ImmiCardResponse"
          }
        }
      }
    }
    
    {
      "msg": "Request Success",
      "data": {
        "VerifyDocumentResult": {
          "VerificationResultCode": "Likely Genuine",
          "VerificationRequestNumber": "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX",
          "OriginatingAgencyCode": "XXXX",
          "ActivityId": "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX",
          "attributes": {
            "i:type": "ImmiCardResponse"
          }
        }
      }
    }
    

    400 Response

    {
      "msg": "Unable to process"
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successfull Operation Inline
    400 Bad Request Bad Request Inline
    401 Unauthorized Bad Request Inline
    500 Internal Server Error Failed Operation Inline

    Response Schema

    Status Code 400

    Name Type Required Restrictions Description
    » msg string false none none

    Status Code 401

    Name Type Required Restrictions Description
    » msg string false none none

    Status Code 500

    Name Type Required Restrictions Description
    » msg string false none none

    Visa

    Code samples

    # You can also use wget
    curl -X POST https://{environment}.doxai.co/{basePath}/australian-dvs/visa \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'x-access-key: eb2f724d-e7da-47f7-91a9-36fa3454796e' \
      -H 'x-secret-key: 2a3f9689-cfb5-540c-b525-0ff6dd2facd9'
    
    
    POST https://{environment}.doxai.co/{basePath}/australian-dvs/visa HTTP/1.1
    
    Content-Type: application/json
    Accept: application/json
    x-access-key: eb2f724d-e7da-47f7-91a9-36fa3454796e
    x-secret-key: 2a3f9689-cfb5-540c-b525-0ff6dd2facd9
    
    
    using System;
    using System.Collections.Generic;
    using System.Net.Http;
    using System.Net.Http.Headers;
    using System.Text;
    using System.Threading.Tasks;
    using Newtonsoft.Json;
    
    /// <<summary>>
    /// Example of Http Client
    /// <</summary>>
    public class HttpExample
    {
        private HttpClient Client { get; set; }
    
        /// <<summary>>
        /// Setup http client
        /// <</summary>>
        public HttpExample()
        {
          Client = new HttpClient();
        }
    
    
        /// Make a dummy request
        public async Task MakePostRequest()
        {
          string url = "https://{environment}.doxai.co/{basePath}/australian-dvs/visa";
    
    
          await PostAsync(null, url);
    
        }
    
        /// Performs a POST Request
        public async Task PostAsync(undefined content, string url)
        {
            //Serialize Object
            StringContent jsonContent = SerializeObject(content);
    
            //Execute POST request
            HttpResponseMessage response = await Client.PostAsync(url, jsonContent);
        }
    
    
    
        /// Serialize an object to Json
        private StringContent SerializeObject(undefined content)
        {
            //Serialize Object
            string jsonObject = JsonConvert.SerializeObject(content);
    
            //Create Json UTF8 String Content
            return new StringContent(jsonObject, Encoding.UTF8, "application/json");
        }
    
        /// Deserialize object from request response
        private async Task DeserializeObject(HttpResponseMessage response)
        {
            //Read body 
            string responseBody = await response.Content.ReadAsStringAsync();
    
            //Deserialize Body to object
            var result = JsonConvert.DeserializeObject(responseBody);
        }
    }
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'x-access-key' => 'eb2f724d-e7da-47f7-91a9-36fa3454796e',
      'x-secret-key' => '2a3f9689-cfb5-540c-b525-0ff6dd2facd9'
    }
    
    result = RestClient.post 'https://{environment}.doxai.co/{basePath}/australian-dvs/visa',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'x-access-key': 'eb2f724d-e7da-47f7-91a9-36fa3454796e',
      'x-secret-key': '2a3f9689-cfb5-540c-b525-0ff6dd2facd9'
    }
    
    r = requests.post('https://{environment}.doxai.co/{basePath}/australian-dvs/visa', headers = headers)
    
    print(r.json())
    
    
    const inputBody = '{
      "BirthDate": "1992-06-18",
      "GivenName": "John",
      "FamilyName": "Smith",
      "PassportNumber": "DW126813",
      "CountryOfIssue": "CAN"
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'x-access-key':'eb2f724d-e7da-47f7-91a9-36fa3454796e',
      'x-secret-key':'2a3f9689-cfb5-540c-b525-0ff6dd2facd9'
    };
    
    fetch('https://{environment}.doxai.co/{basePath}/australian-dvs/visa',
    {
      method: 'POST',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    <?php
    
    require 'vendor/autoload.php';
    
    $headers = array(
        'Content-Type' => 'application/json',
        'Accept' => 'application/json',
        'x-access-key' => 'eb2f724d-e7da-47f7-91a9-36fa3454796e',
        'x-secret-key' => '2a3f9689-cfb5-540c-b525-0ff6dd2facd9',
    );
    
    $client = new \GuzzleHttp\Client();
    
    // Define array of request body.
    $request_body = array();
    
    try {
        $response = $client->request('POST','https://{environment}.doxai.co/{basePath}/australian-dvs/visa', array(
            'headers' => $headers,
            'json' => $request_body,
           )
        );
        print_r($response->getBody()->getContents());
     }
     catch (\GuzzleHttp\Exception\BadResponseException $e) {
        // handle exception or api errors.
        print_r($e->getMessage());
     }
    
     // ...
    
    
    URL obj = new URL("https://{environment}.doxai.co/{basePath}/australian-dvs/visa");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "x-access-key": []string{"eb2f724d-e7da-47f7-91a9-36fa3454796e"},
            "x-secret-key": []string{"2a3f9689-cfb5-540c-b525-0ff6dd2facd9"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://{environment}.doxai.co/{basePath}/australian-dvs/visa", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /australian-dvs/visa

    Validate Visa

    Body parameter

    {
      "BirthDate": "1992-06-18",
      "GivenName": "John",
      "FamilyName": "Smith",
      "PassportNumber": "DW126813",
      "CountryOfIssue": "CAN"
    }
    

    Parameters

    Name In Type Required Description
    x-access-key header string true none
    x-secret-key header string true none
    body body object true none
    » BirthDate body string(date) false BirthDate must be in YYYY-MM-DD OR YYYY-MM OR YYYY format
    » GivenName body string false GivenName can not contain more than 49 characters
    » FamilyName body string false FamilyName can not contain more than 49 characters
    » PassportNumber body string false PassportNumber must contain 7 to 9 characters
    » CountryOfIssue body string false A country code (e.g. "CAN") of the country where the passport was issued

    Example responses

    Successfull Operation

    {
      "msg": "Request Success",
      "data": {
        "VerifyDocumentResult": {
          "VerificationResultCode": "P",
          "VerificationRequestNumber": "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX",
          "OriginatingAgencyCode": "XXXX",
          "ActivityId": "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX",
          "attributes": {
            "i:type": "VisaResponse"
          }
        }
      }
    }
    
    {
      "msg": "Request Success",
      "data": {
        "VerifyDocumentResult": {
          "VerificationResultCode": "Likely Genuine",
          "VerificationRequestNumber": "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX",
          "OriginatingAgencyCode": "XXXX",
          "ActivityId": "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX",
          "attributes": {
            "i:type": "VisaResponse"
          }
        }
      }
    }
    

    400 Response

    {
      "msg": "Unable to process"
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successfull Operation Inline
    400 Bad Request Bad Request Inline
    401 Unauthorized Bad Request Inline
    500 Internal Server Error Failed Operation Inline

    Response Schema

    Status Code 400

    Name Type Required Restrictions Description
    » msg string false none none

    Status Code 401

    Name Type Required Restrictions Description
    » msg string false none none

    Status Code 500

    Name Type Required Restrictions Description
    » msg string false none none

    Passport

    Code samples

    # You can also use wget
    curl -X POST https://{environment}.doxai.co/{basePath}/australian-dvs/passport \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'x-access-key: eb2f724d-e7da-47f7-91a9-36fa3454796e' \
      -H 'x-secret-key: 2a3f9689-cfb5-540c-b525-0ff6dd2facd9'
    
    
    POST https://{environment}.doxai.co/{basePath}/australian-dvs/passport HTTP/1.1
    
    Content-Type: application/json
    Accept: application/json
    x-access-key: eb2f724d-e7da-47f7-91a9-36fa3454796e
    x-secret-key: 2a3f9689-cfb5-540c-b525-0ff6dd2facd9
    
    
    using System;
    using System.Collections.Generic;
    using System.Net.Http;
    using System.Net.Http.Headers;
    using System.Text;
    using System.Threading.Tasks;
    using Newtonsoft.Json;
    
    /// <<summary>>
    /// Example of Http Client
    /// <</summary>>
    public class HttpExample
    {
        private HttpClient Client { get; set; }
    
        /// <<summary>>
        /// Setup http client
        /// <</summary>>
        public HttpExample()
        {
          Client = new HttpClient();
        }
    
    
        /// Make a dummy request
        public async Task MakePostRequest()
        {
          string url = "https://{environment}.doxai.co/{basePath}/australian-dvs/passport";
    
    
          await PostAsync(null, url);
    
        }
    
        /// Performs a POST Request
        public async Task PostAsync(undefined content, string url)
        {
            //Serialize Object
            StringContent jsonContent = SerializeObject(content);
    
            //Execute POST request
            HttpResponseMessage response = await Client.PostAsync(url, jsonContent);
        }
    
    
    
        /// Serialize an object to Json
        private StringContent SerializeObject(undefined content)
        {
            //Serialize Object
            string jsonObject = JsonConvert.SerializeObject(content);
    
            //Create Json UTF8 String Content
            return new StringContent(jsonObject, Encoding.UTF8, "application/json");
        }
    
        /// Deserialize object from request response
        private async Task DeserializeObject(HttpResponseMessage response)
        {
            //Read body 
            string responseBody = await response.Content.ReadAsStringAsync();
    
            //Deserialize Body to object
            var result = JsonConvert.DeserializeObject(responseBody);
        }
    }
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'x-access-key' => 'eb2f724d-e7da-47f7-91a9-36fa3454796e',
      'x-secret-key' => '2a3f9689-cfb5-540c-b525-0ff6dd2facd9'
    }
    
    result = RestClient.post 'https://{environment}.doxai.co/{basePath}/australian-dvs/passport',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'x-access-key': 'eb2f724d-e7da-47f7-91a9-36fa3454796e',
      'x-secret-key': '2a3f9689-cfb5-540c-b525-0ff6dd2facd9'
    }
    
    r = requests.post('https://{environment}.doxai.co/{basePath}/australian-dvs/passport', headers = headers)
    
    print(r.json())
    
    
    const inputBody = '{
      "BirthDate": "1972-09-02",
      "GivenName": "John",
      "FamilyName": "Smith",
      "TravelDocumentNumber": "C5100511",
      "Gender": "M",
      "ExpiryDate": "2020-01-01"
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'x-access-key':'eb2f724d-e7da-47f7-91a9-36fa3454796e',
      'x-secret-key':'2a3f9689-cfb5-540c-b525-0ff6dd2facd9'
    };
    
    fetch('https://{environment}.doxai.co/{basePath}/australian-dvs/passport',
    {
      method: 'POST',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    <?php
    
    require 'vendor/autoload.php';
    
    $headers = array(
        'Content-Type' => 'application/json',
        'Accept' => 'application/json',
        'x-access-key' => 'eb2f724d-e7da-47f7-91a9-36fa3454796e',
        'x-secret-key' => '2a3f9689-cfb5-540c-b525-0ff6dd2facd9',
    );
    
    $client = new \GuzzleHttp\Client();
    
    // Define array of request body.
    $request_body = array();
    
    try {
        $response = $client->request('POST','https://{environment}.doxai.co/{basePath}/australian-dvs/passport', array(
            'headers' => $headers,
            'json' => $request_body,
           )
        );
        print_r($response->getBody()->getContents());
     }
     catch (\GuzzleHttp\Exception\BadResponseException $e) {
        // handle exception or api errors.
        print_r($e->getMessage());
     }
    
     // ...
    
    
    URL obj = new URL("https://{environment}.doxai.co/{basePath}/australian-dvs/passport");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "x-access-key": []string{"eb2f724d-e7da-47f7-91a9-36fa3454796e"},
            "x-secret-key": []string{"2a3f9689-cfb5-540c-b525-0ff6dd2facd9"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://{environment}.doxai.co/{basePath}/australian-dvs/passport", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /australian-dvs/passport

    Validate Passport

    Body parameter

    {
      "BirthDate": "1972-09-02",
      "GivenName": "John",
      "FamilyName": "Smith",
      "TravelDocumentNumber": "C5100511",
      "Gender": "M",
      "ExpiryDate": "2020-01-01"
    }
    

    Parameters

    Name In Type Required Description
    x-access-key header string true none
    x-secret-key header string true none
    body body object true none
    » BirthDate body string(date) false BirthDate must be in YYYY-MM-DD format
    » GivenName body string false GivenName can not contain more than 31 characters
    » FamilyName body string false FamilyName can not contain more than 31 characters
    » TravelDocumentNumber body string false TravelDocumentNumber can not contain more than 9 characters and less than 7 character. Either one or two alpha characters followed by seven numeric characters. No spaces
    » Gender body string false Gender must be any one of the following M, F, X
    » ExpiryDate body string(date) false ExpiryDate must be in YYYY-MM-DD format

    Example responses

    Successfull Operation

    {
      "msg": "Request Success",
      "data": {
        "VerifyDocumentResult": {
          "VerificationResultCode": "P",
          "VerificationRequestNumber": "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX",
          "OriginatingAgencyCode": "XXXX",
          "ActivityId": "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX",
          "attributes": {
            "i:type": "PassportResponse"
          }
        }
      }
    }
    
    {
      "msg": "Request Success",
      "data": {
        "VerifyDocumentResult": {
          "VerificationResultCode": "Likely Genuine",
          "VerificationRequestNumber": "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX",
          "OriginatingAgencyCode": "XXXX",
          "ActivityId": "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX",
          "attributes": {
            "i:type": "PassportResponse"
          }
        }
      }
    }
    

    400 Response

    {
      "msg": "Unable to process"
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successfull Operation Inline
    400 Bad Request Bad Request Inline
    401 Unauthorized Bad Request Inline
    500 Internal Server Error Failed Operation Inline

    Response Schema

    Status Code 400

    Name Type Required Restrictions Description
    » msg string false none none

    Status Code 401

    Name Type Required Restrictions Description
    » msg string false none none

    Status Code 500

    Name Type Required Restrictions Description
    » msg string false none none

    Medicare

    Code samples

    # You can also use wget
    curl -X POST https://{environment}.doxai.co/{basePath}/australian-dvs/medicare \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'x-access-key: eb2f724d-e7da-47f7-91a9-36fa3454796e' \
      -H 'x-secret-key: 2a3f9689-cfb5-540c-b525-0ff6dd2facd9'
    
    
    POST https://{environment}.doxai.co/{basePath}/australian-dvs/medicare HTTP/1.1
    
    Content-Type: application/json
    Accept: application/json
    x-access-key: eb2f724d-e7da-47f7-91a9-36fa3454796e
    x-secret-key: 2a3f9689-cfb5-540c-b525-0ff6dd2facd9
    
    
    using System;
    using System.Collections.Generic;
    using System.Net.Http;
    using System.Net.Http.Headers;
    using System.Text;
    using System.Threading.Tasks;
    using Newtonsoft.Json;
    
    /// <<summary>>
    /// Example of Http Client
    /// <</summary>>
    public class HttpExample
    {
        private HttpClient Client { get; set; }
    
        /// <<summary>>
        /// Setup http client
        /// <</summary>>
        public HttpExample()
        {
          Client = new HttpClient();
        }
    
    
        /// Make a dummy request
        public async Task MakePostRequest()
        {
          string url = "https://{environment}.doxai.co/{basePath}/australian-dvs/medicare";
    
    
          await PostAsync(null, url);
    
        }
    
        /// Performs a POST Request
        public async Task PostAsync(undefined content, string url)
        {
            //Serialize Object
            StringContent jsonContent = SerializeObject(content);
    
            //Execute POST request
            HttpResponseMessage response = await Client.PostAsync(url, jsonContent);
        }
    
    
    
        /// Serialize an object to Json
        private StringContent SerializeObject(undefined content)
        {
            //Serialize Object
            string jsonObject = JsonConvert.SerializeObject(content);
    
            //Create Json UTF8 String Content
            return new StringContent(jsonObject, Encoding.UTF8, "application/json");
        }
    
        /// Deserialize object from request response
        private async Task DeserializeObject(HttpResponseMessage response)
        {
            //Read body 
            string responseBody = await response.Content.ReadAsStringAsync();
    
            //Deserialize Body to object
            var result = JsonConvert.DeserializeObject(responseBody);
        }
    }
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'x-access-key' => 'eb2f724d-e7da-47f7-91a9-36fa3454796e',
      'x-secret-key' => '2a3f9689-cfb5-540c-b525-0ff6dd2facd9'
    }
    
    result = RestClient.post 'https://{environment}.doxai.co/{basePath}/australian-dvs/medicare',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'x-access-key': 'eb2f724d-e7da-47f7-91a9-36fa3454796e',
      'x-secret-key': '2a3f9689-cfb5-540c-b525-0ff6dd2facd9'
    }
    
    r = requests.post('https://{environment}.doxai.co/{basePath}/australian-dvs/medicare', headers = headers)
    
    print(r.json())
    
    
    const inputBody = '{
      "BirthDate": "1995-03-01",
      "CardExpiry": "2019-12",
      "CardNumber": "3512743581",
      "CardType": "G",
      "FullName1": "John Robert Smith",
      "FullName2": null,
      "FullName3": null,
      "FullName4": null,
      "IndividualReferenceNumber": 1
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'x-access-key':'eb2f724d-e7da-47f7-91a9-36fa3454796e',
      'x-secret-key':'2a3f9689-cfb5-540c-b525-0ff6dd2facd9'
    };
    
    fetch('https://{environment}.doxai.co/{basePath}/australian-dvs/medicare',
    {
      method: 'POST',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    <?php
    
    require 'vendor/autoload.php';
    
    $headers = array(
        'Content-Type' => 'application/json',
        'Accept' => 'application/json',
        'x-access-key' => 'eb2f724d-e7da-47f7-91a9-36fa3454796e',
        'x-secret-key' => '2a3f9689-cfb5-540c-b525-0ff6dd2facd9',
    );
    
    $client = new \GuzzleHttp\Client();
    
    // Define array of request body.
    $request_body = array();
    
    try {
        $response = $client->request('POST','https://{environment}.doxai.co/{basePath}/australian-dvs/medicare', array(
            'headers' => $headers,
            'json' => $request_body,
           )
        );
        print_r($response->getBody()->getContents());
     }
     catch (\GuzzleHttp\Exception\BadResponseException $e) {
        // handle exception or api errors.
        print_r($e->getMessage());
     }
    
     // ...
    
    
    URL obj = new URL("https://{environment}.doxai.co/{basePath}/australian-dvs/medicare");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "x-access-key": []string{"eb2f724d-e7da-47f7-91a9-36fa3454796e"},
            "x-secret-key": []string{"2a3f9689-cfb5-540c-b525-0ff6dd2facd9"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://{environment}.doxai.co/{basePath}/australian-dvs/medicare", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /australian-dvs/medicare

    Validate medicard

    Body parameter

    {
      "BirthDate": "1995-03-01",
      "CardExpiry": "2019-12",
      "CardNumber": "3512743581",
      "CardType": "G",
      "FullName1": "John Robert Smith",
      "FullName2": null,
      "FullName3": null,
      "FullName4": null,
      "IndividualReferenceNumber": 1
    }
    

    Parameters

    Name In Type Required Description
    x-access-key header string true none
    x-secret-key header string true none
    body body object true none
    » BirthDate body string(date) false BirthDate must be in YYYY-MM-DD format
    » CardExpiry body string false For Blue and Yellow Medicare Card, please use YYYY-MM-DD format.For Green Medicare Card, please use YYYY-MM format
    » CardNumber body string false Card Number must be exactly 10 characters.
    » CardType body string false CardType must be one of the following Y (Yellow), G (Green) or B (Blue)
    » FullName1 body string false Names should be entered exactly as printed on the card (in the same nameline). It should not exceed 27 characters
    » FullName2 body string false Names should be entered exactly as printed on the card (in the same nameline). It should not exceed 27 characters
    » FullName3 body string false Names should be entered exactly as printed on the card (in the same nameline). It should not exceed 27 characters
    » FullName4 body string false Names should be entered exactly as printed on the card (in the same nameline). It should not exceed 27 characters
    » IndividualReferenceNumber body number false IndividualReferenceNumber must be a number, appears to the left of name on the card

    Example responses

    Successfull Operation

    {
      "msg": "Request Success",
      "data": {
        "VerifyDocumentResult": {
          "VerificationResultCode": "P",
          "VerificationRequestNumber": "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX",
          "OriginatingAgencyCode": "XXXX",
          "ActivityId": "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX",
          "attributes": {
            "i:type": "MedicareResponse"
          }
        }
      }
    }
    
    {
      "msg": "Request Success",
      "data": {
        "VerifyDocumentResult": {
          "VerificationResultCode": "Likely Genuine",
          "VerificationRequestNumber": "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX",
          "OriginatingAgencyCode": "XXXX",
          "ActivityId": "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX",
          "attributes": {
            "i:type": "MedicareResponse"
          }
        }
      }
    }
    

    400 Response

    {
      "msg": "Unable to process"
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successfull Operation Inline
    400 Bad Request Bad Request Inline
    401 Unauthorized Bad Request Inline
    500 Internal Server Error Failed Operation Inline

    Response Schema

    Status Code 400

    Name Type Required Restrictions Description
    » msg string false none none

    Status Code 401

    Name Type Required Restrictions Description
    » msg string false none none

    Status Code 500

    Name Type Required Restrictions Description
    » msg string false none none

    Global ID Verification

    Global KYC

    Code samples

    # You can also use wget
    curl -X POST https://{environment}.doxai.co/{basePath}/global/kyc \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'x-access-key: 66e11282-c214-41b5-8278-2fdbf0c3aba4' \
      -H 'x-secret-key: 79896324-7043-5285-aca6-a0ba9681bff3'
    
    
    POST https://{environment}.doxai.co/{basePath}/global/kyc HTTP/1.1
    
    Content-Type: application/json
    Accept: application/json
    x-access-key: 66e11282-c214-41b5-8278-2fdbf0c3aba4
    x-secret-key: 79896324-7043-5285-aca6-a0ba9681bff3
    
    
    using System;
    using System.Collections.Generic;
    using System.Net.Http;
    using System.Net.Http.Headers;
    using System.Text;
    using System.Threading.Tasks;
    using Newtonsoft.Json;
    
    /// <<summary>>
    /// Example of Http Client
    /// <</summary>>
    public class HttpExample
    {
        private HttpClient Client { get; set; }
    
        /// <<summary>>
        /// Setup http client
        /// <</summary>>
        public HttpExample()
        {
          Client = new HttpClient();
        }
    
    
        /// Make a dummy request
        public async Task MakePostRequest()
        {
          string url = "https://{environment}.doxai.co/{basePath}/global/kyc";
    
    
          await PostAsync(null, url);
    
        }
    
        /// Performs a POST Request
        public async Task PostAsync(undefined content, string url)
        {
            //Serialize Object
            StringContent jsonContent = SerializeObject(content);
    
            //Execute POST request
            HttpResponseMessage response = await Client.PostAsync(url, jsonContent);
        }
    
    
    
        /// Serialize an object to Json
        private StringContent SerializeObject(undefined content)
        {
            //Serialize Object
            string jsonObject = JsonConvert.SerializeObject(content);
    
            //Create Json UTF8 String Content
            return new StringContent(jsonObject, Encoding.UTF8, "application/json");
        }
    
        /// Deserialize object from request response
        private async Task DeserializeObject(HttpResponseMessage response)
        {
            //Read body 
            string responseBody = await response.Content.ReadAsStringAsync();
    
            //Deserialize Body to object
            var result = JsonConvert.DeserializeObject(responseBody);
        }
    }
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'x-access-key' => '66e11282-c214-41b5-8278-2fdbf0c3aba4',
      'x-secret-key' => '79896324-7043-5285-aca6-a0ba9681bff3'
    }
    
    result = RestClient.post 'https://{environment}.doxai.co/{basePath}/global/kyc',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'x-access-key': '66e11282-c214-41b5-8278-2fdbf0c3aba4',
      'x-secret-key': '79896324-7043-5285-aca6-a0ba9681bff3'
    }
    
    r = requests.post('https://{environment}.doxai.co/{basePath}/global/kyc', headers = headers)
    
    print(r.json())
    
    
    const inputBody = '{
      "countryCode": "AU",
      "addressLine1": "Av 55",
      "locality": "BARRETOS",
      "postCode": "12234556",
      "province": "SP",
      "dob": "1995-03-01",
      "firstName": "John",
      "lastName": "Stephen",
      "nationalid": "32698687827"
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'x-access-key':'66e11282-c214-41b5-8278-2fdbf0c3aba4',
      'x-secret-key':'79896324-7043-5285-aca6-a0ba9681bff3'
    };
    
    fetch('https://{environment}.doxai.co/{basePath}/global/kyc',
    {
      method: 'POST',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    <?php
    
    require 'vendor/autoload.php';
    
    $headers = array(
        'Content-Type' => 'application/json',
        'Accept' => 'application/json',
        'x-access-key' => '66e11282-c214-41b5-8278-2fdbf0c3aba4',
        'x-secret-key' => '79896324-7043-5285-aca6-a0ba9681bff3',
    );
    
    $client = new \GuzzleHttp\Client();
    
    // Define array of request body.
    $request_body = array();
    
    try {
        $response = $client->request('POST','https://{environment}.doxai.co/{basePath}/global/kyc', array(
            'headers' => $headers,
            'json' => $request_body,
           )
        );
        print_r($response->getBody()->getContents());
     }
     catch (\GuzzleHttp\Exception\BadResponseException $e) {
        // handle exception or api errors.
        print_r($e->getMessage());
     }
    
     // ...
    
    
    URL obj = new URL("https://{environment}.doxai.co/{basePath}/global/kyc");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "x-access-key": []string{"66e11282-c214-41b5-8278-2fdbf0c3aba4"},
            "x-secret-key": []string{"79896324-7043-5285-aca6-a0ba9681bff3"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://{environment}.doxai.co/{basePath}/global/kyc", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /global/kyc

    Global electronic verification on given identity with KYC.

    Body parameter

    {
      "countryCode": "AU",
      "addressLine1": "Av 55",
      "locality": "BARRETOS",
      "postCode": "12234556",
      "province": "SP",
      "dob": "1995-03-01",
      "firstName": "John",
      "lastName": "Stephen",
      "nationalid": "32698687827"
    }
    

    Parameters

    Name In Type Required Description
    x-access-key header string true none
    x-secret-key header string true none
    body body object true none
    » countryCode body string false countryCode must be in ISO 3166-1 Alpha-2 country code format
    » addressLine1 body string false addressLine1 must be in address mentioned in the national identity card
    » locality body string false locality must be in address mentioned in the national identity card
    » postCode body string false postCode must be in address mentioned in the national identity card
    » province body string false province must be in address mentioned in the national identity card
    » dob body string(date) false dob must be in YYYY-MM-DD format
    » firstName body string false Names should be entered exactly as printed on the card (in the same nameline).
    » lastName body string false Names should be entered exactly as printed on the card (in the same nameline).
    » nationalid body string false nationalid must be same as mentioned in the card.The national ID of the person being searched, relevant to the country of the search. Only required when using these country codes: BR, CA, CN, EG, ES, HK, IN, IT, JO, JP, KW, MX, MY, OM, RO, RU, SA, SG, TR, US, ZA

    Example responses

    200 Response

    {
      "msg": "Request Success",
      "data": {
        "completename": "Adalgisa Nery",
        "formofaddress": "",
        "qualificationpreceding": "",
        "givenfullname": "Adalgisa",
        "givennameinitials": "",
        "qualification_int_first": "",
        "surname_prefix_first": "",
        "surname_first": "Nery",
        "indicator": "",
        "qualification_int_second": "",
        "surname_prefix_second": "",
        "qualification_suceeding": "",
        "name_qualified": "",
        "function": "",
        "gender": "",
        "nationality": "",
        "nationalid": "32698687827",
        "organization_name": "",
        "dob": "08/08/1987",
        "businessid": "",
        "contact_type": "",
        "countryCode": "US",
        "passport": "",
        "codes": {
          "reliability": "10",
          "adaptation": "0",
          "detailCode": "WS-333865.2020.0.1.22.6.43.638",
          "detail_list": "",
          "options": "IdentityVerify;DisableDQChecks;messageVerbose",
          "messages": [
            {
              "code": "XXXX",
              "value": "0;0;0;3;3;0;0;0;0;3;0;3;3;0;0;0;0;4;3;0;0;0;0;3;3"
            }
          ],
          "detailList": ""
        },
        "contactType": "",
        "nameQualified": "",
        "organizationName": "",
        "qualificationIntFirst": "",
        "qualificationIntSecond": "",
        "qualificationSuceeding": "",
        "surnameFirst": "Nery",
        "surnamePrefixFirst": "",
        "surnamePrefixSecond": "",
        "Status": "Full Match"
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successfull Operation validateGlobalId
    400 Bad Request Bad Request Inline
    401 Unauthorized Bad Request Inline
    500 Internal Server Error Failed Operation Inline

    Response Schema

    Status Code 400

    Name Type Required Restrictions Description
    » msg string false none none

    Status Code 401

    Name Type Required Restrictions Description
    » msg string false none none

    Status Code 500

    Name Type Required Restrictions Description
    » msg string false none none

    Global International

    Code samples

    # You can also use wget
    curl -X POST https://{environment}.doxai.co/{basePath}/global/international \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'x-access-key: 007f61ed-b6b5-4830-a68e-f0ca4400e751' \
      -H 'x-secret-key: 4b518f62-0011-5cf8-a6a8-6898f1089d11'
    
    
    POST https://{environment}.doxai.co/{basePath}/global/international HTTP/1.1
    
    Content-Type: application/json
    Accept: application/json
    x-access-key: 007f61ed-b6b5-4830-a68e-f0ca4400e751
    x-secret-key: 4b518f62-0011-5cf8-a6a8-6898f1089d11
    
    
    using System;
    using System.Collections.Generic;
    using System.Net.Http;
    using System.Net.Http.Headers;
    using System.Text;
    using System.Threading.Tasks;
    using Newtonsoft.Json;
    
    /// <<summary>>
    /// Example of Http Client
    /// <</summary>>
    public class HttpExample
    {
        private HttpClient Client { get; set; }
    
        /// <<summary>>
        /// Setup http client
        /// <</summary>>
        public HttpExample()
        {
          Client = new HttpClient();
        }
    
    
        /// Make a dummy request
        public async Task MakePostRequest()
        {
          string url = "https://{environment}.doxai.co/{basePath}/global/international";
    
    
          await PostAsync(null, url);
    
        }
    
        /// Performs a POST Request
        public async Task PostAsync(undefined content, string url)
        {
            //Serialize Object
            StringContent jsonContent = SerializeObject(content);
    
            //Execute POST request
            HttpResponseMessage response = await Client.PostAsync(url, jsonContent);
        }
    
    
    
        /// Serialize an object to Json
        private StringContent SerializeObject(undefined content)
        {
            //Serialize Object
            string jsonObject = JsonConvert.SerializeObject(content);
    
            //Create Json UTF8 String Content
            return new StringContent(jsonObject, Encoding.UTF8, "application/json");
        }
    
        /// Deserialize object from request response
        private async Task DeserializeObject(HttpResponseMessage response)
        {
            //Read body 
            string responseBody = await response.Content.ReadAsStringAsync();
    
            //Deserialize Body to object
            var result = JsonConvert.DeserializeObject(responseBody);
        }
    }
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'x-access-key' => '007f61ed-b6b5-4830-a68e-f0ca4400e751',
      'x-secret-key' => '4b518f62-0011-5cf8-a6a8-6898f1089d11'
    }
    
    result = RestClient.post 'https://{environment}.doxai.co/{basePath}/global/international',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'x-access-key': '007f61ed-b6b5-4830-a68e-f0ca4400e751',
      'x-secret-key': '4b518f62-0011-5cf8-a6a8-6898f1089d11'
    }
    
    r = requests.post('https://{environment}.doxai.co/{basePath}/global/international', headers = headers)
    
    print(r.json())
    
    
    const inputBody = '{
      "countryCode": "AU",
      "addressLine1": "Av 55",
      "locality": "BARRETOS",
      "postCode": "12234556",
      "province": "SP",
      "dob": "1995-03-01",
      "firstName": "John",
      "lastName": "Stephen",
      "nationalid": "32698687827"
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'x-access-key':'007f61ed-b6b5-4830-a68e-f0ca4400e751',
      'x-secret-key':'4b518f62-0011-5cf8-a6a8-6898f1089d11'
    };
    
    fetch('https://{environment}.doxai.co/{basePath}/global/international',
    {
      method: 'POST',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    <?php
    
    require 'vendor/autoload.php';
    
    $headers = array(
        'Content-Type' => 'application/json',
        'Accept' => 'application/json',
        'x-access-key' => '007f61ed-b6b5-4830-a68e-f0ca4400e751',
        'x-secret-key' => '4b518f62-0011-5cf8-a6a8-6898f1089d11',
    );
    
    $client = new \GuzzleHttp\Client();
    
    // Define array of request body.
    $request_body = array();
    
    try {
        $response = $client->request('POST','https://{environment}.doxai.co/{basePath}/global/international', array(
            'headers' => $headers,
            'json' => $request_body,
           )
        );
        print_r($response->getBody()->getContents());
     }
     catch (\GuzzleHttp\Exception\BadResponseException $e) {
        // handle exception or api errors.
        print_r($e->getMessage());
     }
    
     // ...
    
    
    URL obj = new URL("https://{environment}.doxai.co/{basePath}/global/international");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "x-access-key": []string{"007f61ed-b6b5-4830-a68e-f0ca4400e751"},
            "x-secret-key": []string{"4b518f62-0011-5cf8-a6a8-6898f1089d11"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://{environment}.doxai.co/{basePath}/global/international", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /global/international

    Global electronic verification on given identity.

    Body parameter

    {
      "countryCode": "AU",
      "addressLine1": "Av 55",
      "locality": "BARRETOS",
      "postCode": "12234556",
      "province": "SP",
      "dob": "1995-03-01",
      "firstName": "John",
      "lastName": "Stephen",
      "nationalid": "32698687827"
    }
    

    Parameters

    Name In Type Required Description
    x-access-key header string true none
    x-secret-key header string true none
    body body object true none
    » countryCode body string false countryCode must be in ISO 3166-1 Alpha-2 country code format
    » addressLine1 body string false addressLine1 must be in address mentioned in the national identity card
    » locality body string false locality must be in address mentioned in the national identity card
    » postCode body string false postCode must be in address mentioned in the national identity card
    » province body string false province must be in address mentioned in the national identity card
    » dob body string(date) false dob must be in YYYY-MM-DD format
    » firstName body string false Names should be entered exactly as printed on the card (in the same nameline).
    » lastName body string false Names should be entered exactly as printed on the card (in the same nameline).
    » nationalid body string false nationalid must be same as mentioned in the card.The national ID of the person being searched, relevant to the country of the search. Only required when using these country codes: BR, CA, CN, EG, ES, HK, IN, IT, JO, JP, KW, MX, MY, OM, RO, RU, SA, SG, TR, US, ZA

    Example responses

    200 Response

    {
      "msg": "Request Success",
      "data": {
        "completename": "Adalgisa Nery",
        "formofaddress": "",
        "qualificationpreceding": "",
        "givenfullname": "Adalgisa",
        "givennameinitials": "",
        "qualification_int_first": "",
        "surname_prefix_first": "",
        "surname_first": "Nery",
        "indicator": "",
        "qualification_int_second": "",
        "surname_prefix_second": "",
        "qualification_suceeding": "",
        "name_qualified": "",
        "function": "",
        "gender": "",
        "nationality": "",
        "nationalid": "32698687827",
        "organization_name": "",
        "dob": "08/08/1987",
        "businessid": "",
        "contact_type": "",
        "countryCode": "US",
        "passport": "",
        "codes": {
          "reliability": "10",
          "adaptation": "0",
          "detailCode": "WS-333865.2020.0.1.22.6.43.638",
          "detail_list": "",
          "options": "IdentityVerify;DisableDQChecks;messageVerbose",
          "messages": [
            {
              "code": "XXXX",
              "value": "0;0;0;3;3;0;0;0;0;3;0;3;3;0;0;0;0;4;3;0;0;0;0;3;3"
            }
          ],
          "detailList": ""
        },
        "contactType": "",
        "nameQualified": "",
        "organizationName": "",
        "qualificationIntFirst": "",
        "qualificationIntSecond": "",
        "qualificationSuceeding": "",
        "surnameFirst": "Nery",
        "surnamePrefixFirst": "",
        "surnamePrefixSecond": "",
        "Status": "Full Match"
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successfull Operation validateGlobalId
    400 Bad Request Bad Request Inline
    401 Unauthorized Bad Request Inline
    500 Internal Server Error Failed Operation Inline

    Response Schema

    Status Code 400

    Name Type Required Restrictions Description
    » msg string false none none

    Status Code 401

    Name Type Required Restrictions Description
    » msg string false none none

    Status Code 500

    Name Type Required Restrictions Description
    » msg string false none none

    eSignature and eWitness

    Upload file

    Code samples

    # You can also use wget
    curl -X POST https://{environment}.doxai.co/{basePath}/signapi/upload \
      -H 'Content-Type: multipart/form-data' \
      -H 'Accept: application/json' \
      -H 'x-access-key: cbd9e2af-9b10-482e-a93f-05d497d0454b' \
      -H 'x-secret-key: 2e10a906-144f-5431-8c79-67fe33db0239'
    
    
    POST https://{environment}.doxai.co/{basePath}/signapi/upload HTTP/1.1
    
    Content-Type: multipart/form-data
    Accept: application/json
    x-access-key: cbd9e2af-9b10-482e-a93f-05d497d0454b
    x-secret-key: 2e10a906-144f-5431-8c79-67fe33db0239
    
    
    using System;
    using System.Collections.Generic;
    using System.Net.Http;
    using System.Net.Http.Headers;
    using System.Text;
    using System.Threading.Tasks;
    using Newtonsoft.Json;
    
    /// <<summary>>
    /// Example of Http Client
    /// <</summary>>
    public class HttpExample
    {
        private HttpClient Client { get; set; }
    
        /// <<summary>>
        /// Setup http client
        /// <</summary>>
        public HttpExample()
        {
          Client = new HttpClient();
        }
    
    
        /// Make a dummy request
        public async Task MakePostRequest()
        {
          string url = "https://{environment}.doxai.co/{basePath}/signapi/upload";
    
    
          await PostAsync(null, url);
    
        }
    
        /// Performs a POST Request
        public async Task PostAsync(undefined content, string url)
        {
            //Serialize Object
            StringContent jsonContent = SerializeObject(content);
    
            //Execute POST request
            HttpResponseMessage response = await Client.PostAsync(url, jsonContent);
        }
    
    
    
        /// Serialize an object to Json
        private StringContent SerializeObject(undefined content)
        {
            //Serialize Object
            string jsonObject = JsonConvert.SerializeObject(content);
    
            //Create Json UTF8 String Content
            return new StringContent(jsonObject, Encoding.UTF8, "application/json");
        }
    
        /// Deserialize object from request response
        private async Task DeserializeObject(HttpResponseMessage response)
        {
            //Read body 
            string responseBody = await response.Content.ReadAsStringAsync();
    
            //Deserialize Body to object
            var result = JsonConvert.DeserializeObject(responseBody);
        }
    }
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'multipart/form-data',
      'Accept' => 'application/json',
      'x-access-key' => 'cbd9e2af-9b10-482e-a93f-05d497d0454b',
      'x-secret-key' => '2e10a906-144f-5431-8c79-67fe33db0239'
    }
    
    result = RestClient.post 'https://{environment}.doxai.co/{basePath}/signapi/upload',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'multipart/form-data',
      'Accept': 'application/json',
      'x-access-key': 'cbd9e2af-9b10-482e-a93f-05d497d0454b',
      'x-secret-key': '2e10a906-144f-5431-8c79-67fe33db0239'
    }
    
    r = requests.post('https://{environment}.doxai.co/{basePath}/signapi/upload', headers = headers)
    
    print(r.json())
    
    
    const inputBody = '{
      "file": "",
      "type": "sign",
      "fileReferenceId": "7719f55b-ea7e-4685-b3e1-82a040c"
    }';
    const headers = {
      'Content-Type':'multipart/form-data',
      'Accept':'application/json',
      'x-access-key':'cbd9e2af-9b10-482e-a93f-05d497d0454b',
      'x-secret-key':'2e10a906-144f-5431-8c79-67fe33db0239'
    };
    
    fetch('https://{environment}.doxai.co/{basePath}/signapi/upload',
    {
      method: 'POST',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    <?php
    
    require 'vendor/autoload.php';
    
    $headers = array(
        'Content-Type' => 'multipart/form-data',
        'Accept' => 'application/json',
        'x-access-key' => 'cbd9e2af-9b10-482e-a93f-05d497d0454b',
        'x-secret-key' => '2e10a906-144f-5431-8c79-67fe33db0239',
    );
    
    $client = new \GuzzleHttp\Client();
    
    // Define array of request body.
    $request_body = array();
    
    try {
        $response = $client->request('POST','https://{environment}.doxai.co/{basePath}/signapi/upload', array(
            'headers' => $headers,
            'json' => $request_body,
           )
        );
        print_r($response->getBody()->getContents());
     }
     catch (\GuzzleHttp\Exception\BadResponseException $e) {
        // handle exception or api errors.
        print_r($e->getMessage());
     }
    
     // ...
    
    
    URL obj = new URL("https://{environment}.doxai.co/{basePath}/signapi/upload");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"multipart/form-data"},
            "Accept": []string{"application/json"},
            "x-access-key": []string{"cbd9e2af-9b10-482e-a93f-05d497d0454b"},
            "x-secret-key": []string{"2e10a906-144f-5431-8c79-67fe33db0239"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://{environment}.doxai.co/{basePath}/signapi/upload", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /signapi/upload

    Upload files for eSignature and eWitness request

    Body parameter

    file: ""
    type: sign
    fileReferenceId: 7719f55b-ea7e-4685-b3e1-82a040c
    
    

    Parameters

    Name In Type Required Description
    x-access-key header string true none
    x-secret-key header string true none
    body body object true none
    » file body string(binary) true Allowed file types: .pdf, .doc, .docx, .txt, .jpg, .jpeg, .png, .ppt, .pptx, .bmp, .tiff, .svg
    » type body string false Enter upload type
    » fileReferenceId body string false none

    Example responses

    200 Response

    {
      "msg": "Document successfully uploaded",
      "data": {
        "fileId": "619b59b5e25dee260c3c7a6a",
        "fileReferenceId": "7719f55b-ea7e-4685-b3e1-82a040c",
        "url": "https://storage-prod.doxai.co/doxaisignapi-prod/uploaded_files/69421425-27F8-4575-B86F-8F907CD39F60.pdf?sv=2020-06-12&st=2022-08-16T12%3A49%3A53Z&se=2022-08-17T12%3A49%3A53Z&sr=b&sp=r&sig=a6tetNu9a9ujQfgiiRwQvTek5KKRIkYZvDbBD%2F8JLGI%3D",
        "interactiveForm": false,
        "size": 538097,
        "totalPages": 2,
        "fileName": "sample (9).pdf",
        "anchorTags": [
          {
            "signer": 1,
            "placeholders": [
              {
                "coordinates": [
                  93.6,
                  69.75,
                  213.6,
                  94.75
                ],
                "pageNumber": 1,
                "type": "signature"
              }
            ]
          }
        ]
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successfull Operation Inline
    400 Bad Request Bad Request Inline
    401 Unauthorized Bad Request Inline
    500 Internal Server Error Failed Operation Inline

    Response Schema

    Status Code 200

    Name Type Required Restrictions Description
    » msg string false none none
    » data object false none none
    »» fileId string false none none
    »» fileReferenceId string false none none
    »» url string false none none
    »» interactiveForm bool false none none
    »» size number false none none
    »» totalPages number false none none
    »» fileName string false none none
    »» anchorTags array false none none

    Status Code 400

    Name Type Required Restrictions Description
    » msg string false none none

    Status Code 401

    Name Type Required Restrictions Description
    » msg string false none none

    Status Code 500

    Name Type Required Restrictions Description
    » msg string false none none

    eSignature request

    Code samples

    # You can also use wget
    curl -X POST https://{environment}.doxai.co/{basePath}/signapi/signrequest \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'x-access-key: cbd9e2af-9b10-482e-a93f-05d497d0454b' \
      -H 'x-secret-key: 2e10a906-144f-5431-8c79-67fe33db0239'
    
    
    POST https://{environment}.doxai.co/{basePath}/signapi/signrequest HTTP/1.1
    
    Content-Type: application/json
    Accept: application/json
    x-access-key: cbd9e2af-9b10-482e-a93f-05d497d0454b
    x-secret-key: 2e10a906-144f-5431-8c79-67fe33db0239
    
    
    using System;
    using System.Collections.Generic;
    using System.Net.Http;
    using System.Net.Http.Headers;
    using System.Text;
    using System.Threading.Tasks;
    using Newtonsoft.Json;
    
    /// <<summary>>
    /// Example of Http Client
    /// <</summary>>
    public class HttpExample
    {
        private HttpClient Client { get; set; }
    
        /// <<summary>>
        /// Setup http client
        /// <</summary>>
        public HttpExample()
        {
          Client = new HttpClient();
        }
    
    
        /// Make a dummy request
        public async Task MakePostRequest()
        {
          string url = "https://{environment}.doxai.co/{basePath}/signapi/signrequest";
    
    
          await PostAsync(null, url);
    
        }
    
        /// Performs a POST Request
        public async Task PostAsync(undefined content, string url)
        {
            //Serialize Object
            StringContent jsonContent = SerializeObject(content);
    
            //Execute POST request
            HttpResponseMessage response = await Client.PostAsync(url, jsonContent);
        }
    
    
    
        /// Serialize an object to Json
        private StringContent SerializeObject(undefined content)
        {
            //Serialize Object
            string jsonObject = JsonConvert.SerializeObject(content);
    
            //Create Json UTF8 String Content
            return new StringContent(jsonObject, Encoding.UTF8, "application/json");
        }
    
        /// Deserialize object from request response
        private async Task DeserializeObject(HttpResponseMessage response)
        {
            //Read body 
            string responseBody = await response.Content.ReadAsStringAsync();
    
            //Deserialize Body to object
            var result = JsonConvert.DeserializeObject(responseBody);
        }
    }
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'x-access-key' => 'cbd9e2af-9b10-482e-a93f-05d497d0454b',
      'x-secret-key' => '2e10a906-144f-5431-8c79-67fe33db0239'
    }
    
    result = RestClient.post 'https://{environment}.doxai.co/{basePath}/signapi/signrequest',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'x-access-key': 'cbd9e2af-9b10-482e-a93f-05d497d0454b',
      'x-secret-key': '2e10a906-144f-5431-8c79-67fe33db0239'
    }
    
    r = requests.post('https://{environment}.doxai.co/{basePath}/signapi/signrequest', headers = headers)
    
    print(r.json())
    
    
    const inputBody = '{
      "requestList": [
        {
          "referenceId": "088D70CB-802B-4F6E-8DD0-F1DB5334CE62",
          "requesterName": "John Smith",
          "requesterEmail": "xxx@example.com",
          "initiatorEmail": "xxx@example.com",
          "fileIds": [
            {
              "fileId": "6776904371f5048e4674df08",
              "fileIndex": 0
            }
          ],
          "message": "message",
          "hasOrdering": false,
          "expiryDate": "2025-11-15T02:38:07.000Z",
          "recipients": [
            {
              "name": null,
              "email": null,
              "signingOrder": null,
              "accessCode": null,
              "hasAccessCode": null,
              "mfaEnabled": null,
              "privateMessage": null,
              "isRequired": null,
              "enforceDownload": null,
              "associateSigner": null,
              "witnesser": null,
              "fileConfigs": null
            }
          ],
          "ccList": [
            "xxx@example.com",
            "xyz@example.com"
          ],
          "reminderEnabled": true,
          "reminderTimings": [
            2,
            4
          ],
          "emailNotifications": true,
          "iFrameUrl": true,
          "domains": [
            "https://example.com"
          ],
          "mergeFile": false,
          "url": "",
          "canProcessWithMandatorySigners": false,
          "allowDeclineAction": true,
          "enableChatbot": true,
          "freeTextEdit": true,
          "certifyDocument": false,
          "clientName": "DoxAI",
          "timezone": "Australia/sydney",
          "customDocumentName": "DoxAI",
          "allowDelegateAction": false,
          "status": "pending",
          "schedule": {
            "time": "2025-02-13T12:07:54.000Z",
            "enabled": false,
            "scheduledTimeInTimezone": "2025-02-13T12:07:54.000Z"
          },
          "allowDraftEdit": false,
          "allowDraftFullFormEdit": false,
          "freshChatEnabled": false,
          "enableDefaultBrandingInAudit": true,
          "allowRestrictionsAfterSign": false,
          "restrictedPermissions": [],
          "allowedSignatures": [
            "draw_sign",
            "e_sign",
            "scanned_sign"
          ],
          "redirectUrl": ""
        }
      ]
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'x-access-key':'cbd9e2af-9b10-482e-a93f-05d497d0454b',
      'x-secret-key':'2e10a906-144f-5431-8c79-67fe33db0239'
    };
    
    fetch('https://{environment}.doxai.co/{basePath}/signapi/signrequest',
    {
      method: 'POST',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    <?php
    
    require 'vendor/autoload.php';
    
    $headers = array(
        'Content-Type' => 'application/json',
        'Accept' => 'application/json',
        'x-access-key' => 'cbd9e2af-9b10-482e-a93f-05d497d0454b',
        'x-secret-key' => '2e10a906-144f-5431-8c79-67fe33db0239',
    );
    
    $client = new \GuzzleHttp\Client();
    
    // Define array of request body.
    $request_body = array();
    
    try {
        $response = $client->request('POST','https://{environment}.doxai.co/{basePath}/signapi/signrequest', array(
            'headers' => $headers,
            'json' => $request_body,
           )
        );
        print_r($response->getBody()->getContents());
     }
     catch (\GuzzleHttp\Exception\BadResponseException $e) {
        // handle exception or api errors.
        print_r($e->getMessage());
     }
    
     // ...
    
    
    URL obj = new URL("https://{environment}.doxai.co/{basePath}/signapi/signrequest");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "x-access-key": []string{"cbd9e2af-9b10-482e-a93f-05d497d0454b"},
            "x-secret-key": []string{"2e10a906-144f-5431-8c79-67fe33db0239"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://{environment}.doxai.co/{basePath}/signapi/signrequest", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /signapi/signrequest

    Place eSignature request with file id

    Body parameter

    {
      "requestList": [
        {
          "referenceId": "088D70CB-802B-4F6E-8DD0-F1DB5334CE62",
          "requesterName": "John Smith",
          "requesterEmail": "xxx@example.com",
          "initiatorEmail": "xxx@example.com",
          "fileIds": [
            {
              "fileId": "6776904371f5048e4674df08",
              "fileIndex": 0
            }
          ],
          "message": "message",
          "hasOrdering": false,
          "expiryDate": "2025-11-15T02:38:07.000Z",
          "recipients": [
            {
              "name": null,
              "email": null,
              "signingOrder": null,
              "accessCode": null,
              "hasAccessCode": null,
              "mfaEnabled": null,
              "privateMessage": null,
              "isRequired": null,
              "enforceDownload": null,
              "associateSigner": null,
              "witnesser": null,
              "fileConfigs": null
            }
          ],
          "ccList": [
            "xxx@example.com",
            "xyz@example.com"
          ],
          "reminderEnabled": true,
          "reminderTimings": [
            2,
            4
          ],
          "emailNotifications": true,
          "iFrameUrl": true,
          "domains": [
            "https://example.com"
          ],
          "mergeFile": false,
          "url": "",
          "canProcessWithMandatorySigners": false,
          "allowDeclineAction": true,
          "enableChatbot": true,
          "freeTextEdit": true,
          "certifyDocument": false,
          "clientName": "DoxAI",
          "timezone": "Australia/sydney",
          "customDocumentName": "DoxAI",
          "allowDelegateAction": false,
          "status": "pending",
          "schedule": {
            "time": "2025-02-13T12:07:54.000Z",
            "enabled": false,
            "scheduledTimeInTimezone": "2025-02-13T12:07:54.000Z"
          },
          "allowDraftEdit": false,
          "allowDraftFullFormEdit": false,
          "freshChatEnabled": false,
          "enableDefaultBrandingInAudit": true,
          "allowRestrictionsAfterSign": false,
          "restrictedPermissions": [],
          "allowedSignatures": [
            "draw_sign",
            "e_sign",
            "scanned_sign"
          ],
          "redirectUrl": ""
        }
      ]
    }
    

    Parameters

    Name In Type Required Description
    x-access-key header string true none
    x-secret-key header string true none
    body body object true none
    » requestList body [object] false none
    »» referenceId body string false Reference id for file
    »» requesterName body string false The name of the requester. If this is provided, initiator details will not be used in audit report and sending email status. This will be used only if requesterName and requesterEmail are provided.
    »» requesterEmail body string false Requester email must be a valid email. If this is provided, initiator details will not be used in audit report and sending email status.This will be used only if requesterName and requesterEmail are provided.
    »» initiatorEmail body string false Initiator email must be one of the account managers like owner, admin and member, If it is not provided default owner email will be used
    »» fileIds body [object] false none
    »»» fileId body string false Uploaded File id
    »»» fileIndex body number false Uploaded File ids index
    »» message body string false Message for all signers.This will be used in email.
    »» hasOrdering body bool false Signing order requested flag. If Signing order is enabled then the signers can be signed one by one in the provided order
    »» expiryDate body date-time false Expiry date of the sign request.Expiry date must be greater than current date.
    »» recipients body [anyOf] false none
    »»» anonymous body recipient1 false none
    »»»» name body string false Name of the signer.
    »»»» email body string false Email of the signer.
    »»»» signingOrder body number false Order of the signer.
    »»»» accessCode body number false Access code for signer authentication. By default it is null.
    »»»» hasAccessCode body bool false Enables access code for signer authentication. This is used as an additional security for sensitive documents. By default it is false.
    »»»» mfaEnabled body bool false Enables Multi Factor authentication for signer
    »»»» privateMessage body string false Private message to the signer sent along with the signing request in email.
    »»»» isRequired body bool false To identify whether the signer is optional or mandatory. By default it is true.
    »»»» enforceDownload body bool false To allow user to download the original file while signing. By default it is true.
    »»»» associateSigner body string false Email of the associate signers. Associate signers must be one of the recipients in list.Associate signers is allowed only when signing order is enabled.
    »»»» witnesser body string false Email of the witnesser signers. Witnesser signers must be one of the recipients in list.Witnesser signers is allowed only when signing order is enabled.
    »»»» fileConfigs body [anyOf] false none
    »»»»» fileId body string false none
    »»»»» fieldEdit body bool false Enables edit options in specified form fields in the smart pdf. If field edit is set to true then the field names should be mentioned in the granular access fields.
    »»»»» signForm body bool false If sign form is set to true, then the placeholders like name,email,signature,etc... can be used.At least canEdit or signFrom must be set to the signer.
    »»»»» fullFormEdit body bool false Enables full edit in the smart pdf.
    »»»»» isReviewer body bool false If is reviewer is set to true, then the sign form and fill form must be false and placeholders must be empty.
    »»»»» placeholders body [anyOf] false none
    »»»»»» anonymous body signaturePlaceHolder false none
    »»»»»»» type body string false allowed filed type values: {signature:String}, {checkbox:String}, {dropdown:String}, {radio:String}, {title:String}, {text:String}, {stamp:String}, {company:String}, {name:String(required)}, {email:String(required)}, {date:String}, {initial:String}
    »»»»»»» value body string false Field values
    »»»»»»» coordinates body array false Field co-ordinates array.
    »»»»»»» pageNumber body number false The page number in which the field exists
    »»»»»»» isRequired body bool false To identify whether the signer placeholder is optional or mandatory. By default it is true.
    »»»»»»» clusterId body string false Used for radio button grouping
    »»»»»»» groupId body string false Unique id for field names
    »»»»»» anonymous body dropDownPlaceHolder false none
    »»»»»»» type body string false allowed filed type values: {signature:String}, {checkbox:String}, {dropdown:String}, {radio:String}, {title:String}, {text:String}, {stamp:String}, {company:String}, {name:String(required)}, {email:String(required)}, {date:String}, {initial:String}
    »»»»»»» value body string false Field values
    »»»»»»» coordinates body array false Field co-ordinates array.
    »»»»»»» pageNumber body number false The page number in which the field exists
    »»»»»»» defaultValue body string false dropDown default value
    »»»»»»» dropDownOptions body array false Drop down options
    »»»»»»» isRequired body bool false To identify whether the signer placeholder is optional or mandatory. By default it is true.
    »»»»»»» clusterId body string false Used for radio button grouping
    »»»»»»» groupId body string false Unique id for field names
    »»»»»» anonymous body textBoxPlaceHolder false none
    »»»»»»» type body string false allowed filed type values: {signature:String}, {checkbox:String}, {dropdown:String}, {radio:String}, {title:String}, {text:String}, {stamp:String}, {company:String}, {name:String(required)}, {email:String(required)}, {date:String}, {initial:String}
    »»»»»»» value body string false Field values
    »»»»»»» coordinates body array false Field co-ordinates array.
    »»»»»»» customLabel body string false Custom label for placeholder box
    »»»»»»» validation body [object] false List of regex validation rules with custom error messages
    »»»»»»»» regex body string false Regex pattern for the validation
    »»»»»»»» errorMessage body string false Custom error message for regex validation
    »»»»»»» format body string false Supported formats: Uppercase, Lowercase
    »»»»»»» pageNumber body number false The page number in which the field exists
    »»»»»»» font body object false Fonts alowed for placeholder type 'name','date','dateTime','email','initial','company','title','text'
    »»»»»»»» type body string false Allowed font types: 'Poppins-Medium', 'Poppins-Regular', 'Roboto-Medium', 'Lato-Bold', 'PlayfairDisplay-Medium', 'OpenSans-Condensed-Medium'
    »»»»»»»» color body string false Font color in hex code
    »»»»»»» isRequired body bool false To identify whether the signer placeholder is optional or mandatory. By default it is true.
    »»»»»»» clusterId body string false Used for radio button grouping
    »»»»»»» groupId body string false Unique id for field names
    »»»»»» anonymous body datePlaceHolder false none
    »»»»»»» type body string false allowed filed type values: {signature:String}, {checkbox:String}, {dropdown:String}, {radio:String}, {title:String}, {text:String}, {stamp:String}, {company:String}, {name:String(required)}, {email:String(required)}, {date:String}, {initial:String}
    »»»»»»» value body string false Field values
    »»»»»»» coordinates body array false Field co-ordinates array.
    »»»»»»» format body string false Support formats for Date field: DD/MM/YYYY , MM/DD/YYYY , YYYY/MM/DD , DD-MM-YYYY , MM-DD-YYYY , YYYY-MM-DD
    »»»»»»» pageNumber body number false The page number in which the field exists
    »»»»»»» isRequired body bool false To identify whether the signer placeholder is optional or mandatory. By default it is true.
    »»»»»»» clusterId body string false Used for radio button grouping
    »»»»»»» groupId body string false Unique id for field names
    »»»»» granularAccess body array false none
    »»» anonymous body recipient2 false none
    »»»» name body string false Name of the signer.
    »»»» email body string false Email of the signer.
    »»»» signingOrder body number false Order of the signer.
    »»»» accessCode body number false Access code for signer authentication. By default it is null.
    »»»» hasAccessCode body bool false Enables access code for signer authentication. This is used as an additional security for sensitive documents. By default it is false.
    »»»» mfaEnabled body bool false Enables Multi Factor authentication for signer
    »»»» privateMessage body string false Private message to the signer sent along with the signing request in email.
    »»»» isRequired body bool false To identify whether the signer is optional or mandatory. By default it is true.
    »»»» enforceDownload body bool false To allow user to download the original file while signing. By default it is true.
    »»»» associateSigner body string false Email of the associate signers. Associate signers must be one of the recipients in list.Associate signers is allowed only when signing order is enabled.
    »»»» witnesser body string false Email of the witnesser signers. Witnesser signers must be one of the recipients in list.Witnesser signers is allowed only when signing order is enabled.
    »»»» fileConfigs body [anyOf] false none
    »»»»» fileId body string false none
    »»»»» fieldEdit body bool false Enables edit options in specified form fields in the smart pdf. If field edit is set to true then the field names should be mentioned in the granular access fields.
    »»»»» signForm body bool false If sign form is set to true, then the placeholders like name,email,signature,etc... can be used.At least canEdit or signFrom must be set to the signer.
    »»»»» fullFormEdit body bool false Enables full edit in the smart pdf.
    »»»»» isReviewer body bool false If is reviewer is set to true, then the sign form and fill form must be false and placeholders must be empty.
    »»»»» placeholders body array false none
    »»»»» granularAccess body [granularAccess] false none
    »»»»»» fields body string false The name of the field in smart pdf
    »»»»»» isRequired body bool false To identify whether the field is optional or mandatory.
    »»»»»» pageNumber body number false The page number in which the field exists.
    »» ccList body array false List of email ids in CC. Email ids must be unique
    »» reminderEnabled body bool false To enable reminder notifications. By Default it is false.
    »» reminderTimings body array false No of hours for reminder notification.If reminderEnabled is set to true, then at least one reminder timings must be provided.
    »» emailNotifications body bool false To enable email notifications
    »» iFrameUrl body bool false IFrameUrl is used to prevent the unauthorized domains to access it.By Default iFrameUrl is false.
    »» domains body array false The whitelisted domains can be provided in the domains array.If Iframe url is set to true, then the domains will be validated. By Default it will be an empty array.
    »» mergeFile body bool false To merge signed document with audit report.By Default it is false.
    »» url body string false Url is used for custom hosted webapp.By Default the live url will be used.
    »» canProcessWithMandatorySigners body bool false Starts processing the document, once mandatory signer has signed.By Default it is false.
    »» allowDeclineAction body bool false To enable the decline action while signing. By Default it is true.
    »» enableChatbot body bool false To enable the free text edit option. By Default it is true.
    »» freeTextEdit body bool false To enable and disable the chatbot while signing. By Default it is true.
    »» certifyDocument body bool false To certify the document. By Default it is false. If certifyDocument is false recipientsList is mandatory.If recipients list is provided it will be resetted to []
    »» clientName body string false To set the client name in guest sign.
    »» timezone body string false To format the date time in audit report. Only IANA approved time zones are allowed.
    »» customDocumentName body string false To set the custom document name for sign request.
    »» allowDelegateAction body bool false To enable the delegate option. By Default it is false.
    »» status body string false To create the sign request. By Default it is in draft state.
    »» schedule body object false none
    »»» time body date-time false Scheduling date of the sign request in local format.Scheduling date must be greater than current date.
    »»» enabled body bool false To enable the schedule option. By Default it is false.
    »»» scheduledTimeInTimezone body date-time false Scheduling date of the sign request in Timezone.
    »» allowDraftEdit body bool false To restrict the edit access in sign request draft. Default is true
    »» allowDraftFullFormEdit body bool false To enable and disable the full form edit option in draft. By Default it is true.
    »» freshChatEnabled body bool false To enable or disable the fresh chat. Default is false
    »» enableDefaultBrandingInAudit body bool false To enable the default branding in audit. By default it is true.
    »» allowRestrictionsAfterSign body bool false Allow Restrictions After Sign is used to restrict signers permission after first signer completed signing. By default value is false
    »» restrictedPermissions body array false restrictedPersmissions array cantains alteast any one of the followings [sign,fillAndSign,fill,review] based on their request
    »» allowedSignatures body array false none
    »» redirectUrl body string false External site redirection Url. This will work only for decline, guest sign and review

    Example responses

    200 Response

    {
      "msg": "Request Success.",
      "data": {
        "msg": "Signing request placed successfully.",
        "data": {
          "requestId": "D0-F1DB5334CE62088-D70CB-802B-4F6E-8D",
          "referenceId": "088D70CB-802B-4F6E-8DD0-F1DB5334CE62",
          "redirectUrl": null,
          "selfSignUrl": null,
          "previewUrl": "https://example.com/auth?sign_request_id=31585418-EA94-4375-8C87-5A0E847288EB&uniqueId=2186C9A9-7135-49B9-BDFB-18D8ED6C3263&hasViewMode=true",
          "links": [
            {
              "email": "xxx@example.com",
              "name": "John Smith",
              "link": "https://example.com/auth?sign_request_id=31585418-EA94-4375-8C87-5A0E847288EB&unique_id=0F799128-D8F9-4BDA-AD6E-4B29762E061D&hasAccessCode=false"
            }
          ]
        }
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successfull Operation Inline
    400 Bad Request Bad Request Inline
    401 Unauthorized Bad Request Inline

    Response Schema

    Status Code 200

    Name Type Required Restrictions Description
    » msg string false none none
    » data object false none none
    »» msg string false none none
    »» data object false none none
    »»» requestId string false none none
    »»» referenceId string false none none
    »»» redirectUrl string false none none
    »»» selfSignUrl string false none none
    »»» previewUrl string false none none
    »»» links [object] false none none
    »»»» email string false none none
    »»»» name string false none none
    »»»» link string false none none

    Status Code 400

    Name Type Required Restrictions Description
    » msg string false none none
    » data object false none none
    »» msg string false none none
    »» data object false none none
    »»» requestId string false none none
    »»» referenceId string false none none
    »»» redirectUrl string false none none
    »»» selfSignUrl string false none none
    »»» previewUrl string false none none
    »»» links array false none none

    Status Code 401

    Name Type Required Restrictions Description
    » msg string false none none

    eWitness request

    Code samples

    # You can also use wget
    curl -X POST https://{environment}.doxai.co/{basePath}/signapi/witnessrequest \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'x-access-key: e0065744-c996-4ea4-a6f9-3e3f05b1a4c0' \
      -H 'x-secret-key: ae6d3536-4475-5bd8-b155-f11d3a327aba'
    
    
    POST https://{environment}.doxai.co/{basePath}/signapi/witnessrequest HTTP/1.1
    
    Content-Type: application/json
    Accept: application/json
    x-access-key: e0065744-c996-4ea4-a6f9-3e3f05b1a4c0
    x-secret-key: ae6d3536-4475-5bd8-b155-f11d3a327aba
    
    
    using System;
    using System.Collections.Generic;
    using System.Net.Http;
    using System.Net.Http.Headers;
    using System.Text;
    using System.Threading.Tasks;
    using Newtonsoft.Json;
    
    /// <<summary>>
    /// Example of Http Client
    /// <</summary>>
    public class HttpExample
    {
        private HttpClient Client { get; set; }
    
        /// <<summary>>
        /// Setup http client
        /// <</summary>>
        public HttpExample()
        {
          Client = new HttpClient();
        }
    
    
        /// Make a dummy request
        public async Task MakePostRequest()
        {
          string url = "https://{environment}.doxai.co/{basePath}/signapi/witnessrequest";
    
    
          await PostAsync(null, url);
    
        }
    
        /// Performs a POST Request
        public async Task PostAsync(undefined content, string url)
        {
            //Serialize Object
            StringContent jsonContent = SerializeObject(content);
    
            //Execute POST request
            HttpResponseMessage response = await Client.PostAsync(url, jsonContent);
        }
    
    
    
        /// Serialize an object to Json
        private StringContent SerializeObject(undefined content)
        {
            //Serialize Object
            string jsonObject = JsonConvert.SerializeObject(content);
    
            //Create Json UTF8 String Content
            return new StringContent(jsonObject, Encoding.UTF8, "application/json");
        }
    
        /// Deserialize object from request response
        private async Task DeserializeObject(HttpResponseMessage response)
        {
            //Read body 
            string responseBody = await response.Content.ReadAsStringAsync();
    
            //Deserialize Body to object
            var result = JsonConvert.DeserializeObject(responseBody);
        }
    }
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'x-access-key' => 'e0065744-c996-4ea4-a6f9-3e3f05b1a4c0',
      'x-secret-key' => 'ae6d3536-4475-5bd8-b155-f11d3a327aba'
    }
    
    result = RestClient.post 'https://{environment}.doxai.co/{basePath}/signapi/witnessrequest',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'x-access-key': 'e0065744-c996-4ea4-a6f9-3e3f05b1a4c0',
      'x-secret-key': 'ae6d3536-4475-5bd8-b155-f11d3a327aba'
    }
    
    r = requests.post('https://{environment}.doxai.co/{basePath}/signapi/witnessrequest', headers = headers)
    
    print(r.json())
    
    
    const inputBody = '{
      "requestList": [
        {
          "referenceId": "088D70CB-802B-4F6E-8DD0-F1DB5334CE62",
          "requesterName": "John Smith",
          "requesterEmail": "xxx@example.com",
          "initiatorEmail": "xxx@example.com",
          "witnesserEmail": "xxx@example.com",
          "fileIds": [
            {
              "fileId": "6776904371f5048e4674df08",
              "fileIndex": 0
            }
          ],
          "message": "message",
          "hasOrdering": false,
          "expiryDate": "2025-11-15T02:38:07.000Z",
          "signingDate": "2025-11-15T02:38:07.000Z",
          "recipients": [
            {
              "name": null,
              "email": null,
              "signingOrder": null,
              "accessCode": null,
              "hasAccessCode": null,
              "mfaEnabled": null,
              "privateMessage": null,
              "isRequired": null,
              "enforceDownload": null,
              "associateSigner": null,
              "witnesser": null,
              "fileConfigs": null
            }
          ],
          "ccList": [
            "xxx@example.com",
            "xyz@example.com"
          ],
          "reminderEnabled": true,
          "reminderTimings": [
            2,
            4
          ],
          "emailNotifications": true,
          "iFrameUrl": true,
          "domains": [
            "https://example.com"
          ],
          "mergeFile": false,
          "url": "",
          "canProcessWithMandatorySigners": false,
          "allowDeclineAction": true,
          "enableChatbot": true,
          "freeTextEdit": true,
          "clientName": "DoxAI",
          "timezone": "Australia/sydney",
          "customDocumentName": "DoxAI",
          "allowDelegateAction": false,
          "status": "pending",
          "schedule": {
            "time": "2025-02-13T12:07:54.000Z",
            "enabled": false,
            "scheduledTimeInTimezone": "2025-02-13T12:07:54.000Z"
          },
          "allowDraftEdit": false,
          "allowDraftFullFormEdit": false,
          "freshChatEnabled": false,
          "enableDefaultBrandingInAudit": true,
          "allowRestrictionsAfterSign": false,
          "restrictedPermissions": [],
          "allowedSignatures": [
            "draw_sign",
            "e_sign",
            "scanned_sign"
          ]
        }
      ]
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'x-access-key':'e0065744-c996-4ea4-a6f9-3e3f05b1a4c0',
      'x-secret-key':'ae6d3536-4475-5bd8-b155-f11d3a327aba'
    };
    
    fetch('https://{environment}.doxai.co/{basePath}/signapi/witnessrequest',
    {
      method: 'POST',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    <?php
    
    require 'vendor/autoload.php';
    
    $headers = array(
        'Content-Type' => 'application/json',
        'Accept' => 'application/json',
        'x-access-key' => 'e0065744-c996-4ea4-a6f9-3e3f05b1a4c0',
        'x-secret-key' => 'ae6d3536-4475-5bd8-b155-f11d3a327aba',
    );
    
    $client = new \GuzzleHttp\Client();
    
    // Define array of request body.
    $request_body = array();
    
    try {
        $response = $client->request('POST','https://{environment}.doxai.co/{basePath}/signapi/witnessrequest', array(
            'headers' => $headers,
            'json' => $request_body,
           )
        );
        print_r($response->getBody()->getContents());
     }
     catch (\GuzzleHttp\Exception\BadResponseException $e) {
        // handle exception or api errors.
        print_r($e->getMessage());
     }
    
     // ...
    
    
    URL obj = new URL("https://{environment}.doxai.co/{basePath}/signapi/witnessrequest");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "x-access-key": []string{"e0065744-c996-4ea4-a6f9-3e3f05b1a4c0"},
            "x-secret-key": []string{"ae6d3536-4475-5bd8-b155-f11d3a327aba"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://{environment}.doxai.co/{basePath}/signapi/witnessrequest", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /signapi/witnessrequest

    Place eWitness request with file id

    Body parameter

    {
      "requestList": [
        {
          "referenceId": "088D70CB-802B-4F6E-8DD0-F1DB5334CE62",
          "requesterName": "John Smith",
          "requesterEmail": "xxx@example.com",
          "initiatorEmail": "xxx@example.com",
          "witnesserEmail": "xxx@example.com",
          "fileIds": [
            {
              "fileId": "6776904371f5048e4674df08",
              "fileIndex": 0
            }
          ],
          "message": "message",
          "hasOrdering": false,
          "expiryDate": "2025-11-15T02:38:07.000Z",
          "signingDate": "2025-11-15T02:38:07.000Z",
          "recipients": [
            {
              "name": null,
              "email": null,
              "signingOrder": null,
              "accessCode": null,
              "hasAccessCode": null,
              "mfaEnabled": null,
              "privateMessage": null,
              "isRequired": null,
              "enforceDownload": null,
              "associateSigner": null,
              "witnesser": null,
              "fileConfigs": null
            }
          ],
          "ccList": [
            "xxx@example.com",
            "xyz@example.com"
          ],
          "reminderEnabled": true,
          "reminderTimings": [
            2,
            4
          ],
          "emailNotifications": true,
          "iFrameUrl": true,
          "domains": [
            "https://example.com"
          ],
          "mergeFile": false,
          "url": "",
          "canProcessWithMandatorySigners": false,
          "allowDeclineAction": true,
          "enableChatbot": true,
          "freeTextEdit": true,
          "clientName": "DoxAI",
          "timezone": "Australia/sydney",
          "customDocumentName": "DoxAI",
          "allowDelegateAction": false,
          "status": "pending",
          "schedule": {
            "time": "2025-02-13T12:07:54.000Z",
            "enabled": false,
            "scheduledTimeInTimezone": "2025-02-13T12:07:54.000Z"
          },
          "allowDraftEdit": false,
          "allowDraftFullFormEdit": false,
          "freshChatEnabled": false,
          "enableDefaultBrandingInAudit": true,
          "allowRestrictionsAfterSign": false,
          "restrictedPermissions": [],
          "allowedSignatures": [
            "draw_sign",
            "e_sign",
            "scanned_sign"
          ]
        }
      ]
    }
    

    Parameters

    Name In Type Required Description
    x-access-key header string true none
    x-secret-key header string true none
    body body object true none
    » requestList body [object] false none
    »» referenceId body string false Reference id for file
    »» requesterName body string false The name of the requester. If this is provided, initiator details will not be used in audit report and sending email status. This will be used only if requesterName and requesterEmail are provided.
    »» requesterEmail body string false Requester email must be a valid email. If this is provided, initiator details will not be used in audit report and sending email status.This will be used only if requesterName and requesterEmail are provided.
    »» initiatorEmail body string false Initiator email must be one of the account managers like owner, admin and member, If it is not provided default owner email will be used
    »» witnesserEmail body string false Witnesser email id for e-witnessing the request. Witnesser email must present in the recipients list
    »» fileIds body [object] false none
    »»» fileId body string false Uploaded File id
    »»» fileIndex body number false Uploaded File ids index
    »» message body string false Message for all signers.This will be used in email.
    »» hasOrdering body bool false Signing order requested flag.If Signing order is enabled then the signers can be signed one by one in the provided order
    »» expiryDate body date-time false Expiry date of the sign request.Expiry date must be greater than current date.
    »» signingDate body date-time false Signing date for witness request.Signing date must be greater than current date
    »» recipients body [anyOf] false none
    »»» anonymous body recipient1 false none
    »»»» name body string false Name of the signer.
    »»»» email body string false Email of the signer.
    »»»» signingOrder body number false Order of the signer.
    »»»» accessCode body number false Access code for signer authentication. By default it is null.
    »»»» hasAccessCode body bool false Enables access code for signer authentication. This is used as an additional security for sensitive documents. By default it is false.
    »»»» mfaEnabled body bool false Enables Multi Factor authentication for signer
    »»»» privateMessage body string false Private message to the signer sent along with the signing request in email.
    »»»» isRequired body bool false To identify whether the signer is optional or mandatory. By default it is true.
    »»»» enforceDownload body bool false To allow user to download the original file while signing. By default it is true.
    »»»» associateSigner body string false Email of the associate signers. Associate signers must be one of the recipients in list.Associate signers is allowed only when signing order is enabled.
    »»»» witnesser body string false Email of the witnesser signers. Witnesser signers must be one of the recipients in list.Witnesser signers is allowed only when signing order is enabled.
    »»»» fileConfigs body [anyOf] false none
    »»»»» fileId body string false none
    »»»»» fieldEdit body bool false Enables edit options in specified form fields in the smart pdf. If field edit is set to true then the field names should be mentioned in the granular access fields.
    »»»»» signForm body bool false If sign form is set to true, then the placeholders like name,email,signature,etc... can be used.At least canEdit or signFrom must be set to the signer.
    »»»»» fullFormEdit body bool false Enables full edit in the smart pdf.
    »»»»» isReviewer body bool false If is reviewer is set to true, then the sign form and fill form must be false and placeholders must be empty.
    »»»»» placeholders body [anyOf] false none
    »»»»»» anonymous body signaturePlaceHolder false none
    »»»»»»» type body string false allowed filed type values: {signature:String}, {checkbox:String}, {dropdown:String}, {radio:String}, {title:String}, {text:String}, {stamp:String}, {company:String}, {name:String(required)}, {email:String(required)}, {date:String}, {initial:String}
    »»»»»»» value body string false Field values
    »»»»»»» coordinates body array false Field co-ordinates array.
    »»»»»»» pageNumber body number false The page number in which the field exists
    »»»»»»» isRequired body bool false To identify whether the signer placeholder is optional or mandatory. By default it is true.
    »»»»»»» clusterId body string false Used for radio button grouping
    »»»»»»» groupId body string false Unique id for field names
    »»»»»» anonymous body dropDownPlaceHolder false none
    »»»»»»» type body string false allowed filed type values: {signature:String}, {checkbox:String}, {dropdown:String}, {radio:String}, {title:String}, {text:String}, {stamp:String}, {company:String}, {name:String(required)}, {email:String(required)}, {date:String}, {initial:String}
    »»»»»»» value body string false Field values
    »»»»»»» coordinates body array false Field co-ordinates array.
    »»»»»»» pageNumber body number false The page number in which the field exists
    »»»»»»» defaultValue body string false dropDown default value
    »»»»»»» dropDownOptions body array false Drop down options
    »»»»»»» isRequired body bool false To identify whether the signer placeholder is optional or mandatory. By default it is true.
    »»»»»»» clusterId body string false Used for radio button grouping
    »»»»»»» groupId body string false Unique id for field names
    »»»»»» anonymous body textBoxPlaceHolder false none
    »»»»»»» type body string false allowed filed type values: {signature:String}, {checkbox:String}, {dropdown:String}, {radio:String}, {title:String}, {text:String}, {stamp:String}, {company:String}, {name:String(required)}, {email:String(required)}, {date:String}, {initial:String}
    »»»»»»» value body string false Field values
    »»»»»»» coordinates body array false Field co-ordinates array.
    »»»»»»» customLabel body string false Custom label for placeholder box
    »»»»»»» validation body [object] false List of regex validation rules with custom error messages
    »»»»»»»» regex body string false Regex pattern for the validation
    »»»»»»»» errorMessage body string false Custom error message for regex validation
    »»»»»»» format body string false Supported formats: Uppercase, Lowercase
    »»»»»»» pageNumber body number false The page number in which the field exists
    »»»»»»» font body object false Fonts alowed for placeholder type 'name','date','dateTime','email','initial','company','title','text'
    »»»»»»»» type body string false Allowed font types: 'Poppins-Medium', 'Poppins-Regular', 'Roboto-Medium', 'Lato-Bold', 'PlayfairDisplay-Medium', 'OpenSans-Condensed-Medium'
    »»»»»»»» color body string false Font color in hex code
    »»»»»»» isRequired body bool false To identify whether the signer placeholder is optional or mandatory. By default it is true.
    »»»»»»» clusterId body string false Used for radio button grouping
    »»»»»»» groupId body string false Unique id for field names
    »»»»»» anonymous body datePlaceHolder false none
    »»»»»»» type body string false allowed filed type values: {signature:String}, {checkbox:String}, {dropdown:String}, {radio:String}, {title:String}, {text:String}, {stamp:String}, {company:String}, {name:String(required)}, {email:String(required)}, {date:String}, {initial:String}
    »»»»»»» value body string false Field values
    »»»»»»» coordinates body array false Field co-ordinates array.
    »»»»»»» format body string false Support formats for Date field: DD/MM/YYYY , MM/DD/YYYY , YYYY/MM/DD , DD-MM-YYYY , MM-DD-YYYY , YYYY-MM-DD
    »»»»»»» pageNumber body number false The page number in which the field exists
    »»»»»»» isRequired body bool false To identify whether the signer placeholder is optional or mandatory. By default it is true.
    »»»»»»» clusterId body string false Used for radio button grouping
    »»»»»»» groupId body string false Unique id for field names
    »»»»» granularAccess body array false none
    »»» anonymous body recipient2 false none
    »»»» name body string false Name of the signer.
    »»»» email body string false Email of the signer.
    »»»» signingOrder body number false Order of the signer.
    »»»» accessCode body number false Access code for signer authentication. By default it is null.
    »»»» hasAccessCode body bool false Enables access code for signer authentication. This is used as an additional security for sensitive documents. By default it is false.
    »»»» mfaEnabled body bool false Enables Multi Factor authentication for signer
    »»»» privateMessage body string false Private message to the signer sent along with the signing request in email.
    »»»» isRequired body bool false To identify whether the signer is optional or mandatory. By default it is true.
    »»»» enforceDownload body bool false To allow user to download the original file while signing. By default it is true.
    »»»» associateSigner body string false Email of the associate signers. Associate signers must be one of the recipients in list.Associate signers is allowed only when signing order is enabled.
    »»»» witnesser body string false Email of the witnesser signers. Witnesser signers must be one of the recipients in list.Witnesser signers is allowed only when signing order is enabled.
    »»»» fileConfigs body [anyOf] false none
    »»»»» fileId body string false none
    »»»»» fieldEdit body bool false Enables edit options in specified form fields in the smart pdf. If field edit is set to true then the field names should be mentioned in the granular access fields.
    »»»»» signForm body bool false If sign form is set to true, then the placeholders like name,email,signature,etc... can be used.At least canEdit or signFrom must be set to the signer.
    »»»»» fullFormEdit body bool false Enables full edit in the smart pdf.
    »»»»» isReviewer body bool false If is reviewer is set to true, then the sign form and fill form must be false and placeholders must be empty.
    »»»»» placeholders body array false none
    »»»»» granularAccess body [granularAccess] false none
    »»»»»» fields body string false The name of the field in smart pdf
    »»»»»» isRequired body bool false To identify whether the field is optional or mandatory.
    »»»»»» pageNumber body number false The page number in which the field exists.
    »» ccList body array false List of email ids in CC. Email ids must be unique
    »» reminderEnabled body bool false To enable reminder notifications. By Default it is false.
    »» reminderTimings body array false No of hours for reminder notification.If reminderEnabled is set to true, then at least one reminder timings must be provided.
    »» emailNotifications body bool false To enable email notifications
    »» iFrameUrl body bool false IFrameUrl is used to prevent the unauthorized domains to access it.By Default iFrameUrl is false.
    »» domains body array false The whitelisted domains can be provided in the domains array.If Iframe url is set to true, then the domains will be validated. By Default it will be an empty array.
    »» mergeFile body bool false To merge signed document with audit report.By Default it is false.
    »» url body string false Url is used for custom hosted webapp.By Default the live url will be used.
    »» canProcessWithMandatorySigners body bool false Starts processing the document, once mandatory signer has signed.By Default it is false.
    »» allowDeclineAction body bool false To enable the decline action while signing. By Default it is true.
    »» enableChatbot body bool false To enable and disable the chatbot while signing. By Default it is true.
    »» freeTextEdit body bool false To enable the free text edit option. By Default it is true.
    »» clientName body string false To set the client name in guest sign.
    »» timezone body string false To format the date time in audit report. Only IANA approved time zones are allowed.
    »» customDocumentName body string false To set the custom document name for sign request.
    »» allowDelegateAction body bool false To enable the delegate option. By Default it is false.
    »» status body string false To create the sign request. By Default it is in draft state.
    »» schedule body object false none
    »»» time body date-time false Scheduling date of the sign request in local format.Scheduling date must be greater than current date.
    »»» enabled body bool false To enable the schedule option. By Default it is false.
    »»» scheduledTimeInTimezone body date-time false Scheduling date of the sign request in Timezone.
    »» allowDraftEdit body bool false To restrict the edit access in sign request draft. Default is true
    »» allowDraftFullFormEdit body bool false To enable and disable the full form edit option in draft. By Default it is true.
    »» freshChatEnabled body bool false To enable or disable the fresh chat. Default is false
    »» enableDefaultBrandingInAudit body bool false To enable the default branding in audit. By default it is true.
    »» allowRestrictionsAfterSign body bool false Allow Restrictions After Sign is used to restrict signers permission after first signer completed signing. By default value is false
    »» restrictedPermissions body array false restrictedPersmissions array cantains alteast any one of the followings [sign,fillAndSign,fill,review] based on their request
    »» allowedSignatures body array false none

    Example responses

    200 Response

    {
      "msg": "Request Success.",
      "data": {
        "msg": "Signing request placed successfully.",
        "data": {
          "requestId": "D0-F1DB5334CE62088-D70CB-802B-4F6E-8D",
          "referenceId": "088D70CB-802B-4F6E-8DD0-F1DB5334CE62",
          "redirectUrl": null,
          "selfSignUrl": null,
          "previewUrl": "https://example.com/auth?sign_request_id=31585418-EA94-4375-8C87-5A0E847288EB&uniqueId=2186C9A9-7135-49B9-BDFB-18D8ED6C3263&hasViewMode=true",
          "links": [
            {
              "email": "xxx@example.com",
              "name": "John Smith",
              "link": "https://example.com/auth?sign_request_id=31585418-EA94-4375-8C87-5A0E847288EB&unique_id=0F799128-D8F9-4BDA-AD6E-4B29762E061D&hasAccessCode=false"
            }
          ]
        }
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successfull Operation Inline
    400 Bad Request Bad Request Inline
    401 Unauthorized Bad Request Inline

    Response Schema

    Status Code 200

    Name Type Required Restrictions Description
    » msg string false none none
    » data object false none none
    »» msg string false none none
    »» data object false none none
    »»» requestId string false none none
    »»» referenceId string false none none
    »»» redirectUrl string false none none
    »»» selfSignUrl string false none none
    »»» previewUrl string false none none
    »»» links [object] false none none
    »»»» email string false none none
    »»»» name string false none none
    »»»» link string false none none

    Status Code 400

    Name Type Required Restrictions Description
    » msg string false none none
    » data object false none none
    »» msg string false none none
    »» data object false none none
    »»» requestId string false none none
    »»» referenceId string false none none
    »»» redirectUrl string false none none
    »»» selfSignUrl string false none none
    »»» previewUrl string false none none
    »»» links array false none none

    Status Code 401

    Name Type Required Restrictions Description
    » msg string false none none

    Fetch new iframe URL

    Code samples

    # You can also use wget
    curl -X POST https://{environment}.doxai.co/{basePath}/signapi/draft/auth-token \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'x-access-key: cbd9e2af-9b10-482e-a93f-05d497d0454b' \
      -H 'x-secret-key: 2e10a906-144f-5431-8c79-67fe33db0239'
    
    
    POST https://{environment}.doxai.co/{basePath}/signapi/draft/auth-token HTTP/1.1
    
    Content-Type: application/json
    Accept: application/json
    x-access-key: cbd9e2af-9b10-482e-a93f-05d497d0454b
    x-secret-key: 2e10a906-144f-5431-8c79-67fe33db0239
    
    
    using System;
    using System.Collections.Generic;
    using System.Net.Http;
    using System.Net.Http.Headers;
    using System.Text;
    using System.Threading.Tasks;
    using Newtonsoft.Json;
    
    /// <<summary>>
    /// Example of Http Client
    /// <</summary>>
    public class HttpExample
    {
        private HttpClient Client { get; set; }
    
        /// <<summary>>
        /// Setup http client
        /// <</summary>>
        public HttpExample()
        {
          Client = new HttpClient();
        }
    
    
        /// Make a dummy request
        public async Task MakePostRequest()
        {
          string url = "https://{environment}.doxai.co/{basePath}/signapi/draft/auth-token";
    
    
          await PostAsync(null, url);
    
        }
    
        /// Performs a POST Request
        public async Task PostAsync(undefined content, string url)
        {
            //Serialize Object
            StringContent jsonContent = SerializeObject(content);
    
            //Execute POST request
            HttpResponseMessage response = await Client.PostAsync(url, jsonContent);
        }
    
    
    
        /// Serialize an object to Json
        private StringContent SerializeObject(undefined content)
        {
            //Serialize Object
            string jsonObject = JsonConvert.SerializeObject(content);
    
            //Create Json UTF8 String Content
            return new StringContent(jsonObject, Encoding.UTF8, "application/json");
        }
    
        /// Deserialize object from request response
        private async Task DeserializeObject(HttpResponseMessage response)
        {
            //Read body 
            string responseBody = await response.Content.ReadAsStringAsync();
    
            //Deserialize Body to object
            var result = JsonConvert.DeserializeObject(responseBody);
        }
    }
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'x-access-key' => 'cbd9e2af-9b10-482e-a93f-05d497d0454b',
      'x-secret-key' => '2e10a906-144f-5431-8c79-67fe33db0239'
    }
    
    result = RestClient.post 'https://{environment}.doxai.co/{basePath}/signapi/draft/auth-token',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'x-access-key': 'cbd9e2af-9b10-482e-a93f-05d497d0454b',
      'x-secret-key': '2e10a906-144f-5431-8c79-67fe33db0239'
    }
    
    r = requests.post('https://{environment}.doxai.co/{basePath}/signapi/draft/auth-token', headers = headers)
    
    print(r.json())
    
    
    const inputBody = '{
      "requestId": "088D70CB-802B-4F6E-8DD0-F1DB5334CE62"
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'x-access-key':'cbd9e2af-9b10-482e-a93f-05d497d0454b',
      'x-secret-key':'2e10a906-144f-5431-8c79-67fe33db0239'
    };
    
    fetch('https://{environment}.doxai.co/{basePath}/signapi/draft/auth-token',
    {
      method: 'POST',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    <?php
    
    require 'vendor/autoload.php';
    
    $headers = array(
        'Content-Type' => 'application/json',
        'Accept' => 'application/json',
        'x-access-key' => 'cbd9e2af-9b10-482e-a93f-05d497d0454b',
        'x-secret-key' => '2e10a906-144f-5431-8c79-67fe33db0239',
    );
    
    $client = new \GuzzleHttp\Client();
    
    // Define array of request body.
    $request_body = array();
    
    try {
        $response = $client->request('POST','https://{environment}.doxai.co/{basePath}/signapi/draft/auth-token', array(
            'headers' => $headers,
            'json' => $request_body,
           )
        );
        print_r($response->getBody()->getContents());
     }
     catch (\GuzzleHttp\Exception\BadResponseException $e) {
        // handle exception or api errors.
        print_r($e->getMessage());
     }
    
     // ...
    
    
    URL obj = new URL("https://{environment}.doxai.co/{basePath}/signapi/draft/auth-token");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "x-access-key": []string{"cbd9e2af-9b10-482e-a93f-05d497d0454b"},
            "x-secret-key": []string{"2e10a906-144f-5431-8c79-67fe33db0239"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://{environment}.doxai.co/{basePath}/signapi/draft/auth-token", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /signapi/draft/auth-token

    To get a new iframe URL for configuring the placeholders

    Body parameter

    {
      "requestId": "088D70CB-802B-4F6E-8DD0-F1DB5334CE62"
    }
    

    Parameters

    Name In Type Required Description
    x-access-key header string true none
    x-secret-key header string true none
    body body object true none
    » requestId body string false Request id to get the auth token

    Example responses

    200 Response

    {
      "msg": "Request success",
      "data": {
        "redirectUrl": "https://example.com/auth?sign_request_id=31585418-EA94-4375-8C87-5A0E847288EB&uniqueId=2186C9A9-7135-49B9-BDFB-18D8ED6C3263"
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successfull Operation Inline
    400 Bad Request Bad Request Inline
    401 Unauthorized Unauthenticated Request Inline
    500 Internal Server Error Internal Server error Inline

    Response Schema

    Status Code 200

    Name Type Required Restrictions Description
    » msg string false none none
    » data object false none none
    »» redirectUrl object false none none

    Status Code 400

    Name Type Required Restrictions Description
    » msg string false none none

    Status Code 401

    Name Type Required Restrictions Description
    » msg string false none none

    Status Code 500

    Name Type Required Restrictions Description
    » msg string false none none

    Publish eSignature request

    Code samples

    # You can also use wget
    curl -X POST https://{environment}.doxai.co/{basePath}/signapi/draft/signrequest \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'x-access-key: cbd9e2af-9b10-482e-a93f-05d497d0454b' \
      -H 'x-secret-key: 2e10a906-144f-5431-8c79-67fe33db0239'
    
    
    POST https://{environment}.doxai.co/{basePath}/signapi/draft/signrequest HTTP/1.1
    
    Content-Type: application/json
    Accept: application/json
    x-access-key: cbd9e2af-9b10-482e-a93f-05d497d0454b
    x-secret-key: 2e10a906-144f-5431-8c79-67fe33db0239
    
    
    using System;
    using System.Collections.Generic;
    using System.Net.Http;
    using System.Net.Http.Headers;
    using System.Text;
    using System.Threading.Tasks;
    using Newtonsoft.Json;
    
    /// <<summary>>
    /// Example of Http Client
    /// <</summary>>
    public class HttpExample
    {
        private HttpClient Client { get; set; }
    
        /// <<summary>>
        /// Setup http client
        /// <</summary>>
        public HttpExample()
        {
          Client = new HttpClient();
        }
    
    
        /// Make a dummy request
        public async Task MakePostRequest()
        {
          string url = "https://{environment}.doxai.co/{basePath}/signapi/draft/signrequest";
    
    
          await PostAsync(null, url);
    
        }
    
        /// Performs a POST Request
        public async Task PostAsync(undefined content, string url)
        {
            //Serialize Object
            StringContent jsonContent = SerializeObject(content);
    
            //Execute POST request
            HttpResponseMessage response = await Client.PostAsync(url, jsonContent);
        }
    
    
    
        /// Serialize an object to Json
        private StringContent SerializeObject(undefined content)
        {
            //Serialize Object
            string jsonObject = JsonConvert.SerializeObject(content);
    
            //Create Json UTF8 String Content
            return new StringContent(jsonObject, Encoding.UTF8, "application/json");
        }
    
        /// Deserialize object from request response
        private async Task DeserializeObject(HttpResponseMessage response)
        {
            //Read body 
            string responseBody = await response.Content.ReadAsStringAsync();
    
            //Deserialize Body to object
            var result = JsonConvert.DeserializeObject(responseBody);
        }
    }
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'x-access-key' => 'cbd9e2af-9b10-482e-a93f-05d497d0454b',
      'x-secret-key' => '2e10a906-144f-5431-8c79-67fe33db0239'
    }
    
    result = RestClient.post 'https://{environment}.doxai.co/{basePath}/signapi/draft/signrequest',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'x-access-key': 'cbd9e2af-9b10-482e-a93f-05d497d0454b',
      'x-secret-key': '2e10a906-144f-5431-8c79-67fe33db0239'
    }
    
    r = requests.post('https://{environment}.doxai.co/{basePath}/signapi/draft/signrequest', headers = headers)
    
    print(r.json())
    
    
    const inputBody = '{
      "requestIds": [
        "088D70CB-802B-4F6E-8DD0-F1DB5334CE62"
      ]
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'x-access-key':'cbd9e2af-9b10-482e-a93f-05d497d0454b',
      'x-secret-key':'2e10a906-144f-5431-8c79-67fe33db0239'
    };
    
    fetch('https://{environment}.doxai.co/{basePath}/signapi/draft/signrequest',
    {
      method: 'POST',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    <?php
    
    require 'vendor/autoload.php';
    
    $headers = array(
        'Content-Type' => 'application/json',
        'Accept' => 'application/json',
        'x-access-key' => 'cbd9e2af-9b10-482e-a93f-05d497d0454b',
        'x-secret-key' => '2e10a906-144f-5431-8c79-67fe33db0239',
    );
    
    $client = new \GuzzleHttp\Client();
    
    // Define array of request body.
    $request_body = array();
    
    try {
        $response = $client->request('POST','https://{environment}.doxai.co/{basePath}/signapi/draft/signrequest', array(
            'headers' => $headers,
            'json' => $request_body,
           )
        );
        print_r($response->getBody()->getContents());
     }
     catch (\GuzzleHttp\Exception\BadResponseException $e) {
        // handle exception or api errors.
        print_r($e->getMessage());
     }
    
     // ...
    
    
    URL obj = new URL("https://{environment}.doxai.co/{basePath}/signapi/draft/signrequest");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "x-access-key": []string{"cbd9e2af-9b10-482e-a93f-05d497d0454b"},
            "x-secret-key": []string{"2e10a906-144f-5431-8c79-67fe33db0239"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://{environment}.doxai.co/{basePath}/signapi/draft/signrequest", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /signapi/draft/signrequest

    To publish the eSignature and eWitness request from draft to pending state

    Body parameter

    {
      "requestIds": [
        "088D70CB-802B-4F6E-8DD0-F1DB5334CE62"
      ]
    }
    

    Parameters

    Name In Type Required Description
    x-access-key header string true none
    x-secret-key header string true none
    body body object true none
    » requestIds body [string] false none

    Example responses

    200 Response

    []
    

    Responses

    Status Meaning Description Schema
    200 OK Successful Operation Inline
    400 Bad Request Bad Request Inline
    401 Unauthorized Unauthenticated Request Inline
    500 Internal Server Error Internal Server error Inline

    Response Schema

    Status Code 400

    Name Type Required Restrictions Description
    » msg string false none none

    Status Code 401

    Name Type Required Restrictions Description
    » msg string false none none

    Status Code 500

    Name Type Required Restrictions Description
    » msg string false none none

    Void eSignature and eWitness request

    Code samples

    # You can also use wget
    curl -X POST https://{environment}.doxai.co/{basePath}/signapi/void \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'x-access-key: cbd9e2af-9b10-482e-a93f-05d497d0454b' \
      -H 'x-secret-key: 2e10a906-144f-5431-8c79-67fe33db0239'
    
    
    POST https://{environment}.doxai.co/{basePath}/signapi/void HTTP/1.1
    
    Content-Type: application/json
    Accept: application/json
    x-access-key: cbd9e2af-9b10-482e-a93f-05d497d0454b
    x-secret-key: 2e10a906-144f-5431-8c79-67fe33db0239
    
    
    using System;
    using System.Collections.Generic;
    using System.Net.Http;
    using System.Net.Http.Headers;
    using System.Text;
    using System.Threading.Tasks;
    using Newtonsoft.Json;
    
    /// <<summary>>
    /// Example of Http Client
    /// <</summary>>
    public class HttpExample
    {
        private HttpClient Client { get; set; }
    
        /// <<summary>>
        /// Setup http client
        /// <</summary>>
        public HttpExample()
        {
          Client = new HttpClient();
        }
    
    
        /// Make a dummy request
        public async Task MakePostRequest()
        {
          string url = "https://{environment}.doxai.co/{basePath}/signapi/void";
    
    
          await PostAsync(null, url);
    
        }
    
        /// Performs a POST Request
        public async Task PostAsync(undefined content, string url)
        {
            //Serialize Object
            StringContent jsonContent = SerializeObject(content);
    
            //Execute POST request
            HttpResponseMessage response = await Client.PostAsync(url, jsonContent);
        }
    
    
    
        /// Serialize an object to Json
        private StringContent SerializeObject(undefined content)
        {
            //Serialize Object
            string jsonObject = JsonConvert.SerializeObject(content);
    
            //Create Json UTF8 String Content
            return new StringContent(jsonObject, Encoding.UTF8, "application/json");
        }
    
        /// Deserialize object from request response
        private async Task DeserializeObject(HttpResponseMessage response)
        {
            //Read body 
            string responseBody = await response.Content.ReadAsStringAsync();
    
            //Deserialize Body to object
            var result = JsonConvert.DeserializeObject(responseBody);
        }
    }
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'x-access-key' => 'cbd9e2af-9b10-482e-a93f-05d497d0454b',
      'x-secret-key' => '2e10a906-144f-5431-8c79-67fe33db0239'
    }
    
    result = RestClient.post 'https://{environment}.doxai.co/{basePath}/signapi/void',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'x-access-key': 'cbd9e2af-9b10-482e-a93f-05d497d0454b',
      'x-secret-key': '2e10a906-144f-5431-8c79-67fe33db0239'
    }
    
    r = requests.post('https://{environment}.doxai.co/{basePath}/signapi/void', headers = headers)
    
    print(r.json())
    
    
    const inputBody = '{
      "requestId": "088D70CB-802B-4F6E-8DD0-F1DB5334CE62"
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'x-access-key':'cbd9e2af-9b10-482e-a93f-05d497d0454b',
      'x-secret-key':'2e10a906-144f-5431-8c79-67fe33db0239'
    };
    
    fetch('https://{environment}.doxai.co/{basePath}/signapi/void',
    {
      method: 'POST',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    <?php
    
    require 'vendor/autoload.php';
    
    $headers = array(
        'Content-Type' => 'application/json',
        'Accept' => 'application/json',
        'x-access-key' => 'cbd9e2af-9b10-482e-a93f-05d497d0454b',
        'x-secret-key' => '2e10a906-144f-5431-8c79-67fe33db0239',
    );
    
    $client = new \GuzzleHttp\Client();
    
    // Define array of request body.
    $request_body = array();
    
    try {
        $response = $client->request('POST','https://{environment}.doxai.co/{basePath}/signapi/void', array(
            'headers' => $headers,
            'json' => $request_body,
           )
        );
        print_r($response->getBody()->getContents());
     }
     catch (\GuzzleHttp\Exception\BadResponseException $e) {
        // handle exception or api errors.
        print_r($e->getMessage());
     }
    
     // ...
    
    
    URL obj = new URL("https://{environment}.doxai.co/{basePath}/signapi/void");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "x-access-key": []string{"cbd9e2af-9b10-482e-a93f-05d497d0454b"},
            "x-secret-key": []string{"2e10a906-144f-5431-8c79-67fe33db0239"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://{environment}.doxai.co/{basePath}/signapi/void", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /signapi/void

    Cancel the active eSignature and eWitness requests

    Body parameter

    {
      "requestId": "088D70CB-802B-4F6E-8DD0-F1DB5334CE62"
    }
    

    Parameters

    Name In Type Required Description
    x-access-key header string true none
    x-secret-key header string true none
    body body object true none
    » requestId body string false Request id for voiding the request

    Example responses

    200 Response

    {
      "msg": "Sign request has been voided.",
      "data": {
        "fileDetails": []
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successfull Operation Inline
    400 Bad Request Bad Request Inline
    401 Unauthorized Unauthenticated Request Inline
    500 Internal Server Error Internal Server error Inline

    Response Schema

    Status Code 200

    Name Type Required Restrictions Description
    » msg string false none none
    » data object false none none
    »» fileDetails [object] false none none
    »»» fileId string false none none
    »»» fileReferenceId string false none none
    »»» url string false none none

    Status Code 400

    Name Type Required Restrictions Description
    » msg string false none none

    Status Code 401

    Name Type Required Restrictions Description
    » msg string false none none

    Status Code 500

    Name Type Required Restrictions Description
    » msg string false none none

    Resend Email for eSignature and eWitness request

    Code samples

    # You can also use wget
    curl -X POST https://{environment}.doxai.co/{basePath}/signapi/resend-email \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'x-access-key: cbd9e2af-9b10-482e-a93f-05d497d0454b' \
      -H 'x-secret-key: 2e10a906-144f-5431-8c79-67fe33db0239'
    
    
    POST https://{environment}.doxai.co/{basePath}/signapi/resend-email HTTP/1.1
    
    Content-Type: application/json
    Accept: application/json
    x-access-key: cbd9e2af-9b10-482e-a93f-05d497d0454b
    x-secret-key: 2e10a906-144f-5431-8c79-67fe33db0239
    
    
    using System;
    using System.Collections.Generic;
    using System.Net.Http;
    using System.Net.Http.Headers;
    using System.Text;
    using System.Threading.Tasks;
    using Newtonsoft.Json;
    
    /// <<summary>>
    /// Example of Http Client
    /// <</summary>>
    public class HttpExample
    {
        private HttpClient Client { get; set; }
    
        /// <<summary>>
        /// Setup http client
        /// <</summary>>
        public HttpExample()
        {
          Client = new HttpClient();
        }
    
    
        /// Make a dummy request
        public async Task MakePostRequest()
        {
          string url = "https://{environment}.doxai.co/{basePath}/signapi/resend-email";
    
    
          await PostAsync(null, url);
    
        }
    
        /// Performs a POST Request
        public async Task PostAsync(undefined content, string url)
        {
            //Serialize Object
            StringContent jsonContent = SerializeObject(content);
    
            //Execute POST request
            HttpResponseMessage response = await Client.PostAsync(url, jsonContent);
        }
    
    
    
        /// Serialize an object to Json
        private StringContent SerializeObject(undefined content)
        {
            //Serialize Object
            string jsonObject = JsonConvert.SerializeObject(content);
    
            //Create Json UTF8 String Content
            return new StringContent(jsonObject, Encoding.UTF8, "application/json");
        }
    
        /// Deserialize object from request response
        private async Task DeserializeObject(HttpResponseMessage response)
        {
            //Read body 
            string responseBody = await response.Content.ReadAsStringAsync();
    
            //Deserialize Body to object
            var result = JsonConvert.DeserializeObject(responseBody);
        }
    }
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'x-access-key' => 'cbd9e2af-9b10-482e-a93f-05d497d0454b',
      'x-secret-key' => '2e10a906-144f-5431-8c79-67fe33db0239'
    }
    
    result = RestClient.post 'https://{environment}.doxai.co/{basePath}/signapi/resend-email',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'x-access-key': 'cbd9e2af-9b10-482e-a93f-05d497d0454b',
      'x-secret-key': '2e10a906-144f-5431-8c79-67fe33db0239'
    }
    
    r = requests.post('https://{environment}.doxai.co/{basePath}/signapi/resend-email', headers = headers)
    
    print(r.json())
    
    
    const inputBody = '{
      "requestId": "43C8D9D8-DE80-4F7F-B498-9157F1519891"
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'x-access-key':'cbd9e2af-9b10-482e-a93f-05d497d0454b',
      'x-secret-key':'2e10a906-144f-5431-8c79-67fe33db0239'
    };
    
    fetch('https://{environment}.doxai.co/{basePath}/signapi/resend-email',
    {
      method: 'POST',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    <?php
    
    require 'vendor/autoload.php';
    
    $headers = array(
        'Content-Type' => 'application/json',
        'Accept' => 'application/json',
        'x-access-key' => 'cbd9e2af-9b10-482e-a93f-05d497d0454b',
        'x-secret-key' => '2e10a906-144f-5431-8c79-67fe33db0239',
    );
    
    $client = new \GuzzleHttp\Client();
    
    // Define array of request body.
    $request_body = array();
    
    try {
        $response = $client->request('POST','https://{environment}.doxai.co/{basePath}/signapi/resend-email', array(
            'headers' => $headers,
            'json' => $request_body,
           )
        );
        print_r($response->getBody()->getContents());
     }
     catch (\GuzzleHttp\Exception\BadResponseException $e) {
        // handle exception or api errors.
        print_r($e->getMessage());
     }
    
     // ...
    
    
    URL obj = new URL("https://{environment}.doxai.co/{basePath}/signapi/resend-email");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "x-access-key": []string{"cbd9e2af-9b10-482e-a93f-05d497d0454b"},
            "x-secret-key": []string{"2e10a906-144f-5431-8c79-67fe33db0239"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://{environment}.doxai.co/{basePath}/signapi/resend-email", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /signapi/resend-email

    To resend the Email for eSignature and eWitness request

    Body parameter

    {
      "requestId": "43C8D9D8-DE80-4F7F-B498-9157F1519891"
    }
    

    Parameters

    Name In Type Required Description
    x-access-key header string true none
    x-secret-key header string true none
    body body object true none
    » requestId body string false Request id for resending the email.

    Example responses

    200 Response

    {
      "msg": "Mail sent successfully"
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successfull Operation Inline
    400 Bad Request Bad Request Inline
    401 Unauthorized Unauthenticated Request Inline
    500 Internal Server Error Internal Server error Inline

    Response Schema

    Status Code 200

    Name Type Required Restrictions Description
    » msg string false none none

    Status Code 400

    Name Type Required Restrictions Description
    » msg string false none none

    Status Code 401

    Name Type Required Restrictions Description
    » msg string false none none

    Status Code 500

    Name Type Required Restrictions Description
    » msg string false none none

    Autofill

    Autofill request

    Code samples

    # You can also use wget
    curl -X POST https://{environment}.doxai.co/{basePath}/autofillapi/request \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'x-access-key: cbd9e2af-9b10-482e-a93f-05d497d0454b' \
      -H 'x-secret-key: 2e10a906-144f-5431-8c79-67fe33db0239'
    
    
    POST https://{environment}.doxai.co/{basePath}/autofillapi/request HTTP/1.1
    
    Content-Type: application/json
    Accept: application/json
    x-access-key: cbd9e2af-9b10-482e-a93f-05d497d0454b
    x-secret-key: 2e10a906-144f-5431-8c79-67fe33db0239
    
    
    using System;
    using System.Collections.Generic;
    using System.Net.Http;
    using System.Net.Http.Headers;
    using System.Text;
    using System.Threading.Tasks;
    using Newtonsoft.Json;
    
    /// <<summary>>
    /// Example of Http Client
    /// <</summary>>
    public class HttpExample
    {
        private HttpClient Client { get; set; }
    
        /// <<summary>>
        /// Setup http client
        /// <</summary>>
        public HttpExample()
        {
          Client = new HttpClient();
        }
    
    
        /// Make a dummy request
        public async Task MakePostRequest()
        {
          string url = "https://{environment}.doxai.co/{basePath}/autofillapi/request";
    
    
          await PostAsync(null, url);
    
        }
    
        /// Performs a POST Request
        public async Task PostAsync(undefined content, string url)
        {
            //Serialize Object
            StringContent jsonContent = SerializeObject(content);
    
            //Execute POST request
            HttpResponseMessage response = await Client.PostAsync(url, jsonContent);
        }
    
    
    
        /// Serialize an object to Json
        private StringContent SerializeObject(undefined content)
        {
            //Serialize Object
            string jsonObject = JsonConvert.SerializeObject(content);
    
            //Create Json UTF8 String Content
            return new StringContent(jsonObject, Encoding.UTF8, "application/json");
        }
    
        /// Deserialize object from request response
        private async Task DeserializeObject(HttpResponseMessage response)
        {
            //Read body 
            string responseBody = await response.Content.ReadAsStringAsync();
    
            //Deserialize Body to object
            var result = JsonConvert.DeserializeObject(responseBody);
        }
    }
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'x-access-key' => 'cbd9e2af-9b10-482e-a93f-05d497d0454b',
      'x-secret-key' => '2e10a906-144f-5431-8c79-67fe33db0239'
    }
    
    result = RestClient.post 'https://{environment}.doxai.co/{basePath}/autofillapi/request',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'x-access-key': 'cbd9e2af-9b10-482e-a93f-05d497d0454b',
      'x-secret-key': '2e10a906-144f-5431-8c79-67fe33db0239'
    }
    
    r = requests.post('https://{environment}.doxai.co/{basePath}/autofillapi/request', headers = headers)
    
    print(r.json())
    
    
    const inputBody = '{
      "requestList": [
        {
          "templateId": "099D70CB-802B-4F6E-8DD0-F1DB5334CQ62",
          "referenceId": "088D70CB-802B-4F6E-8DD0-F1DB5334CE62",
          "requester": {
            "name": "John Smith",
            "email": "xxx@example.com"
          },
          "jsonContent": {}
        }
      ]
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'x-access-key':'cbd9e2af-9b10-482e-a93f-05d497d0454b',
      'x-secret-key':'2e10a906-144f-5431-8c79-67fe33db0239'
    };
    
    fetch('https://{environment}.doxai.co/{basePath}/autofillapi/request',
    {
      method: 'POST',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    <?php
    
    require 'vendor/autoload.php';
    
    $headers = array(
        'Content-Type' => 'application/json',
        'Accept' => 'application/json',
        'x-access-key' => 'cbd9e2af-9b10-482e-a93f-05d497d0454b',
        'x-secret-key' => '2e10a906-144f-5431-8c79-67fe33db0239',
    );
    
    $client = new \GuzzleHttp\Client();
    
    // Define array of request body.
    $request_body = array();
    
    try {
        $response = $client->request('POST','https://{environment}.doxai.co/{basePath}/autofillapi/request', array(
            'headers' => $headers,
            'json' => $request_body,
           )
        );
        print_r($response->getBody()->getContents());
     }
     catch (\GuzzleHttp\Exception\BadResponseException $e) {
        // handle exception or api errors.
        print_r($e->getMessage());
     }
    
     // ...
    
    
    URL obj = new URL("https://{environment}.doxai.co/{basePath}/autofillapi/request");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "x-access-key": []string{"cbd9e2af-9b10-482e-a93f-05d497d0454b"},
            "x-secret-key": []string{"2e10a906-144f-5431-8c79-67fe33db0239"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://{environment}.doxai.co/{basePath}/autofillapi/request", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /autofillapi/request

    Place Autofill request with json contents

    Body parameter

    {
      "requestList": [
        {
          "templateId": "099D70CB-802B-4F6E-8DD0-F1DB5334CQ62",
          "referenceId": "088D70CB-802B-4F6E-8DD0-F1DB5334CE62",
          "requester": {
            "name": "John Smith",
            "email": "xxx@example.com"
          },
          "jsonContent": {}
        }
      ]
    }
    

    Parameters

    Name In Type Required Description
    x-access-key header string true none
    x-secret-key header string true none
    body body object true none
    » requestList body [object] false none
    »» templateId body string false Template Id where the autofill mapping is completed
    »» referenceId body string false Reference id for file
    »» requester body object false none
    »»» name body string false The name of the requester
    »»» email body string false Email must be a valid email
    »» jsonContent body object false none

    Example responses

    Successfull operation

    {
      "msg": "Request success",
      "data": [
        {
          "msg": "Request created successfully",
          "data": {
            "requestId": "64F0498F-5E6A-4903-8740-1CA95E76455B",
            "referenceId": "12343"
          },
          "status": 200,
          "success": true
        },
        {
          "msg": "Invalid Email",
          "data": {
            "requestId": "B181E605-F0E5-4E3F-92C5-10B3E3F1B2FD",
            "referenceId": "12343"
          },
          "status": 400
        }
      ]
    }
    

    400 Response

    {
      "msg": "Request list must contain at least one"
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successfull operation Inline
    400 Bad Request Bad Request Inline
    401 Unauthorized Bad Request Inline

    Response Schema

    Status Code 200

    Name Type Required Restrictions Description
    » msg string false none none
    » data [object] false none none
    »» msg string false none none
    »» data object false none none
    »»» requestId string(uuid) false none none
    »»» referenceId string false none none
    »» status integer false none HTTP status code for individual request
    »» success boolean false none Indicates if the individual request was successful

    Status Code 400

    Name Type Required Restrictions Description
    » msg string false none none

    Status Code 401

    Name Type Required Restrictions Description
    » msg string false none none

    eForm

    eForm template request

    Code samples

    # You can also use wget
    curl -X POST https://{environment}.doxai.co/{basePath}/eformapi/template \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'x-access-key: cbd9e2af-9b10-482e-a93f-05d497d0454b' \
      -H 'x-secret-key: 2e10a906-144f-5431-8c79-67fe33db0239'
    
    
    POST https://{environment}.doxai.co/{basePath}/eformapi/template HTTP/1.1
    
    Content-Type: application/json
    Accept: application/json
    x-access-key: cbd9e2af-9b10-482e-a93f-05d497d0454b
    x-secret-key: 2e10a906-144f-5431-8c79-67fe33db0239
    
    
    using System;
    using System.Collections.Generic;
    using System.Net.Http;
    using System.Net.Http.Headers;
    using System.Text;
    using System.Threading.Tasks;
    using Newtonsoft.Json;
    
    /// <<summary>>
    /// Example of Http Client
    /// <</summary>>
    public class HttpExample
    {
        private HttpClient Client { get; set; }
    
        /// <<summary>>
        /// Setup http client
        /// <</summary>>
        public HttpExample()
        {
          Client = new HttpClient();
        }
    
    
        /// Make a dummy request
        public async Task MakePostRequest()
        {
          string url = "https://{environment}.doxai.co/{basePath}/eformapi/template";
    
    
          await PostAsync(null, url);
    
        }
    
        /// Performs a POST Request
        public async Task PostAsync(undefined content, string url)
        {
            //Serialize Object
            StringContent jsonContent = SerializeObject(content);
    
            //Execute POST request
            HttpResponseMessage response = await Client.PostAsync(url, jsonContent);
        }
    
    
    
        /// Serialize an object to Json
        private StringContent SerializeObject(undefined content)
        {
            //Serialize Object
            string jsonObject = JsonConvert.SerializeObject(content);
    
            //Create Json UTF8 String Content
            return new StringContent(jsonObject, Encoding.UTF8, "application/json");
        }
    
        /// Deserialize object from request response
        private async Task DeserializeObject(HttpResponseMessage response)
        {
            //Read body 
            string responseBody = await response.Content.ReadAsStringAsync();
    
            //Deserialize Body to object
            var result = JsonConvert.DeserializeObject(responseBody);
        }
    }
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'x-access-key' => 'cbd9e2af-9b10-482e-a93f-05d497d0454b',
      'x-secret-key' => '2e10a906-144f-5431-8c79-67fe33db0239'
    }
    
    result = RestClient.post 'https://{environment}.doxai.co/{basePath}/eformapi/template',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'x-access-key': 'cbd9e2af-9b10-482e-a93f-05d497d0454b',
      'x-secret-key': '2e10a906-144f-5431-8c79-67fe33db0239'
    }
    
    r = requests.post('https://{environment}.doxai.co/{basePath}/eformapi/template', headers = headers)
    
    print(r.json())
    
    
    const inputBody = '{
      "name": "test template"
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'x-access-key':'cbd9e2af-9b10-482e-a93f-05d497d0454b',
      'x-secret-key':'2e10a906-144f-5431-8c79-67fe33db0239'
    };
    
    fetch('https://{environment}.doxai.co/{basePath}/eformapi/template',
    {
      method: 'POST',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    <?php
    
    require 'vendor/autoload.php';
    
    $headers = array(
        'Content-Type' => 'application/json',
        'Accept' => 'application/json',
        'x-access-key' => 'cbd9e2af-9b10-482e-a93f-05d497d0454b',
        'x-secret-key' => '2e10a906-144f-5431-8c79-67fe33db0239',
    );
    
    $client = new \GuzzleHttp\Client();
    
    // Define array of request body.
    $request_body = array();
    
    try {
        $response = $client->request('POST','https://{environment}.doxai.co/{basePath}/eformapi/template', array(
            'headers' => $headers,
            'json' => $request_body,
           )
        );
        print_r($response->getBody()->getContents());
     }
     catch (\GuzzleHttp\Exception\BadResponseException $e) {
        // handle exception or api errors.
        print_r($e->getMessage());
     }
    
     // ...
    
    
    URL obj = new URL("https://{environment}.doxai.co/{basePath}/eformapi/template");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "x-access-key": []string{"cbd9e2af-9b10-482e-a93f-05d497d0454b"},
            "x-secret-key": []string{"2e10a906-144f-5431-8c79-67fe33db0239"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://{environment}.doxai.co/{basePath}/eformapi/template", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /eformapi/template

    Create eForm template

    Body parameter

    {
      "name": "test template"
    }
    

    Parameters

    Name In Type Required Description
    x-access-key header string true none
    x-secret-key header string true none
    body body object true none
    » name body string false Template name

    Example responses

    200 Response

    {
      "msg": "Template created successfully",
      "data": {
        "templateId": "D387A589-4D70-4661-B682-9B040452AAFE",
        "redirectUrl": "https://example.com/template-draft?authToken=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJEb3hBSSIsImF1ZCI6IkRveEFJIiwicmdWVzdElkIjpudWxsLCJ0ZW1wbGF0ZUlkIjoiRDM4N0E1ODktNEQ3MC00NjYxLUI2ODItOUIwNDA0NTJBQUZFIiwiaWFoxNzcyNjI4MzI0LCJleHAiOjE3NzI2MzEwMjR9.CHjts-t8ymy9eGOm3Y5wMnIFnBShNacr94idChAROI"
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successfull Operation Inline
    400 Bad Request Bad Request Inline
    401 Unauthorized Bad Request Inline
    500 Internal Server Error Failed Operation Inline

    Response Schema

    Status Code 200

    Name Type Required Restrictions Description
    » msg string false none none
    » data object false none none
    »» templateId string false none none
    »» redirectUrl string false none none

    Status Code 400

    Name Type Required Restrictions Description
    » msg string false none none

    Status Code 401

    Name Type Required Restrictions Description
    » msg string false none none

    Status Code 500

    Name Type Required Restrictions Description
    » msg string false none none

    Delete templates

    Code samples

    # You can also use wget
    curl -X DELETE https://{environment}.doxai.co/{basePath}/eformapi/template \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'x-access-key: cbd9e2af-9b10-482e-a93f-05d497d0454b' \
      -H 'x-secret-key: 2e10a906-144f-5431-8c79-67fe33db0239'
    
    
    DELETE https://{environment}.doxai.co/{basePath}/eformapi/template HTTP/1.1
    
    Content-Type: application/json
    Accept: application/json
    x-access-key: cbd9e2af-9b10-482e-a93f-05d497d0454b
    x-secret-key: 2e10a906-144f-5431-8c79-67fe33db0239
    
    
    using System;
    using System.Collections.Generic;
    using System.Net.Http;
    using System.Net.Http.Headers;
    using System.Text;
    using System.Threading.Tasks;
    using Newtonsoft.Json;
    
    /// <<summary>>
    /// Example of Http Client
    /// <</summary>>
    public class HttpExample
    {
        private HttpClient Client { get; set; }
    
        /// <<summary>>
        /// Setup http client
        /// <</summary>>
        public HttpExample()
        {
          Client = new HttpClient();
        }
    
    
    
    
        /// Make a dummy request
        public async Task MakeDeleteRequest()
        {
          int id = 1;
          string url = "https://{environment}.doxai.co/{basePath}/eformapi/template";
    
          await DeleteAsync(id, url);
        }
    
        /// Performs a DELETE Request
        public async Task DeleteAsync(int id, string url)
        {
            //Execute DELETE request
            HttpResponseMessage response = await Client.DeleteAsync(url + $"/{id}");
    
            //Return response
            await DeserializeObject(response);
        }
    
        /// Deserialize object from request response
        private async Task DeserializeObject(HttpResponseMessage response)
        {
            //Read body 
            string responseBody = await response.Content.ReadAsStringAsync();
    
            //Deserialize Body to object
            var result = JsonConvert.DeserializeObject(responseBody);
        }
    }
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'x-access-key' => 'cbd9e2af-9b10-482e-a93f-05d497d0454b',
      'x-secret-key' => '2e10a906-144f-5431-8c79-67fe33db0239'
    }
    
    result = RestClient.delete 'https://{environment}.doxai.co/{basePath}/eformapi/template',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'x-access-key': 'cbd9e2af-9b10-482e-a93f-05d497d0454b',
      'x-secret-key': '2e10a906-144f-5431-8c79-67fe33db0239'
    }
    
    r = requests.delete('https://{environment}.doxai.co/{basePath}/eformapi/template', headers = headers)
    
    print(r.json())
    
    
    const inputBody = '{
      "templateIds": [
        "088D70CB-802B-4F6E-8DD0-F1DB5334CE62"
      ]
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'x-access-key':'cbd9e2af-9b10-482e-a93f-05d497d0454b',
      'x-secret-key':'2e10a906-144f-5431-8c79-67fe33db0239'
    };
    
    fetch('https://{environment}.doxai.co/{basePath}/eformapi/template',
    {
      method: 'DELETE',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    <?php
    
    require 'vendor/autoload.php';
    
    $headers = array(
        'Content-Type' => 'application/json',
        'Accept' => 'application/json',
        'x-access-key' => 'cbd9e2af-9b10-482e-a93f-05d497d0454b',
        'x-secret-key' => '2e10a906-144f-5431-8c79-67fe33db0239',
    );
    
    $client = new \GuzzleHttp\Client();
    
    // Define array of request body.
    $request_body = array();
    
    try {
        $response = $client->request('DELETE','https://{environment}.doxai.co/{basePath}/eformapi/template', array(
            'headers' => $headers,
            'json' => $request_body,
           )
        );
        print_r($response->getBody()->getContents());
     }
     catch (\GuzzleHttp\Exception\BadResponseException $e) {
        // handle exception or api errors.
        print_r($e->getMessage());
     }
    
     // ...
    
    
    URL obj = new URL("https://{environment}.doxai.co/{basePath}/eformapi/template");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("DELETE");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "x-access-key": []string{"cbd9e2af-9b10-482e-a93f-05d497d0454b"},
            "x-secret-key": []string{"2e10a906-144f-5431-8c79-67fe33db0239"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("DELETE", "https://{environment}.doxai.co/{basePath}/eformapi/template", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    DELETE /eformapi/template

    Delete eForm templates

    Body parameter

    {
      "templateIds": [
        "088D70CB-802B-4F6E-8DD0-F1DB5334CE62"
      ]
    }
    

    Parameters

    Name In Type Required Description
    x-access-key header string true none
    x-secret-key header string true none
    body body object true none
    » templateIds body [string] false none

    Example responses

    200 Response

    {
      "msg": "Deleted successfully"
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successfull operation Inline
    400 Bad Request Bad Request Inline
    401 Unauthorized Bad Request Inline

    Response Schema

    Status Code 200

    Name Type Required Restrictions Description
    » msg string false none none

    Status Code 400

    Name Type Required Restrictions Description
    » msg string false none none

    Status Code 401

    Name Type Required Restrictions Description
    » msg string false none none

    eForm template clone

    Code samples

    # You can also use wget
    curl -X POST https://{environment}.doxai.co/{basePath}/eformapi/template/clone \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'x-access-key: cbd9e2af-9b10-482e-a93f-05d497d0454b' \
      -H 'x-secret-key: 2e10a906-144f-5431-8c79-67fe33db0239'
    
    
    POST https://{environment}.doxai.co/{basePath}/eformapi/template/clone HTTP/1.1
    
    Content-Type: application/json
    Accept: application/json
    x-access-key: cbd9e2af-9b10-482e-a93f-05d497d0454b
    x-secret-key: 2e10a906-144f-5431-8c79-67fe33db0239
    
    
    using System;
    using System.Collections.Generic;
    using System.Net.Http;
    using System.Net.Http.Headers;
    using System.Text;
    using System.Threading.Tasks;
    using Newtonsoft.Json;
    
    /// <<summary>>
    /// Example of Http Client
    /// <</summary>>
    public class HttpExample
    {
        private HttpClient Client { get; set; }
    
        /// <<summary>>
        /// Setup http client
        /// <</summary>>
        public HttpExample()
        {
          Client = new HttpClient();
        }
    
    
        /// Make a dummy request
        public async Task MakePostRequest()
        {
          string url = "https://{environment}.doxai.co/{basePath}/eformapi/template/clone";
    
    
          await PostAsync(null, url);
    
        }
    
        /// Performs a POST Request
        public async Task PostAsync(undefined content, string url)
        {
            //Serialize Object
            StringContent jsonContent = SerializeObject(content);
    
            //Execute POST request
            HttpResponseMessage response = await Client.PostAsync(url, jsonContent);
        }
    
    
    
        /// Serialize an object to Json
        private StringContent SerializeObject(undefined content)
        {
            //Serialize Object
            string jsonObject = JsonConvert.SerializeObject(content);
    
            //Create Json UTF8 String Content
            return new StringContent(jsonObject, Encoding.UTF8, "application/json");
        }
    
        /// Deserialize object from request response
        private async Task DeserializeObject(HttpResponseMessage response)
        {
            //Read body 
            string responseBody = await response.Content.ReadAsStringAsync();
    
            //Deserialize Body to object
            var result = JsonConvert.DeserializeObject(responseBody);
        }
    }
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'x-access-key' => 'cbd9e2af-9b10-482e-a93f-05d497d0454b',
      'x-secret-key' => '2e10a906-144f-5431-8c79-67fe33db0239'
    }
    
    result = RestClient.post 'https://{environment}.doxai.co/{basePath}/eformapi/template/clone',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'x-access-key': 'cbd9e2af-9b10-482e-a93f-05d497d0454b',
      'x-secret-key': '2e10a906-144f-5431-8c79-67fe33db0239'
    }
    
    r = requests.post('https://{environment}.doxai.co/{basePath}/eformapi/template/clone', headers = headers)
    
    print(r.json())
    
    
    const inputBody = '{
      "templateId": "099D70CB-802B-4F6E-8DD0-F1DB5334CQ62",
      "name": "clone of test template"
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'x-access-key':'cbd9e2af-9b10-482e-a93f-05d497d0454b',
      'x-secret-key':'2e10a906-144f-5431-8c79-67fe33db0239'
    };
    
    fetch('https://{environment}.doxai.co/{basePath}/eformapi/template/clone',
    {
      method: 'POST',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    <?php
    
    require 'vendor/autoload.php';
    
    $headers = array(
        'Content-Type' => 'application/json',
        'Accept' => 'application/json',
        'x-access-key' => 'cbd9e2af-9b10-482e-a93f-05d497d0454b',
        'x-secret-key' => '2e10a906-144f-5431-8c79-67fe33db0239',
    );
    
    $client = new \GuzzleHttp\Client();
    
    // Define array of request body.
    $request_body = array();
    
    try {
        $response = $client->request('POST','https://{environment}.doxai.co/{basePath}/eformapi/template/clone', array(
            'headers' => $headers,
            'json' => $request_body,
           )
        );
        print_r($response->getBody()->getContents());
     }
     catch (\GuzzleHttp\Exception\BadResponseException $e) {
        // handle exception or api errors.
        print_r($e->getMessage());
     }
    
     // ...
    
    
    URL obj = new URL("https://{environment}.doxai.co/{basePath}/eformapi/template/clone");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "x-access-key": []string{"cbd9e2af-9b10-482e-a93f-05d497d0454b"},
            "x-secret-key": []string{"2e10a906-144f-5431-8c79-67fe33db0239"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://{environment}.doxai.co/{basePath}/eformapi/template/clone", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /eformapi/template/clone

    Clone eForm Template

    Body parameter

    {
      "templateId": "099D70CB-802B-4F6E-8DD0-F1DB5334CQ62",
      "name": "clone of test template"
    }
    

    Parameters

    Name In Type Required Description
    x-access-key header string true none
    x-secret-key header string true none
    body body object true none
    » templateId body string false Existing eForm template Id
    » name body string false Name of the cloned template

    Example responses

    200 Response

    {
      "msg": "Request success",
      "data": {
        "templateId": "199D70CB-802B-4F6E-8DD0-F1DB5334CQ62",
        "redirectUrl": "https://example.com/template-draft?authToken=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJEb3hBSSIsImF1ZCI6IkRveEFJIiwicmdWVzdElkIjpudWxsLCJ0ZW1wbGF0ZUlkIjoiRDM4N0E1ODktNEQ3MC00NjYxLUI2ODItOUIwNDA0NTJBQUZFIiwiaWFoxNzcyNjI4MzI0LCJleHAiOjE3NzI2MzEwMjR9.CHjts-t8ymy9eGOm3Y5wMnIFnBShNacr94idChAROI"
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successfull operation Inline
    400 Bad Request Bad Request Inline
    401 Unauthorized Bad Request Inline

    Response Schema

    Status Code 200

    Name Type Required Restrictions Description
    » msg string false none none
    » data object false none none
    »» templateId string false none none
    »» redirectUrl string false none none

    Status Code 400

    Name Type Required Restrictions Description
    » msg string false none none

    Status Code 401

    Name Type Required Restrictions Description
    » msg string false none none

    eForm template draft token

    Code samples

    # You can also use wget
    curl -X POST https://{environment}.doxai.co/{basePath}/eformapi/template/token \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'x-access-key: cbd9e2af-9b10-482e-a93f-05d497d0454b' \
      -H 'x-secret-key: 2e10a906-144f-5431-8c79-67fe33db0239'
    
    
    POST https://{environment}.doxai.co/{basePath}/eformapi/template/token HTTP/1.1
    
    Content-Type: application/json
    Accept: application/json
    x-access-key: cbd9e2af-9b10-482e-a93f-05d497d0454b
    x-secret-key: 2e10a906-144f-5431-8c79-67fe33db0239
    
    
    using System;
    using System.Collections.Generic;
    using System.Net.Http;
    using System.Net.Http.Headers;
    using System.Text;
    using System.Threading.Tasks;
    using Newtonsoft.Json;
    
    /// <<summary>>
    /// Example of Http Client
    /// <</summary>>
    public class HttpExample
    {
        private HttpClient Client { get; set; }
    
        /// <<summary>>
        /// Setup http client
        /// <</summary>>
        public HttpExample()
        {
          Client = new HttpClient();
        }
    
    
        /// Make a dummy request
        public async Task MakePostRequest()
        {
          string url = "https://{environment}.doxai.co/{basePath}/eformapi/template/token";
    
    
          await PostAsync(null, url);
    
        }
    
        /// Performs a POST Request
        public async Task PostAsync(undefined content, string url)
        {
            //Serialize Object
            StringContent jsonContent = SerializeObject(content);
    
            //Execute POST request
            HttpResponseMessage response = await Client.PostAsync(url, jsonContent);
        }
    
    
    
        /// Serialize an object to Json
        private StringContent SerializeObject(undefined content)
        {
            //Serialize Object
            string jsonObject = JsonConvert.SerializeObject(content);
    
            //Create Json UTF8 String Content
            return new StringContent(jsonObject, Encoding.UTF8, "application/json");
        }
    
        /// Deserialize object from request response
        private async Task DeserializeObject(HttpResponseMessage response)
        {
            //Read body 
            string responseBody = await response.Content.ReadAsStringAsync();
    
            //Deserialize Body to object
            var result = JsonConvert.DeserializeObject(responseBody);
        }
    }
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'x-access-key' => 'cbd9e2af-9b10-482e-a93f-05d497d0454b',
      'x-secret-key' => '2e10a906-144f-5431-8c79-67fe33db0239'
    }
    
    result = RestClient.post 'https://{environment}.doxai.co/{basePath}/eformapi/template/token',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'x-access-key': 'cbd9e2af-9b10-482e-a93f-05d497d0454b',
      'x-secret-key': '2e10a906-144f-5431-8c79-67fe33db0239'
    }
    
    r = requests.post('https://{environment}.doxai.co/{basePath}/eformapi/template/token', headers = headers)
    
    print(r.json())
    
    
    const inputBody = '{
      "templateId": "099D70CB-802B-4F6E-8DD0-F1DB5334CQ62"
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'x-access-key':'cbd9e2af-9b10-482e-a93f-05d497d0454b',
      'x-secret-key':'2e10a906-144f-5431-8c79-67fe33db0239'
    };
    
    fetch('https://{environment}.doxai.co/{basePath}/eformapi/template/token',
    {
      method: 'POST',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    <?php
    
    require 'vendor/autoload.php';
    
    $headers = array(
        'Content-Type' => 'application/json',
        'Accept' => 'application/json',
        'x-access-key' => 'cbd9e2af-9b10-482e-a93f-05d497d0454b',
        'x-secret-key' => '2e10a906-144f-5431-8c79-67fe33db0239',
    );
    
    $client = new \GuzzleHttp\Client();
    
    // Define array of request body.
    $request_body = array();
    
    try {
        $response = $client->request('POST','https://{environment}.doxai.co/{basePath}/eformapi/template/token', array(
            'headers' => $headers,
            'json' => $request_body,
           )
        );
        print_r($response->getBody()->getContents());
     }
     catch (\GuzzleHttp\Exception\BadResponseException $e) {
        // handle exception or api errors.
        print_r($e->getMessage());
     }
    
     // ...
    
    
    URL obj = new URL("https://{environment}.doxai.co/{basePath}/eformapi/template/token");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "x-access-key": []string{"cbd9e2af-9b10-482e-a93f-05d497d0454b"},
            "x-secret-key": []string{"2e10a906-144f-5431-8c79-67fe33db0239"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://{environment}.doxai.co/{basePath}/eformapi/template/token", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /eformapi/template/token

    eForm template draft edit token creation

    Body parameter

    {
      "templateId": "099D70CB-802B-4F6E-8DD0-F1DB5334CQ62"
    }
    

    Parameters

    Name In Type Required Description
    x-access-key header string true none
    x-secret-key header string true none
    body body object true none
    » templateId body string false eForm Template Id

    Example responses

    200 Response

    {
      "msg": "Request success",
      "data": {
        "redirectUrl": "https://example.com/template-draft?authToken=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJEb3hBSSIsImF1ZCI6IkRveEFJIiwicmdWVzdElkIjpudWxsLCJ0ZW1wbGF0ZUlkIjoiRDM4N0E1ODktNEQ3MC00NjYxLUI2ODItOUIwNDA0NTJBQUZFIiwiaWFoxNzcyNjI4MzI0LCJleHAiOjE3NzI2MzEwMjR9.CHjts-t8ymy9eGOm3Y5wMnIFnBShNacr94idChAROI"
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successfull operation Inline
    400 Bad Request Bad Request Inline
    401 Unauthorized Bad Request Inline

    Response Schema

    Status Code 200

    Name Type Required Restrictions Description
    » msg string false none none
    » data object false none none
    »» redirectUrl string false none none

    Status Code 400

    Name Type Required Restrictions Description
    » msg string false none none

    Status Code 401

    Name Type Required Restrictions Description
    » msg string false none none

    eForm activate template

    Code samples

    # You can also use wget
    curl -X POST https://{environment}.doxai.co/{basePath}/eformapi/template/activate \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'x-access-key: cbd9e2af-9b10-482e-a93f-05d497d0454b' \
      -H 'x-secret-key: 2e10a906-144f-5431-8c79-67fe33db0239'
    
    
    POST https://{environment}.doxai.co/{basePath}/eformapi/template/activate HTTP/1.1
    
    Content-Type: application/json
    Accept: application/json
    x-access-key: cbd9e2af-9b10-482e-a93f-05d497d0454b
    x-secret-key: 2e10a906-144f-5431-8c79-67fe33db0239
    
    
    using System;
    using System.Collections.Generic;
    using System.Net.Http;
    using System.Net.Http.Headers;
    using System.Text;
    using System.Threading.Tasks;
    using Newtonsoft.Json;
    
    /// <<summary>>
    /// Example of Http Client
    /// <</summary>>
    public class HttpExample
    {
        private HttpClient Client { get; set; }
    
        /// <<summary>>
        /// Setup http client
        /// <</summary>>
        public HttpExample()
        {
          Client = new HttpClient();
        }
    
    
        /// Make a dummy request
        public async Task MakePostRequest()
        {
          string url = "https://{environment}.doxai.co/{basePath}/eformapi/template/activate";
    
    
          await PostAsync(null, url);
    
        }
    
        /// Performs a POST Request
        public async Task PostAsync(undefined content, string url)
        {
            //Serialize Object
            StringContent jsonContent = SerializeObject(content);
    
            //Execute POST request
            HttpResponseMessage response = await Client.PostAsync(url, jsonContent);
        }
    
    
    
        /// Serialize an object to Json
        private StringContent SerializeObject(undefined content)
        {
            //Serialize Object
            string jsonObject = JsonConvert.SerializeObject(content);
    
            //Create Json UTF8 String Content
            return new StringContent(jsonObject, Encoding.UTF8, "application/json");
        }
    
        /// Deserialize object from request response
        private async Task DeserializeObject(HttpResponseMessage response)
        {
            //Read body 
            string responseBody = await response.Content.ReadAsStringAsync();
    
            //Deserialize Body to object
            var result = JsonConvert.DeserializeObject(responseBody);
        }
    }
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'x-access-key' => 'cbd9e2af-9b10-482e-a93f-05d497d0454b',
      'x-secret-key' => '2e10a906-144f-5431-8c79-67fe33db0239'
    }
    
    result = RestClient.post 'https://{environment}.doxai.co/{basePath}/eformapi/template/activate',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'x-access-key': 'cbd9e2af-9b10-482e-a93f-05d497d0454b',
      'x-secret-key': '2e10a906-144f-5431-8c79-67fe33db0239'
    }
    
    r = requests.post('https://{environment}.doxai.co/{basePath}/eformapi/template/activate', headers = headers)
    
    print(r.json())
    
    
    const inputBody = '{
      "templateIds": [
        "088D70CB-802B-4F6E-8DD0-F1DB5334CE62"
      ]
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'x-access-key':'cbd9e2af-9b10-482e-a93f-05d497d0454b',
      'x-secret-key':'2e10a906-144f-5431-8c79-67fe33db0239'
    };
    
    fetch('https://{environment}.doxai.co/{basePath}/eformapi/template/activate',
    {
      method: 'POST',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    <?php
    
    require 'vendor/autoload.php';
    
    $headers = array(
        'Content-Type' => 'application/json',
        'Accept' => 'application/json',
        'x-access-key' => 'cbd9e2af-9b10-482e-a93f-05d497d0454b',
        'x-secret-key' => '2e10a906-144f-5431-8c79-67fe33db0239',
    );
    
    $client = new \GuzzleHttp\Client();
    
    // Define array of request body.
    $request_body = array();
    
    try {
        $response = $client->request('POST','https://{environment}.doxai.co/{basePath}/eformapi/template/activate', array(
            'headers' => $headers,
            'json' => $request_body,
           )
        );
        print_r($response->getBody()->getContents());
     }
     catch (\GuzzleHttp\Exception\BadResponseException $e) {
        // handle exception or api errors.
        print_r($e->getMessage());
     }
    
     // ...
    
    
    URL obj = new URL("https://{environment}.doxai.co/{basePath}/eformapi/template/activate");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "x-access-key": []string{"cbd9e2af-9b10-482e-a93f-05d497d0454b"},
            "x-secret-key": []string{"2e10a906-144f-5431-8c79-67fe33db0239"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://{environment}.doxai.co/{basePath}/eformapi/template/activate", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /eformapi/template/activate

    Activate eForm templates

    Body parameter

    {
      "templateIds": [
        "088D70CB-802B-4F6E-8DD0-F1DB5334CE62"
      ]
    }
    

    Parameters

    Name In Type Required Description
    x-access-key header string true none
    x-secret-key header string true none
    body body object true none
    » templateIds body [string] false none

    Example responses

    200 Response

    {
      "msg": "Updated successfully",
      "data": [
        {
          "msg": "Updated successfully",
          "templateId": "64F0498F-5E6A-4903-8740-1CA95E76455B",
          "status": 200
        }
      ]
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successfull operation Inline
    400 Bad Request Bad Request Inline
    401 Unauthorized Bad Request Inline

    Response Schema

    Status Code 200

    Name Type Required Restrictions Description
    » msg string false none none
    » data [object] false none none
    »» msg string false none none
    »» templateId string(uuid) false none none
    »» status integer false none HTTP status code for individual request

    Status Code 400

    Name Type Required Restrictions Description
    » msg string false none none

    Status Code 401

    Name Type Required Restrictions Description
    » msg string false none none

    eForm request creation

    Code samples

    # You can also use wget
    curl -X POST https://{environment}.doxai.co/{basePath}/eformapi/request \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'x-access-key: cbd9e2af-9b10-482e-a93f-05d497d0454b' \
      -H 'x-secret-key: 2e10a906-144f-5431-8c79-67fe33db0239'
    
    
    POST https://{environment}.doxai.co/{basePath}/eformapi/request HTTP/1.1
    
    Content-Type: application/json
    Accept: application/json
    x-access-key: cbd9e2af-9b10-482e-a93f-05d497d0454b
    x-secret-key: 2e10a906-144f-5431-8c79-67fe33db0239
    
    
    using System;
    using System.Collections.Generic;
    using System.Net.Http;
    using System.Net.Http.Headers;
    using System.Text;
    using System.Threading.Tasks;
    using Newtonsoft.Json;
    
    /// <<summary>>
    /// Example of Http Client
    /// <</summary>>
    public class HttpExample
    {
        private HttpClient Client { get; set; }
    
        /// <<summary>>
        /// Setup http client
        /// <</summary>>
        public HttpExample()
        {
          Client = new HttpClient();
        }
    
    
        /// Make a dummy request
        public async Task MakePostRequest()
        {
          string url = "https://{environment}.doxai.co/{basePath}/eformapi/request";
    
    
          await PostAsync(null, url);
    
        }
    
        /// Performs a POST Request
        public async Task PostAsync(undefined content, string url)
        {
            //Serialize Object
            StringContent jsonContent = SerializeObject(content);
    
            //Execute POST request
            HttpResponseMessage response = await Client.PostAsync(url, jsonContent);
        }
    
    
    
        /// Serialize an object to Json
        private StringContent SerializeObject(undefined content)
        {
            //Serialize Object
            string jsonObject = JsonConvert.SerializeObject(content);
    
            //Create Json UTF8 String Content
            return new StringContent(jsonObject, Encoding.UTF8, "application/json");
        }
    
        /// Deserialize object from request response
        private async Task DeserializeObject(HttpResponseMessage response)
        {
            //Read body 
            string responseBody = await response.Content.ReadAsStringAsync();
    
            //Deserialize Body to object
            var result = JsonConvert.DeserializeObject(responseBody);
        }
    }
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'x-access-key' => 'cbd9e2af-9b10-482e-a93f-05d497d0454b',
      'x-secret-key' => '2e10a906-144f-5431-8c79-67fe33db0239'
    }
    
    result = RestClient.post 'https://{environment}.doxai.co/{basePath}/eformapi/request',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'x-access-key': 'cbd9e2af-9b10-482e-a93f-05d497d0454b',
      'x-secret-key': '2e10a906-144f-5431-8c79-67fe33db0239'
    }
    
    r = requests.post('https://{environment}.doxai.co/{basePath}/eformapi/request', headers = headers)
    
    print(r.json())
    
    
    const inputBody = '{
      "requestList": [
        {
          "templateId": "099D70CB-802B-4F6E-8DD0-F1DB5334CQ62",
          "referenceId": "088D70CB-802B-4F6E-8DD0-F1DB5334CE62",
          "requester": {
            "name": "John Smith",
            "email": "xxx@example.com"
          },
          "customerEmail": "xxx@example.com",
          "customerName": "John",
          "sendEmailNotifications": "true",
          "expiryDate": "2028-09-11"
        }
      ]
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'x-access-key':'cbd9e2af-9b10-482e-a93f-05d497d0454b',
      'x-secret-key':'2e10a906-144f-5431-8c79-67fe33db0239'
    };
    
    fetch('https://{environment}.doxai.co/{basePath}/eformapi/request',
    {
      method: 'POST',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    <?php
    
    require 'vendor/autoload.php';
    
    $headers = array(
        'Content-Type' => 'application/json',
        'Accept' => 'application/json',
        'x-access-key' => 'cbd9e2af-9b10-482e-a93f-05d497d0454b',
        'x-secret-key' => '2e10a906-144f-5431-8c79-67fe33db0239',
    );
    
    $client = new \GuzzleHttp\Client();
    
    // Define array of request body.
    $request_body = array();
    
    try {
        $response = $client->request('POST','https://{environment}.doxai.co/{basePath}/eformapi/request', array(
            'headers' => $headers,
            'json' => $request_body,
           )
        );
        print_r($response->getBody()->getContents());
     }
     catch (\GuzzleHttp\Exception\BadResponseException $e) {
        // handle exception or api errors.
        print_r($e->getMessage());
     }
    
     // ...
    
    
    URL obj = new URL("https://{environment}.doxai.co/{basePath}/eformapi/request");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "x-access-key": []string{"cbd9e2af-9b10-482e-a93f-05d497d0454b"},
            "x-secret-key": []string{"2e10a906-144f-5431-8c79-67fe33db0239"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://{environment}.doxai.co/{basePath}/eformapi/request", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /eformapi/request

    Place eForm request

    Body parameter

    {
      "requestList": [
        {
          "templateId": "099D70CB-802B-4F6E-8DD0-F1DB5334CQ62",
          "referenceId": "088D70CB-802B-4F6E-8DD0-F1DB5334CE62",
          "requester": {
            "name": "John Smith",
            "email": "xxx@example.com"
          },
          "customerEmail": "xxx@example.com",
          "customerName": "John",
          "sendEmailNotifications": "true",
          "expiryDate": "2028-09-11"
        }
      ]
    }
    

    Parameters

    Name In Type Required Description
    x-access-key header string true none
    x-secret-key header string true none
    body body object true none
    » requestList body [object] false none
    »» templateId body string false Template Id where the autofill mapping is completed
    »» referenceId body string false Reference id for file
    »» requester body object false none
    »»» name body string false The name of the requester
    »»» email body string false Email must be a valid email
    »» customerEmail body string false Email of the signer.
    »» customerName body string false none
    »» sendEmailNotifications body boolean false Email notification required or not
    »» expiryDate body string(date) false none

    Example responses

    200 Response

    {
      "msg": "Request success",
      "data": [
        {
          "msg": "Request created successfully",
          "data": {
            "requestId": "64F0498F-5E6A-4903-8740-1CA95E76455B",
            "referenceId": "12343",
            "redirectUrl": "https://example.com/auth?sign_request_id=31585418-EA94-4375-8C87-5A0E847288EB&uniqueId=2186C9A9-7135-49B9-BDFB-18D8ED6C3263"
          },
          "status": 200,
          "success": true
        }
      ]
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successfull operation Inline
    400 Bad Request Bad Request Inline
    401 Unauthorized Bad Request Inline

    Response Schema

    Status Code 200

    Name Type Required Restrictions Description
    » msg string false none none
    » data [object] false none none
    »» msg string false none none
    »» data object false none none
    »»» requestId string(uuid) false none none
    »»» referenceId string false none none
    »»» redirectUrl object false none none
    »» status integer false none HTTP status code for individual request
    »» success boolean false none Indicates if the individual request was successful

    Status Code 400

    Name Type Required Restrictions Description
    » msg string false none none

    Status Code 401

    Name Type Required Restrictions Description
    » msg string false none none

    FraudCheck AI

    Document Fraud Check

    Code samples

    # You can also use wget
    curl -X POST https://{environment}.doxai.co/{basePath}/fraudcheckapi/request \
      -H 'Content-Type: multipart/form-data' \
      -H 'Accept: application/json' \
      -H 'x-access-key: cbd9e2af-9b10-482e-a93f-05d497d0454b' \
      -H 'x-secret-key: 2e10a906-144f-5431-8c79-67fe33db0239'
    
    
    POST https://{environment}.doxai.co/{basePath}/fraudcheckapi/request HTTP/1.1
    
    Content-Type: multipart/form-data
    Accept: application/json
    x-access-key: cbd9e2af-9b10-482e-a93f-05d497d0454b
    x-secret-key: 2e10a906-144f-5431-8c79-67fe33db0239
    
    
    using System;
    using System.Collections.Generic;
    using System.Net.Http;
    using System.Net.Http.Headers;
    using System.Text;
    using System.Threading.Tasks;
    using Newtonsoft.Json;
    
    /// <<summary>>
    /// Example of Http Client
    /// <</summary>>
    public class HttpExample
    {
        private HttpClient Client { get; set; }
    
        /// <<summary>>
        /// Setup http client
        /// <</summary>>
        public HttpExample()
        {
          Client = new HttpClient();
        }
    
    
        /// Make a dummy request
        public async Task MakePostRequest()
        {
          string url = "https://{environment}.doxai.co/{basePath}/fraudcheckapi/request";
    
    
          await PostAsync(null, url);
    
        }
    
        /// Performs a POST Request
        public async Task PostAsync(undefined content, string url)
        {
            //Serialize Object
            StringContent jsonContent = SerializeObject(content);
    
            //Execute POST request
            HttpResponseMessage response = await Client.PostAsync(url, jsonContent);
        }
    
    
    
        /// Serialize an object to Json
        private StringContent SerializeObject(undefined content)
        {
            //Serialize Object
            string jsonObject = JsonConvert.SerializeObject(content);
    
            //Create Json UTF8 String Content
            return new StringContent(jsonObject, Encoding.UTF8, "application/json");
        }
    
        /// Deserialize object from request response
        private async Task DeserializeObject(HttpResponseMessage response)
        {
            //Read body 
            string responseBody = await response.Content.ReadAsStringAsync();
    
            //Deserialize Body to object
            var result = JsonConvert.DeserializeObject(responseBody);
        }
    }
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'multipart/form-data',
      'Accept' => 'application/json',
      'x-access-key' => 'cbd9e2af-9b10-482e-a93f-05d497d0454b',
      'x-secret-key' => '2e10a906-144f-5431-8c79-67fe33db0239'
    }
    
    result = RestClient.post 'https://{environment}.doxai.co/{basePath}/fraudcheckapi/request',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'multipart/form-data',
      'Accept': 'application/json',
      'x-access-key': 'cbd9e2af-9b10-482e-a93f-05d497d0454b',
      'x-secret-key': '2e10a906-144f-5431-8c79-67fe33db0239'
    }
    
    r = requests.post('https://{environment}.doxai.co/{basePath}/fraudcheckapi/request', headers = headers)
    
    print(r.json())
    
    
    const inputBody = '{
      "file": "string",
      "external_ref_id": "string"
    }';
    const headers = {
      'Content-Type':'multipart/form-data',
      'Accept':'application/json',
      'x-access-key':'cbd9e2af-9b10-482e-a93f-05d497d0454b',
      'x-secret-key':'2e10a906-144f-5431-8c79-67fe33db0239'
    };
    
    fetch('https://{environment}.doxai.co/{basePath}/fraudcheckapi/request',
    {
      method: 'POST',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    <?php
    
    require 'vendor/autoload.php';
    
    $headers = array(
        'Content-Type' => 'multipart/form-data',
        'Accept' => 'application/json',
        'x-access-key' => 'cbd9e2af-9b10-482e-a93f-05d497d0454b',
        'x-secret-key' => '2e10a906-144f-5431-8c79-67fe33db0239',
    );
    
    $client = new \GuzzleHttp\Client();
    
    // Define array of request body.
    $request_body = array();
    
    try {
        $response = $client->request('POST','https://{environment}.doxai.co/{basePath}/fraudcheckapi/request', array(
            'headers' => $headers,
            'json' => $request_body,
           )
        );
        print_r($response->getBody()->getContents());
     }
     catch (\GuzzleHttp\Exception\BadResponseException $e) {
        // handle exception or api errors.
        print_r($e->getMessage());
     }
    
     // ...
    
    
    URL obj = new URL("https://{environment}.doxai.co/{basePath}/fraudcheckapi/request");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"multipart/form-data"},
            "Accept": []string{"application/json"},
            "x-access-key": []string{"cbd9e2af-9b10-482e-a93f-05d497d0454b"},
            "x-secret-key": []string{"2e10a906-144f-5431-8c79-67fe33db0239"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://{environment}.doxai.co/{basePath}/fraudcheckapi/request", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /fraudcheckapi/request

    Upload a file to start fraud verification

    Body parameter

    file: string
    external_ref_id: string
    
    

    Parameters

    Name In Type Required Description
    x-access-key header string true none
    x-secret-key header string true none
    body body object true none
    » file body string(binary) true Upload the document (PDF, Image, HEIC)
    » external_ref_id body string¦null false Optional external reference ID

    Example responses

    200 Response

    {
      "request_id": "2d0cd36c-8a1c-4481-ada7-25639f967ec5",
      "status": "'processing started'",
      "external_ref_id": "INV-12345"
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successfull Operation Inline
    400 Bad Request Bad Request Inline
    401 Unauthorized Unauthorized Inline
    500 Internal Server Error Internal Server Error Inline

    Response Schema

    Status Code 200

    Name Type Required Restrictions Description
    » request_id string false none none
    » status string false none none
    » external_ref_id string false none none

    Status Code 400

    Name Type Required Restrictions Description
    » detail string false none none

    Status Code 401

    Name Type Required Restrictions Description
    » detail string false none none

    Status Code 500

    Name Type Required Restrictions Description
    » msg string false none none

    Check fraud status by Request ID

    Code samples

    # You can also use wget
    curl -X GET https://{environment}.doxai.co/{basePath}/fraudcheckapi/status?request_id=string \
      -H 'Accept: application/json' \
      -H 'x-access-key: 5d46e3a8-b2a0-4593-81ad-71b20ad7c4ab' \
      -H 'x-secret-key: 6d40374f-704c-593d-93df-b076ffe1427f'
    
    
    GET https://{environment}.doxai.co/{basePath}/fraudcheckapi/status?request_id=string HTTP/1.1
    
    Accept: application/json
    x-access-key: 5d46e3a8-b2a0-4593-81ad-71b20ad7c4ab
    x-secret-key: 6d40374f-704c-593d-93df-b076ffe1427f
    
    
    using System;
    using System.Collections.Generic;
    using System.Net.Http;
    using System.Net.Http.Headers;
    using System.Text;
    using System.Threading.Tasks;
    using Newtonsoft.Json;
    
    /// <<summary>>
    /// Example of Http Client
    /// <</summary>>
    public class HttpExample
    {
        private HttpClient Client { get; set; }
    
        /// <<summary>>
        /// Setup http client
        /// <</summary>>
        public HttpExample()
        {
          Client = new HttpClient();
        }
    
        /// Make a dummy request
        public async Task MakeGetRequest()
        {
          string url = "https://{environment}.doxai.co/{basePath}/fraudcheckapi/status";
          var result = await GetAsync(url);
        }
    
        /// Performs a GET Request
        public async Task GetAsync(string url)
        {
            //Start the request
            HttpResponseMessage response = await Client.GetAsync(url);
    
            //Validate result
            response.EnsureSuccessStatusCode();
    
        }
    
    
    
    
        /// Deserialize object from request response
        private async Task DeserializeObject(HttpResponseMessage response)
        {
            //Read body 
            string responseBody = await response.Content.ReadAsStringAsync();
    
            //Deserialize Body to object
            var result = JsonConvert.DeserializeObject(responseBody);
        }
    }
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'x-access-key' => '5d46e3a8-b2a0-4593-81ad-71b20ad7c4ab',
      'x-secret-key' => '6d40374f-704c-593d-93df-b076ffe1427f'
    }
    
    result = RestClient.get 'https://{environment}.doxai.co/{basePath}/fraudcheckapi/status',
      params: {
      'request_id' => 'string'
    }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'x-access-key': '5d46e3a8-b2a0-4593-81ad-71b20ad7c4ab',
      'x-secret-key': '6d40374f-704c-593d-93df-b076ffe1427f'
    }
    
    r = requests.get('https://{environment}.doxai.co/{basePath}/fraudcheckapi/status', params={
      'request_id': 'string'
    }, headers = headers)
    
    print(r.json())
    
    
    
    const headers = {
      'Accept':'application/json',
      'x-access-key':'5d46e3a8-b2a0-4593-81ad-71b20ad7c4ab',
      'x-secret-key':'6d40374f-704c-593d-93df-b076ffe1427f'
    };
    
    fetch('https://{environment}.doxai.co/{basePath}/fraudcheckapi/status?request_id=string',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    <?php
    
    require 'vendor/autoload.php';
    
    $headers = array(
        'Accept' => 'application/json',
        'x-access-key' => '5d46e3a8-b2a0-4593-81ad-71b20ad7c4ab',
        'x-secret-key' => '6d40374f-704c-593d-93df-b076ffe1427f',
    );
    
    $client = new \GuzzleHttp\Client();
    
    // Define array of request body.
    $request_body = array();
    
    try {
        $response = $client->request('GET','https://{environment}.doxai.co/{basePath}/fraudcheckapi/status', array(
            'headers' => $headers,
            'json' => $request_body,
           )
        );
        print_r($response->getBody()->getContents());
     }
     catch (\GuzzleHttp\Exception\BadResponseException $e) {
        // handle exception or api errors.
        print_r($e->getMessage());
     }
    
     // ...
    
    
    URL obj = new URL("https://{environment}.doxai.co/{basePath}/fraudcheckapi/status?request_id=string");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "x-access-key": []string{"5d46e3a8-b2a0-4593-81ad-71b20ad7c4ab"},
            "x-secret-key": []string{"6d40374f-704c-593d-93df-b076ffe1427f"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://{environment}.doxai.co/{basePath}/fraudcheckapi/status", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /fraudcheckapi/status

    Query fraud check status using the Request ID returned from the upload endpoint

    Parameters

    Name In Type Required Description
    x-access-key header string true Example: 5d46e3a8-b2a0-4593-81ad-71b20ad7c4ab
    x-secret-key header string true Example: 6d40374f-704c-593d-93df-b076ffe1427f
    request_id query string true Unique request ID returned from upload endpoint

    Example responses

    200 Response

    {
      "status": "REQUEST_COMPLETED",
      "request_id": "63bc68c4-cd18-4bfc-8ee0-104fb53207b4",
      "result": {
        "verdict": "Potentially Altered",
        "static": {
          "score": 820,
          "checks": [
            {
              "property1": "string",
              "property2": "string"
            }
          ]
        },
        "dynamic": {
          "score": 0,
          "checks": [
            {
              "property1": "string",
              "property2": "string"
            }
          ]
        },
        "summary": {
          "Type of file": "PDF",
          "Document Category": "Business plan",
          "country": "Unknown",
          "filename": "spell_check.pdf",
          "Document Format": "Image-based",
          "Merged Document": false
        }
      },
      "visualization_url": "https://example.com/visualization.pdf",
      "original_file_url": "https://example.com/original.pdf",
      "esign_url": "https://example.com/esign.pdf"
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful Operation Inline
    401 Unauthorized Unauthorized Inline
    404 Not Found Error: Not Found Inline
    500 Internal Server Error Internal Server Error Inline

    Response Schema

    Status Code 200

    Name Type Required Restrictions Description
    » status string false none none
    » request_id string false none none
    » result object false none none
    »» verdict string false none none
    »» static object false none none
    »»» score integer false none none
    »»» checks [object] false none none
    »»»» additionalProperties string false none none
    »» dynamic object false none none
    »»» score integer false none none
    »»» checks [object] false none none
    »»»» additionalProperties string false none none
    »» summary object false none none
    »»» Type of file string false none none
    »»» Document Category string false none none
    »»» country string false none none
    »»» filename string false none none
    »»» Document Format string false none none
    »»» Merged Document boolean false none none
    » visualization_url string false none none
    » original_file_url string false none none
    » esign_url string false none none

    Status Code 401

    Name Type Required Restrictions Description
    » detail string false none none

    Status Code 404

    Name Type Required Restrictions Description
    » detail string false none none

    Status Code 500

    Name Type Required Restrictions Description
    » msg string false none none

    Check fraud status by external reference ID

    Code samples

    # You can also use wget
    curl -X GET https://{environment}.doxai.co/{basePath}/fraudcheckapi/ref_status?reference_id=string \
      -H 'Accept: application/json' \
      -H 'x-access-key: 5d46e3a8-b2a0-4593-81ad-71b20ad7c4ab' \
      -H 'x-secret-key: 6d40374f-704c-593d-93df-b076ffe1427f'
    
    
    GET https://{environment}.doxai.co/{basePath}/fraudcheckapi/ref_status?reference_id=string HTTP/1.1
    
    Accept: application/json
    x-access-key: 5d46e3a8-b2a0-4593-81ad-71b20ad7c4ab
    x-secret-key: 6d40374f-704c-593d-93df-b076ffe1427f
    
    
    using System;
    using System.Collections.Generic;
    using System.Net.Http;
    using System.Net.Http.Headers;
    using System.Text;
    using System.Threading.Tasks;
    using Newtonsoft.Json;
    
    /// <<summary>>
    /// Example of Http Client
    /// <</summary>>
    public class HttpExample
    {
        private HttpClient Client { get; set; }
    
        /// <<summary>>
        /// Setup http client
        /// <</summary>>
        public HttpExample()
        {
          Client = new HttpClient();
        }
    
        /// Make a dummy request
        public async Task MakeGetRequest()
        {
          string url = "https://{environment}.doxai.co/{basePath}/fraudcheckapi/ref_status";
          var result = await GetAsync(url);
        }
    
        /// Performs a GET Request
        public async Task GetAsync(string url)
        {
            //Start the request
            HttpResponseMessage response = await Client.GetAsync(url);
    
            //Validate result
            response.EnsureSuccessStatusCode();
    
        }
    
    
    
    
        /// Deserialize object from request response
        private async Task DeserializeObject(HttpResponseMessage response)
        {
            //Read body 
            string responseBody = await response.Content.ReadAsStringAsync();
    
            //Deserialize Body to object
            var result = JsonConvert.DeserializeObject(responseBody);
        }
    }
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'x-access-key' => '5d46e3a8-b2a0-4593-81ad-71b20ad7c4ab',
      'x-secret-key' => '6d40374f-704c-593d-93df-b076ffe1427f'
    }
    
    result = RestClient.get 'https://{environment}.doxai.co/{basePath}/fraudcheckapi/ref_status',
      params: {
      'reference_id' => 'string'
    }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'x-access-key': '5d46e3a8-b2a0-4593-81ad-71b20ad7c4ab',
      'x-secret-key': '6d40374f-704c-593d-93df-b076ffe1427f'
    }
    
    r = requests.get('https://{environment}.doxai.co/{basePath}/fraudcheckapi/ref_status', params={
      'reference_id': 'string'
    }, headers = headers)
    
    print(r.json())
    
    
    
    const headers = {
      'Accept':'application/json',
      'x-access-key':'5d46e3a8-b2a0-4593-81ad-71b20ad7c4ab',
      'x-secret-key':'6d40374f-704c-593d-93df-b076ffe1427f'
    };
    
    fetch('https://{environment}.doxai.co/{basePath}/fraudcheckapi/ref_status?reference_id=string',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    <?php
    
    require 'vendor/autoload.php';
    
    $headers = array(
        'Accept' => 'application/json',
        'x-access-key' => '5d46e3a8-b2a0-4593-81ad-71b20ad7c4ab',
        'x-secret-key' => '6d40374f-704c-593d-93df-b076ffe1427f',
    );
    
    $client = new \GuzzleHttp\Client();
    
    // Define array of request body.
    $request_body = array();
    
    try {
        $response = $client->request('GET','https://{environment}.doxai.co/{basePath}/fraudcheckapi/ref_status', array(
            'headers' => $headers,
            'json' => $request_body,
           )
        );
        print_r($response->getBody()->getContents());
     }
     catch (\GuzzleHttp\Exception\BadResponseException $e) {
        // handle exception or api errors.
        print_r($e->getMessage());
     }
    
     // ...
    
    
    URL obj = new URL("https://{environment}.doxai.co/{basePath}/fraudcheckapi/ref_status?reference_id=string");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "x-access-key": []string{"5d46e3a8-b2a0-4593-81ad-71b20ad7c4ab"},
            "x-secret-key": []string{"6d40374f-704c-593d-93df-b076ffe1427f"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://{environment}.doxai.co/{basePath}/fraudcheckapi/ref_status", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /fraudcheckapi/ref_status

    Query fraud check status using the external reference ID provided during upload

    Parameters

    Name In Type Required Description
    x-access-key header string true Example: 5d46e3a8-b2a0-4593-81ad-71b20ad7c4ab
    x-secret-key header string true Example: 6d40374f-704c-593d-93df-b076ffe1427f
    reference_id query string true External reference ID provided during upload

    Example responses

    200 Response

    {
      "status": "REQUEST_COMPLETED",
      "reference_id": "INV-12345",
      "result": {
        "verdict": "Potentially Altered",
        "static": {
          "score": 820,
          "checks": [
            {
              "property1": "string",
              "property2": "string"
            }
          ]
        },
        "dynamic": {
          "score": 0,
          "checks": [
            {
              "property1": "string",
              "property2": "string"
            }
          ]
        },
        "summary": {
          "Type of file": "PDF",
          "Document Category": "Business plan",
          "country": "Unknown",
          "filename": "spell_check.pdf",
          "Document Format": "Image-based",
          "Merged Document": false
        }
      },
      "visualization_url": "https://example.com/visualization.pdf",
      "original_file_url": "https://example.com/original.pdf",
      "esign_url": "https://example.com/esign.pdf"
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful Operation Inline
    401 Unauthorized Unauthorized Inline
    404 Not Found Not Found Inline
    500 Internal Server Error Internal Server Error Inline

    Response Schema

    Status Code 200

    Name Type Required Restrictions Description
    » status string false none none
    » reference_id string false none none
    » result object false none none
    »» verdict string false none none
    »» static object false none none
    »»» score integer false none none
    »»» checks [object] false none none
    »»»» additionalProperties string false none none
    »» dynamic object false none none
    »»» score integer false none none
    »»» checks [object] false none none
    »»»» additionalProperties string false none none
    »» summary object false none none
    »»» Type of file string false none none
    »»» Document Category string false none none
    »»» country string false none none
    »»» filename string false none none
    »»» Document Format string false none none
    »»» Merged Document boolean false none none
    » visualization_url string false none none
    » original_file_url string false none none
    » esign_url string false none none

    Status Code 401

    Name Type Required Restrictions Description
    » detail string false none none

    Status Code 404

    Name Type Required Restrictions Description
    » detail string false none none

    Status Code 500

    Name Type Required Restrictions Description
    » msg string false none none

    IEV Employee Verification

    Verify employee details

    Code samples

    # You can also use wget
    curl -X POST https://{environment}.doxai.co/{basePath}/ievapi/iev \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'x-access-key: eb2f724d-e7da-47f7-91a9-36fa3454796e' \
      -H 'x-secret-key: 2a3f9689-cfb5-540c-b525-0ff6dd2facd9'
    
    
    POST https://{environment}.doxai.co/{basePath}/ievapi/iev HTTP/1.1
    
    Content-Type: application/json
    Accept: application/json
    x-access-key: eb2f724d-e7da-47f7-91a9-36fa3454796e
    x-secret-key: 2a3f9689-cfb5-540c-b525-0ff6dd2facd9
    
    
    using System;
    using System.Collections.Generic;
    using System.Net.Http;
    using System.Net.Http.Headers;
    using System.Text;
    using System.Threading.Tasks;
    using Newtonsoft.Json;
    
    /// <<summary>>
    /// Example of Http Client
    /// <</summary>>
    public class HttpExample
    {
        private HttpClient Client { get; set; }
    
        /// <<summary>>
        /// Setup http client
        /// <</summary>>
        public HttpExample()
        {
          Client = new HttpClient();
        }
    
    
        /// Make a dummy request
        public async Task MakePostRequest()
        {
          string url = "https://{environment}.doxai.co/{basePath}/ievapi/iev";
    
    
          await PostAsync(null, url);
    
        }
    
        /// Performs a POST Request
        public async Task PostAsync(undefined content, string url)
        {
            //Serialize Object
            StringContent jsonContent = SerializeObject(content);
    
            //Execute POST request
            HttpResponseMessage response = await Client.PostAsync(url, jsonContent);
        }
    
    
    
        /// Serialize an object to Json
        private StringContent SerializeObject(undefined content)
        {
            //Serialize Object
            string jsonObject = JsonConvert.SerializeObject(content);
    
            //Create Json UTF8 String Content
            return new StringContent(jsonObject, Encoding.UTF8, "application/json");
        }
    
        /// Deserialize object from request response
        private async Task DeserializeObject(HttpResponseMessage response)
        {
            //Read body 
            string responseBody = await response.Content.ReadAsStringAsync();
    
            //Deserialize Body to object
            var result = JsonConvert.DeserializeObject(responseBody);
        }
    }
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'x-access-key' => 'eb2f724d-e7da-47f7-91a9-36fa3454796e',
      'x-secret-key' => '2a3f9689-cfb5-540c-b525-0ff6dd2facd9'
    }
    
    result = RestClient.post 'https://{environment}.doxai.co/{basePath}/ievapi/iev',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'x-access-key': 'eb2f724d-e7da-47f7-91a9-36fa3454796e',
      'x-secret-key': '2a3f9689-cfb5-540c-b525-0ff6dd2facd9'
    }
    
    r = requests.post('https://{environment}.doxai.co/{basePath}/ievapi/iev', headers = headers)
    
    print(r.json())
    
    
    const inputBody = '{
      "givenName": "John",
      "familyName": "smith",
      "email": "xxx@example.com",
      "kycVerificationRequired": "true",
      "generateReport": "true",
      "requesterName": "David smith",
      "requesterEmail": "xxx@example.com",
      "abn": "123SDJHG65326",
      "companyName": "Lakeba",
      "reason": "For the employment verification",
      "privacyPolicy": "https://example.com/privacy-policy",
      "verificationType": "incomeCurrent,incomeHistory,employeeCurrent,employeeHistory,lodgement,super",
      "sendEmailNotification": "true",
      "url": ""
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'x-access-key':'eb2f724d-e7da-47f7-91a9-36fa3454796e',
      'x-secret-key':'2a3f9689-cfb5-540c-b525-0ff6dd2facd9'
    };
    
    fetch('https://{environment}.doxai.co/{basePath}/ievapi/iev',
    {
      method: 'POST',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    <?php
    
    require 'vendor/autoload.php';
    
    $headers = array(
        'Content-Type' => 'application/json',
        'Accept' => 'application/json',
        'x-access-key' => 'eb2f724d-e7da-47f7-91a9-36fa3454796e',
        'x-secret-key' => '2a3f9689-cfb5-540c-b525-0ff6dd2facd9',
    );
    
    $client = new \GuzzleHttp\Client();
    
    // Define array of request body.
    $request_body = array();
    
    try {
        $response = $client->request('POST','https://{environment}.doxai.co/{basePath}/ievapi/iev', array(
            'headers' => $headers,
            'json' => $request_body,
           )
        );
        print_r($response->getBody()->getContents());
     }
     catch (\GuzzleHttp\Exception\BadResponseException $e) {
        // handle exception or api errors.
        print_r($e->getMessage());
     }
    
     // ...
    
    
    URL obj = new URL("https://{environment}.doxai.co/{basePath}/ievapi/iev");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "x-access-key": []string{"eb2f724d-e7da-47f7-91a9-36fa3454796e"},
            "x-secret-key": []string{"2a3f9689-cfb5-540c-b525-0ff6dd2facd9"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://{environment}.doxai.co/{basePath}/ievapi/iev", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /ievapi/iev

    Employee Verification

    Body parameter

    {
      "givenName": "John",
      "familyName": "smith",
      "email": "xxx@example.com",
      "kycVerificationRequired": "true",
      "generateReport": "true",
      "requesterName": "David smith",
      "requesterEmail": "xxx@example.com",
      "abn": "123SDJHG65326",
      "companyName": "Lakeba",
      "reason": "For the employment verification",
      "privacyPolicy": "https://example.com/privacy-policy",
      "verificationType": "incomeCurrent,incomeHistory,employeeCurrent,employeeHistory,lodgement,super",
      "sendEmailNotification": "true",
      "url": ""
    }
    

    Parameters

    Name In Type Required Description
    x-access-key header string true none
    x-secret-key header string true none
    body body object true none
    » givenName body string false First name of the employee
    » familyName body string false Last name of the employee
    » email body string false Employee email
    » kycVerificationRequired body boolean false kyc verification required or not
    » generateReport body boolean false To enable final report generation. Default value is false
    » requesterName body string false Name of the Requestor
    » requesterEmail body string false Requestor email
    » abn body string false ABN of a company
    » companyName body string false name of the company
    » reason body string false reason for the verification
    » privacyPolicy body string false Privacy policy of the company
    » verificationType body string false There are six verification types - incomeCurrent, incomeHistory, employeeCurrent, employeeHistory, lodgement, super
    » sendEmailNotification body boolean false Email notification required or not
    » url body string false Url is used for custom hosted webapp.By Default the live url will be used.

    Example responses

    200 Response

    {
      "msg": "IEV request created successfully",
      "data": {
        "requestId": "xxxx",
        "redirectUrl": "https://iev.doxai.co/verify-request?token=S6tm.dfyLkUCn2C&idv=true&requestId=6f5b9ef7-d37f-43ae-a2a6-6d5cxxxxxae6"
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successfull Operation Inline
    400 Bad Request Bad Request Inline
    401 Unauthorized Bad Request Inline
    500 Internal Server Error Failed Operation Inline

    Response Schema

    Status Code 200

    Name Type Required Restrictions Description
    » msg string false none none
    » data object false none none
    »» requestId string false none requestId for unique identification
    »» redirectUrl string false none redirection url to employee portal

    Status Code 400

    Name Type Required Restrictions Description
    » msg string false none none

    Status Code 401

    Name Type Required Restrictions Description
    » msg string false none none

    Status Code 500

    Name Type Required Restrictions Description
    » msg string false none none

    Edit employee details request

    Code samples

    # You can also use wget
    curl -X PATCH https://{environment}.doxai.co/{basePath}/ievapi/iev \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'x-access-key: eb2f724d-e7da-47f7-91a9-36fa3454796e' \
      -H 'x-secret-key: 2a3f9689-cfb5-540c-b525-0ff6dd2facd9'
    
    
    PATCH https://{environment}.doxai.co/{basePath}/ievapi/iev HTTP/1.1
    
    Content-Type: application/json
    Accept: application/json
    x-access-key: eb2f724d-e7da-47f7-91a9-36fa3454796e
    x-secret-key: 2a3f9689-cfb5-540c-b525-0ff6dd2facd9
    
    
    using System;
    using System.Collections.Generic;
    using System.Net.Http;
    using System.Net.Http.Headers;
    using System.Text;
    using System.Threading.Tasks;
    using Newtonsoft.Json;
    
    /// <<summary>>
    /// Example of Http Client
    /// <</summary>>
    public class HttpExample
    {
        private HttpClient Client { get; set; }
    
        /// <<summary>>
        /// Setup http client
        /// <</summary>>
        public HttpExample()
        {
          Client = new HttpClient();
        }
    
    
    
    
    
        /// Deserialize object from request response
        private async Task DeserializeObject(HttpResponseMessage response)
        {
            //Read body 
            string responseBody = await response.Content.ReadAsStringAsync();
    
            //Deserialize Body to object
            var result = JsonConvert.DeserializeObject(responseBody);
        }
    }
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'x-access-key' => 'eb2f724d-e7da-47f7-91a9-36fa3454796e',
      'x-secret-key' => '2a3f9689-cfb5-540c-b525-0ff6dd2facd9'
    }
    
    result = RestClient.patch 'https://{environment}.doxai.co/{basePath}/ievapi/iev',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'x-access-key': 'eb2f724d-e7da-47f7-91a9-36fa3454796e',
      'x-secret-key': '2a3f9689-cfb5-540c-b525-0ff6dd2facd9'
    }
    
    r = requests.patch('https://{environment}.doxai.co/{basePath}/ievapi/iev', headers = headers)
    
    print(r.json())
    
    
    const inputBody = '{
      "givenName": "John",
      "familyName": "smith",
      "email": "xxx@example.com",
      "kycVerificationRequired": "true",
      "generateReport": "true",
      "requesterName": "David smith",
      "requesterEmail": "xxx@example.com",
      "abn": "123SDJHG65326",
      "companyName": "Lakeba",
      "reason": "For the employment verification",
      "privacyPolicy": "https://example.com/privacy-policy",
      "verificationType": "incomeCurrent,incomeHistory,employeeCurrent,employeeHistory,lodgement,super",
      "sendEmailNotification": "true",
      "requestId": "6f5b9ef7-d37f-43ae-a2a6-6d5cfxxx8ae6",
      "cancel": "true",
      "url": ""
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'x-access-key':'eb2f724d-e7da-47f7-91a9-36fa3454796e',
      'x-secret-key':'2a3f9689-cfb5-540c-b525-0ff6dd2facd9'
    };
    
    fetch('https://{environment}.doxai.co/{basePath}/ievapi/iev',
    {
      method: 'PATCH',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    <?php
    
    require 'vendor/autoload.php';
    
    $headers = array(
        'Content-Type' => 'application/json',
        'Accept' => 'application/json',
        'x-access-key' => 'eb2f724d-e7da-47f7-91a9-36fa3454796e',
        'x-secret-key' => '2a3f9689-cfb5-540c-b525-0ff6dd2facd9',
    );
    
    $client = new \GuzzleHttp\Client();
    
    // Define array of request body.
    $request_body = array();
    
    try {
        $response = $client->request('PATCH','https://{environment}.doxai.co/{basePath}/ievapi/iev', array(
            'headers' => $headers,
            'json' => $request_body,
           )
        );
        print_r($response->getBody()->getContents());
     }
     catch (\GuzzleHttp\Exception\BadResponseException $e) {
        // handle exception or api errors.
        print_r($e->getMessage());
     }
    
     // ...
    
    
    URL obj = new URL("https://{environment}.doxai.co/{basePath}/ievapi/iev");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("PATCH");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "x-access-key": []string{"eb2f724d-e7da-47f7-91a9-36fa3454796e"},
            "x-secret-key": []string{"2a3f9689-cfb5-540c-b525-0ff6dd2facd9"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("PATCH", "https://{environment}.doxai.co/{basePath}/ievapi/iev", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    PATCH /ievapi/iev

    Employee Verification

    Body parameter

    {
      "givenName": "John",
      "familyName": "smith",
      "email": "xxx@example.com",
      "kycVerificationRequired": "true",
      "generateReport": "true",
      "requesterName": "David smith",
      "requesterEmail": "xxx@example.com",
      "abn": "123SDJHG65326",
      "companyName": "Lakeba",
      "reason": "For the employment verification",
      "privacyPolicy": "https://example.com/privacy-policy",
      "verificationType": "incomeCurrent,incomeHistory,employeeCurrent,employeeHistory,lodgement,super",
      "sendEmailNotification": "true",
      "requestId": "6f5b9ef7-d37f-43ae-a2a6-6d5cfxxx8ae6",
      "cancel": "true",
      "url": ""
    }
    

    Parameters

    Name In Type Required Description
    x-access-key header string true none
    x-secret-key header string true none
    body body object true none
    » givenName body string false First name of the employee
    » familyName body string false Last name of the employee
    » email body string false Employee email
    » kycVerificationRequired body boolean false kyc verification required or not
    » generateReport body boolean false To enable final report generation. Default value is false
    » requesterName body string false Name of the Requestor
    » requesterEmail body string false Requestor email
    » abn body string false ABN of a company
    » companyName body string false name of the company
    » reason body string false reason for the verification
    » privacyPolicy body string false Privacy policy of the company
    » verificationType body boolean false There are six verification types - incomeCurrent, incomeHistory, employeeCurrent, employeeHistory, lodgement, super
    » sendEmailNotification body boolean false Email notification required or not
    » requestId body string false requestId for the iev request
    » cancel body boolean false Whether to cancel the request or not
    » url body string false Url is used for custom hosted webapp.By Default the live url will be used.

    Example responses

    200 Response

    {
      "msg": "IEV request edited successfully",
      "data": {
        "requestId": "xxxx",
        "redirectUrl": "https://iev.doxai.co/verify-request?token=S6tm.dfyLkUCn2C&idv=true&requestId=6f5b9ef7-d37f-43ae-a2a6-6d5cxxxxxae6"
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successfull Operation Inline
    400 Bad Request Bad Request Inline
    401 Unauthorized Bad Request Inline
    500 Internal Server Error Failed Operation Inline

    Response Schema

    Status Code 200

    Name Type Required Restrictions Description
    » msg string false none none
    » data object false none none
    »» requestId string false none requestId for unique identification
    »» redirectUrl string false none redirection url to employee portal

    Status Code 400

    Name Type Required Restrictions Description
    » msg string false none none

    Status Code 401

    Name Type Required Restrictions Description
    » msg string false none none

    Status Code 500

    Name Type Required Restrictions Description
    » msg string false none none

    Delete request

    Code samples

    # You can also use wget
    curl -X DELETE https://{environment}.doxai.co/{basePath}/ievapi/iev \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'x-access-key: eb2f724d-e7da-47f7-91a9-36fa3454796e' \
      -H 'x-secret-key: 2a3f9689-cfb5-540c-b525-0ff6dd2facd9'
    
    
    DELETE https://{environment}.doxai.co/{basePath}/ievapi/iev HTTP/1.1
    
    Content-Type: application/json
    Accept: application/json
    x-access-key: eb2f724d-e7da-47f7-91a9-36fa3454796e
    x-secret-key: 2a3f9689-cfb5-540c-b525-0ff6dd2facd9
    
    
    using System;
    using System.Collections.Generic;
    using System.Net.Http;
    using System.Net.Http.Headers;
    using System.Text;
    using System.Threading.Tasks;
    using Newtonsoft.Json;
    
    /// <<summary>>
    /// Example of Http Client
    /// <</summary>>
    public class HttpExample
    {
        private HttpClient Client { get; set; }
    
        /// <<summary>>
        /// Setup http client
        /// <</summary>>
        public HttpExample()
        {
          Client = new HttpClient();
        }
    
    
    
    
        /// Make a dummy request
        public async Task MakeDeleteRequest()
        {
          int id = 1;
          string url = "https://{environment}.doxai.co/{basePath}/ievapi/iev";
    
          await DeleteAsync(id, url);
        }
    
        /// Performs a DELETE Request
        public async Task DeleteAsync(int id, string url)
        {
            //Execute DELETE request
            HttpResponseMessage response = await Client.DeleteAsync(url + $"/{id}");
    
            //Return response
            await DeserializeObject(response);
        }
    
        /// Deserialize object from request response
        private async Task DeserializeObject(HttpResponseMessage response)
        {
            //Read body 
            string responseBody = await response.Content.ReadAsStringAsync();
    
            //Deserialize Body to object
            var result = JsonConvert.DeserializeObject(responseBody);
        }
    }
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'x-access-key' => 'eb2f724d-e7da-47f7-91a9-36fa3454796e',
      'x-secret-key' => '2a3f9689-cfb5-540c-b525-0ff6dd2facd9'
    }
    
    result = RestClient.delete 'https://{environment}.doxai.co/{basePath}/ievapi/iev',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'x-access-key': 'eb2f724d-e7da-47f7-91a9-36fa3454796e',
      'x-secret-key': '2a3f9689-cfb5-540c-b525-0ff6dd2facd9'
    }
    
    r = requests.delete('https://{environment}.doxai.co/{basePath}/ievapi/iev', headers = headers)
    
    print(r.json())
    
    
    const inputBody = '{
      "requestId": "35a3114d-d952-4ad7-8f3d-ba6201db3e70"
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'x-access-key':'eb2f724d-e7da-47f7-91a9-36fa3454796e',
      'x-secret-key':'2a3f9689-cfb5-540c-b525-0ff6dd2facd9'
    };
    
    fetch('https://{environment}.doxai.co/{basePath}/ievapi/iev',
    {
      method: 'DELETE',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    <?php
    
    require 'vendor/autoload.php';
    
    $headers = array(
        'Content-Type' => 'application/json',
        'Accept' => 'application/json',
        'x-access-key' => 'eb2f724d-e7da-47f7-91a9-36fa3454796e',
        'x-secret-key' => '2a3f9689-cfb5-540c-b525-0ff6dd2facd9',
    );
    
    $client = new \GuzzleHttp\Client();
    
    // Define array of request body.
    $request_body = array();
    
    try {
        $response = $client->request('DELETE','https://{environment}.doxai.co/{basePath}/ievapi/iev', array(
            'headers' => $headers,
            'json' => $request_body,
           )
        );
        print_r($response->getBody()->getContents());
     }
     catch (\GuzzleHttp\Exception\BadResponseException $e) {
        // handle exception or api errors.
        print_r($e->getMessage());
     }
    
     // ...
    
    
    URL obj = new URL("https://{environment}.doxai.co/{basePath}/ievapi/iev");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("DELETE");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "x-access-key": []string{"eb2f724d-e7da-47f7-91a9-36fa3454796e"},
            "x-secret-key": []string{"2a3f9689-cfb5-540c-b525-0ff6dd2facd9"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("DELETE", "https://{environment}.doxai.co/{basePath}/ievapi/iev", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    DELETE /ievapi/iev

    Employee Verification

    Body parameter

    {
      "requestId": "35a3114d-d952-4ad7-8f3d-ba6201db3e70"
    }
    

    Parameters

    Name In Type Required Description
    x-access-key header string true none
    x-secret-key header string true none
    body body object true none
    » requestId body string false Request ID

    Example responses

    200 Response

    {
      "msg": "IEV request deleted successfully"
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successfull Operation Inline
    400 Bad Request Bad Request Inline
    401 Unauthorized Bad Request Inline
    500 Internal Server Error Failed Operation Inline

    Response Schema

    Status Code 200

    Name Type Required Restrictions Description
    » msg string false none none

    Status Code 400

    Name Type Required Restrictions Description
    » msg string false none none

    Status Code 401

    Name Type Required Restrictions Description
    » msg string false none none

    Status Code 500

    Name Type Required Restrictions Description
    » msg string false none none

    iVerify

    Create a new identity verification request

    Code samples

    # You can also use wget
    curl -X POST https://{environment}.doxai.co/{basePath}/idapi/i-verify/request \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'x-access-key: eb2f724d-e7da-47f7-91a9-36fa3454796e' \
      -H 'x-secret-key: 2a3f9689-cfb5-540c-b525-0ff6dd2facd9'
    
    
    POST https://{environment}.doxai.co/{basePath}/idapi/i-verify/request HTTP/1.1
    
    Content-Type: application/json
    Accept: application/json
    x-access-key: eb2f724d-e7da-47f7-91a9-36fa3454796e
    x-secret-key: 2a3f9689-cfb5-540c-b525-0ff6dd2facd9
    
    
    using System;
    using System.Collections.Generic;
    using System.Net.Http;
    using System.Net.Http.Headers;
    using System.Text;
    using System.Threading.Tasks;
    using Newtonsoft.Json;
    
    /// <<summary>>
    /// Example of Http Client
    /// <</summary>>
    public class HttpExample
    {
        private HttpClient Client { get; set; }
    
        /// <<summary>>
        /// Setup http client
        /// <</summary>>
        public HttpExample()
        {
          Client = new HttpClient();
        }
    
    
        /// Make a dummy request
        public async Task MakePostRequest()
        {
          string url = "https://{environment}.doxai.co/{basePath}/idapi/i-verify/request";
    
    
          await PostAsync(null, url);
    
        }
    
        /// Performs a POST Request
        public async Task PostAsync(undefined content, string url)
        {
            //Serialize Object
            StringContent jsonContent = SerializeObject(content);
    
            //Execute POST request
            HttpResponseMessage response = await Client.PostAsync(url, jsonContent);
        }
    
    
    
        /// Serialize an object to Json
        private StringContent SerializeObject(undefined content)
        {
            //Serialize Object
            string jsonObject = JsonConvert.SerializeObject(content);
    
            //Create Json UTF8 String Content
            return new StringContent(jsonObject, Encoding.UTF8, "application/json");
        }
    
        /// Deserialize object from request response
        private async Task DeserializeObject(HttpResponseMessage response)
        {
            //Read body 
            string responseBody = await response.Content.ReadAsStringAsync();
    
            //Deserialize Body to object
            var result = JsonConvert.DeserializeObject(responseBody);
        }
    }
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'x-access-key' => 'eb2f724d-e7da-47f7-91a9-36fa3454796e',
      'x-secret-key' => '2a3f9689-cfb5-540c-b525-0ff6dd2facd9'
    }
    
    result = RestClient.post 'https://{environment}.doxai.co/{basePath}/idapi/i-verify/request',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'x-access-key': 'eb2f724d-e7da-47f7-91a9-36fa3454796e',
      'x-secret-key': '2a3f9689-cfb5-540c-b525-0ff6dd2facd9'
    }
    
    r = requests.post('https://{environment}.doxai.co/{basePath}/idapi/i-verify/request', headers = headers)
    
    print(r.json())
    
    
    const inputBody = '{
      "requestData": [
        {
          "firstName": "John",
          "middleName": "Allen",
          "lastName": "Smith",
          "emailId": "abc@abc.com",
          "phoneNumber": "8800000000",
          "expiryDate": "2045-10-10",
          "requestorName": "John Smith",
          "requestorEmail": "xxx@example.com",
          "emailNotifications": true,
          "idVerification": [
            {
              "service": null,
              "enabled": null
            }
          ],
          "biometricVerification": [
            {
              "service": null,
              "enabled": null
            }
          ],
          "customTermsAndCondition": "https://example.com",
          "customThankyouPage": "https://example.com/thankyou",
          "includeImagesInReport": true,
          "restrictUploadOption": true,
          "enableSMSNotification": false,
          "iframe": {
            "enabled": true,
            "domains": [
              "https://example.com"
            ]
          },
          "clientName": "Demo Company"
        }
      ]
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'x-access-key':'eb2f724d-e7da-47f7-91a9-36fa3454796e',
      'x-secret-key':'2a3f9689-cfb5-540c-b525-0ff6dd2facd9'
    };
    
    fetch('https://{environment}.doxai.co/{basePath}/idapi/i-verify/request',
    {
      method: 'POST',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    <?php
    
    require 'vendor/autoload.php';
    
    $headers = array(
        'Content-Type' => 'application/json',
        'Accept' => 'application/json',
        'x-access-key' => 'eb2f724d-e7da-47f7-91a9-36fa3454796e',
        'x-secret-key' => '2a3f9689-cfb5-540c-b525-0ff6dd2facd9',
    );
    
    $client = new \GuzzleHttp\Client();
    
    // Define array of request body.
    $request_body = array();
    
    try {
        $response = $client->request('POST','https://{environment}.doxai.co/{basePath}/idapi/i-verify/request', array(
            'headers' => $headers,
            'json' => $request_body,
           )
        );
        print_r($response->getBody()->getContents());
     }
     catch (\GuzzleHttp\Exception\BadResponseException $e) {
        // handle exception or api errors.
        print_r($e->getMessage());
     }
    
     // ...
    
    
    URL obj = new URL("https://{environment}.doxai.co/{basePath}/idapi/i-verify/request");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "x-access-key": []string{"eb2f724d-e7da-47f7-91a9-36fa3454796e"},
            "x-secret-key": []string{"2a3f9689-cfb5-540c-b525-0ff6dd2facd9"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://{environment}.doxai.co/{basePath}/idapi/i-verify/request", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /idapi/i-verify/request

    Submit a request for identity verification

    Body parameter

    {
      "requestData": [
        {
          "firstName": "John",
          "middleName": "Allen",
          "lastName": "Smith",
          "emailId": "abc@abc.com",
          "phoneNumber": "8800000000",
          "expiryDate": "2045-10-10",
          "requestorName": "John Smith",
          "requestorEmail": "xxx@example.com",
          "emailNotifications": true,
          "idVerification": [
            {
              "service": null,
              "enabled": null
            }
          ],
          "biometricVerification": [
            {
              "service": null,
              "enabled": null
            }
          ],
          "customTermsAndCondition": "https://example.com",
          "customThankyouPage": "https://example.com/thankyou",
          "includeImagesInReport": true,
          "restrictUploadOption": true,
          "enableSMSNotification": false,
          "iframe": {
            "enabled": true,
            "domains": [
              "https://example.com"
            ]
          },
          "clientName": "Demo Company"
        }
      ]
    }
    

    Parameters

    Name In Type Required Description
    x-access-key header string true none
    x-secret-key header string true none
    body body object true none
    » requestData body [iVerifyRequest] false none
    »» firstName body string false First name of the individual
    »» middleName body string false Middle name of the individual
    »» lastName body string false Last name of the individual
    »» emailId body string false Email address of the individual
    »» phoneNumber body string false Phone number of the individual
    »» expiryDate body string(date) false Expiry date for the verification request
    »» requestorName body string false The name of the requestor.
    »» requestorEmail body string false Requestor email must be a valid email.
    »» emailNotifications body bool false To enable email notifications
    »» idVerification body [anyOf] false Medicare can be used as ID proof when combined with a driver’s licence or a passport. However, a Medicare card alone is not accepted as valid ID. It must be paired with either a driver’s licence or a passport.
    »»» anonymous body license false none
    »»»» service body string false Validate Australian license
    »»»» enabled body bool false To enable the service set value as true.
    »»» anonymous body passport false none
    »»»» service body string false Validate Australian Passport
    »»»» enabled body bool false To enable the service set value as true.
    »»» anonymous body medicare false none
    »»»» service body string false Validate Australian Medicare
    »»»» enabled body bool false To enable the service set value as true.
    »» biometricVerification body [anyOf] false Array of biometric verification service
    »»» service body string false The name of the field in smart pdf
    »»» enabled body bool false To enable the service set value as true.
    »» customTermsAndCondition body string false If url is provided the content in the url will be shown in iframe
    »» customThankyouPage body string false If url is provided the content in the url will be shown in iframe
    »» includeImagesInReport body bool false To enable images in report
    »» restrictUploadOption body bool false To disable upload from device
    »» enableSMSNotification body bool false To enable SMS notifications
    »» iframe body object false none
    »»» enabled body string false To enable the iframe validations
    »»» domains body array false Domains allowed for the iframe
    »» clientName body string false If clientName is provided the organization name will not be used for email and guest flows

    Example responses

    200 Response

    [
      {
        "msg": "Request successful",
        "data": {
          "hasError": false,
          "msg": "Request Success",
          "requestId": "dae00d9a-0d72-4cd4-92dd-54aad1c458ce",
          "link": "https://id.doxai.co/auth?requestId=dae00d9a-0d72-4cd4-92dd-54aad1c458ce&uniqueId=13057c7a-dec7-4e1b-9a15-270ac57b363b&type=i-verify"
        }
      }
    ]
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation Inline
    400 Bad Request Bad Request Inline
    401 Unauthorized Bad Request Inline
    500 Internal Server Error Failed Operation Inline

    Response Schema

    Status Code 400

    Name Type Required Restrictions Description
    » msg string false none Error message indicating a bad request

    Status Code 401

    Name Type Required Restrictions Description
    » msg string false none none

    Status Code 500

    Name Type Required Restrictions Description
    » msg string false none none

    iBiometric

    Create a new biometric verification request

    Code samples

    # You can also use wget
    curl -X POST https://{environment}.doxai.co/{basePath}/idapi/i-biometric/request \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'x-access-key: eb2f724d-e7da-47f7-91a9-36fa3454796e' \
      -H 'x-secret-key: 2a3f9689-cfb5-540c-b525-0ff6dd2facd9'
    
    
    POST https://{environment}.doxai.co/{basePath}/idapi/i-biometric/request HTTP/1.1
    
    Content-Type: application/json
    Accept: application/json
    x-access-key: eb2f724d-e7da-47f7-91a9-36fa3454796e
    x-secret-key: 2a3f9689-cfb5-540c-b525-0ff6dd2facd9
    
    
    using System;
    using System.Collections.Generic;
    using System.Net.Http;
    using System.Net.Http.Headers;
    using System.Text;
    using System.Threading.Tasks;
    using Newtonsoft.Json;
    
    /// <<summary>>
    /// Example of Http Client
    /// <</summary>>
    public class HttpExample
    {
        private HttpClient Client { get; set; }
    
        /// <<summary>>
        /// Setup http client
        /// <</summary>>
        public HttpExample()
        {
          Client = new HttpClient();
        }
    
    
        /// Make a dummy request
        public async Task MakePostRequest()
        {
          string url = "https://{environment}.doxai.co/{basePath}/idapi/i-biometric/request";
    
    
          await PostAsync(null, url);
    
        }
    
        /// Performs a POST Request
        public async Task PostAsync(undefined content, string url)
        {
            //Serialize Object
            StringContent jsonContent = SerializeObject(content);
    
            //Execute POST request
            HttpResponseMessage response = await Client.PostAsync(url, jsonContent);
        }
    
    
    
        /// Serialize an object to Json
        private StringContent SerializeObject(undefined content)
        {
            //Serialize Object
            string jsonObject = JsonConvert.SerializeObject(content);
    
            //Create Json UTF8 String Content
            return new StringContent(jsonObject, Encoding.UTF8, "application/json");
        }
    
        /// Deserialize object from request response
        private async Task DeserializeObject(HttpResponseMessage response)
        {
            //Read body 
            string responseBody = await response.Content.ReadAsStringAsync();
    
            //Deserialize Body to object
            var result = JsonConvert.DeserializeObject(responseBody);
        }
    }
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'x-access-key' => 'eb2f724d-e7da-47f7-91a9-36fa3454796e',
      'x-secret-key' => '2a3f9689-cfb5-540c-b525-0ff6dd2facd9'
    }
    
    result = RestClient.post 'https://{environment}.doxai.co/{basePath}/idapi/i-biometric/request',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'x-access-key': 'eb2f724d-e7da-47f7-91a9-36fa3454796e',
      'x-secret-key': '2a3f9689-cfb5-540c-b525-0ff6dd2facd9'
    }
    
    r = requests.post('https://{environment}.doxai.co/{basePath}/idapi/i-biometric/request', headers = headers)
    
    print(r.json())
    
    
    const inputBody = '{
      "requestData": [
        {
          "firstName": "John",
          "middleName": "Allen",
          "lastName": "Smith",
          "emailId": "abc@abc.com",
          "phoneNumber": "8800000000",
          "expiryDate": "2045-10-10",
          "requestorName": "John Smith",
          "requestorEmail": "xxx@example.com",
          "emailNotifications": true,
          "customThankyouPage": "https://example.com/thankyou",
          "includeImagesInReport": true,
          "restrictUploadOption": true,
          "enableSMSNotification": false,
          "idVerification": [
            {
              "service": null,
              "enabled": null
            }
          ],
          "biometricVerification": [
            {
              "service": null,
              "enabled": null
            }
          ],
          "customTermsAndCondition": "https://example.com",
          "iframe": {
            "enabled": true,
            "domains": [
              "https://example.com"
            ]
          },
          "clientName": "Demo Company"
        }
      ]
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'x-access-key':'eb2f724d-e7da-47f7-91a9-36fa3454796e',
      'x-secret-key':'2a3f9689-cfb5-540c-b525-0ff6dd2facd9'
    };
    
    fetch('https://{environment}.doxai.co/{basePath}/idapi/i-biometric/request',
    {
      method: 'POST',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    <?php
    
    require 'vendor/autoload.php';
    
    $headers = array(
        'Content-Type' => 'application/json',
        'Accept' => 'application/json',
        'x-access-key' => 'eb2f724d-e7da-47f7-91a9-36fa3454796e',
        'x-secret-key' => '2a3f9689-cfb5-540c-b525-0ff6dd2facd9',
    );
    
    $client = new \GuzzleHttp\Client();
    
    // Define array of request body.
    $request_body = array();
    
    try {
        $response = $client->request('POST','https://{environment}.doxai.co/{basePath}/idapi/i-biometric/request', array(
            'headers' => $headers,
            'json' => $request_body,
           )
        );
        print_r($response->getBody()->getContents());
     }
     catch (\GuzzleHttp\Exception\BadResponseException $e) {
        // handle exception or api errors.
        print_r($e->getMessage());
     }
    
     // ...
    
    
    URL obj = new URL("https://{environment}.doxai.co/{basePath}/idapi/i-biometric/request");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "x-access-key": []string{"eb2f724d-e7da-47f7-91a9-36fa3454796e"},
            "x-secret-key": []string{"2a3f9689-cfb5-540c-b525-0ff6dd2facd9"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://{environment}.doxai.co/{basePath}/idapi/i-biometric/request", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /idapi/i-biometric/request

    Submit a request for biometric verification

    Body parameter

    {
      "requestData": [
        {
          "firstName": "John",
          "middleName": "Allen",
          "lastName": "Smith",
          "emailId": "abc@abc.com",
          "phoneNumber": "8800000000",
          "expiryDate": "2045-10-10",
          "requestorName": "John Smith",
          "requestorEmail": "xxx@example.com",
          "emailNotifications": true,
          "customThankyouPage": "https://example.com/thankyou",
          "includeImagesInReport": true,
          "restrictUploadOption": true,
          "enableSMSNotification": false,
          "idVerification": [
            {
              "service": null,
              "enabled": null
            }
          ],
          "biometricVerification": [
            {
              "service": null,
              "enabled": null
            }
          ],
          "customTermsAndCondition": "https://example.com",
          "iframe": {
            "enabled": true,
            "domains": [
              "https://example.com"
            ]
          },
          "clientName": "Demo Company"
        }
      ]
    }
    

    Parameters

    Name In Type Required Description
    x-access-key header string true none
    x-secret-key header string true none
    body body object true none
    » requestData body [iBiometricRequest] false none
    »» firstName body string false First name of the individual
    »» middleName body string false Middle name of the individual
    »» lastName body string false Last name of the individual
    »» emailId body string false Email address of the individual
    »» phoneNumber body string false Phone number of the individual
    »» expiryDate body string(date) false Expiry date for the verification request
    »» requestorName body string false The name of the requestor.
    »» requestorEmail body string false Requestor email must be a valid email.
    »» emailNotifications body bool false To enable email notifications
    »» customThankyouPage body string false If url is provided the content in the url will be shown in iframe
    »» includeImagesInReport body bool false To enable images in report
    »» restrictUploadOption body bool false To disable upload from device
    »» enableSMSNotification body bool false To enable SMS notifications
    »» idVerification body [anyOf] false none
    »»» anonymous body license false none
    »»»» service body string false Validate Australian license
    »»»» enabled body bool false To enable the service set value as true.
    »»» anonymous body passport false none
    »»»» service body string false Validate Australian Passport
    »»»» enabled body bool false To enable the service set value as true.
    »» biometricVerification body [anyOf] false Array of biometric verification service
    »»» service body string false The name of the field in smart pdf
    »»» enabled body bool false To enable the service set value as true.
    »» customTermsAndCondition body string false If url is provided the content in the url will be shown in iframe
    »» iframe body object false none
    »»» enabled body string false To enable the iframe validations
    »»» domains body array false Domains allowed for the iframe
    »» clientName body string false If clientName is provided the organization name will not be used for email and guest flows

    Example responses

    200 Response

    [
      {
        "msg": "Request successful",
        "data": {
          "hasError": false,
          "msg": "Request Success",
          "requestId": "dae00d9a-0d72-4cd4-92dd-54aad1c458ce",
          "link": "https://id.doxai.co/auth?requestId=43D5CB23-A228-4BEF-A6BB-E19C42DF2BED&uniqueId=13057c7a-dec7-4e1b-9a15-270ac57b363b&type=i-biometric"
        }
      }
    ]
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation Inline
    400 Bad Request Bad Request Inline
    401 Unauthorized Bad Request Inline
    500 Internal Server Error Failed Operation Inline

    Response Schema

    Status Code 400

    Name Type Required Restrictions Description
    » msg string false none Error message indicating a bad request

    Status Code 401

    Name Type Required Restrictions Description
    » msg string false none none

    Status Code 500

    Name Type Required Restrictions Description
    » msg string false none none

    AML/CTF Screening

    Aml Pep

    Code samples

    # You can also use wget
    curl -X POST https://{environment}.doxai.co/{basePath}/aml/pep \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'x-access-key: ea050af8-66d4-44b7-a201-dc059fb131b1' \
      -H 'x-secret-key: 66e12524-a28d-5b80-b471-881e632a8bde'
    
    
    POST https://{environment}.doxai.co/{basePath}/aml/pep HTTP/1.1
    
    Content-Type: application/json
    Accept: application/json
    x-access-key: ea050af8-66d4-44b7-a201-dc059fb131b1
    x-secret-key: 66e12524-a28d-5b80-b471-881e632a8bde
    
    
    using System;
    using System.Collections.Generic;
    using System.Net.Http;
    using System.Net.Http.Headers;
    using System.Text;
    using System.Threading.Tasks;
    using Newtonsoft.Json;
    
    /// <<summary>>
    /// Example of Http Client
    /// <</summary>>
    public class HttpExample
    {
        private HttpClient Client { get; set; }
    
        /// <<summary>>
        /// Setup http client
        /// <</summary>>
        public HttpExample()
        {
          Client = new HttpClient();
        }
    
    
        /// Make a dummy request
        public async Task MakePostRequest()
        {
          string url = "https://{environment}.doxai.co/{basePath}/aml/pep";
    
    
          await PostAsync(null, url);
    
        }
    
        /// Performs a POST Request
        public async Task PostAsync(undefined content, string url)
        {
            //Serialize Object
            StringContent jsonContent = SerializeObject(content);
    
            //Execute POST request
            HttpResponseMessage response = await Client.PostAsync(url, jsonContent);
        }
    
    
    
        /// Serialize an object to Json
        private StringContent SerializeObject(undefined content)
        {
            //Serialize Object
            string jsonObject = JsonConvert.SerializeObject(content);
    
            //Create Json UTF8 String Content
            return new StringContent(jsonObject, Encoding.UTF8, "application/json");
        }
    
        /// Deserialize object from request response
        private async Task DeserializeObject(HttpResponseMessage response)
        {
            //Read body 
            string responseBody = await response.Content.ReadAsStringAsync();
    
            //Deserialize Body to object
            var result = JsonConvert.DeserializeObject(responseBody);
        }
    }
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'x-access-key' => 'ea050af8-66d4-44b7-a201-dc059fb131b1',
      'x-secret-key' => '66e12524-a28d-5b80-b471-881e632a8bde'
    }
    
    result = RestClient.post 'https://{environment}.doxai.co/{basePath}/aml/pep',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'x-access-key': 'ea050af8-66d4-44b7-a201-dc059fb131b1',
      'x-secret-key': '66e12524-a28d-5b80-b471-881e632a8bde'
    }
    
    r = requests.post('https://{environment}.doxai.co/{basePath}/aml/pep', headers = headers)
    
    print(r.json())
    
    
    const inputBody = '{
      "birthYear": "1989",
      "fuzziness": "1",
      "first_name": "John",
      "middle_names": "Allen",
      "last_name": "Smith"
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'x-access-key':'ea050af8-66d4-44b7-a201-dc059fb131b1',
      'x-secret-key':'66e12524-a28d-5b80-b471-881e632a8bde'
    };
    
    fetch('https://{environment}.doxai.co/{basePath}/aml/pep',
    {
      method: 'POST',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    <?php
    
    require 'vendor/autoload.php';
    
    $headers = array(
        'Content-Type' => 'application/json',
        'Accept' => 'application/json',
        'x-access-key' => 'ea050af8-66d4-44b7-a201-dc059fb131b1',
        'x-secret-key' => '66e12524-a28d-5b80-b471-881e632a8bde',
    );
    
    $client = new \GuzzleHttp\Client();
    
    // Define array of request body.
    $request_body = array();
    
    try {
        $response = $client->request('POST','https://{environment}.doxai.co/{basePath}/aml/pep', array(
            'headers' => $headers,
            'json' => $request_body,
           )
        );
        print_r($response->getBody()->getContents());
     }
     catch (\GuzzleHttp\Exception\BadResponseException $e) {
        // handle exception or api errors.
        print_r($e->getMessage());
     }
    
     // ...
    
    
    URL obj = new URL("https://{environment}.doxai.co/{basePath}/aml/pep");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "x-access-key": []string{"ea050af8-66d4-44b7-a201-dc059fb131b1"},
            "x-secret-key": []string{"66e12524-a28d-5b80-b471-881e632a8bde"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://{environment}.doxai.co/{basePath}/aml/pep", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /aml/pep

    Validate Customer compliance

    Body parameter

    {
      "birthYear": "1989",
      "fuzziness": "1",
      "first_name": "John",
      "middle_names": "Allen",
      "last_name": "Smith"
    }
    

    Parameters

    Name In Type Required Description
    x-access-key header string true none
    x-secret-key header string true none
    body body object true none
    » birthYear body string(date) false BirthYear must be in YYYY format
    » fuzziness body string false From 0 - Exact Match to 1 - Any match, including spelling and phonetics, increment of 0.1
    » first_name body string false First Name of a person
    » middle_names body string false Middle name of a person
    » last_name body string false Last name of a person

    Example responses

    200 Response

    {
      "msg": "Request Success",
      "data": {
        "code": "200",
        "status": "success",
        "content": {
          "data": {
            "ref": "1542342924-fewyv3Gc",
            "searcher_id": "4901",
            "assignee_id": "4901",
            "filters": {},
            "searcher": {},
            "assignee": {},
            "hits": [
              {}
            ],
            "tags": [
              "string"
            ],
            "match_status": "potential_match",
            "risk_level": "unknown",
            "search_term": "John Allen Smith",
            "submitted_term": "John Allen Smith",
            "client_ref": "APIKEY",
            "total_hits": "4",
            "updated_at": "2017-01-01 16:29:13",
            "created_at": "2017-01-01 16:29:13",
            "limit": "100",
            "offset": "0"
          }
        }
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successfull Operation validateAml
    400 Bad Request Bad Request Inline
    401 Unauthorized Bad Request Inline
    500 Internal Server Error Failed Operation Inline

    Response Schema

    Status Code 400

    Name Type Required Restrictions Description
    » msg string false none none

    Status Code 401

    Name Type Required Restrictions Description
    » msg string false none none

    Status Code 500

    Name Type Required Restrictions Description
    » msg string false none none

    Aml Plus

    Code samples

    # You can also use wget
    curl -X POST https://{environment}.doxai.co/{basePath}/aml/plus \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'x-access-key: 6bda96d7-a033-444b-b55b-24bb1ede08ac' \
      -H 'x-secret-key: 2b407347-24ae-5bae-8398-c756514dbec7'
    
    
    POST https://{environment}.doxai.co/{basePath}/aml/plus HTTP/1.1
    
    Content-Type: application/json
    Accept: application/json
    x-access-key: 6bda96d7-a033-444b-b55b-24bb1ede08ac
    x-secret-key: 2b407347-24ae-5bae-8398-c756514dbec7
    
    
    using System;
    using System.Collections.Generic;
    using System.Net.Http;
    using System.Net.Http.Headers;
    using System.Text;
    using System.Threading.Tasks;
    using Newtonsoft.Json;
    
    /// <<summary>>
    /// Example of Http Client
    /// <</summary>>
    public class HttpExample
    {
        private HttpClient Client { get; set; }
    
        /// <<summary>>
        /// Setup http client
        /// <</summary>>
        public HttpExample()
        {
          Client = new HttpClient();
        }
    
    
        /// Make a dummy request
        public async Task MakePostRequest()
        {
          string url = "https://{environment}.doxai.co/{basePath}/aml/plus";
    
    
          await PostAsync(null, url);
    
        }
    
        /// Performs a POST Request
        public async Task PostAsync(undefined content, string url)
        {
            //Serialize Object
            StringContent jsonContent = SerializeObject(content);
    
            //Execute POST request
            HttpResponseMessage response = await Client.PostAsync(url, jsonContent);
        }
    
    
    
        /// Serialize an object to Json
        private StringContent SerializeObject(undefined content)
        {
            //Serialize Object
            string jsonObject = JsonConvert.SerializeObject(content);
    
            //Create Json UTF8 String Content
            return new StringContent(jsonObject, Encoding.UTF8, "application/json");
        }
    
        /// Deserialize object from request response
        private async Task DeserializeObject(HttpResponseMessage response)
        {
            //Read body 
            string responseBody = await response.Content.ReadAsStringAsync();
    
            //Deserialize Body to object
            var result = JsonConvert.DeserializeObject(responseBody);
        }
    }
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'x-access-key' => '6bda96d7-a033-444b-b55b-24bb1ede08ac',
      'x-secret-key' => '2b407347-24ae-5bae-8398-c756514dbec7'
    }
    
    result = RestClient.post 'https://{environment}.doxai.co/{basePath}/aml/plus',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'x-access-key': '6bda96d7-a033-444b-b55b-24bb1ede08ac',
      'x-secret-key': '2b407347-24ae-5bae-8398-c756514dbec7'
    }
    
    r = requests.post('https://{environment}.doxai.co/{basePath}/aml/plus', headers = headers)
    
    print(r.json())
    
    
    const inputBody = '{
      "birthYear": "1989",
      "fuzziness": "1",
      "first_name": "John",
      "middle_names": "Allen",
      "last_name": "Smith"
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'x-access-key':'6bda96d7-a033-444b-b55b-24bb1ede08ac',
      'x-secret-key':'2b407347-24ae-5bae-8398-c756514dbec7'
    };
    
    fetch('https://{environment}.doxai.co/{basePath}/aml/plus',
    {
      method: 'POST',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    <?php
    
    require 'vendor/autoload.php';
    
    $headers = array(
        'Content-Type' => 'application/json',
        'Accept' => 'application/json',
        'x-access-key' => '6bda96d7-a033-444b-b55b-24bb1ede08ac',
        'x-secret-key' => '2b407347-24ae-5bae-8398-c756514dbec7',
    );
    
    $client = new \GuzzleHttp\Client();
    
    // Define array of request body.
    $request_body = array();
    
    try {
        $response = $client->request('POST','https://{environment}.doxai.co/{basePath}/aml/plus', array(
            'headers' => $headers,
            'json' => $request_body,
           )
        );
        print_r($response->getBody()->getContents());
     }
     catch (\GuzzleHttp\Exception\BadResponseException $e) {
        // handle exception or api errors.
        print_r($e->getMessage());
     }
    
     // ...
    
    
    URL obj = new URL("https://{environment}.doxai.co/{basePath}/aml/plus");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "x-access-key": []string{"6bda96d7-a033-444b-b55b-24bb1ede08ac"},
            "x-secret-key": []string{"2b407347-24ae-5bae-8398-c756514dbec7"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://{environment}.doxai.co/{basePath}/aml/plus", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /aml/plus

    Validate Adverse Media and Watchlists

    Body parameter

    {
      "birthYear": "1989",
      "fuzziness": "1",
      "first_name": "John",
      "middle_names": "Allen",
      "last_name": "Smith"
    }
    

    Parameters

    Name In Type Required Description
    x-access-key header string true none
    x-secret-key header string true none
    body body object true none
    » birthYear body string(date) false BirthYear must be in YYYY format
    » fuzziness body string false From 0 - Exact Match to 1 - Any match, including spelling and phonetics, increment of 0.1
    » first_name body string false First Name of a person
    » middle_names body string false Middle name of a person
    » last_name body string false Last name of a person

    Example responses

    200 Response

    {
      "msg": "Request Success",
      "data": {
        "code": "200",
        "status": "success",
        "content": {
          "data": {
            "ref": "1542342924-fewyv3Gc",
            "searcher_id": "4901",
            "assignee_id": "4901",
            "filters": {},
            "searcher": {},
            "assignee": {},
            "hits": [
              {}
            ],
            "tags": [
              "string"
            ],
            "match_status": "potential_match",
            "risk_level": "unknown",
            "search_term": "John Allen Smith",
            "submitted_term": "John Allen Smith",
            "client_ref": "APIKEY",
            "total_hits": "4",
            "updated_at": "2017-01-01 16:29:13",
            "created_at": "2017-01-01 16:29:13",
            "limit": "100",
            "offset": "0"
          }
        }
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successfull Operation validateAmlPlus
    400 Bad Request Bad Request Inline
    401 Unauthorized Bad Request Inline
    500 Internal Server Error Failed Operation Inline

    Response Schema

    Status Code 400

    Name Type Required Restrictions Description
    » msg string false none none

    Status Code 401

    Name Type Required Restrictions Description
    » msg string false none none

    Status Code 500

    Name Type Required Restrictions Description
    » msg string false none none

    Schemas

    OCRInvoice

    {
      "msg": "Request Success",
      "data": {
        "companyName": "Power water",
        "utilityType": "water",
        "accountType": "Personal",
        "billerCode": "7000",
        "billerRef": "11111",
        "state": "NSW",
        "postCode": "0801",
        "amount": "$30",
        "amountSybol": "$"
      }
    }
    
    

    Properties

    Name Type Required Restrictions Description
    msg string false none none
    data object false none none
    » companyName string false none none
    » utilityType string false none none
    » accountType string false none none
    » billerCode string false none none
    » billerRef string false none none
    » state string false none none
    » postCode string false none none
    » amount string false none none
    » amountSybol string false none none

    OCRDrivingLicense

    {
      "msg": "Request Success",
      "data": {
        "name": "Benjamin",
        "middleName": "Franklin",
        "surname": "James",
        "address": "Unit 1 LANGLEY NSW 2147",
        "licenseNumber": "00000000",
        "stateIssue": "NSW",
        "dateOfBirth": "1988-09-26",
        "expiryDate": "2028-09-11",
        "newaddress": "Unit 1 LANGLEY NSW 2147"
      }
    }
    
    

    Properties

    Name Type Required Restrictions Description
    msg string false none none
    data object false none none
    » name string false none none
    » middleName string false none none
    » surname string false none none
    » address string false none none
    » licenseNumber string false none none
    » stateIssue string false none none
    » dateOfBirth string(date) false none none
    » expiryDate string(date) false none none
    » newaddress string false none none

    OCRPassport

    {
      "msg": "Request Success",
      "data": {
        "documentCode": "P",
        "issuingState": "ITA",
        "lastName": "Michael",
        "firstName": "John",
        "documentNumber": "DQS000000",
        "documentNumberCheckDigit": "9",
        "nationality": "ITA",
        "birthDate": "981125",
        "birthDateCheckDigit": "11",
        "sex": "male",
        "expirationDate": "270710",
        "expirationDateCheckDigit": "7",
        "personalNumber": "00000000",
        "personalNumberCheckDigit": "0",
        "compositeCheckDigit": "0"
      }
    }
    
    

    Properties

    Name Type Required Restrictions Description
    msg string false none none
    data object false none none
    » documentCode string false none none
    » issuingState string false none none
    » lastName string false none none
    » firstName string false none none
    » documentNumber string false none none
    » documentNumberCheckDigit string false none none
    » nationality string false none none
    » birthDate string false none none
    » birthDateCheckDigit string false none none
    » sex string false none none
    » expirationDate string false none none
    » expirationDateCheckDigit string false none none
    » personalNumber string false none none
    » personalNumberCheckDigit string false none none
    » compositeCheckDigit string false none none

    OCRMedicare

    {
      "msg": "Request Success",
      "data": {
        "name": "Benjamin",
        "individualReferenceNumber": "2",
        "cardNumber": "00000000",
        "validity": "06/2028"
      }
    }
    
    

    Properties

    Name Type Required Restrictions Description
    msg string false none none
    data object false none none
    » name string false none none
    » individualReferenceNumber string false none none
    » cardNumber string false none none
    » validity string(date) false none none

    faceMatch

    {
      "msg": "Request Success",
      "data": {
        "faceMatched": "true",
        "similarity": 99.01,
        "image1": {
          "result": "The face doesn't match",
          "details": {
            "isFaceCenter": true,
            "isFaceLeft": true,
            "isFaceRight": true,
            "isEyesOpen": false,
            "isWearingEyeGlasses": false,
            "isWearingSunglasses": false,
            "eyesConfidence": 95.71,
            "similarity": 95.71,
            "faceMatched": false,
            "age": {
              "low": null,
              "high": null
            }
          }
        },
        "id": {
          "type": "Driving License",
          "confidence": 86.68
        }
      }
    }
    
    

    Properties

    Name Type Required Restrictions Description
    msg string false none none
    data object false none none
    » faceMatched boolean false none none
    » similarity number false none none
    » image1 object false none none
    »» result string false none none
    »» details object false none none
    »»» isFaceCenter boolean false none none
    »»» isFaceLeft boolean false none none
    »»» isFaceRight boolean false none none
    »»» isEyesOpen boolean false none none
    »»» isWearingEyeGlasses boolean false none none
    »»» isWearingSunglasses boolean false none none
    »»» eyesConfidence number false none none
    »»» similarity number false none none
    »»» faceMatched boolean false none none
    »»» age object false none none
    »»»» low number false none none
    »»»» high number false none none
    » id object false none none
    »» type string false none none
    »» confidence number false none none

    liveMatchEyes

    {
      "msg": "Request Success",
      "data": {
        "faceComparision": "Failed",
        "faceMatched": "false",
        "imageLiveness": "false",
        "idType": "Driving License",
        "idConfidence": 97.12,
        "image1": {
          "result": "The face doesn't match",
          "details": {
            "isFaceCenter": true,
            "isFaceLeft": true,
            "isFaceRight": true,
            "isEyesOpen": false,
            "isWearingEyeGlasses": false,
            "isWearingSunglasses": false,
            "eyesConfidence": 95.71,
            "similarity": 95.71,
            "faceMatched": false,
            "age": {
              "low": null,
              "high": null
            }
          }
        },
        "image2": {
          "result": "The face doesn't match",
          "details": {
            "isFaceCenter": true,
            "isFaceLeft": true,
            "isFaceRight": true,
            "isEyesOpen": false,
            "isWearingEyeGlasses": false,
            "isWearingSunglasses": false,
            "eyesConfidence": 95.71,
            "similarity": 95.71,
            "faceMatched": false,
            "age": {
              "low": null,
              "high": null
            }
          }
        }
      }
    }
    
    

    Properties

    Name Type Required Restrictions Description
    msg string false none none
    data object false none none
    » faceComparision string false none none
    » faceMatched boolean false none none
    » imageLiveness boolean false none none
    » idType string false none none
    » idConfidence number false none none
    » image1 object false none none
    »» result string false none none
    »» details object false none none
    »»» isFaceCenter boolean false none none
    »»» isFaceLeft boolean false none none
    »»» isFaceRight boolean false none none
    »»» isEyesOpen boolean false none none
    »»» isWearingEyeGlasses boolean false none none
    »»» isWearingSunglasses boolean false none none
    »»» eyesConfidence number false none none
    »»» similarity number false none none
    »»» faceMatched boolean false none none
    »»» age object false none none
    »»»» low number false none none
    »»»» high number false none none
    » image2 object false none none
    »» result string false none none
    »» details object false none none
    »»» isFaceCenter boolean false none none
    »»» isFaceLeft boolean false none none
    »»» isFaceRight boolean false none none
    »»» isEyesOpen boolean false none none
    »»» isWearingEyeGlasses boolean false none none
    »»» isWearingSunglasses boolean false none none
    »»» eyesConfidence number false none none
    »»» similarity number false none none
    »»» faceMatched boolean false none none
    »»» age object false none none
    »»»» low number false none none
    »»»» high number false none none

    liveMatchFiveStepEyes

    {
      "msg": "Request Success",
      "data": {
        "faceComparision": "Failed",
        "faceMatched": false,
        "imageLiveness": false,
        "idType": "Driving License",
        "idConfidence": 97.12,
        "image1": {
          "result": "The face doesn't match",
          "details": {
            "isFaceCenter": true,
            "isFaceLeft": true,
            "isFaceRight": true,
            "isEyesOpen": false,
            "isWearingEyeGlasses": false,
            "isWearingSunglasses": false,
            "eyesConfidence": 95.71,
            "similarity": 95.71,
            "faceMatched": false,
            "age": {
              "low": null,
              "high": null
            }
          }
        },
        "image2": {
          "result": "The face doesn't match",
          "details": {
            "isFaceCenter": true,
            "isFaceLeft": true,
            "isFaceRight": true,
            "isEyesOpen": false,
            "isWearingEyeGlasses": false,
            "isWearingSunglasses": false,
            "eyesConfidence": 86.68,
            "age": {
              "low": null,
              "high": null
            }
          }
        },
        "Image3": {
          "result": "The face doesn't match",
          "details": {
            "isFaceCenter": true,
            "isFaceLeft": true,
            "isFaceRight": true,
            "isEyesOpen": false,
            "eyesConfidence": 86.68,
            "age": {
              "low": null,
              "high": null
            }
          }
        },
        "Image4": {
          "result": "string",
          "details": {
            "isFaceCenter": false,
            "isEyesOpen": false,
            "eyesConfidence": 86.68,
            "age": {
              "low": null,
              "high": null
            }
          }
        },
        "Image5": {
          "result": "string",
          "details": {
            "isFaceCenter": true,
            "isFaceLeft": true,
            "isFaceRight": true,
            "isEyesOpen": false,
            "isWearingEyeGlasses": false,
            "isWearingSunglasses": false,
            "eyesConfidence": 95.71,
            "similarity": 95.71,
            "faceMatched": false,
            "age": {
              "low": null,
              "high": null
            }
          }
        }
      }
    }
    
    

    Properties

    Name Type Required Restrictions Description
    msg string false none none
    data object false none none
    » faceComparision string false none none
    » faceMatched boolean false none none
    » imageLiveness boolean false none none
    » idType string false none none
    » idConfidence number false none none
    » image1 object false none none
    »» result string false none none
    »» details object false none none
    »»» isFaceCenter boolean false none none
    »»» isFaceLeft boolean false none none
    »»» isFaceRight boolean false none none
    »»» isEyesOpen boolean false none none
    »»» isWearingEyeGlasses boolean false none none
    »»» isWearingSunglasses boolean false none none
    »»» eyesConfidence number false none none
    »»» similarity number false none none
    »»» faceMatched boolean false none none
    »»» age object false none none
    »»»» low number false none none
    »»»» high number false none none
    » image2 object false none none
    »» result string false none none
    »» details object false none none
    »»» isFaceCenter boolean false none none
    »»» isFaceLeft boolean false none none
    »»» isFaceRight boolean false none none
    »»» isEyesOpen boolean false none none
    »»» isWearingEyeGlasses boolean false none none
    »»» isWearingSunglasses boolean false none none
    »»» eyesConfidence number false none none
    »»» age object false none none
    »»»» low number false none none
    »»»» high number false none none
    » Image3 object false none none
    »» result string false none none
    »» details object false none none
    »»» isFaceCenter boolean false none none
    »»» isFaceLeft boolean false none none
    »»» isFaceRight boolean false none none
    »»» isEyesOpen boolean false none none
    »»» eyesConfidence number false none none
    »»» age object false none none
    »»»» low number false none none
    »»»» high number false none none
    » Image4 object false none none
    »» result string false none none
    »» details object false none none
    »»» isFaceCenter boolean false none none
    »»» isEyesOpen boolean false none none
    »»» eyesConfidence number false none none
    »»» age object false none none
    »»»» low number false none none
    »»»» high number false none none
    » Image5 object false none none
    »» result string false none none
    »» details object false none none
    »»» isFaceCenter boolean false none none
    »»» isFaceLeft boolean false none none
    »»» isFaceRight boolean false none none
    »»» isEyesOpen boolean false none none
    »»» isWearingEyeGlasses boolean false none none
    »»» isWearingSunglasses boolean false none none
    »»» eyesConfidence number false none none
    »»» similarity number false none none
    »»» faceMatched boolean false none none
    »»» age object false none none
    »»»» low number false none none
    »»»» high number false none none

    liveMatchSmile

    {
      "msg": "Request Success",
      "data": {
        "faceComparision": "Failed",
        "faceMatched": "false",
        "imageLiveness": "false",
        "idType": "Driving License",
        "idConfidence": 97.12,
        "image1": {
          "result": "The face doesn't match",
          "details": {
            "isFaceCenter": true,
            "isFaceLeft": true,
            "isFaceRight": true,
            "smilingConfidence": 95.71,
            "similarity": 95.71,
            "faceMatched": false,
            "age": {
              "low": null,
              "high": null
            }
          }
        },
        "image2": {
          "result": "The face doesn't match",
          "details": {
            "isFaceCenter": true,
            "isFaceLeft": true,
            "isFaceRight": true,
            "smilingConfidence": 95.71,
            "similarity": 95.71,
            "faceMatched": false,
            "age": {
              "low": null,
              "high": null
            }
          }
        }
      }
    }
    
    

    Properties

    Name Type Required Restrictions Description
    msg string false none none
    data object false none none
    » faceComparision string false none none
    » faceMatched boolean false none none
    » imageLiveness boolean false none none
    » idType string false none none
    » idConfidence number false none none
    » image1 object false none none
    »» result string false none none
    »» details object false none none
    »»» isFaceCenter boolean false none none
    »»» isFaceLeft boolean false none none
    »»» isFaceRight boolean false none none
    »»» smilingConfidence number false none none
    »»» similarity number false none none
    »»» faceMatched boolean false none none
    »»» age object false none none
    »»»» low number false none none
    »»»» high number false none none
    » image2 object false none none
    »» result string false none none
    »» details object false none none
    »»» isFaceCenter boolean false none none
    »»» isFaceLeft boolean false none none
    »»» isFaceRight boolean false none none
    »»» smilingConfidence number false none none
    »»» similarity number false none none
    »»» faceMatched boolean false none none
    »»» age object false none none
    »»»» low number false none none
    »»»» high number false none none

    liveMatchFiveStepSmile

    {
      "msg": "Request Success",
      "data": {
        "faceComparision": "Failed",
        "faceMatched": false,
        "imageLiveness": false,
        "idType": "Driving License",
        "idConfidence": 97.12,
        "image1": {
          "result": "The face doesn't match",
          "details": {
            "isFaceCenter": true,
            "isFaceLeft": true,
            "isFaceRight": true,
            "smilingConfidence": 95.71,
            "similarity": 95.71,
            "faceMatched": false,
            "age": {
              "low": null,
              "high": null
            }
          }
        },
        "image2": {
          "result": "The face doesn't match",
          "details": {
            "isFaceCenter": true,
            "isFaceLeft": true,
            "isFaceRight": true,
            "smilingConfidence": 95.71,
            "similarity": 95.71,
            "faceMatched": false,
            "age": {
              "low": null,
              "high": null
            }
          }
        },
        "image3": {
          "result": "The face doesn't match",
          "details": {
            "isFaceCenter": true,
            "isFaceLeft": true,
            "isFaceRight": true,
            "smilingConfidence": 95.71,
            "similarity": 95.71,
            "faceMatched": false,
            "age": {
              "low": null,
              "high": null
            }
          }
        },
        "image4": {
          "result": "The face doesn't match",
          "details": {
            "isFaceCenter": true,
            "isFaceLeft": true,
            "isFaceRight": true,
            "smilingConfidence": 95.71,
            "similarity": 95.71,
            "faceMatched": false,
            "age": {
              "low": null,
              "high": null
            }
          }
        }
      }
    }
    
    

    Properties

    Name Type Required Restrictions Description
    msg string false none none
    data object false none none
    » faceComparision string false none none
    » faceMatched boolean false none none
    » imageLiveness boolean false none none
    » idType string false none none
    » idConfidence number false none none
    » image1 object false none none
    »» result string false none none
    »» details object false none none
    »»» isFaceCenter boolean false none none
    »»» isFaceLeft boolean false none none
    »»» isFaceRight boolean false none none
    »»» smilingConfidence number false none none
    »»» similarity number false none none
    »»» faceMatched boolean false none none
    »»» age object false none none
    »»»» low number false none none
    »»»» high number false none none
    » image2 object false none none
    »» result string false none none
    »» details object false none none
    »»» isFaceCenter boolean false none none
    »»» isFaceLeft boolean false none none
    »»» isFaceRight boolean false none none
    »»» smilingConfidence number false none none
    »»» similarity number false none none
    »»» faceMatched boolean false none none
    »»» age object false none none
    »»»» low number false none none
    »»»» high number false none none
    » image3 object false none none
    »» result string false none none
    »» details object false none none
    »»» isFaceCenter boolean false none none
    »»» isFaceLeft boolean false none none
    »»» isFaceRight boolean false none none
    »»» smilingConfidence number false none none
    »»» similarity number false none none
    »»» faceMatched boolean false none none
    »»» age object false none none
    »»»» low number false none none
    »»»» high number false none none
    » image4 object false none none
    »» result string false none none
    »» details object false none none
    »»» isFaceCenter boolean false none none
    »»» isFaceLeft boolean false none none
    »»» isFaceRight boolean false none none
    »»» smilingConfidence number false none none
    »»» similarity number false none none
    »»» faceMatched boolean false none none
    »»» age object false none none
    »»»» low number false none none
    »»»» high number false none none

    redact

    {
      "msg": "File Uploading has been initiated",
      "data": {
        "requestId": "fe25db69-7ef0-4054-92ef-2ea6e5b4b130"
      }
    }
    
    

    Properties

    Name Type Required Restrictions Description
    msg string false none none
    data object false none none
    » requestId string false none none

    detail

    {
      "message": "Request success",
      "data": {
        "redactionDetails": {
          "url": "https://doxaistag.blob.core.windows.net/redact/fe25db69-7ef0-4054-92ef-2ea6e5b4b130.pdf",
          "fileName": "vodafone.pdf",
          "events": "completed",
          "msg": "File processed successfully",
          "originalFileUrl": "https://doxaistag.blob.core.windows.net/redact/fe25db69-7ef0-4054-92ef-2ea6e5b4b130.pdf",
          "requestId": "76b4562e-dedf-407c-a454-39bd4512aac5"
        }
      }
    }
    
    

    Properties

    Name Type Required Restrictions Description
    message string false none none
    data object false none none
    » redactionDetails object false none none
    »» url string false none none
    »» fileName string false none none
    »» events string false none none
    »» msg string false none none
    »» originalFileUrl string false none none
    »» requestId UUID false none none

    centreLinkCardV1

    {
      "msg": "Request Success",
      "data": {
        "VerifyDocumentResult": {
          "VerificationResultCode": "P",
          "VerificationRequestNumber": "000000",
          "OriginatingAgencyCode": "000000",
          "ActivityId": "000000",
          "attributes": {
            "i:type": "CentrelinkResponse"
          }
        }
      }
    }
    
    

    Properties

    Name Type Required Restrictions Description
    msg string false none none
    data object false none none
    » VerifyDocumentResult object false none none
    »» VerificationResultCode string false none A value of P (Pass), F (Fail), D (Document Error), S (Server Error)
    »» VerificationRequestNumber string false none none
    »» OriginatingAgencyCode string false none none
    »» ActivityId string false none none
    »» attributes object false none none
    »»» i:type string false none none

    centreLinkCardV2

    {
      "msg": "Request Success",
      "data": {
        "VerifyDocumentResult": {
          "VerificationResultCode": "P",
          "VerificationRequestNumber": "000000",
          "OriginatingAgencyCode": "000000",
          "ActivityId": "000000",
          "attributes": {
            "i:type": "CentrelinkResponse"
          }
        }
      }
    }
    
    

    Properties

    Name Type Required Restrictions Description
    msg string false none none
    data object false none none
    » VerifyDocumentResult object false none none
    »» VerificationResultCode string false none A value of P (Pass), F (Fail), D (Document Error), S (Server Error)
    »» VerificationRequestNumber string false none none
    »» OriginatingAgencyCode string false none none
    »» ActivityId string false none none
    »» attributes object false none none
    »»» i:type string false none none

    citizenshipV1

    {
      "msg": "Request Success",
      "data": {
        "VerifyDocumentResult": {
          "VerificationResultCode": "P",
          "VerificationRequestNumber": "000000",
          "OriginatingAgencyCode": "000000",
          "ActivityId": "000000",
          "attributes": {
            "i:type": "CitizenshipCertificateResponse"
          }
        }
      }
    }
    
    

    Properties

    Name Type Required Restrictions Description
    msg string false none none
    data object false none none
    » VerifyDocumentResult object false none none
    »» VerificationResultCode string false none A value of P (Pass), F (Fail), D (Document Error), S (Server Error)
    »» VerificationRequestNumber string false none none
    »» OriginatingAgencyCode string false none none
    »» ActivityId string false none none
    »» attributes object false none none
    »»» i:type string false none none

    citizenshipV2

    {
      "msg": "Request Success",
      "data": {
        "VerifyDocumentResult": {
          "VerificationResultCode": "Likely Genuine",
          "VerificationRequestNumber": "000000",
          "OriginatingAgencyCode": "000000",
          "ActivityId": "000000",
          "attributes": {
            "i:type": "CitizenshipCertificateResponse"
          }
        }
      }
    }
    
    

    Properties

    Name Type Required Restrictions Description
    msg string false none none
    data object false none none
    » VerifyDocumentResult object false none none
    »» VerificationResultCode string false none A value of Likely Genuine (Pass), Likely Not Genuine (Fail), Document Error (Document Error), Server Error (Server Error)
    »» VerificationRequestNumber string false none none
    »» OriginatingAgencyCode string false none none
    »» ActivityId string false none none
    »» attributes object false none none
    »»» i:type string false none none

    descentV1

    {
      "msg": "Request Success",
      "data": {
        "VerifyDocumentResult": {
          "VerificationResultCode": "P",
          "VerificationRequestNumber": "000000",
          "OriginatingAgencyCode": "000000",
          "ActivityId": "000000",
          "attributes": {
            "i:type": "DescentResponse"
          }
        }
      }
    }
    
    

    Properties

    Name Type Required Restrictions Description
    msg string false none none
    data object false none none
    » VerifyDocumentResult object false none none
    »» VerificationResultCode string false none A value of P (Pass), F (Fail), D (Document Error), S (Server Error)
    »» VerificationRequestNumber string false none none
    »» OriginatingAgencyCode string false none none
    »» ActivityId string false none none
    »» attributes object false none none
    »»» i:type string false none none

    descentV2

    {
      "msg": "Request Success",
      "data": {
        "VerifyDocumentResult": {
          "VerificationResultCode": "Likely Genuine",
          "VerificationRequestNumber": "000000",
          "OriginatingAgencyCode": "000000",
          "ActivityId": "000000",
          "attributes": {
            "i:type": "DescentResponse"
          }
        }
      }
    }
    
    

    Properties

    Name Type Required Restrictions Description
    msg string false none none
    data object false none none
    » VerifyDocumentResult object false none none
    »» VerificationResultCode string false none A value of Likely Genuine (Pass), Likely Not Genuine (Fail), Document Error (Document Error), Server Error (Server Error)
    »» VerificationRequestNumber string false none none
    »» OriginatingAgencyCode string false none none
    »» ActivityId string false none none
    »» attributes object false none none
    »»» i:type string false none none

    immiCardV1

    {
      "msg": "Request Success",
      "data": {
        "VerifyDocumentResult": {
          "VerificationResultCode": "P",
          "VerificationRequestNumber": "000000",
          "OriginatingAgencyCode": "000000",
          "ActivityId": "000000",
          "attributes": {
            "i:type": "ImmiCardResponse"
          }
        }
      }
    }
    
    

    Properties

    Name Type Required Restrictions Description
    msg string false none none
    data object false none none
    » VerifyDocumentResult object false none none
    »» VerificationResultCode string false none A value of P (Pass), F (Fail), D (Document Error), S (Server Error)
    »» VerificationRequestNumber string false none none
    »» OriginatingAgencyCode string false none none
    »» ActivityId string false none none
    »» attributes object false none none
    »»» i:type string false none none

    immiCardV2

    {
      "msg": "Request Success",
      "data": {
        "VerifyDocumentResult": {
          "VerificationResultCode": "Likely Genuine",
          "VerificationRequestNumber": "000000",
          "OriginatingAgencyCode": "000000",
          "ActivityId": "000000",
          "attributes": {
            "i:type": "ImmiCardResponse"
          }
        }
      }
    }
    
    

    Properties

    Name Type Required Restrictions Description
    msg string false none none
    data object false none none
    » VerifyDocumentResult object false none none
    »» VerificationResultCode string false none A value of Likely Genuine (Pass), Likely Not Genuine (Fail), Document Error (Document Error), Server Error (Server Error)
    »» VerificationRequestNumber string false none none
    »» OriginatingAgencyCode string false none none
    »» ActivityId string false none none
    »» attributes object false none none
    »»» i:type string false none none

    visaV1

    {
      "msg": "Request Success",
      "data": {
        "VerifyDocumentResult": {
          "VerificationResultCode": "P",
          "VerificationRequestNumber": "000000",
          "OriginatingAgencyCode": "000000",
          "ActivityId": "000000",
          "attributes": {
            "i:type": "VisaResponse"
          }
        }
      }
    }
    
    

    Properties

    Name Type Required Restrictions Description
    msg string false none none
    data object false none none
    » VerifyDocumentResult object false none none
    »» VerificationResultCode string false none A value of P (Pass), F (Fail), D (Document Error), S (Server Error)
    »» VerificationRequestNumber string false none none
    »» OriginatingAgencyCode string false none none
    »» ActivityId string false none none
    »» attributes object false none none
    »»» i:type string false none none

    visaV2

    {
      "msg": "Request Success",
      "data": {
        "VerifyDocumentResult": {
          "VerificationResultCode": "Likely Genuine",
          "VerificationRequestNumber": "000000",
          "OriginatingAgencyCode": "000000",
          "ActivityId": "000000",
          "attributes": {
            "i:type": "VisaResponse"
          }
        }
      }
    }
    
    

    Properties

    Name Type Required Restrictions Description
    msg string false none none
    data object false none none
    » VerifyDocumentResult object false none none
    »» VerificationResultCode string false none A value of Likely Genuine (Pass), Likely Not Genuine (Fail), Document Error (Document Error), Server Error (Server Error)
    »» VerificationRequestNumber string false none none
    »» OriginatingAgencyCode string false none none
    »» ActivityId string false none none
    »» attributes object false none none
    »»» i:type string false none none

    validatePassportV1

    {
      "msg": "Request Success",
      "data": {
        "VerifyDocumentResult": {
          "VerificationResultCode": "P",
          "VerificationRequestNumber": "000000",
          "OriginatingAgencyCode": "000000",
          "ActivityId": "000000",
          "attributes": {
            "i:type": "PassportResponse"
          }
        }
      }
    }
    
    

    Properties

    Name Type Required Restrictions Description
    msg string false none none
    data object false none none
    » VerifyDocumentResult object false none none
    »» VerificationResultCode string false none A value of P (Pass), F (Fail), D (Document Error), S (Server Error)
    »» VerificationRequestNumber string false none none
    »» OriginatingAgencyCode string false none none
    »» ActivityId string false none none
    »» attributes object false none none
    »»» i:type string false none none

    validatePassportV2

    {
      "msg": "Request Success",
      "data": {
        "VerifyDocumentResult": {
          "VerificationResultCode": "Likely Genuine",
          "VerificationRequestNumber": "000000",
          "OriginatingAgencyCode": "000000",
          "ActivityId": "000000",
          "attributes": {
            "i:type": "PassportResponse"
          }
        }
      }
    }
    
    

    Properties

    Name Type Required Restrictions Description
    msg string false none none
    data object false none none
    » VerifyDocumentResult object false none none
    »» VerificationResultCode string false none A value of Likely Genuine (Pass), Likely Not Genuine (Fail), Document Error (Document Error), Server Error (Server Error)
    »» VerificationRequestNumber string false none none
    »» OriginatingAgencyCode string false none none
    »» ActivityId string false none none
    »» attributes object false none none
    »»» i:type string false none none

    validateMedicardV1

    {
      "msg": "Request Success",
      "data": {
        "VerifyDocumentResult": {
          "VerificationResultCode": "P",
          "VerificationRequestNumber": "XXXX",
          "OriginatingAgencyCode": "XXXX",
          "ActivityId": "XXXX",
          "attributes": {
            "i:type": "MedicareResponse"
          }
        }
      }
    }
    
    

    Properties

    Name Type Required Restrictions Description
    msg string false none none
    data object false none none
    » VerifyDocumentResult object false none none
    »» VerificationResultCode string false none A value of P (Pass), F (Fail), D (Document Error), S (Server Error)
    »» VerificationRequestNumber string false none none
    »» OriginatingAgencyCode string false none none
    »» ActivityId string false none none
    »» attributes object false none none
    »»» i:type string false none none

    validateMedicardV2

    {
      "msg": "Request Success",
      "data": {
        "VerifyDocumentResult": {
          "VerificationResultCode": "Likely Genuine",
          "VerificationRequestNumber": "XXXX",
          "OriginatingAgencyCode": "XXXX",
          "ActivityId": "XXXX",
          "attributes": {
            "i:type": "MedicareResponse"
          }
        }
      }
    }
    
    

    Properties

    Name Type Required Restrictions Description
    msg string false none none
    data object false none none
    » VerifyDocumentResult object false none none
    »» VerificationResultCode string false none A value of Likely Genuine (Pass), Likely Not Genuine (Fail), Document Error (Document Error), Server Error (Server Error)
    »» VerificationRequestNumber string false none none
    »» OriginatingAgencyCode string false none none
    »» ActivityId string false none none
    »» attributes object false none none
    »»» i:type string false none none

    DVSv1

    {
      "msg": "Request Success",
      "data": {
        "VerifyDocumentResult": {
          "VerificationResultCode": "P",
          "VerificationRequestNumber": "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX",
          "OriginatingAgencyCode": "XXXX",
          "ActivityId": "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX",
          "attributes": {
            "i:type": "DriverLicenceResponse"
          }
        }
      }
    }
    
    

    Properties

    Name Type Required Restrictions Description
    msg string false none none
    data object false none none
    » VerifyDocumentResult object false none none
    »» VerificationResultCode string false none A value of P (Pass), F (Fail), D (Document Error), S (Server Error)
    »» VerificationRequestNumber string false none none
    »» OriginatingAgencyCode string false none none
    »» ActivityId string false none none
    »» attributes object false none none
    »»» i:type string false none none

    DVSv2

    {
      "msg": "Request Success",
      "data": {
        "VerifyDocumentResult": {
          "VerificationResultCode": "Likely Genuine",
          "VerificationRequestNumber": "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX",
          "OriginatingAgencyCode": "XXXX",
          "ActivityId": "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX",
          "attributes": {
            "i:type": "DriverLicenceResponse"
          }
        }
      }
    }
    
    

    Properties

    Name Type Required Restrictions Description
    msg string false none none
    data object false none none
    » VerifyDocumentResult object false none none
    »» VerificationResultCode string false none A value of Likely Genuine (Pass), Likely Not Genuine (Fail), Document Error (Document Error), Server Error (Server Error)
    »» VerificationRequestNumber string false none none
    »» OriginatingAgencyCode string false none none
    »» ActivityId string false none none
    »» attributes object false none none
    »»» i:type string false none none

    validateAml

    {
      "msg": "Request Success",
      "data": {
        "code": "200",
        "status": "success",
        "content": {
          "data": {
            "ref": "1542342924-fewyv3Gc",
            "searcher_id": "4901",
            "assignee_id": "4901",
            "filters": {},
            "searcher": {},
            "assignee": {},
            "hits": [
              {}
            ],
            "tags": [
              "string"
            ],
            "match_status": "potential_match",
            "risk_level": "unknown",
            "search_term": "John Allen Smith",
            "submitted_term": "John Allen Smith",
            "client_ref": "APIKEY",
            "total_hits": "4",
            "updated_at": "2017-01-01 16:29:13",
            "created_at": "2017-01-01 16:29:13",
            "limit": "100",
            "offset": "0"
          }
        }
      }
    }
    
    

    Properties

    Name Type Required Restrictions Description
    msg string false none none
    data object false none none
    » code string false none none
    » status string false none none
    » content object false none none
    »» data object false none none
    »»» ref string false none none
    »»» searcher_id string false none none
    »»» assignee_id string false none none
    »»» filters object false none none
    »»» searcher object false none none
    »»» assignee object false none none
    »»» hits [object] false none none
    »»» tags [string] false none none
    »»» match_status string false none none
    »»» risk_level string false none none
    »»» search_term string false none none
    »»» submitted_term string false none none
    »»» client_ref string false none none
    »»» total_hits string false none none
    »»» updated_at string(date-time) false none none
    »»» created_at string(date-time) false none none
    »»» limit string false none none
    »»» offset string false none none

    validateAmlPlus

    {
      "msg": "Request Success",
      "data": {
        "code": "200",
        "status": "success",
        "content": {
          "data": {
            "ref": "1542342924-fewyv3Gc",
            "searcher_id": "4901",
            "assignee_id": "4901",
            "filters": {},
            "searcher": {},
            "assignee": {},
            "hits": [
              {}
            ],
            "tags": [
              "string"
            ],
            "match_status": "potential_match",
            "risk_level": "unknown",
            "search_term": "John Allen Smith",
            "submitted_term": "John Allen Smith",
            "client_ref": "APIKEY",
            "total_hits": "4",
            "updated_at": "2017-01-01 16:29:13",
            "created_at": "2017-01-01 16:29:13",
            "limit": "100",
            "offset": "0"
          }
        }
      }
    }
    
    

    Properties

    Name Type Required Restrictions Description
    msg string false none none
    data object false none none
    » code string false none none
    » status string false none none
    » content object false none none
    »» data object false none none
    »»» ref string false none none
    »»» searcher_id string false none none
    »»» assignee_id string false none none
    »»» filters object false none none
    »»» searcher object false none none
    »»» assignee object false none none
    »»» hits [object] false none none
    »»» tags [string] false none none
    »»» match_status string false none none
    »»» risk_level string false none none
    »»» search_term string false none none
    »»» submitted_term string false none none
    »»» client_ref string false none none
    »»» total_hits string false none none
    »»» updated_at string(date-time) false none none
    »»» created_at string(date-time) false none none
    »»» limit string false none none
    »»» offset string false none none

    validateGlobalId

    {
      "msg": "Request Success",
      "data": {
        "completename": "Adalgisa Nery",
        "formofaddress": "",
        "qualificationpreceding": "",
        "givenfullname": "Adalgisa",
        "givennameinitials": "",
        "qualification_int_first": "",
        "surname_prefix_first": "",
        "surname_first": "Nery",
        "indicator": "",
        "qualification_int_second": "",
        "surname_prefix_second": "",
        "qualification_suceeding": "",
        "name_qualified": "",
        "function": "",
        "gender": "",
        "nationality": "",
        "nationalid": "32698687827",
        "organization_name": "",
        "dob": "08/08/1987",
        "businessid": "",
        "contact_type": "",
        "countryCode": "US",
        "passport": "",
        "codes": {
          "reliability": "10",
          "adaptation": "0",
          "detailCode": "WS-333865.2020.0.1.22.6.43.638",
          "detail_list": "",
          "options": "IdentityVerify;DisableDQChecks;messageVerbose",
          "messages": [
            {
              "code": "XXXX",
              "value": "0;0;0;3;3;0;0;0;0;3;0;3;3;0;0;0;0;4;3;0;0;0;0;3;3"
            }
          ],
          "detailList": ""
        },
        "contactType": "",
        "nameQualified": "",
        "organizationName": "",
        "qualificationIntFirst": "",
        "qualificationIntSecond": "",
        "qualificationSuceeding": "",
        "surnameFirst": "Nery",
        "surnamePrefixFirst": "",
        "surnamePrefixSecond": "",
        "Status": "Full Match"
      }
    }
    
    

    Properties

    Name Type Required Restrictions Description
    msg string false none none
    data object false none none
    » completename string false none none
    » formofaddress string false none none
    » qualificationpreceding string false none none
    » givenfullname string false none none
    » givennameinitials string false none none
    » qualification_int_first string false none none
    » surname_prefix_first string false none none
    » surname_first string false none none
    » indicator string false none none
    » qualification_int_second string false none none
    » surname_prefix_second string false none none
    » qualification_suceeding string false none none
    » name_qualified string false none none
    » function string false none none
    » gender string false none none
    » nationality string false none none
    » nationalid string false none none
    » organization_name string false none none
    » dob string false none none
    » businessid string false none none
    » contact_type string false none none
    » countryCode string false none none
    » passport string false none none
    » codes object false none none
    »» reliability string false none none
    »» adaptation string false none none
    »» detailCode string false none none
    »» detail_list string false none none
    »» options string false none none
    »» messages [object] false none none
    »»» code string false none none
    »»» value string false none none
    »» detailList string false none none
    » contactType string false none none
    » nameQualified string false none none
    » organizationName string false none none
    » qualificationIntFirst string false none none
    » qualificationIntSecond string false none none
    » qualificationSuceeding string false none none
    » surnameFirst string false none none
    » surnamePrefixFirst string false none none
    » surnamePrefixSecond string false none none
    » Status string false none none

    validateChineseBank

    {
      "msg": "Request Success",
      "data": {
        "reportingReference": "XX-XXX-XXXXXXXXXXXXXXX",
        "safeHarbour": false,
        "bankCard": {
          "status": 0,
          "verified": true,
          "safeHarbourScore": "M2",
          "fullName": "FULLNAME",
          "idCardNo": "123456XXXXXXXXXXXX",
          "bankCardNo": "111111XXXXXXXXXXXX",
          "dateOfBirth": "YYYY-MM-DD",
          "fields": {
            "fullName": "True",
            "idCardNo": "True",
            "bankCardNo": "True",
            "dateOfBirth": "True"
          }
        }
      }
    }
    
    

    Properties

    Name Type Required Restrictions Description
    msg string false none none
    data object false none none
    » reportingReference string false none none
    » safeHarbour boolean false none none
    » bankCard object false none none
    »» status number false none none
    »» verified boolean false none none
    »» safeHarbourScore string false none none
    »» fullName string false none none
    »» idCardNo string false none none
    »» bankCardNo string false none none
    »» dateOfBirth string false none none
    »» fields object false none none
    »»» fullName string false none none
    »»» idCardNo string false none none
    »»» bankCardNo string false none none
    »»» dateOfBirth string false none none

    validateChineseNationalId

    {
      "msg": "Request Success",
      "data": {
        "reportingReference": "XX-XXX-XXXXXXXXXXXXXXX",
        "safeHarbour": false,
        "nationalId": {
          "status": 0,
          "verified": true,
          "safeHarbourScore": "M2",
          "fullName": "黄俊龙",
          "gender": "Male",
          "dateOfBirth": "YYYY-MM-DD",
          "idCardNo": "422822XXXXXXXXXXXX",
          "address": "",
          "fields": {
            "name": "True",
            "dateOfBirth": "True",
            "idCardNo": "True"
          }
        }
      }
    }
    
    

    Properties

    Name Type Required Restrictions Description
    msg string false none none
    data object false none none
    » reportingReference string false none none
    » safeHarbour boolean false none none
    » nationalId object false none none
    »» status number false none none
    »» verified boolean false none none
    »» safeHarbourScore string false none none
    »» fullName string false none none
    »» gender string false none none
    »» dateOfBirth string false none none
    »» idCardNo string false none none
    »» address string false none none
    »» fields object false none none
    »»» name string false none none
    »»» dateOfBirth string false none none
    »»» idCardNo string false none none

    messages

    {
      "code": "XXXX",
      "value": "0;0;0;3;3;0;0;0;0;3;0;3;3;0;0;0;0;4;3;0;0;0;0;3;3"
    }
    
    

    Properties

    Name Type Required Restrictions Description
    code string false none none
    value string false none none

    signaturePlaceHolder

    {
      "type": "signature",
      "value": "xxx",
      "coordinates": [
        360.7142639160156,
        732.0000152587891,
        510.7142639160156,
        772.0000152587891
      ],
      "pageNumber": 1,
      "isRequired": true,
      "clusterId": "af594f62-3ff8-4332-b53a-916c59d21865",
      "groupId": "cd70f69b-996e-41af-8256-db085062e692"
    }
    
    

    Properties

    Name Type Required Restrictions Description
    type string false none allowed filed type values: {signature:String}, {checkbox:String}, {dropdown:String}, {radio:String}, {title:String}, {text:String}, {stamp:String}, {company:String}, {name:String(required)}, {email:String(required)}, {date:String}, {initial:String}
    value string false none Field values
    coordinates array false none Field co-ordinates array.
    pageNumber number false none The page number in which the field exists
    isRequired bool false none To identify whether the signer placeholder is optional or mandatory. By default it is true.
    clusterId string false none Used for radio button grouping
    groupId string false none Unique id for field names

    fileConfig

    {
      "fileId": "619b59b5e25dee260c3c7a6a",
      "fieldEdit": false,
      "signForm": true,
      "fullFormEdit": false,
      "isReviewer": false,
      "placeholders": [
        {
          "type": "signature",
          "value": "xxx",
          "coordinates": [
            360.7142639160156,
            732.0000152587891,
            510.7142639160156,
            772.0000152587891
          ],
          "pageNumber": 1,
          "isRequired": true,
          "clusterId": "af594f62-3ff8-4332-b53a-916c59d21865",
          "groupId": "cd70f69b-996e-41af-8256-db085062e692"
        }
      ],
      "granularAccess": []
    }
    
    

    Properties

    Name Type Required Restrictions Description
    fileId string false none none
    fieldEdit bool false none Enables edit options in specified form fields in the smart pdf. If field edit is set to true then the field names should be mentioned in the granular access fields.
    signForm bool false none If sign form is set to true, then the placeholders like name,email,signature,etc... can be used.At least canEdit or signFrom must be set to the signer.
    fullFormEdit bool false none Enables full edit in the smart pdf.
    isReviewer bool false none If is reviewer is set to true, then the sign form and fill form must be false and placeholders must be empty.
    placeholders [anyOf] false none none

    anyOf

    Name Type Required Restrictions Description
    » anonymous signaturePlaceHolder false none none

    or

    Name Type Required Restrictions Description
    » anonymous dropDownPlaceHolder false none none

    or

    Name Type Required Restrictions Description
    » anonymous textBoxPlaceHolder false none none

    or

    Name Type Required Restrictions Description
    » anonymous datePlaceHolder false none none

    continued

    Name Type Required Restrictions Description
    granularAccess array false none none

    fileConfigFill

    {
      "fileId": "619b59b5e25dee260c3c7a6a",
      "fieldEdit": true,
      "signForm": false,
      "fullFormEdit": false,
      "isReviewer": false,
      "placeholders": [],
      "granularAccess": [
        {
          "fields": "259R",
          "isRequired": false,
          "pageNumber": 1
        }
      ]
    }
    
    

    Properties

    Name Type Required Restrictions Description
    fileId string false none none
    fieldEdit bool false none Enables edit options in specified form fields in the smart pdf. If field edit is set to true then the field names should be mentioned in the granular access fields.
    signForm bool false none If sign form is set to true, then the placeholders like name,email,signature,etc... can be used.At least canEdit or signFrom must be set to the signer.
    fullFormEdit bool false none Enables full edit in the smart pdf.
    isReviewer bool false none If is reviewer is set to true, then the sign form and fill form must be false and placeholders must be empty.
    placeholders array false none none
    granularAccess [granularAccess] false none none

    dropDownPlaceHolder

    {
      "type": "dropdown",
      "value": "",
      "coordinates": [
        378.7142639160156,
        535,
        528.7142639160156,
        575
      ],
      "pageNumber": 1,
      "defaultValue": "Dropdown",
      "dropDownOptions": [
        "option1",
        "option2",
        "option3",
        "option4"
      ],
      "isRequired": true,
      "clusterId": "af594f62-3ff8-4332-b53a-916c59d21865",
      "groupId": "cd70f69b-996e-41af-8256-db085062e692"
    }
    
    

    Properties

    Name Type Required Restrictions Description
    type string false none allowed filed type values: {signature:String}, {checkbox:String}, {dropdown:String}, {radio:String}, {title:String}, {text:String}, {stamp:String}, {company:String}, {name:String(required)}, {email:String(required)}, {date:String}, {initial:String}
    value string false none Field values
    coordinates array false none Field co-ordinates array.
    pageNumber number false none The page number in which the field exists
    defaultValue string false none dropDown default value
    dropDownOptions array false none Drop down options
    isRequired bool false none To identify whether the signer placeholder is optional or mandatory. By default it is true.
    clusterId string false none Used for radio button grouping
    groupId string false none Unique id for field names

    textBoxPlaceHolder

    {
      "type": "text",
      "value": "xxx",
      "coordinates": [
        312.515625,
        301,
        462.515625,
        341
      ],
      "customLabel": "ABN",
      "validation": [
        {
          "regex": "^[A-Za-z0-9]*$",
          "errorMessage": "Only alphanumeric characters are allowed."
        },
        {
          "regex": "^.{6,}$",
          "errorMessage": "Input must be at least 6 characters long."
        },
        {
          "regex": "^.{0,8}$",
          "errorMessage": "Input must not exceed 8 characters."
        }
      ],
      "format": "Uppercase",
      "pageNumber": 1,
      "font": {
        "type": "Poppins-Regular",
        "color": "#000000"
      },
      "isRequired": true,
      "clusterId": "af594f62-3ff8-4332-b53a-916c59d21865",
      "groupId": "cd70f69b-996e-41af-8256-db085062e692"
    }
    
    

    Properties

    Name Type Required Restrictions Description
    type string false none allowed filed type values: {signature:String}, {checkbox:String}, {dropdown:String}, {radio:String}, {title:String}, {text:String}, {stamp:String}, {company:String}, {name:String(required)}, {email:String(required)}, {date:String}, {initial:String}
    value string false none Field values
    coordinates array false none Field co-ordinates array.
    customLabel string false none Custom label for placeholder box
    validation [object] false none List of regex validation rules with custom error messages
    » regex string false none Regex pattern for the validation
    » errorMessage string false none Custom error message for regex validation
    format string false none Supported formats: Uppercase, Lowercase
    pageNumber number false none The page number in which the field exists
    font object false none Fonts alowed for placeholder type 'name','date','dateTime','email','initial','company','title','text'
    » type string false none Allowed font types: 'Poppins-Medium', 'Poppins-Regular', 'Roboto-Medium', 'Lato-Bold', 'PlayfairDisplay-Medium', 'OpenSans-Condensed-Medium'
    » color string false none Font color in hex code
    isRequired bool false none To identify whether the signer placeholder is optional or mandatory. By default it is true.
    clusterId string false none Used for radio button grouping
    groupId string false none Unique id for field names

    datePlaceHolder

    {
      "type": "date",
      "value": "",
      "coordinates": [
        312.515625,
        301,
        462.515625,
        341
      ],
      "format": "YYYY-MM-DD",
      "pageNumber": 1,
      "isRequired": true,
      "clusterId": "af594f62-3ff8-4332-b53a-916c59d21865",
      "groupId": "cd70f69b-996e-41af-8256-db085062e692"
    }
    
    

    Properties

    Name Type Required Restrictions Description
    type string false none allowed filed type values: {signature:String}, {checkbox:String}, {dropdown:String}, {radio:String}, {title:String}, {text:String}, {stamp:String}, {company:String}, {name:String(required)}, {email:String(required)}, {date:String}, {initial:String}
    value string false none Field values
    coordinates array false none Field co-ordinates array.
    format string false none Support formats for Date field: DD/MM/YYYY , MM/DD/YYYY , YYYY/MM/DD , DD-MM-YYYY , MM-DD-YYYY , YYYY-MM-DD
    pageNumber number false none The page number in which the field exists
    isRequired bool false none To identify whether the signer placeholder is optional or mandatory. By default it is true.
    clusterId string false none Used for radio button grouping
    groupId string false none Unique id for field names

    granularAccess

    {
      "fields": "259R",
      "isRequired": false,
      "pageNumber": 1
    }
    
    

    Properties

    Name Type Required Restrictions Description
    fields string false none The name of the field in smart pdf
    isRequired bool false none To identify whether the field is optional or mandatory.
    pageNumber number false none The page number in which the field exists.

    recipient1

    {
      "name": "xxxx",
      "email": "xxx@example.com",
      "signingOrder": 1,
      "accessCode": 123,
      "hasAccessCode": true,
      "mfaEnabled": false,
      "privateMessage": "test",
      "isRequired": true,
      "enforceDownload": false,
      "associateSigner": null,
      "witnesser": null,
      "fileConfigs": [
        {
          "fileId": "619b59b5e25dee260c3c7a6a",
          "fieldEdit": false,
          "signForm": true,
          "fullFormEdit": false,
          "isReviewer": false,
          "placeholders": [
            null
          ],
          "granularAccess": []
        }
      ]
    }
    
    

    Properties

    Name Type Required Restrictions Description
    name string false none Name of the signer.
    email string false none Email of the signer.
    signingOrder number false none Order of the signer.
    accessCode number false none Access code for signer authentication. By default it is null.
    hasAccessCode bool false none Enables access code for signer authentication. This is used as an additional security for sensitive documents. By default it is false.
    mfaEnabled bool false none Enables Multi Factor authentication for signer
    privateMessage string false none Private message to the signer sent along with the signing request in email.
    isRequired bool false none To identify whether the signer is optional or mandatory. By default it is true.
    enforceDownload bool false none To allow user to download the original file while signing. By default it is true.
    associateSigner string false none Email of the associate signers. Associate signers must be one of the recipients in list.Associate signers is allowed only when signing order is enabled.
    witnesser string false none Email of the witnesser signers. Witnesser signers must be one of the recipients in list.Witnesser signers is allowed only when signing order is enabled.
    fileConfigs [anyOf] false none none

    recipient2

    {
      "name": "xxxx",
      "email": "xxx@example.com",
      "signingOrder": 1,
      "accessCode": 123,
      "hasAccessCode": true,
      "mfaEnabled": false,
      "privateMessage": "test",
      "isRequired": true,
      "enforceDownload": false,
      "associateSigner": null,
      "witnesser": null,
      "fileConfigs": [
        {
          "fileId": "619b59b5e25dee260c3c7a6a",
          "fieldEdit": true,
          "signForm": false,
          "fullFormEdit": false,
          "isReviewer": false,
          "placeholders": [],
          "granularAccess": [
            {
              "fields": null,
              "isRequired": null,
              "pageNumber": null
            }
          ]
        }
      ]
    }
    
    

    Properties

    Name Type Required Restrictions Description
    name string false none Name of the signer.
    email string false none Email of the signer.
    signingOrder number false none Order of the signer.
    accessCode number false none Access code for signer authentication. By default it is null.
    hasAccessCode bool false none Enables access code for signer authentication. This is used as an additional security for sensitive documents. By default it is false.
    mfaEnabled bool false none Enables Multi Factor authentication for signer
    privateMessage string false none Private message to the signer sent along with the signing request in email.
    isRequired bool false none To identify whether the signer is optional or mandatory. By default it is true.
    enforceDownload bool false none To allow user to download the original file while signing. By default it is true.
    associateSigner string false none Email of the associate signers. Associate signers must be one of the recipients in list.Associate signers is allowed only when signing order is enabled.
    witnesser string false none Email of the witnesser signers. Witnesser signers must be one of the recipients in list.Witnesser signers is allowed only when signing order is enabled.
    fileConfigs [anyOf] false none none

    history

    {
      "message": "Request success",
      "data": {
        "callHistory": [
          {
            "idv": false,
            "ievStatus": "completed",
            "kycType": "license",
            "kycStatus": "completed",
            "kycVerificationStatus": "verified",
            "reportStatus": false,
            "reportUrl": "61ce89629fbbcd2bb0282b67",
            "expiryDate": "2021-12-31T04:38:58.095Z",
            "organizationId": "61ce89629fbbcd2bb0282b67",
            "requestId": "76b4562e-dedf-407c-a454-39bd4512aac5",
            "createdAt": "2021-12-31T04:38:58.095Z",
            "updatedAt": "2021-12-31T04:38:58.095Z",
            "recipientDetails": {
              "email": "example@gmail.com",
              "firstName": "John",
              "surName": "Doe"
            },
            "ievRequestId": "61ce89629fbbcd2bb0282b67",
            "requestorName": "David Smith",
            "requestorEmail": "xxx@example.com",
            "abn": "123SDJHG65326",
            "companyName": "Lakeba",
            "reason": "For the employment verification",
            "privacyPolicy": "https://example.com/privacy-policy",
            "verificationType": "incomeCurrent",
            "policy": {
              "file": "example_policy.pdf",
              "createdAt": "2023-05-16T12:48:35.961+00:00",
              "updatedAt": "2023-05-16T12:48:35.961+00:00"
            }
          }
        ]
      },
      "pagination": {
        "offset": 1,
        "limit": 10,
        "total": 20
      }
    }
    
    

    Properties

    Name Type Required Restrictions Description
    message string false none none
    data object false none none
    » callHistory [object] false none none
    »» idv boolean false none none
    »» ievStatus string false none none
    »» kycType string false none none
    »» kycStatus string false none none
    »» kycVerificationStatus string false none none
    »» reportStatus boolean false none none
    »» reportUrl string false none none
    »» expiryDate string false none none
    »» organizationId string false none none
    »» requestId UUID false none none
    »» createdAt string false none none
    »» updatedAt string false none none
    »» recipientDetails object false none none
    »»» email string false none none
    »»» firstName string false none none
    »»» surName string false none none
    »» ievRequestId string false none none
    »» requestorName string false none none
    »» requestorEmail email false none none
    »» abn string false none none
    »» companyName string false none none
    »» reason string false none none
    »» privacyPolicy string false none none
    »» verificationType boolean false none none
    »» policy object false none none
    »»» file string false none none
    »»» createdAt Date false none none
    »»» updatedAt Date false none none
    pagination object false none none
    » offset number false none none
    » limit number false none none
    » total number false none none

    requestDetails

    {
      "message": "Request success",
      "data": {
        "requestDetails": {
          "idv": false,
          "jsonDataRequested": false,
          "ievStatus": "completed",
          "kycType": "license",
          "kycStatus": "completed",
          "kycVerificationStatus": "verified",
          "reportStatus": false,
          "reportUrl": "61ce89629fbbcd2bb0282b67",
          "expiryDate": "2021-12-31T04:38:58.095Z",
          "organizationId": "61ce89629fbbcd2bb0282b67",
          "requestId": "76b4562e-dedf-407c-a454-39bd4512aac5",
          "employeeData": [],
          "createdAt": "2021-12-31T04:38:58.095Z",
          "updatedAt": "2021-12-31T04:38:58.095Z",
          "recipientDetails": {
            "email": "example@gmail.com",
            "firstName": "John",
            "surName": "Doe"
          },
          "ievRequestId": "61ce89629fbbcd2bb0282b67",
          "requestorName": "David Smith",
          "requestorEmail": "xxx@example.com",
          "abn": "123SDJHG65326",
          "companyName": "Lakeba",
          "reason": "For the employment verification",
          "privacyPolicy": "https://example.com/privacy-policy",
          "verificationType": "incomeCurrent",
          "policy": {
            "file": "example_policy.pdf",
            "createdAt": "2023-05-16T12:48:35.961+00:00",
            "updatedAt": "2023-05-16T12:48:35.961+00:00"
          }
        }
      }
    }
    
    

    Properties

    Name Type Required Restrictions Description
    message string false none none
    data object false none none
    » requestDetails object false none none
    »» idv boolean false none none
    »» jsonDataRequested boolean false none none
    »» ievStatus string false none none
    »» kycType string false none none
    »» kycStatus string false none none
    »» kycVerificationStatus string false none none
    »» reportStatus boolean false none none
    »» reportUrl string false none none
    »» expiryDate string false none none
    »» organizationId string false none none
    »» requestId UUID false none none
    »» employeeData array false none none
    »» createdAt string false none none
    »» updatedAt string false none none
    »» recipientDetails object false none none
    »»» email string false none none
    »»» firstName string false none none
    »»» surName string false none none
    »» ievRequestId string false none none
    »» requestorName string false none none
    »» requestorEmail email false none none
    »» abn string false none none
    »» companyName string false none none
    »» reason string false none none
    »» privacyPolicy string false none none
    »» verificationType boolean false none none
    »» policy object false none none
    »»» file string false none none
    »»» createdAt Date false none none
    »»» updatedAt Date false none none

    license

    {
      "service": "license",
      "enabled": true
    }
    
    

    Properties

    Name Type Required Restrictions Description
    service string false none Validate Australian license
    enabled bool false none To enable the service set value as true.

    passport

    {
      "service": "passport",
      "enabled": false
    }
    
    

    Properties

    Name Type Required Restrictions Description
    service string false none Validate Australian Passport
    enabled bool false none To enable the service set value as true.

    medicare

    {
      "service": "medicare",
      "enabled": false
    }
    
    

    Properties

    Name Type Required Restrictions Description
    service string false none Validate Australian Medicare
    enabled bool false none To enable the service set value as true.

    faceMatchSchema

    {
      "service": "face-match",
      "enabled": true
    }
    
    

    Properties

    Name Type Required Restrictions Description
    service string false none This service allows you to do a biometrical face analysis in comparison with an ID.
    enabled bool false none To enable the service set value as true.

    liveMatchEyesSchema

    {
      "service": "live-match-eyes",
      "enabled": false
    }
    
    

    Properties

    Name Type Required Restrictions Description
    service string false none This service allows you to do a biometrical face analysis in comparison with an ID and a liveness check based on eyes.
    enabled bool false none To enable the service set value as true.

    liveMatchSmileSchema

    {
      "service": "live-match-smile",
      "enabled": false
    }
    
    

    Properties

    Name Type Required Restrictions Description
    service string false none This service allows you to do a biometrical face analysis in comparison with an ID and a liveness check based on smile
    enabled bool false none To enable the service set value as true.

    liveMatchFiveStepEyesSchema

    {
      "service": "live-match-five-step-eyes",
      "enabled": false
    }
    
    

    Properties

    Name Type Required Restrictions Description
    service string false none This service allows you to do a biometrical face analysis in comparison with an ID and a high accuracy liveness check based on eyes
    enabled bool false none To enable the service set value as true.

    liveMatchFiveStepSmileSchema

    {
      "service": "live-match-five-step-smile",
      "enabled": false
    }
    
    

    Properties

    Name Type Required Restrictions Description
    service string false none The name of the field in smart pdf
    enabled bool false none To enable the service set value as true.

    iVerifyRequest

    {
      "firstName": "John",
      "middleName": "Allen",
      "lastName": "Smith",
      "emailId": "abc@abc.com",
      "phoneNumber": "8800000000",
      "expiryDate": "2045-10-10",
      "requestorName": "John Smith",
      "requestorEmail": "xxx@example.com",
      "emailNotifications": true,
      "idVerification": [
        {
          "service": "license",
          "enabled": true
        }
      ],
      "biometricVerification": [
        {
          "service": "live-match-five-step-smile",
          "enabled": false
        }
      ],
      "customTermsAndCondition": "https://example.com",
      "customThankyouPage": "https://example.com/thankyou",
      "includeImagesInReport": true,
      "restrictUploadOption": true,
      "enableSMSNotification": false,
      "iframe": {
        "enabled": true,
        "domains": [
          "https://example.com"
        ]
      },
      "clientName": "Demo Company"
    }
    
    

    Properties

    Name Type Required Restrictions Description
    firstName string false none First name of the individual
    middleName string false none Middle name of the individual
    lastName string false none Last name of the individual
    emailId string false none Email address of the individual
    phoneNumber string false none Phone number of the individual
    expiryDate string(date) false none Expiry date for the verification request
    requestorName string false none The name of the requestor.
    requestorEmail string false none Requestor email must be a valid email.
    emailNotifications bool false none To enable email notifications
    idVerification [anyOf] false none Medicare can be used as ID proof when combined with a driver’s licence or a passport. However, a Medicare card alone is not accepted as valid ID. It must be paired with either a driver’s licence or a passport.

    anyOf

    Name Type Required Restrictions Description
    » anonymous license false none none

    or

    Name Type Required Restrictions Description
    » anonymous passport false none none

    or

    Name Type Required Restrictions Description
    » anonymous medicare false none none

    continued

    Name Type Required Restrictions Description
    biometricVerification [anyOf] false none Array of biometric verification service
    customTermsAndCondition string false none If url is provided the content in the url will be shown in iframe
    customThankyouPage string false none If url is provided the content in the url will be shown in iframe
    includeImagesInReport bool false none To enable images in report
    restrictUploadOption bool false none To disable upload from device
    enableSMSNotification bool false none To enable SMS notifications
    iframe object false none none
    » enabled string false none To enable the iframe validations
    » domains array false none Domains allowed for the iframe
    clientName string false none If clientName is provided the organization name will not be used for email and guest flows

    iBiometricRequest

    {
      "firstName": "John",
      "middleName": "Allen",
      "lastName": "Smith",
      "emailId": "abc@abc.com",
      "phoneNumber": "8800000000",
      "expiryDate": "2045-10-10",
      "requestorName": "John Smith",
      "requestorEmail": "xxx@example.com",
      "emailNotifications": true,
      "customThankyouPage": "https://example.com/thankyou",
      "includeImagesInReport": true,
      "restrictUploadOption": true,
      "enableSMSNotification": false,
      "idVerification": [
        {
          "service": "license",
          "enabled": true
        }
      ],
      "biometricVerification": [
        {
          "service": "live-match-five-step-smile",
          "enabled": false
        }
      ],
      "customTermsAndCondition": "https://example.com",
      "iframe": {
        "enabled": true,
        "domains": [
          "https://example.com"
        ]
      },
      "clientName": "Demo Company"
    }
    
    

    Properties

    Name Type Required Restrictions Description
    firstName string false none First name of the individual
    middleName string false none Middle name of the individual
    lastName string false none Last name of the individual
    emailId string false none Email address of the individual
    phoneNumber string false none Phone number of the individual
    expiryDate string(date) false none Expiry date for the verification request
    requestorName string false none The name of the requestor.
    requestorEmail string false none Requestor email must be a valid email.
    emailNotifications bool false none To enable email notifications
    customThankyouPage string false none If url is provided the content in the url will be shown in iframe
    includeImagesInReport bool false none To enable images in report
    restrictUploadOption bool false none To disable upload from device
    enableSMSNotification bool false none To enable SMS notifications
    idVerification [anyOf] false none none

    anyOf

    Name Type Required Restrictions Description
    » anonymous license false none none

    or

    Name Type Required Restrictions Description
    » anonymous passport false none none

    continued

    Name Type Required Restrictions Description
    biometricVerification [anyOf] false none Array of biometric verification service
    customTermsAndCondition string false none If url is provided the content in the url will be shown in iframe
    iframe object false none none
    » enabled string false none To enable the iframe validations
    » domains array false none Domains allowed for the iframe
    clientName string false none If clientName is provided the organization name will not be used for email and guest flows

    iVerifyOkayResponse

    {
      "msg": "Request successful",
      "data": {
        "hasError": false,
        "msg": "Request Success",
        "requestId": "dae00d9a-0d72-4cd4-92dd-54aad1c458ce",
        "link": "https://id.doxai.co/auth?requestId=dae00d9a-0d72-4cd4-92dd-54aad1c458ce&uniqueId=13057c7a-dec7-4e1b-9a15-270ac57b363b&type=i-verify"
      }
    }
    
    

    Properties

    Name Type Required Restrictions Description
    msg string false none Success message indicating the request creation
    data object false none Response data
    » hasError boolean false none Indicating the request creation is success or failure
    » msg string false none Success or error message
    » requestId string false none Request Id
    » link string false none URL used for verification flow

    iVerifyOkayErrorResponse

    {
      "msg": "Request successful",
      "data": {
        "hasError": true,
        "msg": "Maximum call limit exceeded",
        "link": null
      }
    }
    
    

    Properties

    Name Type Required Restrictions Description
    msg string false none Success message indicating the request creation
    data object false none Response data
    » hasError boolean false none Indicating the request creation is success or failure
    » msg string false none Success or error message
    » link string false none URL used for verification flow

    iBiometricOkayResponse

    {
      "msg": "Request successful",
      "data": {
        "hasError": false,
        "msg": "Request Success",
        "requestId": "dae00d9a-0d72-4cd4-92dd-54aad1c458ce",
        "link": "https://id.doxai.co/auth?requestId=43D5CB23-A228-4BEF-A6BB-E19C42DF2BED&uniqueId=13057c7a-dec7-4e1b-9a15-270ac57b363b&type=i-biometric"
      }
    }
    
    

    Properties

    Name Type Required Restrictions Description
    msg string false none Success message indicating the request creation
    data object false none Response data
    » hasError boolean false none Indicating the request creation is success or failure
    » msg string false none Success or error message
    » requestId string false none Request Id
    » link string false none URL used for verification flow

    iBiometricOkayErrorResponse

    {
      "msg": "Request successful",
      "data": {
        "hasError": true,
        "msg": "Maximum call limit exceeded",
        "link": null
      }
    }
    
    

    Properties

    Name Type Required Restrictions Description
    msg string false none Success message indicating the request creation
    data object false none Response data
    » hasError boolean false none Indicating the request creation is success or failure
    » msg string false none Success or error message
    » link string false none URL used for verification flow