All Products
Search
Document Center

ID Verification:SDK call examples

Last Updated:Mar 10, 2026

This topic provides server-side software development kit (SDK) call examples for the eKYC_NDI web integration solution.

SDK installation and source code download

You can select the SDK language that best fits your technical stack for integration.

Supported language

Environment requirements

SDK installation

Github source code URL

Java

JDK 1.8 or later

Download Java SDK

Alibaba Cloud Green SDK for Java

Python

Python 3.0 or later

Download Python SDK

Alibaba Cloud Green SDK for Python

Typescript

Node.js 8.0 or later

Download TypeScript SDK

Alibaba Cloud CloudAuth International SDK for TypeScript

Go

Go 1.12.0 or later

Download Go SDK

Alibaba Cloud Green SDK for Go

PHP

PHP 5.6 or later

Download PHP SDK

Alibaba Cloud CloudAuth International SDK for PHP

C#

.NET Framework 4.5.0 or later, or .NET Core 2.0 or later

Download C# SDK

Alibaba Cloud CloudAuth SDK for C#

C++

  • Install a compiler that supports C++ 11 or later:

    • Windows: Visual Studio 2015 or later

    • Linux: GCC 4.9 or later

  • Install CMake 3.0 or later.

  • 4 GB of memory or more is recommended.

  • Install dependency libraries. For more information, see Required dependency libraries.

Download C++ SDK

Alibaba Cloud Green SDK for C++

SDK call examples

The following sections provide SDK call examples for different programming languages.

Java

The SDK in this example has the following dependency. Obtain the latest dependency for your actual configuration.

<dependency>
  <groupId>com.aliyun</groupId>
  <artifactId>cloudauth_intl20220809</artifactId>
  <version>3.17.1</version>
</dependency>

Initialize API call example

import com.aliyun.cloudauth_intl20220809.Client;
import com.aliyun.cloudauth_intl20220809.models.InitializeRequest;
import com.aliyun.cloudauth_intl20220809.models.InitializeResponse;
import com.aliyun.teaopenapi.models.Config;



public class InitializeDemo {

    public static void main(String[] args) throws Exception {
        // Build client
        Config config = new Config();
        config.setAccessKeyId("your access key id");
        config.setAccessKeySecret("your access key secret");
        config.setEndpoint("cloudauth-intl.cn-hongkong.aliyuncs.com");
        config.setRegionId("cn-hongkong");

        Client client = new Client(config);

        // Build request
        InitializeRequest request = new InitializeRequest();
        request.setProductCode("eKYC_PRO");
        request.setMerchantBizId("***");
        request.setMerchantUserId("***");
        request.setMetaInfo("***");
        request.setDocType("01000000");
        request.setAuthorize("T");

        // Invoke API
        InitializeResponse response = client.initialize(request);

        // Get result from response
        Integer statusCode = response.getStatusCode();
        String code = response.getBody().getCode();
        String transactionId = response.getBody().getResult().getTransactionId();
        System.out.println("statusCode:"+statusCode+"=== code:"+code +"==== transactionId:"+transactionId);
    }


}

CheckResult API call example

import com.aliyun.cloudauth_intl20220809.Client;
import com.aliyun.cloudauth_intl20220809.models.CheckResultRequest;
import com.aliyun.cloudauth_intl20220809.models.CheckResultResponse;
import com.aliyun.teaopenapi.models.Config;
 
 
public class CheckResultDemo {
 
    public static void main(String[] args) throws Exception {
        // Build client
        Config config = new Config();
        config.setAccessKeyId("your access key id");
        config.setAccessKeySecret("your access key secret");
        config.setEndpoint("cloudauth-intl.cn-hongkong.aliyuncs.com");
        config.setRegionId("cn-hongkong");
        Client client = new Client(config);
 
        // Build request
        CheckResultRequest request = new CheckResultRequest();
 
        request.setMerchantBizId("****");
        request.setTransactionId("****");
        request.setIsReturnImage("****");
 
        // Invoke API
        CheckResultResponse response = client.checkResult(request);
 
        // Get result from response
        Integer statusCode = response.getStatusCode();
        String code = response.getBody().getCode();
        String passed = response.getBody().getResult().getPassed();
        String subCode = response.getBody().getResult().getSubCode();
        String extFaceInfo = response.getBody().getResult().getExtFaceInfo();
        String extIdInfo = response.getBody().getResult().getExtIdInfo();
    }
 
}

PHP

