Box Developer Documentation
 
    Latest version

    Create Box Sign request

    post
    https://api.box.com/2.0
    /sign_requests

    This endpoint is in the version 2024.0. No changes are required to continue using it. For more details, see Box API versioning.

    Creates a signature request. This involves preparing a document for signing and sending the signature request to signers.

    Request

    bearer [ACCESS_TOKEN]
    application/json

    Request Body

    booleanin bodyoptional
    true

    Reminds signers to sign a document on day 3, 8, 13 and 18. Reminders are only sent to outstanding signers.

    booleanin bodyoptional
    true
    true

    Disables the usage of signatures generated by typing (text).

    integerin bodyoptional
    2
    0
    730

    Set the number of days after which the created signature request will automatically expire if not completed. By default, we do not apply any expiration date on signature requests, and the signature request does not expire.

    stringin bodyoptional
    "https://declined-redirect.com"

    The uri that a signer will be redirected to after declining to sign a document.

    stringin bodyoptional
    "Hello! Please sign the document below"

    Message to include in sign request email. The field is cleaned through sanitization of specific characters. However, some html tags are allowed. Links included in the message are also converted to hyperlinks in the email. The message may contain the following html tags including a, abbr, acronym, b, blockquote, code, em, i, ul, li, ol, and strong. Be aware that when the text to html ratio is too high, the email may end up in spam filters. Custom styles on these tags are not allowed. If this field is not passed, a default message will be used.

    stringin bodyoptional
    "Sign Request from Acme"

    Subject of sign request email. This is cleaned by sign request. If this field is not passed, a default subject will be used.

    stringin bodyoptional
    "123"

    This can be used to reference an ID in an external system that the sign request is related to.

    stringin bodyoptional
    "Box"

    Used as an optional system name to appear in the signature log next to the signers who have been assigned the embed_url_external_id.

    booleanin bodyoptional
    true

    Indicates if the sender should receive a prepare_url in the response to complete document preparation using the UI.

    stringin bodyoptional
    "name"

    Name of the signature request.

    The destination folder to place final, signed document and signing log. Only ID and type fields are required. The root folder, folder ID 0, cannot be used and can also not be null.

    When this value is not passed in when the signature request, then we will use a default folder which is either the parent folder of the first source file in the payload if we have the permission to upload to that folder or a folder called "My Sign Requests".

    object arrayin bodyoptional

    When a document contains sign-related tags in the content, you can prefill them using this prefill_tags by referencing the 'id' of the tag as the external_id field of the prefill tag.

    booleanin bodyoptional
    true

    Checkbox prefill value

    string (date)in bodyoptional
    "2021-04-26"

    Date prefill value

    stringin bodyoptional
    "1234"

    This references the ID of a specific tag contained in a file of the signature request.

    stringin bodyoptional
    "text"

    Text prefill value

    stringin bodyoptional
    "https://www.example.com"

    When specified, the signature request will be redirected to this url when a document is signed.

    stringin bodyoptional
    "blue"

    Force a specific color for the signature (blue, black, or red)

    Value is one of blue,black,red

    object arrayin bodyrequired

    Array of signers for the signature request. 35 is the max number of signers permitted.

    Note: It may happen that some signers belong to conflicting segments (user groups). This means that due to the security policies, users are assigned to segments to prevent exchanges or communication that could lead to ethical conflicts. In such a case, an attempt to send the sign request will result in an error.

    Read more about segments and ethical walls.

    stringin bodyoptional
    "https://declined-example.com"

    The URL that a signer will be redirect to after declining to sign a document. Defining this URL overrides default or global declined redirect URL settings for a specific signer.

    stringin bodyoptional
    "example@gmail.com"

    Email address of the signer. The email address of the signer is required when making signature requests, except when using templates that are configured to include emails.

    "1234"

    User ID for the signer in an external application responsible for authentication when accessing the embed URL.

    booleanin bodyoptional
    true

    Used in combination with an embed URL for a sender. After the sender signs, they are redirected to the next in_person signer.

    booleanin bodyoptional
    true

    If set to true, the signer will need to log in to a Box account before signing the request. If the signer does not have an existing account, they will have the option to create a free Box account.

    integerin bodyoptional
    2
    0

    Order of the signer

    stringin bodyoptional
    "SecretPassword123"

    If set, the signer is required to enter the password before they are able to sign a document. This field is write only.

    stringin bodyoptional
    "https://example.com"

    The URL that a signer will be redirected to after signing a document. Defining this URL overrides default or global redirect URL settings for a specific signer. If no declined redirect URL is specified, this URL will be used for decline actions as well.

    stringin bodyoptional
    "signer"
    "signer"

    Defines the role of the signer in the signature request. A signer must sign the document and an approver must approve the document. A final_copy_reader only receives the final signed document and signing log.

    Value is one of signer,approver,final_copy_reader

    stringin bodyoptional
    "cd4ff89-8fc1-42cf-8b29-1890dedd26d7"

    If set, signers who have the same value will be assigned to the same input and to the same signer group. A signer group is not a Box Group. It is an entity that belongs to a Sign Request and can only be used/accessed within this Sign Request. A signer group is expected to have more than one signer. If the provided value is only used for one signer, this value will be ignored and request will be handled as it was intended for an individual signer. The value provided can be any string and only used to determine which signers belongs to same group. A successful response will provide a generated UUID value instead for signers in the same signer group.

    booleanin bodyoptional
    false

    If true, no emails about the sign request will be sent

    File (Base) arrayin bodyoptional

    List of files to create a signing document from. This is currently limited to ten files. Only the ID and type fields are required for each file.

    stringin bodyoptional
    "123075213-af2c8822-3ef2-4952-8557-52d69c2fe9cb"

    When a signature request is created from a template this field will indicate the id of that template.

    Response

    application/jsonBox Sign request

    Returns a Box Sign request object.

    application/jsonClient error

    An unexpected client error.

    post
    Create Box Sign request
    You can now try out some of our APIs live, right here in the documentation.
    Log in

    Request Example

    cURL
    curl -i -X POST "https://api.box.com/2.0/sign_requests" \
         -H "authorization: Bearer <ACCESS_TOKEN>" \
         -d '{
           "signers": [
              {
                "role": "signer",
                "email": "example_email@box.com"
              }
            ],
           "source_files": [
              {
                "type": "file",
                "id": "123456789"
              }
           ],
           "parent_folder":
              {
                "type": "folder",
                "id": "0987654321"
              }
         }'

    Response Example

    {
      "id": "12345",
      "type": "sign-request",
      "are_reminders_enabled": true,
      "are_text_signatures_enabled": true,
      "auto_expire_at": "2021-04-26T08:12:13.982Z",
      "collaborator_level": "owner",
      "days_valid": 2,
      "declined_redirect_url": "https://declined-redirect.com",
      "email_message": "Hello! Please sign the document below",
      "email_subject": "Sign Request from Acme",
      "external_id": "123",
      "external_system_name": "Box",
      "is_document_preparation_needed": true,
      "name": "name",
      "parent_folder": {
        "id": "12345",
        "type": "folder",
        "etag": "1",
        "name": "Contracts",
        "sequence_id": "3"
      },
      "prefill_tags": [
        {
          "checkbox_value": true,
          "date_value": "2021-04-26",
          "document_tag_id": "1234",
          "text_value": "text"
        }
      ],
      "prepare_url": "https://prepareurl.com",
      "redirect_url": "https://www.example.com",
      "sender_email": "sender@box.com",
      "sender_id": 12345,
      "sign_files": {
        "files": [
          {
            "etag": "1",
            "id": "12345",
            "type": "file",
            "file_version": {
              "id": "12345",
              "type": "file_version",
              "sha1": "134b65991ed521fcfe4724b7d814ab8ded5185dc"
            },
            "name": "Contract.pdf",
            "sequence_id": "3",
            "sha1": "85136C79CBF9FE36BB9D05D0639C70C265C18D37"
          }
        ],
        "is_ready_for_download": true
      },
      "signature_color": "blue",
      "signers": [
        {
          "declined_redirect_url": "https://declined-example.com",
          "email": "example@gmail.com",
          "embed_url_external_user_id": "1234",
          "is_in_person": true,
          "login_required": true,
          "order": 2,
          "password": "SecretPassword123",
          "redirect_url": "https://example.com",
          "role": "signer",
          "signer_group_id": "cd4ff89-8fc1-42cf-8b29-1890dedd26d7",
          "suppress_notifications": false,
          "embed_url": "https://example.com",
          "has_viewed_document": true,
          "iframeable_embed_url": "https://app.box.com/embed/sign/document/gfhr4222-a331-494b-808b-79bc7f3992a3/f14d7098-a331-494b-808b-79bc7f3992a4",
          "inputs": [
            {
              "checkbox_value": true,
              "date_value": "2021-04-26",
              "document_tag_id": "1234",
              "text_value": "text",
              "content_type": "signature",
              "page_index": 4,
              "read_only": true,
              "type": "text"
            }
          ],
          "signer_decision": {
            "additional_info": "Requesting changes before signing.",
            "finalized_at": "2021-04-26T08:12:13.982Z",
            "type": "signed"
          }
        }
      ],
      "signing_log": {
        "id": "12345",
        "type": "file",
        "etag": "1",
        "file_version": {
          "id": "12345",
          "type": "file_version",
          "sha1": "134b65991ed521fcfe4724b7d814ab8ded5185dc"
        },
        "name": "Contract.pdf",
        "sequence_id": "3",
        "sha1": "85136C79CBF9FE36BB9D05D0639C70C265C18D37"
      },
      "source_files": [
        {
          "etag": "1",
          "id": "12345",
          "type": "file"
        }
      ],
      "status": "converting",
      "template_id": "123075213-af2c8822-3ef2-4952-8557-52d69c2fe9cb"
    }