返回

如何使用 DocuSign eSignature API 移除签名页面上的多余字段?

php

利用 DocuSign eSignature API 移除签名页面上的多余字段

问题

在使用 DocuSign eSignature REST API 创建信封时,你可能会遇到签名页面上显示不必要的签名字段的情况。这可能会导致文档杂乱无章,并且签名者容易困惑。

解决方案

要移除签名页面上显示的多余字段,你可以通过指定自定义签名字段选项来创建信封定义。自定义签名字段定义允许你仅包含所需的签名字段,并排除不必要的字段。

步骤

以下是如何使用 DocuSign eSignature API 移除签名页面上显示的多余字段的步骤:

1. 创建签名字段定义

创建一个仅包含必需签名字段的签名字段定义列表。每个签名字段定义应指定字段的类型、位置和页面号。

2. 创建信封定义

在创建信封定义时,使用上面创建的签名字段定义列表来指定签名选项。将 customFieldOptions 属性设置为 true,以使用自定义签名字段定义。

3. 指定签名选项

在信封定义中,使用 signingOptions 参数来指定签名选项。将 customFieldOptions 属性设置为 true,以使用自定义签名字段定义。

代码示例

$signature_field_definitions = [
    [
        'type' => 'SIGN',
        'name' => 'Signature',
        'required' => true,
        'x' => 100,
        'y' => 100,
        'height' => 150,
        'width' => 200,
        'anchor_string' => 'signature_field',
        'anchor_type' => 'ANCHOR_STRING',
        'anchor_x_offset' => 0,
        'anchor_y_offset' => 0,
        'anchor_units' => 'MM',
        'page_number' => 1
    ]
];

$envelope_definition = new EnvelopeDefinition([
    'documents' => [
        [
            'document_base64' => base64_encode(file_get_contents($pdfFile)),
            'name' => $pdfFile
        ]
    ],
    'recipients' => [
        [
            'email' => $args['envelope_args']['signer_email'],
            'name' => $args['envelope_args']['signer_name'],
            'client_user_id' => $args['envelope_args']['signer_client_id'],
            'tabs' => [
                'signHereTabs' => $signature_field_definitions
            ]
        ]
    ]
]);

$envelope_definition->setSigningOptions(new SigningOptions([
    'custom_field_options' => true
]));

结论

通过使用自定义签名字段定义,你可以轻松地移除签名页面上显示的多余字段。这将创建更加简洁和清晰的签名体验,从而提高文档的可用性和效率。

常见问题解答

1. 我可以使用自定义签名字段定义来添加字段吗?

是的,你可以使用自定义签名字段定义来添加新字段或修改现有字段。

2. 如何将多个签名字段定义分组在一起?

你可以使用 groupTabs 参数将签名字段定义分组在一起。

3. 我可以在创建信封后编辑签名字段吗?

是的,你可以在创建信封后编辑签名字段,但需要使用 DraftStatus 为 “DRAFT” 的信封。

4. 自定义签名字段选项有什么限制?

自定义签名字段选项仅适用于签名和初始签名字段。

5. 如何在签名页面上指定字段的顺序?

使用 page_numbery 坐标可以指定签名页面上字段的顺序。