The SDK in this example has the following dependencies. Obtain the latest dependency for your actual configuration.

  • Manage project dependencies using Composer (recommended).

    composer require alibabacloud/cloudauth-intl-20220809 3.17.1
  • Use the composer.json file.

    {
      "require": {
        "alibabacloud/cloudauth-intl-20220809": "2.0.2"
      }
    }

Initialize API call example

<?php
namespace AlibabaCloud\SDK\Sample;
 
use AlibabaCloud\SDK\Cloudauthintl\V20220809\Models\InitializeRequest;
use AlibabaCloud\SDK\Cloudauthintl\V20220809\Cloudauthintl;
use Darabonba\OpenApi\Models\Config;
 
class Initialize {
 
 public static function main(){
 // Build client
 $config = new Config([
 "accessKeyId" => "your accessKeyId",
 "accessKeySecret" => "your accessKeySecret",
 "endpoint" => "cloudauth-intl.cn-hongkong.aliyuncs.com"
 ]);
 $client = new Cloudauthintl($config);
 
 // Build request
 $request = new InitializeRequest([
 "productCode"=>"eKYC",
 "docType"=>"****",
 "merchantBizId"=>"****",
 "merchantUserId"=>"****",
 "authorize"=>"T",
 "metaInfo"=>"{\"apdi****.0.0\"}"
 ]);
 
 // Invoke API
 $response = $client->initialize($request);
 
 // Get result
 var_dump($response->statusCode);
 var_dump($response->body->requestId);
 var_dump($response->body->result->transactionId);
 }
 
}
$path = __DIR__ . \DIRECTORY_SEPARATOR . \DIRECTORY_SEPARATOR . 'vendor' . \DIRECTORY_SEPARATOR . 'autoload.php';
if (file_exists($path)) {
 require_once $path;
}
Initialize::main();

CheckResult API call example

<?php
namespace AlibabaCloud\SDK\Sample;
 
use AlibabaCloud\SDK\Cloudauthintl\V20220809\Models\CheckResultRequest;
use AlibabaCloud\SDK\Cloudauthintl\V20220809\Cloudauthintl;
use Darabonba\OpenApi\Models\Config;
 
class CheckResult {
 
 public static function main(){
 // Build client
 $config = new Config([
 "accessKeyId" => "your accessKeyId",
 "accessKeySecret" => "your accessKeySecret",
 "endpoint" => "cloudauth-intl.cn-hongkong.aliyuncs.com"
 ]);
 $client = new Cloudauthintl($config);
 
 // Build request
 $request = new CheckResultRequest([
 "merchantBizId"=>"***",
 "transactionId"=>"G00000****05816"
 ]);
 
 // Invoke API
 $response = $client->checkResult($request);
 
 // Get result
 var_dump($response->statusCode);
 var_dump($response->body->requestId);
 var_dump($response->body->result->passed);
 var_dump($response->body->result->subCode);
 var_dump($response->body->result->extFaceInfo);
 var_dump($response->body->result->extIdInfo);
 }
 
}
$path = __DIR__ . \DIRECTORY_SEPARATOR . \DIRECTORY_SEPARATOR . 'vendor' . \DIRECTORY_SEPARATOR . 'autoload.php';
if (file_exists($path)) {
 require_once $path;
}
CheckResult::main();

Python

  • Import the dependency package.

    pip install alibabacloud_tea_openapi==0.2.5
  • Install the SDK. Obtain the latest dependency for your actual configuration.

    pip install alibabacloud_cloudauth_intl20220809==3.17.1

Initialize API call example

from alibabacloud_cloudauth_intl20220809.client import Client as CloudauthClient
from alibabacloud_cloudauth_intl20220809 import models as cloudauth_models
from alibabacloud_tea_openapi import models as open_api_models


class Initialize:
    def __init__(self):
        pass

    @staticmethod
    def main() -> None:


        # Build client
        config = open_api_models.Config(
            access_key_id='your access_key_id',
            access_key_secret='your access_key_secret',
            endpoint="cloudauth-intl.cn-hongkong.aliyuncs.com"
        )
        client = CloudauthClient(config)


        # Build request
        request = cloudauth_models.InitializeRequest(
            merchant_biz_id="***",
            merchant_user_id="***",
            meta_info="{\"apdid****mVer\":\"1.0.0\"}",
            authorize="T",
            product_code="eKYC",
            doc_type="00000001"
        )

        # Invoke API
        response = client.initialize(request)

        # Get result
        print(response.status_code)
        print(response.body.request_id)
        print(response.body.result.transaction_id)



if __name__ == '__main__':
    Initialize.main()

