{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://raw.githubusercontent.com/api-evangelist/signwell/main/json-schema/UpdateDocumentAndSendRequest.json",
  "title": "UpdateDocumentAndSendRequest",
  "type": "object",
  "properties": {
    "test_mode": {
      "type": "boolean",
      "default": false,
      "description": "Set to `true` to enable Test Mode. Documents created with Test Mode do not count towards API billing and are not legally binding. Defaults to `false`"
    },
    "name": {
      "type": "string",
      "description": "The name of the document."
    },
    "subject": {
      "type": "string",
      "description": "Email subject for the signature request that recipients will see. Defaults to the default system subject or a template subject (if the document is created from a template)."
    },
    "message": {
      "type": "string",
      "description": "Email message for the signature request that recipients will see. Defaults to the default system message or a template message (if the document is created from a template)."
    },
    "expires_in": {
      "type": "integer",
      "minimum": 1,
      "description": "Number of days before the signature request expires. Defaults to the account expiration setting or template expiration (if the document is created from a template)."
    },
    "reminders": {
      "type": "boolean",
      "default": true,
      "description": "Whether to send signing reminders to recipients. Reminders are sent on day 3, day 6, and day 10 if set to `true`. Defaults to `true`."
    },
    "apply_signing_order": {
      "type": "boolean",
      "default": false,
      "description": "When set to `true` recipients will sign one at a time in the order of the `recipients` collection of this request."
    },
    "api_application_id": {
      "type": "string",
      "format": "uuid",
      "description": "Unique identifier for API Application settings to use. API Applications are optional and mainly used when isolating OAuth apps or for more control over embedded API settings"
    },
    "embedded_signing": {
      "type": "boolean",
      "default": false,
      "description": "When set to `true` it enables embedded signing in your website/web application. Embedded functionality works with an iFrame and email authentication is disabled. :embedded_signinig defaults to `false`."
    },
    "embedded_signing_notifications": {
      "type": "boolean",
      "default": false,
      "description": "On embedding signing, document owners (and CC'd contacts) do not get a notification email when documents have been completed. Setting this param to `true` will send out those final completed notifications. Default is `false`"
    },
    "custom_requester_name": {
      "type": "string",
      "description": "Sets the custom requester name for the document. When set, this is the name used for all email communications, signing notifications, and in the audit file."
    },
    "custom_requester_email": {
      "type": "string",
      "format": "email",
      "description": "Sets the custom requester email for the document. When set, this is the email used for all email communications, signing notifications, and in the audit file."
    },
    "redirect_url": {
      "type": "string",
      "format": "url",
      "description": "A URL that recipients are redirected to after successfully signing a document."
    },
    "allow_decline": {
      "type": "boolean",
      "default": true,
      "description": "Whether to allow recipients the option to decline signing a document. If multiple signers are involved in a document, any single recipient can cancel the entire document signing process by declining to sign."
    },
    "allow_reassign": {
      "type": "boolean",
      "default": true,
      "description": "In some cases a signer is not the right person to sign and may need to reassign their signing responsibilities to another person. This feature allows them to reassign the document to someone else."
    },
    "decline_redirect_url": {
      "type": "string",
      "format": "url",
      "description": "A URL that recipients are redirected to if the document is declined."
    },
    "metadata": {
      "type": "object",
      "additionalProperties": {
        "type": "string"
      },
      "description": "Optional key-value data that can be associated with the document. If set, will be available every time the document data is returned."
    },
    "labels": {
      "$ref": "#/components/schemas/LabelsUpdate"
    },
    "checkbox_groups": {
      "$ref": "#/components/schemas/CheckboxGroups"
    }
  }
}