signaturit/signaturit-sdk

Signaturit PHP SDK

1.2.0 2022-01-04 15:39 UTC

README

⚠️ 不要使用主分支 ⚠️

Signaturit PHP SDK

Quality Gate Status

本软件包是Signaturit API的PHP包装器。如果您还没有阅读文档,可以在此处查看:这里

您需要至少PHP ^7.2^8.0 来使用此软件包(https://php.ac.cn/supported-versions.php)。

配置

安装SDK的推荐方式是通过 Composer

composer require signaturit/signaturit-sdk

然后从您的脚本中导入Composer的autoload.php文件,并实例化Client类,传递您的API访问令牌。

require_once __DIR__.'/vendor/autoload.php';

$accessToken = 'OTllYjUwM2NhYmNjNmJlYTZlNWEzNWYzYmZjNTRiZWI2YjU0ZjUxNzUwZDRjZjEwZTA0ZTFkZWQwZGExNDM3ZQ';

$client = new Signaturit\Client($accessToken);

请注意,默认情况下客户端将使用我们的沙箱API。当您准备好开始使用生产环境时,只需获取正确的访问令牌并将额外的参数传递给构造函数即可。

$client = new Signaturit\Client($accessToken, true);

示例

签名

统计签名请求数量

统计您的签名请求数量。

$response = $client->countSignatures();

获取所有签名请求

使用不同的过滤器检索您的签名请求的所有数据。

所有签名
$response = $client->getSignatures();
获取最后50个签名
$response = $client->getSignatures(50);
获取带有自定义字段"crm_id"的签名
$response = $client->getSignatures(100, 0, ['crm_id' => 'CUSTOM_ID'])

获取签名请求

通过传递其ID获取单个签名请求的信息。

$response = $client->getSignature('a066298d-2877-11e4-b641-080027ea3a6e');

签名请求

创建新的签名请求。您可以在以下链接中查看所有签名 参数

$filePath   = '/documents/contracts/receipt250.pdf';
$recipients = ['email' => 'john.doe@example.com', 'name' => 'John Doe'];
$options    = ['subject' => 'Receipt no. 250', 'body' => 'Please sign the receipt'];

$response = $client->createSignature($filePath, $recipients, $options);

您可以在请求中添加自定义信息

$filePath   = '/documents/contracts/receipt250.pdf';
$recipients = ['email' => 'john.doe@example.com', 'name' => 'John Doe'];
$options    = ['subject' => 'Receipt no. 250', 'body' => 'Please sign the receipt', 'data' => ['crm_id' => '45673']];

$response = $client->createSignature($filePath, $recipients, $options);

您可以发送填写了字段的模板

$recipients = ['email' => 'john.doe@example.com', 'name' => 'John Doe'];
$options    = ['subject' => 'Receipt no. 250', 'body' => 'Please sign the receipt', 'templates' => ['template_name'], 'data' => ['widget_id' => 'default value']];

$response = $client->createSignature([], $recipients, $options);

取消签名请求

取消签名请求。

$response = $client->cancelSignature('a066298d-2877-11e4-b641-080027ea3a6e');

发送提醒

发送提醒电子邮件。

$response = $client->sendSignatureReminder('a066298d-2877-11e4-b641-080027ea3a6e');

获取审计跟踪

获取签名请求文档的审计跟踪。

$response = $client->downloadAuditTrail('a066298d-2877-11e4-b641-080027ea3a6e', 'd474a1eb-2877-11e4-b641-080027ea3a6e');

获取已签署文档

获取签名请求文档的已签署文档。

$response = $client->downloadSignedDocument('a066298d-2877-11e4-b641-080027ea3a6e', 'd474a1eb-2877-11e4-b641-080027ea3a6e');

品牌化

获取品牌

获取所有账户品牌。

$response = $client->getBrandings();

获取品牌

获取单个品牌。

$response = $client->getBranding('6472aad7-2877-11e4-b641-080027ea3a6e');

创建品牌

创建新的品牌。您可以在以下链接中查看所有品牌 参数

$options = [
    'layout_color'      => '#FFBF00',
    'text_color'        => '#2A1B0A',
    'application_texts' => ['sign_button' => 'Sign!']
];

$response = $client->createBranding($options);

更新品牌

更新单个品牌。

$options = ['application_texts' => ['send_button' => 'Send!']];

$response = $client->updateBranding('6472aad7-2877-11e4-b641-080027ea3a6e', $options);

模板

获取所有模板

检索您的模板的所有数据。

$response = $client->getTemplates();

电子邮件

获取电子邮件

#### 获取所有认证电子邮件

response = client->getEmails()

#### 获取最后50封电子邮件

response = client->getEmails(50)

#### 以50个结果为一组导航所有电子邮件

response = client->getEmails(50, 50)

统计电子邮件

统计所有认证电子邮件

response = client->countEmails()

获取电子邮件

获取单个电子邮件

client->getEmail('EMAIL_ID')

创建电子邮件

创建新的认证电子邮件。

response = client.createEmail(
    ['demo.pdf', 'receipt.pdf'],
    ['email' => 'john.doe@signaturit.com', 'name' => 'Mr John'],
    'Php subject',
    'Php body',
    []
)

获取审计跟踪文档

获取电子邮件请求的审计跟踪文档。

response = client.downloadEmailAuditTrail('EMAIL_ID','CERTIFICATE_ID')

短信

获取所有短信

response = client->getSms()

统计电子邮件

统计所有认证短信

response = client->countSms()

获取短信

获取单个短信

client->getSms('SMS_ID')

创建短信

创建新的认证短信。

response = client.createSms(
    [],
    ['phone' => '34123456', 'name' => 'Mr John'],
    'Php body',
    []
)

获取审计跟踪文档

获取短信请求的审计跟踪文档。

response = client.downloadSmsAuditTrail('SMS_ID','CERTIFICATE_ID')

团队

获取用户

获取所有账户用户

$response = $client->getUsers();

获取座位

获取所有账户座位

$response = $client->getSeats();

获取用户

获取单个用户

$response = $client->getUser('USER_ID');

邀请用户加入您的团队

邀请用户加入团队

$response = $client->inviteUser('bob.soap@signaturit.com', 'admin');

更改用户角色

更改用户角色

$response = $client->changeUserRole('USER_ID', 'member');

移除用户

从团队中移除用户

$response = $client->removeUser('USER_ID');

移除座位

从团队中移除座位

$response = $client->removeSeat('SEAT_ID');

获取组

获取所有账户组

$response = $client->getGroups();

获取组

获取单个组

$response = $client->getGroup('GROUP_ID');

创建组

创建新的组

$response = $client->createGroup('test_node');

更新组

更新组名

$response = $client->updateGroup('GROUP_ID', 'new_name');

删除组

删除一个组

$response = $client->deleteGroup('GROUP_ID');

将管理员添加到组

将管理员添加到组

$response = $client->addManagerToGroup('GROUP_ID', 'USER_ID');

将管理员添加到组

将成员添加到组

$response = $client->addMemberToGroup('GROUP_ID', 'USER_ID');

从组中删除管理员

从组中移除管理员

$response = $client->removeManagerFromGroup('GROUP_ID', 'USER_ID');

从组中删除成员

从组中移除成员

$response  = $client->removeMemberFromGroup('GROUP_ID', 'USER_ID');

联系人

获取联系人

获取所有联系人

$response = $client->getContacts();

获取联系人

获取单个联系人

$response = $client->getContact('CONTACT_ID');

创建联系人

创建新的联系人

$response = $client->createContact('email@signaturit.com', 'name');

更新联系人

更新联系人

$response = $client->updateContact('CONTACT_ID', 'new_email@signaturit.com', 'name1');

删除联系人

删除一个联系人

$response = $client->deleteContact('CONTACT_ID');

获取订阅

获取所有订阅

$response = $client->getSubscriptions();

获取订阅

获取单个订阅

$response = $client->getSubscription('SUBSCRIPTION_ID');

创建订阅

创建新的订阅

$response = $client->createSubscription('http://httpbin.org/post', 'email_processed');

更新订阅

更新联系人

$response = $client->updateSubscription('SUBSCRIPTION_ID', null, 'email_delivered');

删除订阅

删除一个订阅

$response = $client->deleteSubscription('SUBSCRIPTION_ID');