CheckResult API call example

from alibabacloud_cloudauth_intl20220809.client import Client as CloudauthClient
from alibabacloud_cloudauth_intl20220809 import models as cloudauth_models
from alibabacloud_tea_openapi import models as open_api_models
 
 
class CheckResult:
 def __init__(self):
 pass
 
 @staticmethod
 def main() -> None:
 # Build client
 config = open_api_models.Config(
 access_key_id='your access_key_id',
 access_key_secret='your access_key_secret',
 endpoint="cloudauth-intl.cn-hongkong.aliyuncs.com"
 )
 client = CloudauthClient(config)
 
 # Build request
 request = cloudauth_models.CheckResultRequest(
 transaction_id="****",
 merchant_biz_id="****"
 )
 
 # Invoke API
 response = client.check_result(request)
 
 # Get result
 print(response.status_code)
 print(response.body.request_id)
 print(response.body.result.passed)
 print(response.body.result.sub_code)
 print(response.body.result.ext_face_info)
 print(response.body.result.ext_id_info) 
 
 
if __name__ == '__main__':
 CheckResult.main()

Go

  • Import dependency packages.

    go get github.com/alibabacloud-go/darabonba-openapi/v2/client
    go get github.com/alibabacloud-go/tea
  • Install the SDK. Obtain the latest dependency for your actual configuration.

    go get github.com/alibabacloud-go/cloudauth-intl-20220809/v3

Initialize API call example

package main

import (
 "fmt"
 openapi "github.com/alibabacloud-go/darabonba-openapi/client"
 cloudauth "github.com/alibabacloud-go/cloudauth-intl-20220809/client"
 "github.com/alibabacloud-go/tea/tea"
)

func main() {
 config := &openapi.Config{
 AccessKeyId: tea.String("your AccessKeyId"),
 AccessKeySecret: tea.String("your AccessKeySecret"),
 Endpoint: tea.String("cloudauth-intl.cn-hongkong.aliyuncs.com"),
 }
 client, _ := cloudauth.NewClient(config)

 request := &cloudauth.InitializeRequest{
 ProductCode: tea.String("eKYC"),
 Authorize: tea.String("T"),
 MetaInfo : tea.String("{\"apdidT****.0.0\"}"),
 MerchantBizId : tea.String("****"),
 MerchantUserId : tea.String("****"),
 }

 response, err := client.Initialize(request)

 if err != nil{
 fmt.Println(err)
 return
 }
 fmt.Println(*response.Body.RequestId)
 fmt.Println(*response.Body.Result.TransactionId)

}

CheckResult API call example

package main

import (
 "fmt"
 openapi "github.com/alibabacloud-go/darabonba-openapi/client"
 cloudauth "github.com/alibabacloud-go/cloudauth-intl-20220809/client"
 "github.com/alibabacloud-go/tea/tea"
)

func main() {
 config := &openapi.Config{
 AccessKeyId: tea.String("your AccessKeyId"),
 AccessKeySecret: tea.String("your AccessKeySecret"),
 Endpoint: tea.String("cloudauth-intl.cn-hongkong.aliyuncs.com"),
 }
 client, _ := cloudauth.NewClient(config)

 request := &cloudauth.CheckResultRequest{
 MerchantBizId : tea.String("****"),
 TransactionId : tea.String("G00****00911"),
 }

 response, err := client.CheckResult(request)

 if err != nil{
 fmt.Println(err)
 return
 }
 fmt.Println(*response.Body.RequestId)
 fmt.Println(*response.Body.Result.Passed)
 fmt.Println(*response.Body.Result.SubCode)
 fmt.Println(*response.Body.Result.ExtFaceInfo)
 fmt.Println(*response.Body.Result.ExtIdInfo)

}

.NET

The SDK in this example has the following dependencies. Obtain the latest dependency for your actual configuration.

  • Install using the .NET command line.

    dotnet add package AlibabaCloud.SDK.Cloudauth-intl20220809 --version 3.14.1
  • Install using the package manager.

    Install-Package AlibabaCloud.SDK.Cloudauth-intl20220809 -Version 3.14.1

Initialize API call example

using AlibabaCloud.SDK.Cloudauth_intl20220809.Models;
 
