farit-slv/sumsub-client

API client for cyberity.ru (sumsub.com)

0.8.4 2023-10-24 20:49 UTC

This package is auto-updated.

Last update: 2024-10-24 23:06:24 UTC


README

PHP 7.1 PHP 7.2 PHP 7.3 PHP 7.4 PHP 8.0 PHP 8.1

API client for cyberity.ru (sumsub.com)

Installation

composer require farit-slv/sumsub-client

Client configuration

Client works with any PSR-18 compatible HTTP client and require PSR-17 HTTP factory.

use FaritSlv\SumSub\Client;
use FaritSlv\SumSub\Request\RequestSigner;

$requestSigner = new RequestSigner('Your APP token', 'Your secret');

$client = new Client(
    $psr18HttpClient,
    $psr17HttpFactory,
    $requestSigner
);

Getting SDKs access token

use FaritSlv\SumSub\Request\AccessTokenRequest;

$externalUserId = 'some-id';
$levelName = 'some-level';
$ttlInSeconds = 3600;
$response = $client->getAccessToken(new AccessTokenRequest($externalUserId, $levelName, $ttlInSeconds));
$accessToken = $response->getToken();

Getting applicant data by applicant id

use FaritSlv\SumSub\Request\ApplicantDataRequest;

$applicantId = 'some-id';
$response = $client->getApplicantData(new ApplicantDataRequest($applicantId));
$applicantData = $response->asArray();

Getting applicant data by external user id

use FaritSlv\SumSub\Request\ApplicantDataRequest;

$externalUserId = 'some-id';
$response = $client->getApplicantData(new ApplicantDataRequest(null, $externalUserId));
$applicantData = $response->asArray();

Resetting an applicant

use FaritSlv\SumSub\Request\ApplicantRequest;

$applicantId = 'some-id';
$client->resetApplicant(new ApplicantRequest($applicantId));

Getting applicant status

use FaritSlv\SumSub\Request\ApplicantRequest;

$applicantId = 'some-id';
$response = $client->getApplicantStatus(new ApplicantRequest($applicantId));
$applicantStatus = $response->asArray();

Getting document images

use FaritSlv\SumSub\Request\DocumentImageRequest;

$inspectionId = 'some-id';
$imageId = '123';
$response = $client->getDocumentImages(new DocumentImageRequest($inspectionId, $imageId));
$stream = $response->asStream();
$contentType = $response->getContentType();

Getting inspection checks

use FaritSlv\SumSub\Request\InspectionChecksRequest;

$inspectionId = 'some-id';
$response = $client->getInspectionChecks(new InspectionChecksRequest($inspectionId));
$checksData = $response->asArray();