marciodojr/autentique

用于autentique的Sdk

v1.2.3 2021-08-31 18:50 UTC

README

使用PHP编写的数字签名文档的Autentique SDK。

Codacy Badge Build Status StyleCI Coverage Status

注意

此SDK是因第三方项目与Autentique集成的需要而构建的。发布时考虑到它可能对其他人也有用。此存储库(及其所有者)与Autentique没有任何关联。

如何安装

composer require marciodojr/autentique

如何使用

use Mdojr\Autentique\Autentique;
use Mdojr\Autentique\Endpoint;
use GuzzleHttp\Client;

$client = new Client([
    'base_uri' => Endpoint::PRODUCTION,
    'headers' => [
        'X-Autntiq-Api' => $productionToken
    ]
]);

$autentique = new Autentique($client);

// Manipulação de conta
$acc = $autentique->account();
// Manipulação de Documentos
$doc = $autentique->document();
// Manipulação de Assinaturas
$sign = $autentique->signature();
// Manipulação de Pastas
$folder = $autentique->folder();

账户

账户信息

$result = $acc->info();

文档

列出不在文件夹中的所有文档

$page = 1;
$count = 60;
$s = ''; // opcional
$result = $doc->listNotInFolder($page, $count, $s);

检索特定文档的信息

$uuid = '9ab23456325c40c2a5023051cf4bbf0e' // uuid do documento
$result = $doc->retrieve($uuid);

仅列出不在文件夹中的已接收文档

$page = 1;
$count = 60;
$s = ''; // opcional
$doc->listReceivedNotInFolder($page, $count, $s);

仅列出已发送文档

$page = 1;
$count = 60;
$s = ''; // opcional
$doc->listOnlySent($page, $count, $s);

创建新文档

$nome = 'Contrato de aluguel';
$partes = [
    [
        'email' => 'umemail@gmail.com',
        'funcao' => 'assinar'
    ]
];
$arquivo = fopen('meu_arquivo.txt', 'r');
$rejeitavel = false;
$mensagem = 'Mensagem qualquer'; // opcional
$lembreteAssinatura = false; // opcional
$lembreteVencimento = true; // opcional
$frequencia = 'semanal'; // ou 'diario' opcional
$diasVencimento = 7; // opcional
$dataVencimento = '2018-09-10'; // opcional
$qrCode = 'B';  // opctional

$doc->create(
    $nome,
    $partes,
    $arquivo,
    $rejeitavel,
    $mensagem,
    $lembreteAssinatura,
    $lembreteVencimento,
    $frequencia,
    $diasVencimento,
    $dataVencimento,
    $qrCode
);

重新发送签名邮件给未签名/拒绝的签署者

$uuid = '9ab23456325c40c2a5023051cf4bbf0e'; // uuid do documento
$doc->resendNotSignedOrRejected($uuid);

删除文档

$uuid = '9ab23456325c40c2a5023051cf4bbf0e'; // uuid do documento
$result = $doc->deleteDocument($uuid);

签名

检索签名信息

$token = 'bf0e456325c40c2a5023051cf4';
$result = $sign->retrieve($token);

签署者接受文档

$token = 'bf0e456325c40c2a5023051cf4';
$result = $sign->accept($token);

签署者拒绝文档(如果可能)

$token = 'bf0e456325c40c2a5023051cf4';
$motivo = 'Não estou de acordo com os termos';
$result = $sign->reject($token, $motivo);

文件夹

列出文件夹

$s = ''; // opcional
$result = $folder->list($s);

检索文件夹信息

$uuid = '456325c40c2a5023051cf456325c40';
$result = $folder->retrieve($uuid);

列出文件夹中的文档

$uuid = '456325c40c2a5023051cf456325c40';
$s = '' // opcional
$result = $folder->listDocuments($uuid, $s);

创建文件夹

$nome = 'Pasta XYZ';
$result = $folder->create($nome);

将文档移动到文件夹

$folderUuid = '456325c40c2a5023051cf456325c40';
$docSignUuids = [
    '456325c40c2a5023051cf56656325c40',
    '456325c40c2a502345451cf456325c40',
    '456325c40c2a502305ffsdf456325c40'
]; // token de assinaturas de documentos
$result = $folder->moveDocumentsTo($folderUuid, $docSignUuids);

更新文件夹信息

$uuid = '456325c40c2a5023051cf456325c40';
$nome = 'Outro nome';
$result = $folder->update($uuid, $nome);

删除文件夹(文件将移动到“所有”文件夹)

$uuid = '456325c40c2a5023051cf456325c40';
$result = $folder->deleteFolder($uuid);

有关参数的更多信息,请参阅api文档

https://autentique.docs.apiary.io

如何测试

默认情况下,所有请求都是模拟的

composer test

如果您想测试sandbox环境

export AUTENTIQUE_TOKEN=sandbox_token
export AUTENTIQUE_ENDPOINT=endpoint_url
composer test

许可

MIT

待办事项

  • 测试文件夹和签名的4xx错误。
  • 处理连接失败(5xx)错误。