namespace Demo
{
 public class InitializeDemo
 {
 public static void Main(string[] args) {
 // Build client
 AlibabaCloud.OpenApiClient.Models.Config config = new AlibabaCloud.OpenApiClient.Models.Config()
 {
 AccessKeyId = "your access key id",
 AccessKeySecret = "your access key secret",
 Endpoint = "cloudauth-intl.cn-hongkong.aliyuncs.com",
 };
 AlibabaCloud.SDK.Cloudauth_intl20220809.Client client = new AlibabaCloud.SDK.Cloudauth_intl20220809.Client(config);
 
 
 // Build request
 AlibabaCloud.SDK.Cloudauth_intl20220809.Models.InitializeRequest request = new AlibabaCloud.SDK.Cloudauth_intl20220809.Models.InitializeRequest
 {
 ProductCode = "eKYC",
 Authorize = "T",
 MerchantBizId = "****",
 MerchantUserId = "****"
 MetaInfo = "****",
 };
 
 // Invoke API
 InitializeResponse response = client.Initialize(request);
 
 // Get result
 Console.WriteLine(response.StatusCode);
 Console.WriteLine(response.Body.RequestId);
 Console.WriteLine(response.Body.Code);
 Console.WriteLine(response.Body.Message);
 Console.WriteLine(response.Body.Result.TransactionId);
 }
 }
}

CheckResult API call example

using AlibabaCloud.SDK.Cloudauth_intl20220809.Models;
 
namespace Demo
{
 public class InitializeDemo
 {
 public static void Main(string[] args) {
 // Build client
 AlibabaCloud.OpenApiClient.Models.Config config = new AlibabaCloud.OpenApiClient.Models.Config()
 {
 AccessKeyId = "your access key id",
 AccessKeySecret = "your access key secret",
 Endpoint = "cloudauth-intl.cn-hongkong.aliyuncs.com",
 };
 AlibabaCloud.SDK.Cloudauth_intl20220809.Client client = new AlibabaCloud.SDK.Cloudauth_intl20220809.Client(config);
 
 
 // Build request
 AlibabaCloud.SDK.Cloudauth_intl20220809.Models.InitializeRequest request = new AlibabaCloud.SDK.Cloudauth_intl20220809.Models.InitializeRequest
 {
 ProductCode = "eKYC",
 Authorize = "T",
 MerchantBizId = "****",
 MerchantUserId = "****"
 MetaInfo = "****",
 };
 
 // Invoke API
 InitializeResponse response = client.Initialize(request);
 
 // Get result
 Console.WriteLine(response.StatusCode);
 Console.WriteLine(response.Body.RequestId);
 Console.WriteLine(response.Body.Code);
 Console.WriteLine(response.Body.Message);
 Console.WriteLine(response.Body.Result.TransactionId);
 }
 }
}

Node.js

  • Import the dependency package.

    npm install @alicloud/openapi-client
  • Install the SDK. Obtain the latest dependency for your actual configuration.

    npm install @alicloud/cloudauth-intl20220809@2.0.2

Initialize API call example

const {Config} = require("@alicloud/openapi-client");
const CloudAuth = require("@alicloud/cloudauth-intl20220809");
const Client = CloudAuth.default;
 
async function main(){
 
    // Build client
    const config = new Config({
        accessKeyId: "your accessKeyId",
        accessKeySecret: "your accessKeySecret",
        endpoint: "cloudauth-intl.cn-hongkong.aliyuncs.com"
    });
    const client = new Client(config);
 
    // Build request
    const request = new CloudAuth.InitializeRequest({
        productCode: "eKYC",
        authorize: "T",
        metaInfo : "***",
        merchantBizId : "***",
        merchantUserId :  "***"
    });
 
    // Invoke API
    const response = await client.initialize(request);
 
    // Get result
    console.log(response.body.requestId);
    console.log(response.body.result.transactionId);
 
}
 
main().then(function (response) {});

CheckResult API call example

const {Config} = require("@alicloud/openapi-client");
const CloudAuth = require("@alicloud/cloudauth-intl20220809");
const Client = CloudAuth.default;
 
async function main(){
 
    // Build client
    const config = new Config({
        accessKeyId: "your accessKeyId",
        accessKeySecret: "your accessKeySecret",
        endpoint: "cloudauth-intl.cn-hongkong.aliyuncs.com"
    });
    const client = new Client(config);
 
    // Build request
    const request = new CloudAuth.CheckResultRequest({
        merchantBizId: "XXXX",
        transactionId: "G00000****500911"
    });
 
    // Invoke API
    const response = await client.checkResult(request);
 
    // Get result
    console.log(response.body.requestId);
    console.log(response.body.result.passed);
    console.log(response.body.result.subCode);
    console.log(response.body.result.extFaceInfo);
    console.log(response.body.result.extIdInfo); 
}
 
main().then(function (response) {});