farit-slv / sumsub-client
cyberity.ru (sumsub.com) 的 API 客户端
0.8.4
2023-10-24 20:49 UTC
Requires
- php: >=7.1
- ext-json: *
- psr/http-client: ^1.0
- psr/http-factory: ^1.0
Requires (Dev)
- codeception/codeception: ^4.1
- codeception/module-asserts: ^1.3
- guzzlehttp/psr7: ^1.6
- symplify/easy-coding-standard: ^10.2
README
cyberity.ru (sumsub.com) 的 API 客户端
安装
composer require farit-slv/sumsub-client
客户端配置
客户端与任何 PSR-18 兼容的 HTTP 客户端 一起工作,并需要 PSR-17 HTTP 工厂。
use FaritSlv\SumSub\Client; use FaritSlv\SumSub\Request\RequestSigner; $requestSigner = new RequestSigner('Your APP token', 'Your secret'); $client = new Client( $psr18HttpClient, $psr17HttpFactory, $requestSigner );
获取 SDK 访问令牌
use FaritSlv\SumSub\Request\AccessTokenRequest; $externalUserId = 'some-id'; $levelName = 'some-level'; $ttlInSeconds = 3600; $response = $client->getAccessToken(new AccessTokenRequest($externalUserId, $levelName, $ttlInSeconds)); $accessToken = $response->getToken();
通过申请者 ID 获取申请者数据
use FaritSlv\SumSub\Request\ApplicantDataRequest; $applicantId = 'some-id'; $response = $client->getApplicantData(new ApplicantDataRequest($applicantId)); $applicantData = $response->asArray();
通过外部用户 ID 获取申请者数据
use FaritSlv\SumSub\Request\ApplicantDataRequest; $externalUserId = 'some-id'; $response = $client->getApplicantData(new ApplicantDataRequest(null, $externalUserId)); $applicantData = $response->asArray();
重置申请者
use FaritSlv\SumSub\Request\ApplicantRequest; $applicantId = 'some-id'; $client->resetApplicant(new ApplicantRequest($applicantId));
获取申请者状态
use FaritSlv\SumSub\Request\ApplicantRequest; $applicantId = 'some-id'; $response = $client->getApplicantStatus(new ApplicantRequest($applicantId)); $applicantStatus = $response->asArray();
获取文档图像
use FaritSlv\SumSub\Request\DocumentImageRequest; $inspectionId = 'some-id'; $imageId = '123'; $response = $client->getDocumentImages(new DocumentImageRequest($inspectionId, $imageId)); $stream = $response->asStream(); $contentType = $response->getContentType();
获取检查项
use FaritSlv\SumSub\Request\InspectionChecksRequest; $inspectionId = 'some-id'; $response = $client->getInspectionChecks(new InspectionChecksRequest($inspectionId)); $checksData = $response->asArray();