日本時間5月16日のContent Cloud Summitで、カスタムアプリにBox AI APIを活用する方法を紹介します。

詳細を表示

Signテンプレートを使用した署名リクエストの作成

ガイド Box Sign Signテンプレートを使用した署名リクエストの作成

Signテンプレートを使用した署名リクエストの作成

署名リクエストAPIを使用すると、署名リクエストの作成時に、あらかじめ定義されたBox Signテンプレートを使用できます。このテンプレートには、リクエストの作成時にデータが自動的に設定されるプレースホルダが含まれています。

テンプレートの作成

まず、リクエストに必要となるtextdatesignatureフィールドを含むBox Signテンプレートを作成します。

詳細な手順については、テンプレートに関するガイドを参照してください。

テンプレートIDの取得

署名リクエストを送信するには、使用するテンプレートのIDを渡す必要があります。template_idを確認するには、テンプレートのリストを取得します。

レスポンスは以下のようになります (説明のため省略されています)。レスポンス全体の例については、Box SignテンプレートAPIを参照してください。

また、具体的なパラメータの詳細については、署名リクエストを作成ガイドで確認できます。

"entries": [
  {
    "id": "6ae28666-03c4-4ac1-80db-06a90d3b1361",
    "name": "Contract.pdf",
    "parent_folder": {
      "id": "157064745449",
      "etag": "0",
      "type": "folder",
      "sequence_id": "0",
      "name": "My Sign Requests"
    },
    "source_files": [
      {
        "id": "1216382236853",
        "etag": "0",
        "type": "file",
        "sequence_id": "0",
        "sha1": "ca9c75cda0d5e3c3c9b0a1e6d42cb5e29a211ab6",
        "file_version": {
          "id": "1327286673653",
          "type": "file_version",
          "sha1": "ca9c75cda0d5e3c3c9b0a1e6d42cb5e29a211ab6"
        }
      }
    ],
    "signers": [
      {
        "email": "",
        "label": "reader",
        "public_id": "4Z8QZZV4",
        "role": "final_copy_reader",
        "is_in_person": false,
        "order": 1,
        "inputs": [...]
      },
      {
        "email": "",
        "label": "signer1",
        "public_id": "4Z8QZZV4",
        "role": "signer",
        "is_in_person": false,
        "order": 1,
        "inputs": [...]
      },
      {
        "email": "",
        "label": "signer2",
        "public_id": "13VK8794",
        "role": "signer",
        "is_in_person": false,
        "order": 1,
        "inputs": [
          {
            "document_tag_id": "signer2_full_name",
            "id": "da431975-55c5-4629-86ae-3fb12dda1386",
            "type": "text",
            "text_value": null,
            "is_required": true,
            "content_type": "full_name",
            ...
          },
          {
            "document_tag_id": null,
            "id": "b5a76a22-8d48-456e-a012-22a12fc91eb7",
            "type": "signature",
            ...
          },
          {
            "document_tag_id": null,
            "id": "7e0cc4ee-b878-4739-afde-acbf69b117b2",
            "type": "date",
            "date_value": null,
            ...
          }
        ],
      }
    ]
    ...
  }
]

署名リクエストの作成

テンプレートを使用して署名リクエストを作成するには、以下の手順に従います。

  1. リクエスト本文で、template_idを指定します。
    {
      "template_id": "6ae28666-03c4-4ac1-80db-06a90d3b1361",
      "parent_folder": {
        "id": "123456789",
        "etag": "0",
        "type": "folder",
        "sequence_id": "0",
        "name": "My Sign Requests"
      },
      ...
    }
  1. 署名者のメールアドレスと役割を追加します。
    {
      "template_id": "6ae28666-03c4-4ac1-80db-06a90d3b1361",
      "parent_folder": {
        "id": "157064745449",
        "etag": "0",
        "type": "folder",
        "sequence_id": "0",
        "name": "My Sign Requests"
      },
      "signers": [
        {
          "email": "signer1@sample.com",
          "role": "signer"
        },
        {
          "email": "signer2@sample.com",
          "role": "signer"
        }
      ]
    }
  1. prefill_tagsを追加してフィールドにデータを設定します。

署名者の順序がテンプレートに表示されている順序と同じであることを確認してください。テンプレートで最初にsigner1、次にsigner2がある場合、POSTリクエストでは、適切な署名者を割り当てるために同じにする必要があります。

{
  "template_id": "6ae28666-03c4-4ac1-80db-06a90d3b1361",
  "parent_folder": {
    "id": "123456789000",
    "etag": "0",
    "type": "folder",
    "sequence_id": "0",
    "name": "My Sign Requests"
  },
  "signers": [
    {
      "email": "signer1@sample.com",
      "role": "signer"
    },
    {
      "email": "signer2@sample.com",
      "role": "signer"
    }
  ],
  "prefill_tags": [
    {
      "document_tag_id": "signer1_full_name",
      "text_value": "Aaron Levie"
    },
    {
      "document_tag_id": "signer2_full_name",
      "text_value": "Albert Einstein"
    }
  ]
}
  1. POSTリクエストを送信します。レスポンスは以下のようになります。
    {
      "is_document_preparation_needed": false,
      ...
      "signers": [
        {
          "email": "reader@sample.com",
          "role": "final_copy_reader",
        },
        {
          "email": "signer1@sample.com",
          "role": "signer",
        },
        {
          "email": "signer2@sample.com",
          "role": "signer",
        }
      ],
      "id": "d02fefd2-15fa-431f-a127-2b4525616ae6",
      "prefill_tags": [
        {
          "document_tag_id": "signer1_full_name",
          "text_value": "Aaron Levie",
        },
        {
          "document_tag_id": "signer2_full_name",
          "text_value": "Albert Einstein",
        }
      ],
      "source_files": [],
      "parent_folder": {
        "id": "123456789000",
        "type": "folder",
        "name": "My Sign Requests"
      },
      "name": "Contract.pdf",
      "type": "sign-request",
      "status": "created",
      "sign_files": {
        "files": [
          {
            "id": "123456789",
            "type": "file",
            "name": "Contract.pdf",
          }
        ],
        "is_ready_for_download": true
      },
      "template_id": "6ae28666-03c4-4ac1-80db-06a90d3b1361"
    }