{
  "openapi": "3.1.0",
  "info": {
    "title": "Verdocs Platform API",
    "version": "6.10.4",
    "description": "The Verdocs Platform API provides endpoints for performing all common operations in the Verdocs Platform. API endpoints follow REST conventions and use standard HTTP methods for most operations. All calls are made via a common endpoint [https://api.verdocs.com](https://api.verdocs.com) and use JSON formatting for both request and response bodies.",
    "termsOfService": "https://verdocs.com/en/eula/",
    "license": {
      "name": "MIT",
      "url": "https://opensource.org/licenses/MIT"
    },
    "contact": {
      "name": "Verdocs Support",
      "url": "https://verdocs.com/en/contact/",
      "email": "support@verdocs.com"
    }
  },
  "externalDocs": {
    "description": "Verdocs Developer Portal",
    "url": "https://developers.verdocs.com/"
  },
  "servers": [
    {
      "url": "https://api.verdocs.com",
      "description": "Production API endpoint."
    }
  ],
  "tags": [
    {
      "name": "Organizations",
      "description": "An Organization represents a logical workspace that groups users, documents, and resources under a shared administrative domain. Organizations enable multi-tenant management by isolating data and permissions between different teams or companies. Each organization typically contains its own users, templates, envelopes, and settings, ensuring that activity and access remain scoped to that organization. Organizations are commonly used to support multiple teams, departments, or clients within a single platform.",
      "x-displayName": "Organizations"
    },
    {
      "name": "Envelopes",
      "description": "An envelope is a digital package that groups one or more documents together with their signing instructions, recipients, and metadata for the purpose of routing, signing, and tracking the documents in an electronic signature workflow.",
      "x-displayName": "Envelopes"
    },
    {
      "name": "Envelope Documents",
      "description": "The files that need to be signed or reviewed (PDFs, contracts, etc.), within an envelope.",
      "x-displayName": "Envelope Documents"
    },
    {
      "name": "Signatures and Initials",
      "description": "Signatures & Initials are the visual marks applied by recipients to indicate approval or acknowledgment of a document. A signature represents a recipient's full legal signature, while an initial is typically used to confirm review of specific sections or pages. In the Verdocs platform, signatures and initials are placed within designated signing fields in a document. When a recipient completes a signing step, the platform captures the signature or initials along with metadata such as the timestamp, signer identity, and audit trail information.",
      "x-displayName": "Signatures and Initials"
    },
    {
      "name": "API Keys",
      "description": "API keys are required when using Verdocs technpologies. Please log in to your account to view/generate your API Key.",
      "x-displayName": "API Keys"
    },
    {
      "name": "Organization Contacts",
      "description": "Endpoints for managing organization contacts",
      "x-displayName": "Organization Contacts"
    },
    {
      "name": "Organization Invitations",
      "description": "Endpoints for managing organization invitations",
      "x-displayName": "Organization Invitations"
    },
    {
      "name": "Organization Members",
      "description": "Endpoints for managing organization members",
      "x-displayName": "Organization Members"
    },
    {
      "name": "Webhooks",
      "description": "Webhooks are HTTP callbacks that notify external systems when specific events occur within the platform. Common events include document signing completion, envelope status changes, or recipient actions. Webhooks enable real-time integration with external applications, allowing automated workflows, notifications, and auditing.",
      "x-displayName": "Webhooks"
    },
    {
      "name": "Fields",
      "description": "Fields are interactive elements placed within a document that collect or display information during the signing process. Fields define where recipients must provide input or review information. Common field types include signature fields, initials, text inputs, dates, checkboxes, and dropdown selections. Fields can be assigned to specific recipients and may include validation rules, default values, or formatting constraints. Fields ensure that documents capture the required information and guide recipients through the signing workflow.",
      "x-displayName": "Fields"
    },
    {
      "name": "Roles",
      "description": "Roles define the permissions and responsibilities assigned to users or recipients within the system. Roles determine what actions a user can perform, such as creating envelopes, approving documents, managing templates, or accessing administrative settings. Assigning roles ensures that users only have access to the resources and actions appropriate for their responsibilities.",
      "x-displayName": "Roles"
    },
    {
      "name": "Template Documents",
      "description": "A Template Document is a single file included within a template that defines part of the content and structure for a signing workflow. Template documents can contain predefined fields, placeholders, and formatting that standardize the signing process. When a template is used to create an envelope, each template document is included in the signing transaction according to the template configuration.",
      "x-displayName": "Template Documents"
    },
    {
      "name": "Templates",
      "description": "A Template is a reusable document configuration that defines the structure of a signing workflow. Templates typically include one or more documents, predefined fields, recipient roles, and routing rules. By using templates, organizations can standardize frequently used agreements and automate document preparation. When a template is used, the platform generates a new signing transaction based on the template's configuration, allowing documents to be sent for signature quickly and consistently.",
      "x-displayName": "Templates"
    },
    {
      "name": "Authentication",
      "description": "Endpoints for managing authentication",
      "x-displayName": "Authentication"
    },
    {
      "name": "Profiles",
      "description": "A Profile represents the personal or account information of a user within the platform. Profiles store data such as the user's name, email, contact information, and preferences. Profiles are used to identify users in signing workflows, manage access, and personalize communications or notifications.",
      "x-displayName": "Profiles"
    },
    {
      "name": "Brands",
      "description": "Brands define the visual identity, email settings, and presentation for documents and notifications sent by an organization. Each brand can specify unique logos, color schemes, and email domains to deliver a customized recipient experience. Organizations can manage multiple brands to represent different business units or product lines, ensuring that all outgoing documents and communications align with their branding standards.",
      "x-displayName": "Brands"
    },
    {
      "name": "Recipients",
      "description": "Recipients represent individuals who are designated to complete actions within an envelope, such as signing, initialing, or reviewing documents. Each recipient is assigned a role and may have unique authentication methods, fields to complete, and workflow actions such as agreeing or declining disclosures, submitting signatures, asking questions, or delegating their responsibility. The recipient workflow supports in-person and remote signing, reminder notifications, and advanced verification (e.g., KBA, SMS, passcode). Managing recipients is essential to controlling access and progress through the signing process.",
      "x-displayName": "Recipients"
    },
    {
      "name": "Notifications",
      "description": "Notifications provide alerts and updates to users regarding activity and important events within the platform. These may include workflow changes, recipient actions, completion statuses, and reminders. Notifications can be delivered via email, SMS, or in-app messages, ensuring that users are informed of required actions or the status of documents and processes.",
      "x-displayName": "Notifications"
    },
    {
      "name": "Organization Groups",
      "description": "Endpoints for managing organization groups and group membership.",
      "x-displayName": "Organization Groups"
    },
    {
      "name": "KBA",
      "description": "Knowledge-Based Authentication endpoints for recipient identity verification during signing.",
      "x-displayName": "KBA"
    }
  ],
  "paths": {
    "/v2/organization-invitations/accept": {
      "post": {
        "operationId": "acceptOrganizationInvitation",
        "summary": "Accept an invitation",
        "tags": [
          "Organization Invitations"
        ],
        "parameters": [],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "title": "IAuthenticateResponse"
                }
              }
            }
          },
          "400": {
            "description": "Request Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Access Denied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "406": {
            "description": "Invalid Parameter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          }
        },
        "requestBody": {
          "description": "Body Parameters",
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "email",
                  "token",
                  "first_name",
                  "last_name",
                  "password"
                ],
                "properties": {
                  "email": {
                    "type": "string",
                    "description": "Email address for the invitee"
                  },
                  "token": {
                    "type": "string",
                    "description": "Invite token for the invitee"
                  },
                  "first_name": {
                    "type": "string",
                    "description": "First name"
                  },
                  "last_name": {
                    "type": "string",
                    "description": "Last name"
                  },
                  "password": {
                    "type": "string",
                    "description": "Password"
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "bash",
            "label": "CURL",
            "source": "curl -X POST \"https://api.verdocs.com/v2/organization-invitations/accept\" \\\n    -H \"Authorization: Bearer ACCESS_TOKEN\" \\\n    -H \"content-type: application/json\" \\\n    -d '{\"param\": \"value\"}'"
          },
          {
            "lang": "typescript",
            "label": "NodeJS",
            "source": "import fetch from 'node-fetch';\n\nconst response = await fetch('https://api.verdocs.com/v2/organization-invitations/accept', {\n  method: 'post',\n  body: JSON.stringify(body),\n  headers: {\n    'Content-Type': 'application/json',\n    'Authorization: Bearer ACCESS_TOKEN'\n  },\n});\n\nconst data = await response.json();\nconsole.log(data);"
          },
          {
            "lang": "ruby",
            "label": "Ruby",
            "source": "require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://api.verdocs.com/v2/organization-invitations/accept\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Post.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer ACCESS_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"
          },
          {
            "lang": "python",
            "label": "Python",
            "source": "import http.client\n\nconn = http.client.HTTPSConnection(\"api.verdocs.com\")\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer ACCESS_TOKEN\"\n}\n\nconn.request(\"POST\", \"/v2/organization-invitations/accept\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))\n"
          },
          {
            "lang": "csharp",
            "label": "C-Sharp",
            "source": "var client = new RestClient(\"https://api.verdocs.com/v2/organization-invitations/accept\");\nvar request = new RestRequest(Method.POST);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer ACCESS_TOKEN\");\n\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "java",
            "label": "Java",
            "source": "HttpResponse<String> response = Unirest.post(\"https://api.verdocs.com/v2/organization-invitations/accept\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer ACCESS_TOKEN\")\n  .asString();"
          }
        ]
      }
    },
    "/v2/organizations/{organizationid}/brands/{brandid}/email-domain": {
      "post": {
        "operationId": "addBrandEmailDomain",
        "summary": "Add email domain",
        "tags": [
          "Brands"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "organizationid",
            "description": "",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "path",
            "name": "brandid",
            "description": "",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "title": "IBrand"
                }
              }
            }
          },
          "400": {
            "description": "Request Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Access Denied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "406": {
            "description": "Invalid Parameter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          }
        },
        "requestBody": {
          "description": "Body Parameters",
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "subdomain",
                  "local_part"
                ],
                "properties": {
                  "subdomain": {
                    "type": "string",
                    "description": "The email subdomain (e.g. notify.acme.com)"
                  },
                  "local_part": {
                    "type": "string",
                    "description": "The local part of the from address (e.g. notifications)"
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "bash",
            "label": "CURL",
            "source": "curl -X POST \"https://api.verdocs.com/v2/organizations/ORGANIZATIONID/brands/BRANDID/email-domain\" \\\n    -H \"Authorization: Bearer ACCESS_TOKEN\" \\\n    -H \"content-type: application/json\" \\\n    -d '{\"param\": \"value\"}'"
          },
          {
            "lang": "typescript",
            "label": "NodeJS",
            "source": "import fetch from 'node-fetch';\n\nconst response = await fetch('https://api.verdocs.com/v2/organizations/ORGANIZATIONID/brands/BRANDID/email-domain', {\n  method: 'post',\n  body: JSON.stringify(body),\n  headers: {\n    'Content-Type': 'application/json',\n    'Authorization: Bearer ACCESS_TOKEN'\n  },\n});\n\nconst data = await response.json();\nconsole.log(data);"
          },
          {
            "lang": "ruby",
            "label": "Ruby",
            "source": "require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://api.verdocs.com/v2/organizations/ORGANIZATIONID/brands/BRANDID/email-domain\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Post.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer ACCESS_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"
          },
          {
            "lang": "python",
            "label": "Python",
            "source": "import http.client\n\nconn = http.client.HTTPSConnection(\"api.verdocs.com\")\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer ACCESS_TOKEN\"\n}\n\nconn.request(\"POST\", \"/v2/organizations/{organizationid}/brands/{brandid}/email-domain\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))\n"
          },
          {
            "lang": "csharp",
            "label": "C-Sharp",
            "source": "var client = new RestClient(\"https://api.verdocs.com/v2/organizations/ORGANIZATIONID/brands/BRANDID/email-domain\");\nvar request = new RestRequest(Method.POST);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer ACCESS_TOKEN\");\n\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "java",
            "label": "Java",
            "source": "HttpResponse<String> response = Unirest.post(\"https://api.verdocs.com/v2/organizations/ORGANIZATIONID/brands/BRANDID/email-domain\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer ACCESS_TOKEN\")\n  .asString();"
          }
        ]
      },
      "delete": {
        "operationId": "removeBrandEmailDomain",
        "summary": "Remove email domain",
        "tags": [
          "Brands"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "organizationid",
            "description": "",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "path",
            "name": "brandid",
            "description": "",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "title": "IBrand"
                }
              }
            }
          },
          "400": {
            "description": "Request Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Access Denied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "406": {
            "description": "Invalid Parameter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "bash",
            "label": "CURL",
            "source": "curl -X DELETE \"https://api.verdocs.com/v2/organizations/ORGANIZATIONID/brands/BRANDID/email-domain\" \\\n    -H \"Authorization: Bearer ACCESS_TOKEN\" \\\n    -H \"content-type: application/json\" \\\n    -d '{\"param\": \"value\"}'"
          },
          {
            "lang": "typescript",
            "label": "NodeJS",
            "source": "import fetch from 'node-fetch';\n\nconst response = await fetch('https://api.verdocs.com/v2/organizations/ORGANIZATIONID/brands/BRANDID/email-domain', {\n  method: 'delete',\n  body: JSON.stringify(body),\n  headers: {\n    'Content-Type': 'application/json',\n    'Authorization: Bearer ACCESS_TOKEN'\n  },\n});\n\nconst data = await response.json();\nconsole.log(data);"
          },
          {
            "lang": "ruby",
            "label": "Ruby",
            "source": "require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://api.verdocs.com/v2/organizations/ORGANIZATIONID/brands/BRANDID/email-domain\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Delete.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer ACCESS_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"
          },
          {
            "lang": "python",
            "label": "Python",
            "source": "import http.client\n\nconn = http.client.HTTPSConnection(\"api.verdocs.com\")\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer ACCESS_TOKEN\"\n}\n\nconn.request(\"DELETE\", \"/v2/organizations/{organizationid}/brands/{brandid}/email-domain\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))\n"
          },
          {
            "lang": "csharp",
            "label": "C-Sharp",
            "source": "var client = new RestClient(\"https://api.verdocs.com/v2/organizations/ORGANIZATIONID/brands/BRANDID/email-domain\");\nvar request = new RestRequest(Method.DELETE);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer ACCESS_TOKEN\");\n\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "java",
            "label": "Java",
            "source": "HttpResponse<String> response = Unirest.delete(\"https://api.verdocs.com/v2/organizations/ORGANIZATIONID/brands/BRANDID/email-domain\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer ACCESS_TOKEN\")\n  .asString();"
          }
        ]
      }
    },
    "/v2/organization-groups/{group_id}/members": {
      "post": {
        "operationId": "addGroupMember",
        "summary": "Add member to organization group",
        "tags": [
          "Organization Groups"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "group_id",
            "description": "The group ID to update.",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "title": "IGroup"
                }
              }
            }
          },
          "400": {
            "description": "Request Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Access Denied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "406": {
            "description": "Invalid Parameter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          }
        },
        "requestBody": {
          "description": "Body Parameters",
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "profile_id"
                ],
                "properties": {
                  "profile_id": {
                    "type": "string",
                    "format": "uuid",
                    "description": "Profile ID to add to the group"
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "bash",
            "label": "CURL",
            "source": "curl -X POST \"https://api.verdocs.com/v2/organization-groups/GROUP_ID/members\" \\\n    -H \"Authorization: Bearer ACCESS_TOKEN\" \\\n    -H \"content-type: application/json\" \\\n    -d '{\"param\": \"value\"}'"
          },
          {
            "lang": "typescript",
            "label": "NodeJS",
            "source": "import fetch from 'node-fetch';\n\nconst response = await fetch('https://api.verdocs.com/v2/organization-groups/GROUP_ID/members', {\n  method: 'post',\n  body: JSON.stringify(body),\n  headers: {\n    'Content-Type': 'application/json',\n    'Authorization: Bearer ACCESS_TOKEN'\n  },\n});\n\nconst data = await response.json();\nconsole.log(data);"
          },
          {
            "lang": "ruby",
            "label": "Ruby",
            "source": "require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://api.verdocs.com/v2/organization-groups/GROUP_ID/members\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Post.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer ACCESS_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"
          },
          {
            "lang": "python",
            "label": "Python",
            "source": "import http.client\n\nconn = http.client.HTTPSConnection(\"api.verdocs.com\")\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer ACCESS_TOKEN\"\n}\n\nconn.request(\"POST\", \"/v2/organization-groups/{group_id}/members\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))\n"
          },
          {
            "lang": "csharp",
            "label": "C-Sharp",
            "source": "var client = new RestClient(\"https://api.verdocs.com/v2/organization-groups/GROUP_ID/members\");\nvar request = new RestRequest(Method.POST);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer ACCESS_TOKEN\");\n\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "java",
            "label": "Java",
            "source": "HttpResponse<String> response = Unirest.post(\"https://api.verdocs.com/v2/organization-groups/GROUP_ID/members\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer ACCESS_TOKEN\")\n  .asString();"
          }
        ]
      }
    },
    "/v2/envelopes/{envelope_id}/recipients/{role_name}/ask-question": {
      "post": {
        "operationId": "askQuestion",
        "summary": "Ask Sender a Question",
        "tags": [
          "Recipients"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "envelope_id",
            "description": "The envelope to operate on.",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "in": "path",
            "name": "role_name",
            "description": "The role name to update.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "400": {
            "description": "Request Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Access Denied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "406": {
            "description": "Invalid Parameter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          }
        },
        "requestBody": {
          "description": "Body Parameters",
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "question"
                ],
                "properties": {
                  "question": {
                    "type": "string",
                    "description": "The question to ask."
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "bash",
            "label": "CURL",
            "source": "curl -X POST \"https://api.verdocs.com/v2/envelopes/ENVELOPE_ID/recipients/ROLE_NAME/ask-question\" \\\n    -H \"Authorization: Bearer ACCESS_TOKEN\" \\\n    -H \"content-type: application/json\" \\\n    -d '{\"param\": \"value\"}'"
          },
          {
            "lang": "typescript",
            "label": "NodeJS",
            "source": "import fetch from 'node-fetch';\n\nconst response = await fetch('https://api.verdocs.com/v2/envelopes/ENVELOPE_ID/recipients/ROLE_NAME/ask-question', {\n  method: 'post',\n  body: JSON.stringify(body),\n  headers: {\n    'Content-Type': 'application/json',\n    'Authorization: Bearer ACCESS_TOKEN'\n  },\n});\n\nconst data = await response.json();\nconsole.log(data);"
          },
          {
            "lang": "ruby",
            "label": "Ruby",
            "source": "require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://api.verdocs.com/v2/envelopes/ENVELOPE_ID/recipients/ROLE_NAME/ask-question\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Post.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer ACCESS_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"
          },
          {
            "lang": "python",
            "label": "Python",
            "source": "import http.client\n\nconn = http.client.HTTPSConnection(\"api.verdocs.com\")\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer ACCESS_TOKEN\"\n}\n\nconn.request(\"POST\", \"/v2/envelopes/{envelope_id}/recipients/{role_name}/ask-question\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))\n"
          },
          {
            "lang": "csharp",
            "label": "C-Sharp",
            "source": "var client = new RestClient(\"https://api.verdocs.com/v2/envelopes/ENVELOPE_ID/recipients/ROLE_NAME/ask-question\");\nvar request = new RestRequest(Method.POST);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer ACCESS_TOKEN\");\n\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "java",
            "label": "Java",
            "source": "HttpResponse<String> response = Unirest.post(\"https://api.verdocs.com/v2/envelopes/ENVELOPE_ID/recipients/ROLE_NAME/ask-question\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer ACCESS_TOKEN\")\n  .asString();"
          }
        ]
      }
    },
    "/v2/oauth2/token": {
      "post": {
        "operationId": "authenticate",
        "summary": "Authenticate",
        "tags": [
          "Authentication"
        ],
        "parameters": [],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "title": "IAuthenticateResponse"
                }
              }
            }
          },
          "400": {
            "description": "Request Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Access Denied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "406": {
            "description": "Invalid Parameter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          }
        },
        "requestBody": {
          "description": "Body Parameters",
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "grant_type"
                ],
                "properties": {
                  "grant_type": {
                    "type": "string",
                    "enum": [
                      "client_credentials",
                      "refresh_token",
                      "password",
                      "authorization_code"
                    ],
                    "description": "The type of grant to request. API callers should nearly always use 'client_credentials'. Third-party OAuth2 integrations use 'authorization_code'."
                  },
                  "client_id": {
                    "type": "string",
                    "format": "uuid",
                    "description": "If grant_type is client_credentials, refresh_token, or authorization_code, the client ID to use."
                  },
                  "client_secret": {
                    "type": "string",
                    "format": "uuid",
                    "description": "If grant_type is client_credentials or authorization_code, the secret key to use."
                  },
                  "username": {
                    "type": "string",
                    "description": "If grant_type is password, the username to authenticate with."
                  },
                  "password": {
                    "type": "string",
                    "description": "If grant_type is password, the password to authenticate with."
                  },
                  "code": {
                    "type": "string",
                    "description": "If grant_type is authorization_code, the authorization code received from the authorize endpoint."
                  },
                  "redirect_uri": {
                    "type": "string",
                    "format": "uri",
                    "description": "If grant_type is authorization_code, must match the redirect_uri used in the authorize request."
                  },
                  "scope": {
                    "type": "string",
                    "description": "Optional scope to limit the auth token to. Do not specify this unless you are instructed to by a Verdocs Support rep."
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "bash",
            "label": "CURL",
            "source": "curl -X POST \"https://api.verdocs.com/v2/oauth2/token\" \\\n    -H \"Authorization: Bearer ACCESS_TOKEN\" \\\n    -H \"content-type: application/json\" \\\n    -d '{\"param\": \"value\"}'"
          },
          {
            "lang": "typescript",
            "label": "NodeJS",
            "source": "import fetch from 'node-fetch';\n\nconst response = await fetch('https://api.verdocs.com/v2/oauth2/token', {\n  method: 'post',\n  body: JSON.stringify(body),\n  headers: {\n    'Content-Type': 'application/json',\n    'Authorization: Bearer ACCESS_TOKEN'\n  },\n});\n\nconst data = await response.json();\nconsole.log(data);"
          },
          {
            "lang": "ruby",
            "label": "Ruby",
            "source": "require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://api.verdocs.com/v2/oauth2/token\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Post.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer ACCESS_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"
          },
          {
            "lang": "python",
            "label": "Python",
            "source": "import http.client\n\nconn = http.client.HTTPSConnection(\"api.verdocs.com\")\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer ACCESS_TOKEN\"\n}\n\nconn.request(\"POST\", \"/v2/oauth2/token\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))\n"
          },
          {
            "lang": "csharp",
            "label": "C-Sharp",
            "source": "var client = new RestClient(\"https://api.verdocs.com/v2/oauth2/token\");\nvar request = new RestRequest(Method.POST);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer ACCESS_TOKEN\");\n\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "java",
            "label": "Java",
            "source": "HttpResponse<String> response = Unirest.post(\"https://api.verdocs.com/v2/oauth2/token\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer ACCESS_TOKEN\")\n  .asString();"
          }
        ]
      }
    },
    "/v2/envelopes/{id}": {
      "put": {
        "operationId": "cancelEnvelope",
        "summary": "Cancel envelope",
        "tags": [
          "Envelopes"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "id",
            "description": "The ID of the envelope to cancel.",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "title": "IEnvelope"
                }
              }
            }
          },
          "400": {
            "description": "Request Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Access Denied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "406": {
            "description": "Invalid Parameter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          }
        },
        "requestBody": {
          "description": "Body Parameters",
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "action"
                ],
                "properties": {
                  "action": {
                    "type": "string",
                    "enum": [
                      "cancel"
                    ],
                    "description": "The action to perform (currently only \"cancel\" is supported)."
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "bash",
            "label": "CURL",
            "source": "curl -X PUT \"https://api.verdocs.com/v2/envelopes/ID\" \\\n    -H \"Authorization: Bearer ACCESS_TOKEN\" \\\n    -H \"content-type: application/json\" \\\n    -d '{\"param\": \"value\"}'"
          },
          {
            "lang": "typescript",
            "label": "NodeJS",
            "source": "import fetch from 'node-fetch';\n\nconst response = await fetch('https://api.verdocs.com/v2/envelopes/ID', {\n  method: 'put',\n  body: JSON.stringify(body),\n  headers: {\n    'Content-Type': 'application/json',\n    'Authorization: Bearer ACCESS_TOKEN'\n  },\n});\n\nconst data = await response.json();\nconsole.log(data);"
          },
          {
            "lang": "ruby",
            "label": "Ruby",
            "source": "require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://api.verdocs.com/v2/envelopes/ID\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Put.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer ACCESS_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"
          },
          {
            "lang": "python",
            "label": "Python",
            "source": "import http.client\n\nconn = http.client.HTTPSConnection(\"api.verdocs.com\")\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer ACCESS_TOKEN\"\n}\n\nconn.request(\"PUT\", \"/v2/envelopes/{id}\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))\n"
          },
          {
            "lang": "csharp",
            "label": "C-Sharp",
            "source": "var client = new RestClient(\"https://api.verdocs.com/v2/envelopes/ID\");\nvar request = new RestRequest(Method.PUT);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer ACCESS_TOKEN\");\n\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "java",
            "label": "Java",
            "source": "HttpResponse<String> response = Unirest.put(\"https://api.verdocs.com/v2/envelopes/ID\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer ACCESS_TOKEN\")\n  .asString();"
          }
        ]
      },
      "get": {
        "operationId": "getEnvelope",
        "summary": "Get envelope details",
        "tags": [
          "Envelopes"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "id",
            "description": "The ID of the envelope to retrieve.",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "title": "IEnvelope"
                }
              }
            }
          },
          "400": {
            "description": "Request Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Access Denied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "406": {
            "description": "Invalid Parameter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "bash",
            "label": "CURL",
            "source": "curl -X GET \"https://api.verdocs.com/v2/envelopes/ID\" \\\n    -H \"Authorization: Bearer ACCESS_TOKEN\" \\\n    -H \"content-type: application/json\" \\\n    -d '{\"param\": \"value\"}'"
          },
          {
            "lang": "typescript",
            "label": "NodeJS",
            "source": "import fetch from 'node-fetch';\n\nconst response = await fetch('https://api.verdocs.com/v2/envelopes/ID', { \n  headers: {\n    'Content-Type': 'application/json',\n    'Authorization: Bearer ACCESS_TOKEN'\n  } \n});\nconst data = await response.json();\nconsole.log(data);"
          },
          {
            "lang": "ruby",
            "label": "Ruby",
            "source": "require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://api.verdocs.com/v2/envelopes/ID\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Get.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer ACCESS_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"
          },
          {
            "lang": "python",
            "label": "Python",
            "source": "import http.client\n\nconn = http.client.HTTPSConnection(\"api.verdocs.com\")\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer ACCESS_TOKEN\"\n}\n\nconn.request(\"GET\", \"/v2/envelopes/{id}\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))\n"
          },
          {
            "lang": "csharp",
            "label": "C-Sharp",
            "source": "var client = new RestClient(\"https://api.verdocs.com/v2/envelopes/ID\");\nvar request = new RestRequest(Method.GET);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer ACCESS_TOKEN\");\n\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "java",
            "label": "Java",
            "source": "HttpResponse<String> response = Unirest.get(\"https://api.verdocs.com/v2/envelopes/ID\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer ACCESS_TOKEN\")\n  .asString();"
          }
        ]
      },
      "patch": {
        "operationId": "updateEnvelope",
        "summary": "Update Envelope",
        "tags": [
          "Envelopes"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "id",
            "description": "The ID of the envelope to update.",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "title": "IEnvelope"
                }
              }
            }
          },
          "400": {
            "description": "Request Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Access Denied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "406": {
            "description": "Invalid Parameter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          }
        },
        "requestBody": {
          "description": "Body Parameters",
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [],
                "properties": {
                  "name": {
                    "type": "string",
                    "description": "New name for the envelope"
                  },
                  "sender_name": {
                    "type": "string",
                    "description": "New Sender Name for the envelope"
                  },
                  "sender_email": {
                    "type": "string",
                    "description": "New Sender Email for the envelope"
                  },
                  "initial_reminder": {
                    "type": "integer",
                    "description": "Change the initial-reminder setting (in ms)."
                  },
                  "followup_reminders": {
                    "type": "integer",
                    "description": "Change the followup-reminder setting (in ms)."
                  },
                  "max_reminder_days": {
                    "type": "number",
                    "description": "Maximum number of days (after envelope creation) for which reminders will be sent. Defaults to 14."
                  },
                  "expires_at": {
                    "type": "string",
                    "description": "If set, the envelope will automatically expire (be canceled) at this date and time. Expirations must be at least 1 day in the future."
                  },
                  "visibility": {
                    "type": "string",
                    "enum": [
                      "private",
                      "shared"
                    ],
                    "description": "Change the envelope's visibility setting"
                  },
                  "no_contact": {
                    "type": "boolean",
                    "description": "If set to true, no email or SMS messages will be sent to any recipients."
                  },
                  "data": {
                    "type": "object",
                    "description": "Update the developer-supplied metadata attached to the envelope."
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "bash",
            "label": "CURL",
            "source": "curl -X PATCH \"https://api.verdocs.com/v2/envelopes/ID\" \\\n    -H \"Authorization: Bearer ACCESS_TOKEN\" \\\n    -H \"content-type: application/json\" \\\n    -d '{\"param\": \"value\"}'"
          },
          {
            "lang": "typescript",
            "label": "NodeJS",
            "source": "import fetch from 'node-fetch';\n\nconst response = await fetch('https://api.verdocs.com/v2/envelopes/ID', {\n  method: 'patch',\n  body: JSON.stringify(body),\n  headers: {\n    'Content-Type': 'application/json',\n    'Authorization: Bearer ACCESS_TOKEN'\n  },\n});\n\nconst data = await response.json();\nconsole.log(data);"
          },
          {
            "lang": "ruby",
            "label": "Ruby",
            "source": "require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://api.verdocs.com/v2/envelopes/ID\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Patch.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer ACCESS_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"
          },
          {
            "lang": "python",
            "label": "Python",
            "source": "import http.client\n\nconn = http.client.HTTPSConnection(\"api.verdocs.com\")\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer ACCESS_TOKEN\"\n}\n\nconn.request(\"PATCH\", \"/v2/envelopes/{id}\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))\n"
          },
          {
            "lang": "csharp",
            "label": "C-Sharp",
            "source": "var client = new RestClient(\"https://api.verdocs.com/v2/envelopes/ID\");\nvar request = new RestRequest(Method.PATCH);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer ACCESS_TOKEN\");\n\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "java",
            "label": "Java",
            "source": "HttpResponse<String> response = Unirest.patch(\"https://api.verdocs.com/v2/envelopes/ID\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer ACCESS_TOKEN\")\n  .asString();"
          }
        ]
      }
    },
    "/v2/users/change-password": {
      "post": {
        "operationId": "changePassword",
        "summary": "Change the caller's password",
        "tags": [
          "Authentication"
        ],
        "parameters": [],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "400": {
            "description": "Request Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Access Denied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "406": {
            "description": "Invalid Parameter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          }
        },
        "requestBody": {
          "description": "Body Parameters",
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "old_password",
                  "new_password"
                ],
                "properties": {
                  "old_password": {
                    "type": "string",
                    "description": "Current password for the caller"
                  },
                  "new_password": {
                    "type": "string",
                    "description": "New password to set for the caller. Must meet strength requirements."
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "bash",
            "label": "CURL",
            "source": "curl -X POST \"https://api.verdocs.com/v2/users/change-password\" \\\n    -H \"Authorization: Bearer ACCESS_TOKEN\" \\\n    -H \"content-type: application/json\" \\\n    -d '{\"param\": \"value\"}'"
          },
          {
            "lang": "typescript",
            "label": "NodeJS",
            "source": "import fetch from 'node-fetch';\n\nconst response = await fetch('https://api.verdocs.com/v2/users/change-password', {\n  method: 'post',\n  body: JSON.stringify(body),\n  headers: {\n    'Content-Type': 'application/json',\n    'Authorization: Bearer ACCESS_TOKEN'\n  },\n});\n\nconst data = await response.json();\nconsole.log(data);"
          },
          {
            "lang": "ruby",
            "label": "Ruby",
            "source": "require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://api.verdocs.com/v2/users/change-password\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Post.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer ACCESS_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"
          },
          {
            "lang": "python",
            "label": "Python",
            "source": "import http.client\n\nconn = http.client.HTTPSConnection(\"api.verdocs.com\")\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer ACCESS_TOKEN\"\n}\n\nconn.request(\"POST\", \"/v2/users/change-password\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))\n"
          },
          {
            "lang": "csharp",
            "label": "C-Sharp",
            "source": "var client = new RestClient(\"https://api.verdocs.com/v2/users/change-password\");\nvar request = new RestRequest(Method.POST);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer ACCESS_TOKEN\");\n\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "java",
            "label": "Java",
            "source": "HttpResponse<String> response = Unirest.post(\"https://api.verdocs.com/v2/users/change-password\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer ACCESS_TOKEN\")\n  .asString();"
          }
        ]
      }
    },
    "/v2/api-keys": {
      "post": {
        "operationId": "createApiKey",
        "summary": "Create API key",
        "tags": [
          "API Keys"
        ],
        "parameters": [],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/IApiKey"
                }
              }
            }
          },
          "400": {
            "description": "Request Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Access Denied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "406": {
            "description": "Invalid Parameter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          }
        },
        "requestBody": {
          "description": "Body Parameters",
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "name",
                  "profile_id"
                ],
                "properties": {
                  "name": {
                    "type": "string",
                    "description": "A name used to identify the key in the Verdocs Web App"
                  },
                  "profile_id": {
                    "type": "string",
                    "format": "uuid",
                    "description": "The profile ID that calls made using the key will act as"
                  },
                  "global_admin": {
                    "type": "boolean",
                    "description": "If true, the key has full access to the organization, overriding the permissions of its assigned profile. Defaults to false."
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "bash",
            "label": "CURL",
            "source": "curl -X POST \"https://api.verdocs.com/v2/api-keys\" \\\n    -H \"Authorization: Bearer ACCESS_TOKEN\" \\\n    -H \"content-type: application/json\" \\\n    -d '{\"param\": \"value\"}'"
          },
          {
            "lang": "typescript",
            "label": "NodeJS",
            "source": "import fetch from 'node-fetch';\n\nconst response = await fetch('https://api.verdocs.com/v2/api-keys', {\n  method: 'post',\n  body: JSON.stringify(body),\n  headers: {\n    'Content-Type': 'application/json',\n    'Authorization: Bearer ACCESS_TOKEN'\n  },\n});\n\nconst data = await response.json();\nconsole.log(data);"
          },
          {
            "lang": "ruby",
            "label": "Ruby",
            "source": "require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://api.verdocs.com/v2/api-keys\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Post.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer ACCESS_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"
          },
          {
            "lang": "python",
            "label": "Python",
            "source": "import http.client\n\nconn = http.client.HTTPSConnection(\"api.verdocs.com\")\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer ACCESS_TOKEN\"\n}\n\nconn.request(\"POST\", \"/v2/api-keys\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))\n"
          },
          {
            "lang": "csharp",
            "label": "C-Sharp",
            "source": "var client = new RestClient(\"https://api.verdocs.com/v2/api-keys\");\nvar request = new RestRequest(Method.POST);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer ACCESS_TOKEN\");\n\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "java",
            "label": "Java",
            "source": "HttpResponse<String> response = Unirest.post(\"https://api.verdocs.com/v2/api-keys\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer ACCESS_TOKEN\")\n  .asString();"
          }
        ]
      },
      "get": {
        "operationId": "getApiKeys",
        "summary": "Get API keys",
        "tags": [
          "API Keys"
        ],
        "parameters": [],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/IApiKey"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Request Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Access Denied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "406": {
            "description": "Invalid Parameter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "bash",
            "label": "CURL",
            "source": "curl -X GET \"https://api.verdocs.com/v2/api-keys\" \\\n    -H \"Authorization: Bearer ACCESS_TOKEN\" \\\n    -H \"content-type: application/json\" \\\n    -d '{\"param\": \"value\"}'"
          },
          {
            "lang": "typescript",
            "label": "NodeJS",
            "source": "import fetch from 'node-fetch';\n\nconst response = await fetch('https://api.verdocs.com/v2/api-keys', { \n  headers: {\n    'Content-Type': 'application/json',\n    'Authorization: Bearer ACCESS_TOKEN'\n  } \n});\nconst data = await response.json();\nconsole.log(data);"
          },
          {
            "lang": "ruby",
            "label": "Ruby",
            "source": "require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://api.verdocs.com/v2/api-keys\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Get.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer ACCESS_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"
          },
          {
            "lang": "python",
            "label": "Python",
            "source": "import http.client\n\nconn = http.client.HTTPSConnection(\"api.verdocs.com\")\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer ACCESS_TOKEN\"\n}\n\nconn.request(\"GET\", \"/v2/api-keys\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))\n"
          },
          {
            "lang": "csharp",
            "label": "C-Sharp",
            "source": "var client = new RestClient(\"https://api.verdocs.com/v2/api-keys\");\nvar request = new RestRequest(Method.GET);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer ACCESS_TOKEN\");\n\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "java",
            "label": "Java",
            "source": "HttpResponse<String> response = Unirest.get(\"https://api.verdocs.com/v2/api-keys\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer ACCESS_TOKEN\")\n  .asString();"
          }
        ]
      }
    },
    "/v2/organizations/{organizationid}/brands": {
      "post": {
        "operationId": "createBrand",
        "summary": "Create brand",
        "tags": [
          "Brands"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "organizationid",
            "description": "",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "title": "IBrand"
                }
              }
            }
          },
          "400": {
            "description": "Request Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Access Denied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "406": {
            "description": "Invalid Parameter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          }
        },
        "requestBody": {
          "description": "Body Parameters",
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "key"
                ],
                "properties": {
                  "key": {
                    "type": "string",
                    "description": "A unique key for the brand (lowercase alphanumeric + hyphens)"
                  },
                  "timezone": {
                    "type": "string",
                    "description": "Define the long-form timezone."
                  },
                  "locale": {
                    "type": "string",
                    "description": "Define the locale code."
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "bash",
            "label": "CURL",
            "source": "curl -X POST \"https://api.verdocs.com/v2/organizations/ORGANIZATIONID/brands\" \\\n    -H \"Authorization: Bearer ACCESS_TOKEN\" \\\n    -H \"content-type: application/json\" \\\n    -d '{\"param\": \"value\"}'"
          },
          {
            "lang": "typescript",
            "label": "NodeJS",
            "source": "import fetch from 'node-fetch';\n\nconst response = await fetch('https://api.verdocs.com/v2/organizations/ORGANIZATIONID/brands', {\n  method: 'post',\n  body: JSON.stringify(body),\n  headers: {\n    'Content-Type': 'application/json',\n    'Authorization: Bearer ACCESS_TOKEN'\n  },\n});\n\nconst data = await response.json();\nconsole.log(data);"
          },
          {
            "lang": "ruby",
            "label": "Ruby",
            "source": "require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://api.verdocs.com/v2/organizations/ORGANIZATIONID/brands\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Post.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer ACCESS_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"
          },
          {
            "lang": "python",
            "label": "Python",
            "source": "import http.client\n\nconn = http.client.HTTPSConnection(\"api.verdocs.com\")\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer ACCESS_TOKEN\"\n}\n\nconn.request(\"POST\", \"/v2/organizations/{organizationid}/brands\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))\n"
          },
          {
            "lang": "csharp",
            "label": "C-Sharp",
            "source": "var client = new RestClient(\"https://api.verdocs.com/v2/organizations/ORGANIZATIONID/brands\");\nvar request = new RestRequest(Method.POST);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer ACCESS_TOKEN\");\n\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "java",
            "label": "Java",
            "source": "HttpResponse<String> response = Unirest.post(\"https://api.verdocs.com/v2/organizations/ORGANIZATIONID/brands\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer ACCESS_TOKEN\")\n  .asString();"
          }
        ]
      },
      "get": {
        "operationId": "getBrands",
        "summary": "List brands",
        "tags": [
          "Brands"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "organizationid",
            "description": "",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "title": "IBrand"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Request Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Access Denied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "406": {
            "description": "Invalid Parameter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "bash",
            "label": "CURL",
            "source": "curl -X GET \"https://api.verdocs.com/v2/organizations/ORGANIZATIONID/brands\" \\\n    -H \"Authorization: Bearer ACCESS_TOKEN\" \\\n    -H \"content-type: application/json\" \\\n    -d '{\"param\": \"value\"}'"
          },
          {
            "lang": "typescript",
            "label": "NodeJS",
            "source": "import fetch from 'node-fetch';\n\nconst response = await fetch('https://api.verdocs.com/v2/organizations/ORGANIZATIONID/brands', { \n  headers: {\n    'Content-Type': 'application/json',\n    'Authorization: Bearer ACCESS_TOKEN'\n  } \n});\nconst data = await response.json();\nconsole.log(data);"
          },
          {
            "lang": "ruby",
            "label": "Ruby",
            "source": "require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://api.verdocs.com/v2/organizations/ORGANIZATIONID/brands\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Get.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer ACCESS_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"
          },
          {
            "lang": "python",
            "label": "Python",
            "source": "import http.client\n\nconn = http.client.HTTPSConnection(\"api.verdocs.com\")\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer ACCESS_TOKEN\"\n}\n\nconn.request(\"GET\", \"/v2/organizations/{organizationid}/brands\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))\n"
          },
          {
            "lang": "csharp",
            "label": "C-Sharp",
            "source": "var client = new RestClient(\"https://api.verdocs.com/v2/organizations/ORGANIZATIONID/brands\");\nvar request = new RestRequest(Method.GET);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer ACCESS_TOKEN\");\n\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "java",
            "label": "Java",
            "source": "HttpResponse<String> response = Unirest.get(\"https://api.verdocs.com/v2/organizations/ORGANIZATIONID/brands\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer ACCESS_TOKEN\")\n  .asString();"
          }
        ]
      }
    },
    "/v2/envelopes": {
      "post": {
        "operationId": "createEnvelope",
        "summary": "Create Envelope",
        "tags": [
          "Envelopes"
        ],
        "parameters": [],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "title": "IEnvelope"
                }
              }
            }
          },
          "400": {
            "description": "Request Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Access Denied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "406": {
            "description": "Invalid Parameter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          }
        },
        "requestBody": {
          "description": "Body Parameters",
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "template_id",
                  "recipients"
                ],
                "properties": {
                  "template_id": {
                    "type": "string",
                    "format": "uuid",
                    "description": "If using a template, the ID of the template to copy"
                  },
                  "recipients": {
                    "type": "array",
                    "items": {
                      "title": "ICreateEnvelopeRecipientDirectly"
                    },
                    "description": "A list of recipients to include in the workflow. Must specify one recipient to match each template Role."
                  },
                  "documents": {
                    "type": "array",
                    "items": {
                      "title": "IEnvelopeDocument"
                    },
                    "description": "If not using a template, a list of documents to include in the envelope."
                  },
                  "fields": {
                    "type": "array",
                    "items": {
                      "title": "IEnvelopeField"
                    },
                    "description": "If not using a template, a list of fields to include in the envelope."
                  },
                  "name": {
                    "type": "string",
                    "description": "Override the name of the envelope (defaults to the template name)."
                  },
                  "description": {
                    "type": "string",
                    "description": "Override the description of the envelope (defaults to the template description)."
                  },
                  "no_contact": {
                    "type": "boolean",
                    "description": "If set to true, no email or SMS messages will be sent to any recipients."
                  },
                  "initial_reminder": {
                    "type": "integer",
                    "description": "Override the template initial-reminder setting in ms."
                  },
                  "followup_reminders": {
                    "type": "integer",
                    "description": "Override the template initial-reminder setting in ms."
                  },
                  "max_reminder_days": {
                    "type": "number",
                    "description": "Maximum number of days (after envelope creation) for which reminders will be sent. Defaults to 14."
                  },
                  "expires_at": {
                    "type": "string",
                    "description": "If set, the envelope will automatically expire (be canceled) at this date and time. Expirations must be at least 1 day in the future."
                  },
                  "timezone": {
                    "type": "string",
                    "description": "Define the long-form timezone."
                  },
                  "locale": {
                    "type": "string",
                    "description": "Define the locale code."
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "bash",
            "label": "CURL",
            "source": "curl -X POST \"https://api.verdocs.com/v2/envelopes\" \\\n    -H \"Authorization: Bearer ACCESS_TOKEN\" \\\n    -H \"content-type: application/json\" \\\n    -d '{\"param\": \"value\"}'"
          },
          {
            "lang": "typescript",
            "label": "NodeJS",
            "source": "import fetch from 'node-fetch';\n\nconst response = await fetch('https://api.verdocs.com/v2/envelopes', {\n  method: 'post',\n  body: JSON.stringify(body),\n  headers: {\n    'Content-Type': 'application/json',\n    'Authorization: Bearer ACCESS_TOKEN'\n  },\n});\n\nconst data = await response.json();\nconsole.log(data);"
          },
          {
            "lang": "ruby",
            "label": "Ruby",
            "source": "require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://api.verdocs.com/v2/envelopes\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Post.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer ACCESS_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"
          },
          {
            "lang": "python",
            "label": "Python",
            "source": "import http.client\n\nconn = http.client.HTTPSConnection(\"api.verdocs.com\")\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer ACCESS_TOKEN\"\n}\n\nconn.request(\"POST\", \"/v2/envelopes\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))\n"
          },
          {
            "lang": "csharp",
            "label": "C-Sharp",
            "source": "var client = new RestClient(\"https://api.verdocs.com/v2/envelopes\");\nvar request = new RestRequest(Method.POST);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer ACCESS_TOKEN\");\n\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "java",
            "label": "Java",
            "source": "HttpResponse<String> response = Unirest.post(\"https://api.verdocs.com/v2/envelopes\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer ACCESS_TOKEN\")\n  .asString();"
          }
        ]
      },
      "get": {
        "operationId": "getEnvelopes",
        "summary": "List envelopes",
        "tags": [
          "Envelopes"
        ],
        "parameters": [
          {
            "in": "query",
            "name": "q",
            "description": "Match envelopes whose name contains this string",
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "view",
            "description": "Request pre-defined view. `inbox` returns envelopes where action is required by the caller. `sent` returns envelopes created by the caller. `action` returns envelopes where action is required by the caller. `waiting` returns envelopes where action is required by anyone. `completed` returns envelopes where all actions are complete.",
            "schema": {
              "type": "string",
              "enum": [
                "inbox",
                "sent",
                "action",
                "waiting",
                "completed"
              ]
            }
          },
          {
            "in": "query",
            "name": "status",
            "description": "Match envelopes in one of the specified states.",
            "schema": {
              "type": "array",
              "items": {
                "type": "string",
                "enum": [
                  "complete",
                  "pending",
                  "in progress",
                  "declined",
                  "canceled"
                ]
              }
            }
          },
          {
            "in": "query",
            "name": "include_org",
            "description": "If true, include organizations-shared envelopes",
            "schema": {
              "type": "boolean",
              "default": "false"
            }
          },
          {
            "in": "query",
            "name": "template_id",
            "description": "Match envelopes created from the specified template ID",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "in": "query",
            "name": "created_before",
            "description": "Match envelopes created before this date",
            "schema": {
              "type": "string",
              "format": "date"
            }
          },
          {
            "in": "query",
            "name": "created_after",
            "description": "Match envelopes created after this date",
            "schema": {
              "type": "string",
              "format": "date"
            }
          },
          {
            "in": "query",
            "name": "sort_by",
            "description": "Return results sorted by this criteria",
            "schema": {
              "type": "string",
              "enum": [
                "name",
                "created_at",
                "updated_at",
                "canceled_at",
                "status"
              ]
            }
          },
          {
            "in": "query",
            "name": "ascending",
            "description": "Set true/false to override the sort direction. Note that the default depends on `sort_by`. Date-based sorts default to descending, while name and status default to ascending.",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "in": "query",
            "name": "rows",
            "description": "Limit the number of rows returned",
            "schema": {
              "type": "integer",
              "default": 20
            }
          },
          {
            "in": "query",
            "name": "page",
            "description": "Specify which page of results to return",
            "schema": {
              "type": "integer",
              "default": 0
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "count": {
                      "description": "The total number of records matching the query, helpful for pagination",
                      "type": "integer",
                      "format": "int32"
                    },
                    "rows": {
                      "description": "The number of rows returned in this response page",
                      "type": "integer",
                      "format": "int32"
                    },
                    "page": {
                      "description": "The page number of this response",
                      "type": "integer",
                      "format": "int32"
                    },
                    "envelopes": {
                      "description": "List of envelopes found",
                      "type": "array",
                      "items": {
                        "title": "IEnvelope"
                      }
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "Request Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Access Denied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "406": {
            "description": "Invalid Parameter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "bash",
            "label": "CURL",
            "source": "curl -X GET \"https://api.verdocs.com/v2/envelopes?param=value\" \\\n    -H \"Authorization: Bearer ACCESS_TOKEN\" \\\n    -H \"content-type: application/json\" \\\n    -d '{\"param\": \"value\"}'"
          },
          {
            "lang": "typescript",
            "label": "NodeJS",
            "source": "import fetch from 'node-fetch';\n\nconst response = await fetch('https://api.verdocs.com/v2/envelopes?param=value', { \n  headers: {\n    'Content-Type': 'application/json',\n    'Authorization: Bearer ACCESS_TOKEN'\n  } \n});\nconst data = await response.json();\nconsole.log(data);"
          },
          {
            "lang": "ruby",
            "label": "Ruby",
            "source": "require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://api.verdocs.com/v2/envelopes?param=value\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Get.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer ACCESS_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"
          },
          {
            "lang": "python",
            "label": "Python",
            "source": "import http.client\n\nconn = http.client.HTTPSConnection(\"api.verdocs.com\")\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer ACCESS_TOKEN\"\n}\n\nconn.request(\"GET\", \"/v2/envelopes\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))\n"
          },
          {
            "lang": "csharp",
            "label": "C-Sharp",
            "source": "var client = new RestClient(\"https://api.verdocs.com/v2/envelopes?param=value\");\nvar request = new RestRequest(Method.GET);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer ACCESS_TOKEN\");\n\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "java",
            "label": "Java",
            "source": "HttpResponse<String> response = Unirest.get(\"https://api.verdocs.com/v2/envelopes?param=value\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer ACCESS_TOKEN\")\n  .asString();"
          }
        ]
      }
    },
    "/v2/fields/{template_id}": {
      "post": {
        "operationId": "createField",
        "summary": "Add a field to a template",
        "tags": [
          "Fields"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "template_id",
            "description": "",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "title": "ITemplateField"
                }
              }
            }
          },
          "400": {
            "description": "Request Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Access Denied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "406": {
            "description": "Invalid Parameter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          }
        },
        "requestBody": {
          "description": "Body Parameters",
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "name",
                  "role_name",
                  "document_id",
                  "type",
                  "required",
                  "page",
                  "x",
                  "y"
                ],
                "properties": {
                  "name": {
                    "type": "string",
                    "description": "Name for the new field. Field names must be unique within a template. Although special characters are allowed, they must be URL-encoded in subsequent requests, so it is recommended to use only alphanumeric characters and hyphens if possible."
                  },
                  "role_name": {
                    "type": "string",
                    "description": "Role to assign to the field. Role names must be valid, so it is recommended to create roles before fields."
                  },
                  "document_id": {
                    "type": "string",
                    "description": "ID of the document upon which to place the field."
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "signature",
                      "initial",
                      "checkbox",
                      "radio",
                      "textbox",
                      "timestamp",
                      "date",
                      "dropdown",
                      "textarea",
                      "attachment",
                      "payment"
                    ],
                    "description": "Type of field to create"
                  },
                  "required": {
                    "type": "boolean",
                    "default": "false",
                    "description": "Whether the field is required"
                  },
                  "page": {
                    "type": "integer",
                    "description": "0-based page number upon which to place the field"
                  },
                  "x": {
                    "type": "integer",
                    "description": "X position for the field (left to right)"
                  },
                  "y": {
                    "type": "integer",
                    "description": "Y position for the field (_bottom to top!_)"
                  },
                  "label": {
                    "type": "string",
                    "description": "Optional label to display above the field"
                  },
                  "width": {
                    "type": "integer",
                    "description": "Width of the field. Note that all fields have built-in defaults, and it is recommended that this only be set on text fields."
                  },
                  "height": {
                    "type": "integer",
                    "description": "Height of the field. Note that all fields have built-in defaults, and it is recommended that this only be set on text fields."
                  },
                  "placeholder": {
                    "type": "string",
                    "description": "Optional placeholder to display in text fields"
                  },
                  "group": {
                    "type": "string",
                    "description": "For fields that support grouping (radio buttons and check boxes) the value selected will be stored under this name"
                  },
                  "options": {
                    "type": "array",
                    "items": {
                      "title": "IDropdownOption"
                    },
                    "description": "For dropdown fields, the options to display"
                  },
                  "value": {
                    "type": "string",
                    "description": "Optional default value to set on the field"
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "bash",
            "label": "CURL",
            "source": "curl -X POST \"https://api.verdocs.com/v2/fields/TEMPLATE_ID\" \\\n    -H \"Authorization: Bearer ACCESS_TOKEN\" \\\n    -H \"content-type: application/json\" \\\n    -d '{\"param\": \"value\"}'"
          },
          {
            "lang": "typescript",
            "label": "NodeJS",
            "source": "import fetch from 'node-fetch';\n\nconst response = await fetch('https://api.verdocs.com/v2/fields/TEMPLATE_ID', {\n  method: 'post',\n  body: JSON.stringify(body),\n  headers: {\n    'Content-Type': 'application/json',\n    'Authorization: Bearer ACCESS_TOKEN'\n  },\n});\n\nconst data = await response.json();\nconsole.log(data);"
          },
          {
            "lang": "ruby",
            "label": "Ruby",
            "source": "require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://api.verdocs.com/v2/fields/TEMPLATE_ID\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Post.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer ACCESS_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"
          },
          {
            "lang": "python",
            "label": "Python",
            "source": "import http.client\n\nconn = http.client.HTTPSConnection(\"api.verdocs.com\")\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer ACCESS_TOKEN\"\n}\n\nconn.request(\"POST\", \"/v2/fields/{template_id}\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))\n"
          },
          {
            "lang": "csharp",
            "label": "C-Sharp",
            "source": "var client = new RestClient(\"https://api.verdocs.com/v2/fields/TEMPLATE_ID\");\nvar request = new RestRequest(Method.POST);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer ACCESS_TOKEN\");\n\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "java",
            "label": "Java",
            "source": "HttpResponse<String> response = Unirest.post(\"https://api.verdocs.com/v2/fields/TEMPLATE_ID\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer ACCESS_TOKEN\")\n  .asString();"
          }
        ]
      }
    },
    "/v2/organization-groups": {
      "post": {
        "operationId": "createGroup",
        "summary": "Create organization group",
        "tags": [
          "Organization Groups"
        ],
        "parameters": [],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "title": "IGroup"
                }
              }
            }
          },
          "400": {
            "description": "Request Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Access Denied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "406": {
            "description": "Invalid Parameter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          }
        },
        "requestBody": {
          "description": "Body Parameters",
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "name",
                  "permissions"
                ],
                "properties": {
                  "name": {
                    "type": "string",
                    "description": "Name for the new group. \"everyone\" is reserved and may not be used."
                  },
                  "permissions": {
                    "type": "array",
                    "items": {
                      "$ref": "#/components/schemas/TPermission"
                    },
                    "description": "Permissions to assign to the group"
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "bash",
            "label": "CURL",
            "source": "curl -X POST \"https://api.verdocs.com/v2/organization-groups\" \\\n    -H \"Authorization: Bearer ACCESS_TOKEN\" \\\n    -H \"content-type: application/json\" \\\n    -d '{\"param\": \"value\"}'"
          },
          {
            "lang": "typescript",
            "label": "NodeJS",
            "source": "import fetch from 'node-fetch';\n\nconst response = await fetch('https://api.verdocs.com/v2/organization-groups', {\n  method: 'post',\n  body: JSON.stringify(body),\n  headers: {\n    'Content-Type': 'application/json',\n    'Authorization: Bearer ACCESS_TOKEN'\n  },\n});\n\nconst data = await response.json();\nconsole.log(data);"
          },
          {
            "lang": "ruby",
            "label": "Ruby",
            "source": "require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://api.verdocs.com/v2/organization-groups\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Post.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer ACCESS_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"
          },
          {
            "lang": "python",
            "label": "Python",
            "source": "import http.client\n\nconn = http.client.HTTPSConnection(\"api.verdocs.com\")\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer ACCESS_TOKEN\"\n}\n\nconn.request(\"POST\", \"/v2/organization-groups\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))\n"
          },
          {
            "lang": "csharp",
            "label": "C-Sharp",
            "source": "var client = new RestClient(\"https://api.verdocs.com/v2/organization-groups\");\nvar request = new RestRequest(Method.POST);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer ACCESS_TOKEN\");\n\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "java",
            "label": "Java",
            "source": "HttpResponse<String> response = Unirest.post(\"https://api.verdocs.com/v2/organization-groups\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer ACCESS_TOKEN\")\n  .asString();"
          }
        ]
      },
      "get": {
        "operationId": "getGroups",
        "summary": "List organization groups",
        "tags": [
          "Organization Groups"
        ],
        "parameters": [],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "title": "IGroup"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Request Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Access Denied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "406": {
            "description": "Invalid Parameter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "bash",
            "label": "CURL",
            "source": "curl -X GET \"https://api.verdocs.com/v2/organization-groups\" \\\n    -H \"Authorization: Bearer ACCESS_TOKEN\" \\\n    -H \"content-type: application/json\" \\\n    -d '{\"param\": \"value\"}'"
          },
          {
            "lang": "typescript",
            "label": "NodeJS",
            "source": "import fetch from 'node-fetch';\n\nconst response = await fetch('https://api.verdocs.com/v2/organization-groups', { \n  headers: {\n    'Content-Type': 'application/json',\n    'Authorization: Bearer ACCESS_TOKEN'\n  } \n});\nconst data = await response.json();\nconsole.log(data);"
          },
          {
            "lang": "ruby",
            "label": "Ruby",
            "source": "require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://api.verdocs.com/v2/organization-groups\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Get.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer ACCESS_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"
          },
          {
            "lang": "python",
            "label": "Python",
            "source": "import http.client\n\nconn = http.client.HTTPSConnection(\"api.verdocs.com\")\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer ACCESS_TOKEN\"\n}\n\nconn.request(\"GET\", \"/v2/organization-groups\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))\n"
          },
          {
            "lang": "csharp",
            "label": "C-Sharp",
            "source": "var client = new RestClient(\"https://api.verdocs.com/v2/organization-groups\");\nvar request = new RestRequest(Method.GET);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer ACCESS_TOKEN\");\n\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "java",
            "label": "Java",
            "source": "HttpResponse<String> response = Unirest.get(\"https://api.verdocs.com/v2/organization-groups\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer ACCESS_TOKEN\")\n  .asString();"
          }
        ]
      }
    },
    "/v2/profiles/initials": {
      "post": {
        "operationId": "createInitials",
        "summary": "Create Initial Block",
        "tags": [
          "Signatures and Initials"
        ],
        "parameters": [],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "title": "IInitial"
                }
              }
            }
          },
          "400": {
            "description": "Request Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Access Denied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "406": {
            "description": "Invalid Parameter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          }
        },
        "requestBody": {
          "description": "Body Parameters",
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "initial"
                ],
                "properties": {
                  "initial": {
                    "type": "string",
                    "description": "Blob containing initials image to store."
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "bash",
            "label": "CURL",
            "source": "curl -X POST \"https://api.verdocs.com/v2/profiles/initials\" \\\n    -H \"Authorization: Bearer ACCESS_TOKEN\" \\\n    -H \"content-type: application/json\" \\\n    -d '{\"param\": \"value\"}'"
          },
          {
            "lang": "typescript",
            "label": "NodeJS",
            "source": "import fetch from 'node-fetch';\n\nconst response = await fetch('https://api.verdocs.com/v2/profiles/initials', {\n  method: 'post',\n  body: JSON.stringify(body),\n  headers: {\n    'Content-Type': 'application/json',\n    'Authorization: Bearer ACCESS_TOKEN'\n  },\n});\n\nconst data = await response.json();\nconsole.log(data);"
          },
          {
            "lang": "ruby",
            "label": "Ruby",
            "source": "require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://api.verdocs.com/v2/profiles/initials\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Post.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer ACCESS_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"
          },
          {
            "lang": "python",
            "label": "Python",
            "source": "import http.client\n\nconn = http.client.HTTPSConnection(\"api.verdocs.com\")\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer ACCESS_TOKEN\"\n}\n\nconn.request(\"POST\", \"/v2/profiles/initials\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))\n"
          },
          {
            "lang": "csharp",
            "label": "C-Sharp",
            "source": "var client = new RestClient(\"https://api.verdocs.com/v2/profiles/initials\");\nvar request = new RestRequest(Method.POST);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer ACCESS_TOKEN\");\n\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "java",
            "label": "Java",
            "source": "HttpResponse<String> response = Unirest.post(\"https://api.verdocs.com/v2/profiles/initials\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer ACCESS_TOKEN\")\n  .asString();"
          }
        ]
      }
    },
    "/v2/notifications/templates": {
      "post": {
        "operationId": "createNotificationTemplate",
        "summary": "Create notification template",
        "tags": [
          "Notifications"
        ],
        "parameters": [],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "title": "INotificationTemplate"
                }
              }
            }
          },
          "400": {
            "description": "Request Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Access Denied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "406": {
            "description": "Invalid Parameter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          }
        },
        "requestBody": {
          "description": "Body Parameters",
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "type",
                  "event_name"
                ],
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "sms",
                      "email",
                      "app"
                    ],
                    "description": "The notification channel type."
                  },
                  "event_name": {
                    "type": "string",
                    "description": "The event that triggers this notification."
                  },
                  "template_id": {
                    "type": "string",
                    "description": "Optional reference to an associated template."
                  },
                  "html_template": {
                    "type": "string",
                    "description": "The HTML content for the notification. At least one of html_template or text_template is required."
                  },
                  "text_template": {
                    "type": "string",
                    "description": "The plain-text content for the notification. At least one of html_template or text_template is required."
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "bash",
            "label": "CURL",
            "source": "curl -X POST \"https://api.verdocs.com/v2/notifications/templates\" \\\n    -H \"Authorization: Bearer ACCESS_TOKEN\" \\\n    -H \"content-type: application/json\" \\\n    -d '{\"param\": \"value\"}'"
          },
          {
            "lang": "typescript",
            "label": "NodeJS",
            "source": "import fetch from 'node-fetch';\n\nconst response = await fetch('https://api.verdocs.com/v2/notifications/templates', {\n  method: 'post',\n  body: JSON.stringify(body),\n  headers: {\n    'Content-Type': 'application/json',\n    'Authorization: Bearer ACCESS_TOKEN'\n  },\n});\n\nconst data = await response.json();\nconsole.log(data);"
          },
          {
            "lang": "ruby",
            "label": "Ruby",
            "source": "require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://api.verdocs.com/v2/notifications/templates\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Post.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer ACCESS_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"
          },
          {
            "lang": "python",
            "label": "Python",
            "source": "import http.client\n\nconn = http.client.HTTPSConnection(\"api.verdocs.com\")\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer ACCESS_TOKEN\"\n}\n\nconn.request(\"POST\", \"/v2/notifications/templates\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))\n"
          },
          {
            "lang": "csharp",
            "label": "C-Sharp",
            "source": "var client = new RestClient(\"https://api.verdocs.com/v2/notifications/templates\");\nvar request = new RestRequest(Method.POST);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer ACCESS_TOKEN\");\n\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "java",
            "label": "Java",
            "source": "HttpResponse<String> response = Unirest.post(\"https://api.verdocs.com/v2/notifications/templates\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer ACCESS_TOKEN\")\n  .asString();"
          }
        ]
      },
      "get": {
        "operationId": "getNotificationTemplates",
        "summary": "Get notification templates",
        "tags": [
          "Notifications"
        ],
        "parameters": [],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "title": "INotificationTemplate"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Request Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Access Denied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "406": {
            "description": "Invalid Parameter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "bash",
            "label": "CURL",
            "source": "curl -X GET \"https://api.verdocs.com/v2/notifications/templates\" \\\n    -H \"Authorization: Bearer ACCESS_TOKEN\" \\\n    -H \"content-type: application/json\" \\\n    -d '{\"param\": \"value\"}'"
          },
          {
            "lang": "typescript",
            "label": "NodeJS",
            "source": "import fetch from 'node-fetch';\n\nconst response = await fetch('https://api.verdocs.com/v2/notifications/templates', { \n  headers: {\n    'Content-Type': 'application/json',\n    'Authorization: Bearer ACCESS_TOKEN'\n  } \n});\nconst data = await response.json();\nconsole.log(data);"
          },
          {
            "lang": "ruby",
            "label": "Ruby",
            "source": "require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://api.verdocs.com/v2/notifications/templates\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Get.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer ACCESS_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"
          },
          {
            "lang": "python",
            "label": "Python",
            "source": "import http.client\n\nconn = http.client.HTTPSConnection(\"api.verdocs.com\")\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer ACCESS_TOKEN\"\n}\n\nconn.request(\"GET\", \"/v2/notifications/templates\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))\n"
          },
          {
            "lang": "csharp",
            "label": "C-Sharp",
            "source": "var client = new RestClient(\"https://api.verdocs.com/v2/notifications/templates\");\nvar request = new RestRequest(Method.GET);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer ACCESS_TOKEN\");\n\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "java",
            "label": "Java",
            "source": "HttpResponse<String> response = Unirest.get(\"https://api.verdocs.com/v2/notifications/templates\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer ACCESS_TOKEN\")\n  .asString();"
          }
        ]
      }
    },
    "/v2/organizations": {
      "post": {
        "operationId": "createOrganization",
        "summary": "Create organization",
        "tags": [
          "Organizations"
        ],
        "parameters": [],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "title": "IAuthenticateResponse"
                }
              }
            }
          },
          "400": {
            "description": "Request Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Access Denied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "406": {
            "description": "Invalid Parameter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          }
        },
        "description": "The caller will be assigned an \"Owner\" profile in the new organization, and it will be set to \"current\" automatically. A new set of session tokens will be issued to  the caller, and the caller should update their endpoint to use the new tokens.",
        "requestBody": {
          "description": "Body Parameters",
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "name"
                ],
                "properties": {
                  "name": {
                    "type": "string",
                    "description": "The name of the new organization"
                  },
                  "parent_id": {
                    "type": "string",
                    "description": "If set, the new organization will be created as a child of the specified parent organization. The caller must be an admin of the parent organization."
                  },
                  "contact_email": {
                    "type": "string",
                    "description": "Contact email for the new organization"
                  },
                  "url": {
                    "type": "string",
                    "description": "URL for the new organization"
                  },
                  "full_logo_url": {
                    "type": "string",
                    "description": "URL of a large-format PNG logo"
                  },
                  "thumbnail_url": {
                    "type": "string",
                    "description": "URL of a small-format (square is recommended) PNG logo"
                  },
                  "primary_color": {
                    "type": "string",
                    "description": "Primary brand color (hex string, e.g. \"#FF0000\")"
                  },
                  "secondary_color": {
                    "type": "string",
                    "description": "Secondary brand color (hex string)"
                  },
                  "terms_use_url": {
                    "type": "string",
                    "description": "URL of a Terms of Use page, shown in bottom-right of signing experience. Hidden if not set."
                  },
                  "privacy_policy_url": {
                    "type": "string",
                    "description": "URL of a Privacy Policy page, shown in bottom-right of signing experience. Hidden if not set."
                  },
                  "powered_by_label": {
                    "type": "string",
                    "description": "\"Powered-by...\" label, shown in bottom-left of signing experience. Hidden if not set."
                  },
                  "powered_by_url": {
                    "type": "string",
                    "description": "URL for the Powered By label to show when clicked. Rendered as a static label if not set."
                  },
                  "timezone": {
                    "type": "string",
                    "description": "Define the long-form timezone."
                  },
                  "locale": {
                    "type": "string",
                    "description": "Define the locale code."
                  },
                  "disclaimer": {
                    "type": "string",
                    "description": "Custom disclaimer/disclosure block to present to envelope recipients. May contain basic HTML (e.g. ol/ul/li tags) but complex or dangerous (e.g. script) tags will be rejected."
                  },
                  "data": {
                    "type": "object",
                    "description": "Developer-supplied metadata attached to the organization."
                  },
                  "deletion_protected": {
                    "type": "boolean",
                    "description": "Prevents the organization from being deleted until turned off. Defaults to true."
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "bash",
            "label": "CURL",
            "source": "curl -X POST \"https://api.verdocs.com/v2/organizations\" \\\n    -H \"Authorization: Bearer ACCESS_TOKEN\" \\\n    -H \"content-type: application/json\" \\\n    -d '{\"param\": \"value\"}'"
          },
          {
            "lang": "typescript",
            "label": "NodeJS",
            "source": "import fetch from 'node-fetch';\n\nconst response = await fetch('https://api.verdocs.com/v2/organizations', {\n  method: 'post',\n  body: JSON.stringify(body),\n  headers: {\n    'Content-Type': 'application/json',\n    'Authorization: Bearer ACCESS_TOKEN'\n  },\n});\n\nconst data = await response.json();\nconsole.log(data);"
          },
          {
            "lang": "ruby",
            "label": "Ruby",
            "source": "require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://api.verdocs.com/v2/organizations\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Post.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer ACCESS_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"
          },
          {
            "lang": "python",
            "label": "Python",
            "source": "import http.client\n\nconn = http.client.HTTPSConnection(\"api.verdocs.com\")\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer ACCESS_TOKEN\"\n}\n\nconn.request(\"POST\", \"/v2/organizations\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))\n"
          },
          {
            "lang": "csharp",
            "label": "C-Sharp",
            "source": "var client = new RestClient(\"https://api.verdocs.com/v2/organizations\");\nvar request = new RestRequest(Method.POST);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer ACCESS_TOKEN\");\n\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "java",
            "label": "Java",
            "source": "HttpResponse<String> response = Unirest.post(\"https://api.verdocs.com/v2/organizations\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer ACCESS_TOKEN\")\n  .asString();"
          }
        ]
      }
    },
    "/v2/organization-contacts": {
      "post": {
        "operationId": "createOrganizationContact",
        "summary": "Create organization contact",
        "tags": [
          "Organization Contacts"
        ],
        "parameters": [],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "title": "IProfile"
                }
              }
            }
          },
          "400": {
            "description": "Request Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Access Denied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "406": {
            "description": "Invalid Parameter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          }
        },
        "requestBody": {
          "description": "Body Parameters",
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "first_name",
                  "last_name",
                  "email"
                ],
                "properties": {
                  "first_name": {
                    "type": "string",
                    "description": "Contact first name"
                  },
                  "last_name": {
                    "type": "string",
                    "description": "Contact last name"
                  },
                  "email": {
                    "type": "string",
                    "description": "Contact email address"
                  },
                  "phone": {
                    "type": "string",
                    "description": "Contact phone number"
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "bash",
            "label": "CURL",
            "source": "curl -X POST \"https://api.verdocs.com/v2/organization-contacts\" \\\n    -H \"Authorization: Bearer ACCESS_TOKEN\" \\\n    -H \"content-type: application/json\" \\\n    -d '{\"param\": \"value\"}'"
          },
          {
            "lang": "typescript",
            "label": "NodeJS",
            "source": "import fetch from 'node-fetch';\n\nconst response = await fetch('https://api.verdocs.com/v2/organization-contacts', {\n  method: 'post',\n  body: JSON.stringify(body),\n  headers: {\n    'Content-Type': 'application/json',\n    'Authorization: Bearer ACCESS_TOKEN'\n  },\n});\n\nconst data = await response.json();\nconsole.log(data);"
          },
          {
            "lang": "ruby",
            "label": "Ruby",
            "source": "require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://api.verdocs.com/v2/organization-contacts\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Post.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer ACCESS_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"
          },
          {
            "lang": "python",
            "label": "Python",
            "source": "import http.client\n\nconn = http.client.HTTPSConnection(\"api.verdocs.com\")\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer ACCESS_TOKEN\"\n}\n\nconn.request(\"POST\", \"/v2/organization-contacts\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))\n"
          },
          {
            "lang": "csharp",
            "label": "C-Sharp",
            "source": "var client = new RestClient(\"https://api.verdocs.com/v2/organization-contacts\");\nvar request = new RestRequest(Method.POST);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer ACCESS_TOKEN\");\n\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "java",
            "label": "Java",
            "source": "HttpResponse<String> response = Unirest.post(\"https://api.verdocs.com/v2/organization-contacts\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer ACCESS_TOKEN\")\n  .asString();"
          }
        ]
      },
      "get": {
        "operationId": "getOrganizationContacts",
        "summary": "Get a list of organization contacts",
        "tags": [
          "Organization Contacts"
        ],
        "parameters": [],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "title": "IProfile"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Request Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Access Denied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "406": {
            "description": "Invalid Parameter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "bash",
            "label": "CURL",
            "source": "curl -X GET \"https://api.verdocs.com/v2/organization-contacts\" \\\n    -H \"Authorization: Bearer ACCESS_TOKEN\" \\\n    -H \"content-type: application/json\" \\\n    -d '{\"param\": \"value\"}'"
          },
          {
            "lang": "typescript",
            "label": "NodeJS",
            "source": "import fetch from 'node-fetch';\n\nconst response = await fetch('https://api.verdocs.com/v2/organization-contacts', { \n  headers: {\n    'Content-Type': 'application/json',\n    'Authorization: Bearer ACCESS_TOKEN'\n  } \n});\nconst data = await response.json();\nconsole.log(data);"
          },
          {
            "lang": "ruby",
            "label": "Ruby",
            "source": "require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://api.verdocs.com/v2/organization-contacts\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Get.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer ACCESS_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"
          },
          {
            "lang": "python",
            "label": "Python",
            "source": "import http.client\n\nconn = http.client.HTTPSConnection(\"api.verdocs.com\")\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer ACCESS_TOKEN\"\n}\n\nconn.request(\"GET\", \"/v2/organization-contacts\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))\n"
          },
          {
            "lang": "csharp",
            "label": "C-Sharp",
            "source": "var client = new RestClient(\"https://api.verdocs.com/v2/organization-contacts\");\nvar request = new RestRequest(Method.GET);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer ACCESS_TOKEN\");\n\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "java",
            "label": "Java",
            "source": "HttpResponse<String> response = Unirest.get(\"https://api.verdocs.com/v2/organization-contacts\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer ACCESS_TOKEN\")\n  .asString();"
          }
        ]
      }
    },
    "/v2/organization-invitations": {
      "post": {
        "operationId": "createOrganizationInvitation",
        "summary": "Invite a new user to join the organization",
        "tags": [
          "Organization Invitations"
        ],
        "parameters": [],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "title": "IOrganizationInvitation"
                }
              }
            }
          },
          "400": {
            "description": "Request Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Access Denied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "406": {
            "description": "Invalid Parameter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          }
        },
        "requestBody": {
          "description": "Body Parameters",
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "email",
                  "first_name",
                  "last_name",
                  "role"
                ],
                "properties": {
                  "email": {
                    "type": "string",
                    "description": "Email address to send the invitation to"
                  },
                  "first_name": {
                    "type": "string",
                    "description": "First name. The user may override this after accepting the invitation."
                  },
                  "last_name": {
                    "type": "string",
                    "description": "Last name. The user may override this after accepting the invitation."
                  },
                  "role": {
                    "$ref": "#/components/schemas/TRole",
                    "description": "Initial role to assign to the user once they accept."
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "bash",
            "label": "CURL",
            "source": "curl -X POST \"https://api.verdocs.com/v2/organization-invitations\" \\\n    -H \"Authorization: Bearer ACCESS_TOKEN\" \\\n    -H \"content-type: application/json\" \\\n    -d '{\"param\": \"value\"}'"
          },
          {
            "lang": "typescript",
            "label": "NodeJS",
            "source": "import fetch from 'node-fetch';\n\nconst response = await fetch('https://api.verdocs.com/v2/organization-invitations', {\n  method: 'post',\n  body: JSON.stringify(body),\n  headers: {\n    'Content-Type': 'application/json',\n    'Authorization: Bearer ACCESS_TOKEN'\n  },\n});\n\nconst data = await response.json();\nconsole.log(data);"
          },
          {
            "lang": "ruby",
            "label": "Ruby",
            "source": "require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://api.verdocs.com/v2/organization-invitations\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Post.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer ACCESS_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"
          },
          {
            "lang": "python",
            "label": "Python",
            "source": "import http.client\n\nconn = http.client.HTTPSConnection(\"api.verdocs.com\")\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer ACCESS_TOKEN\"\n}\n\nconn.request(\"POST\", \"/v2/organization-invitations\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))\n"
          },
          {
            "lang": "csharp",
            "label": "C-Sharp",
            "source": "var client = new RestClient(\"https://api.verdocs.com/v2/organization-invitations\");\nvar request = new RestRequest(Method.POST);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer ACCESS_TOKEN\");\n\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "java",
            "label": "Java",
            "source": "HttpResponse<String> response = Unirest.post(\"https://api.verdocs.com/v2/organization-invitations\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer ACCESS_TOKEN\")\n  .asString();"
          }
        ]
      },
      "get": {
        "operationId": "getOrganizationInvitations",
        "summary": "Get a list of pending invitations",
        "tags": [
          "Organization Invitations"
        ],
        "parameters": [],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "title": "IProfile"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Request Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Access Denied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "406": {
            "description": "Invalid Parameter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          }
        },
        "requestBody": {
          "description": "Body Parameters",
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "roles",
                  "first_name",
                  "last_name"
                ],
                "properties": {
                  "roles": {
                    "type": "array",
                    "items": {
                      "$ref": "#/components/schemas/TRole"
                    },
                    "description": "URL to send Webhook events to. An empty or invalid URL will disable Webhook calls."
                  },
                  "first_name": {
                    "type": "string",
                    "description": "First name. The user may override this after accepting the invitation."
                  },
                  "last_name": {
                    "type": "string",
                    "description": "Last name. The user may override this after accepting the invitation."
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "bash",
            "label": "CURL",
            "source": "curl -X GET \"https://api.verdocs.com/v2/organization-invitations\" \\\n    -H \"Authorization: Bearer ACCESS_TOKEN\" \\\n    -H \"content-type: application/json\" \\\n    -d '{\"param\": \"value\"}'"
          },
          {
            "lang": "typescript",
            "label": "NodeJS",
            "source": "import fetch from 'node-fetch';\n\nconst response = await fetch('https://api.verdocs.com/v2/organization-invitations', { \n  headers: {\n    'Content-Type': 'application/json',\n    'Authorization: Bearer ACCESS_TOKEN'\n  } \n});\nconst data = await response.json();\nconsole.log(data);"
          },
          {
            "lang": "ruby",
            "label": "Ruby",
            "source": "require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://api.verdocs.com/v2/organization-invitations\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Get.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer ACCESS_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"
          },
          {
            "lang": "python",
            "label": "Python",
            "source": "import http.client\n\nconn = http.client.HTTPSConnection(\"api.verdocs.com\")\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer ACCESS_TOKEN\"\n}\n\nconn.request(\"GET\", \"/v2/organization-invitations\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))\n"
          },
          {
            "lang": "csharp",
            "label": "C-Sharp",
            "source": "var client = new RestClient(\"https://api.verdocs.com/v2/organization-invitations\");\nvar request = new RestRequest(Method.GET);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer ACCESS_TOKEN\");\n\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "java",
            "label": "Java",
            "source": "HttpResponse<String> response = Unirest.get(\"https://api.verdocs.com/v2/organization-invitations\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer ACCESS_TOKEN\")\n  .asString();"
          }
        ]
      }
    },
    "/v2/organization-members": {
      "post": {
        "operationId": "createOrganizationMember",
        "summary": "Create an organization member directly, bypassing the invite process.",
        "tags": [
          "Organization Members"
        ],
        "parameters": [],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "title": "IProfile"
                }
              }
            }
          },
          "400": {
            "description": "Request Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Access Denied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "406": {
            "description": "Invalid Parameter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          }
        },
        "requestBody": {
          "description": "Body Parameters",
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "email",
                  "first_name",
                  "last_name"
                ],
                "properties": {
                  "email": {
                    "type": "string",
                    "description": "Email address for the member"
                  },
                  "first_name": {
                    "type": "string",
                    "description": "First name for the member"
                  },
                  "last_name": {
                    "type": "string",
                    "description": "Last name for the member"
                  },
                  "password": {
                    "type": "string",
                    "description": "If set, will be used as the initial password. If omitted, a password will be generated and returned."
                  },
                  "roles": {
                    "type": "array",
                    "items": {
                      "$ref": "#/components/schemas/TRole"
                    },
                    "description": "Roles (e.g. \"member\" or \"admin\") to assign to the user."
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "bash",
            "label": "CURL",
            "source": "curl -X POST \"https://api.verdocs.com/v2/organization-members\" \\\n    -H \"Authorization: Bearer ACCESS_TOKEN\" \\\n    -H \"content-type: application/json\" \\\n    -d '{\"param\": \"value\"}'"
          },
          {
            "lang": "typescript",
            "label": "NodeJS",
            "source": "import fetch from 'node-fetch';\n\nconst response = await fetch('https://api.verdocs.com/v2/organization-members', {\n  method: 'post',\n  body: JSON.stringify(body),\n  headers: {\n    'Content-Type': 'application/json',\n    'Authorization: Bearer ACCESS_TOKEN'\n  },\n});\n\nconst data = await response.json();\nconsole.log(data);"
          },
          {
            "lang": "ruby",
            "label": "Ruby",
            "source": "require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://api.verdocs.com/v2/organization-members\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Post.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer ACCESS_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"
          },
          {
            "lang": "python",
            "label": "Python",
            "source": "import http.client\n\nconn = http.client.HTTPSConnection(\"api.verdocs.com\")\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer ACCESS_TOKEN\"\n}\n\nconn.request(\"POST\", \"/v2/organization-members\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))\n"
          },
          {
            "lang": "csharp",
            "label": "C-Sharp",
            "source": "var client = new RestClient(\"https://api.verdocs.com/v2/organization-members\");\nvar request = new RestRequest(Method.POST);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer ACCESS_TOKEN\");\n\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "java",
            "label": "Java",
            "source": "HttpResponse<String> response = Unirest.post(\"https://api.verdocs.com/v2/organization-members\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer ACCESS_TOKEN\")\n  .asString();"
          }
        ]
      },
      "get": {
        "operationId": "getOrganizationMembers",
        "summary": "List current organization's members",
        "tags": [
          "Organization Members"
        ],
        "parameters": [],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "title": "IProfile"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Request Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Access Denied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "406": {
            "description": "Invalid Parameter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "bash",
            "label": "CURL",
            "source": "curl -X GET \"https://api.verdocs.com/v2/organization-members\" \\\n    -H \"Authorization: Bearer ACCESS_TOKEN\" \\\n    -H \"content-type: application/json\" \\\n    -d '{\"param\": \"value\"}'"
          },
          {
            "lang": "typescript",
            "label": "NodeJS",
            "source": "import fetch from 'node-fetch';\n\nconst response = await fetch('https://api.verdocs.com/v2/organization-members', { \n  headers: {\n    'Content-Type': 'application/json',\n    'Authorization: Bearer ACCESS_TOKEN'\n  } \n});\nconst data = await response.json();\nconsole.log(data);"
          },
          {
            "lang": "ruby",
            "label": "Ruby",
            "source": "require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://api.verdocs.com/v2/organization-members\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Get.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer ACCESS_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"
          },
          {
            "lang": "python",
            "label": "Python",
            "source": "import http.client\n\nconn = http.client.HTTPSConnection(\"api.verdocs.com\")\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer ACCESS_TOKEN\"\n}\n\nconn.request(\"GET\", \"/v2/organization-members\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))\n"
          },
          {
            "lang": "csharp",
            "label": "C-Sharp",
            "source": "var client = new RestClient(\"https://api.verdocs.com/v2/organization-members\");\nvar request = new RestRequest(Method.GET);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer ACCESS_TOKEN\");\n\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "java",
            "label": "Java",
            "source": "HttpResponse<String> response = Unirest.get(\"https://api.verdocs.com/v2/organization-members\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer ACCESS_TOKEN\")\n  .asString();"
          }
        ]
      }
    },
    "/v2/profiles": {
      "post": {
        "operationId": "createProfile",
        "summary": "Create profile and organization",
        "tags": [
          "Profiles"
        ],
        "parameters": [],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "title": "IAuthenticateResponse"
                }
              }
            }
          },
          "400": {
            "description": "Request Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Access Denied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "406": {
            "description": "Invalid Parameter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          }
        },
        "requestBody": {
          "description": "Body Parameters",
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "email",
                  "password",
                  "first_name",
                  "last_name",
                  "org_name",
                  "phone"
                ],
                "properties": {
                  "email": {
                    "type": "string",
                    "description": "Email address for the new user"
                  },
                  "password": {
                    "type": "string",
                    "description": "Password for the new user"
                  },
                  "first_name": {
                    "type": "string",
                    "description": "First name"
                  },
                  "last_name": {
                    "type": "string",
                    "description": "Last name"
                  },
                  "org_name": {
                    "type": "string",
                    "description": "Name for the new organization"
                  },
                  "phone": {
                    "type": "string",
                    "description": "Phone number"
                  },
                  "timezone": {
                    "type": "string",
                    "description": "Long-form timezone"
                  },
                  "locale": {
                    "type": "string",
                    "description": "Locale code"
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "bash",
            "label": "CURL",
            "source": "curl -X POST \"https://api.verdocs.com/v2/profiles\" \\\n    -H \"Authorization: Bearer ACCESS_TOKEN\" \\\n    -H \"content-type: application/json\" \\\n    -d '{\"param\": \"value\"}'"
          },
          {
            "lang": "typescript",
            "label": "NodeJS",
            "source": "import fetch from 'node-fetch';\n\nconst response = await fetch('https://api.verdocs.com/v2/profiles', {\n  method: 'post',\n  body: JSON.stringify(body),\n  headers: {\n    'Content-Type': 'application/json',\n    'Authorization: Bearer ACCESS_TOKEN'\n  },\n});\n\nconst data = await response.json();\nconsole.log(data);"
          },
          {
            "lang": "ruby",
            "label": "Ruby",
            "source": "require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://api.verdocs.com/v2/profiles\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Post.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer ACCESS_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"
          },
          {
            "lang": "python",
            "label": "Python",
            "source": "import http.client\n\nconn = http.client.HTTPSConnection(\"api.verdocs.com\")\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer ACCESS_TOKEN\"\n}\n\nconn.request(\"POST\", \"/v2/profiles\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))\n"
          },
          {
            "lang": "csharp",
            "label": "C-Sharp",
            "source": "var client = new RestClient(\"https://api.verdocs.com/v2/profiles\");\nvar request = new RestRequest(Method.POST);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer ACCESS_TOKEN\");\n\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "java",
            "label": "Java",
            "source": "HttpResponse<String> response = Unirest.post(\"https://api.verdocs.com/v2/profiles\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer ACCESS_TOKEN\")\n  .asString();"
          }
        ]
      },
      "get": {
        "operationId": "getProfiles",
        "summary": "Get the caller's profiles",
        "tags": [
          "Profiles"
        ],
        "parameters": [],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "title": "IProfile"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Request Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Access Denied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "406": {
            "description": "Invalid Parameter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          }
        },
        "description": "A user may have multiple profiles, one for each organization of which they are a member. Only one profile may be \"current\" at a time.",
        "x-codeSamples": [
          {
            "lang": "bash",
            "label": "CURL",
            "source": "curl -X GET \"https://api.verdocs.com/v2/profiles\" \\\n    -H \"Authorization: Bearer ACCESS_TOKEN\" \\\n    -H \"content-type: application/json\" \\\n    -d '{\"param\": \"value\"}'"
          },
          {
            "lang": "typescript",
            "label": "NodeJS",
            "source": "import fetch from 'node-fetch';\n\nconst response = await fetch('https://api.verdocs.com/v2/profiles', { \n  headers: {\n    'Content-Type': 'application/json',\n    'Authorization: Bearer ACCESS_TOKEN'\n  } \n});\nconst data = await response.json();\nconsole.log(data);"
          },
          {
            "lang": "ruby",
            "label": "Ruby",
            "source": "require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://api.verdocs.com/v2/profiles\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Get.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer ACCESS_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"
          },
          {
            "lang": "python",
            "label": "Python",
            "source": "import http.client\n\nconn = http.client.HTTPSConnection(\"api.verdocs.com\")\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer ACCESS_TOKEN\"\n}\n\nconn.request(\"GET\", \"/v2/profiles\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))\n"
          },
          {
            "lang": "csharp",
            "label": "C-Sharp",
            "source": "var client = new RestClient(\"https://api.verdocs.com/v2/profiles\");\nvar request = new RestRequest(Method.GET);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer ACCESS_TOKEN\");\n\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "java",
            "label": "Java",
            "source": "HttpResponse<String> response = Unirest.get(\"https://api.verdocs.com/v2/profiles\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer ACCESS_TOKEN\")\n  .asString();"
          }
        ]
      }
    },
    "/v2/profiles/signatures": {
      "post": {
        "operationId": "createSignature",
        "summary": "Create Signature Block",
        "tags": [
          "Signatures and Initials"
        ],
        "parameters": [],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "title": "ISignature"
                }
              }
            }
          },
          "400": {
            "description": "Request Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Access Denied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "406": {
            "description": "Invalid Parameter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          }
        },
        "requestBody": {
          "description": "Body Parameters",
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "signature"
                ],
                "properties": {
                  "signature": {
                    "type": "string",
                    "description": "Blob containing signature image to store."
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "bash",
            "label": "CURL",
            "source": "curl -X POST \"https://api.verdocs.com/v2/profiles/signatures\" \\\n    -H \"Authorization: Bearer ACCESS_TOKEN\" \\\n    -H \"content-type: application/json\" \\\n    -d '{\"param\": \"value\"}'"
          },
          {
            "lang": "typescript",
            "label": "NodeJS",
            "source": "import fetch from 'node-fetch';\n\nconst response = await fetch('https://api.verdocs.com/v2/profiles/signatures', {\n  method: 'post',\n  body: JSON.stringify(body),\n  headers: {\n    'Content-Type': 'application/json',\n    'Authorization: Bearer ACCESS_TOKEN'\n  },\n});\n\nconst data = await response.json();\nconsole.log(data);"
          },
          {
            "lang": "ruby",
            "label": "Ruby",
            "source": "require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://api.verdocs.com/v2/profiles/signatures\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Post.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer ACCESS_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"
          },
          {
            "lang": "python",
            "label": "Python",
            "source": "import http.client\n\nconn = http.client.HTTPSConnection(\"api.verdocs.com\")\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer ACCESS_TOKEN\"\n}\n\nconn.request(\"POST\", \"/v2/profiles/signatures\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))\n"
          },
          {
            "lang": "csharp",
            "label": "C-Sharp",
            "source": "var client = new RestClient(\"https://api.verdocs.com/v2/profiles/signatures\");\nvar request = new RestRequest(Method.POST);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer ACCESS_TOKEN\");\n\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "java",
            "label": "Java",
            "source": "HttpResponse<String> response = Unirest.post(\"https://api.verdocs.com/v2/profiles/signatures\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer ACCESS_TOKEN\")\n  .asString();"
          }
        ]
      }
    },
    "/v2/templates": {
      "post": {
        "operationId": "createTemplate",
        "summary": "Create a template",
        "tags": [
          "Templates"
        ],
        "parameters": [],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "title": "ITemplate"
                }
              }
            }
          },
          "400": {
            "description": "Request Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Access Denied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "406": {
            "description": "Invalid Parameter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          }
        },
        "requestBody": {
          "description": "Body Parameters",
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "name"
                ],
                "properties": {
                  "name": {
                    "type": "string",
                    "description": "Template name"
                  },
                  "description": {
                    "type": "string",
                    "description": "Optional description"
                  },
                  "visibility": {
                    "$ref": "#/components/schemas/TTemplateVisibility",
                    "description": "Visibility setting"
                  },
                  "is_personal": {
                    "type": "boolean",
                    "description": "Deprecated. If true, the template is personal and can only be seen by the caller. (Use \"visibility\" for new calls.)"
                  },
                  "is_public": {
                    "type": "boolean",
                    "description": "Deprecated. If true, the template is public and can be seen by anybody. (Use \"visibility\" for new calls.)"
                  },
                  "sender": {
                    "$ref": "#/components/schemas/TTemplateSender",
                    "description": "Who may send envelopes using this template"
                  },
                  "initial_reminder": {
                    "type": "number",
                    "description": "Delay (in seconds) before the first reminder is sent (min: 4hrs). Set to 0 or null to disable."
                  },
                  "followup_reminders": {
                    "type": "number",
                    "description": "Delay (in seconds) before the subsequent reminders are sent (min: 12hrs). Set to 0 or null to disable."
                  },
                  "max_reminder_days": {
                    "type": "number",
                    "description": "Maximum number of days (after envelope creation) for which reminders will be sent. Defaults to 14."
                  },
                  "documents": {
                    "type": "array",
                    "items": {
                      "title": "ITemplateDocument"
                    },
                    "description": "Optional list of documents to attach to the template"
                  },
                  "roles": {
                    "type": "array",
                    "items": {
                      "title": "IRole"
                    },
                    "description": "Optional list of roles to create. Note that if roles are not included in the request, fields will be ignored."
                  },
                  "fields": {
                    "type": "array",
                    "description": "Optional list of fields to create. Note that if fields that do not match a role will be ignored."
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "bash",
            "label": "CURL",
            "source": "curl -X POST \"https://api.verdocs.com/v2/templates\" \\\n    -H \"Authorization: Bearer ACCESS_TOKEN\" \\\n    -H \"content-type: application/json\" \\\n    -d '{\"param\": \"value\"}'"
          },
          {
            "lang": "typescript",
            "label": "NodeJS",
            "source": "import fetch from 'node-fetch';\n\nconst response = await fetch('https://api.verdocs.com/v2/templates', {\n  method: 'post',\n  body: JSON.stringify(body),\n  headers: {\n    'Content-Type': 'application/json',\n    'Authorization: Bearer ACCESS_TOKEN'\n  },\n});\n\nconst data = await response.json();\nconsole.log(data);"
          },
          {
            "lang": "ruby",
            "label": "Ruby",
            "source": "require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://api.verdocs.com/v2/templates\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Post.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer ACCESS_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"
          },
          {
            "lang": "python",
            "label": "Python",
            "source": "import http.client\n\nconn = http.client.HTTPSConnection(\"api.verdocs.com\")\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer ACCESS_TOKEN\"\n}\n\nconn.request(\"POST\", \"/v2/templates\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))\n"
          },
          {
            "lang": "csharp",
            "label": "C-Sharp",
            "source": "var client = new RestClient(\"https://api.verdocs.com/v2/templates\");\nvar request = new RestRequest(Method.POST);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer ACCESS_TOKEN\");\n\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "java",
            "label": "Java",
            "source": "HttpResponse<String> response = Unirest.post(\"https://api.verdocs.com/v2/templates\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer ACCESS_TOKEN\")\n  .asString();"
          }
        ]
      },
      "get": {
        "operationId": "getTemplates",
        "summary": "Get Templates",
        "tags": [
          "Templates"
        ],
        "parameters": [
          {
            "in": "query",
            "name": "q",
            "description": "Find templates whose names/descriptions contain the specified query string",
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "is_starred",
            "description": "If true, returns only templates with at least one \"star\".",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "in": "query",
            "name": "is_creator",
            "description": "If true, returns only templates that the caller created.",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "in": "query",
            "name": "visibility",
            "description": "Return only templates with the specified visibility.",
            "schema": {
              "type": "string",
              "enum": [
                "private_shared",
                "private",
                "shared",
                "public"
              ]
            }
          },
          {
            "in": "query",
            "name": "sort_by",
            "description": "Return results sorted by this criteria",
            "schema": {
              "type": "string",
              "enum": [
                "created_at",
                "updated_at",
                "name",
                "last_used_at",
                "counter",
                "star_counter"
              ]
            }
          },
          {
            "in": "query",
            "name": "ascending",
            "description": "Set true/false to override the sort direction. Note that the default depends on `sort_by`. Date-based sorts default to descending, while name defaults to ascending.",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "in": "query",
            "name": "rows",
            "description": "Limit the number of rows returned",
            "schema": {
              "type": "integer",
              "default": 20
            }
          },
          {
            "in": "query",
            "name": "page",
            "description": "Specify which page of results to return",
            "schema": {
              "type": "integer",
              "default": 0
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "count": {
                      "description": "The total number of records matching the query, helpful for pagination",
                      "type": "integer",
                      "format": "int32"
                    },
                    "rows": {
                      "description": "The number of rows returned in this response page",
                      "type": "integer",
                      "format": "int32"
                    },
                    "page": {
                      "description": "The page number of this response",
                      "type": "integer",
                      "format": "int32"
                    },
                    "templates": {
                      "description": "List of templates found",
                      "type": "array",
                      "items": {
                        "title": "ITemplate"
                      }
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "Request Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Access Denied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "406": {
            "description": "Invalid Parameter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "bash",
            "label": "CURL",
            "source": "curl -X GET \"https://api.verdocs.com/v2/templates?param=value\" \\\n    -H \"Authorization: Bearer ACCESS_TOKEN\" \\\n    -H \"content-type: application/json\" \\\n    -d '{\"param\": \"value\"}'"
          },
          {
            "lang": "typescript",
            "label": "NodeJS",
            "source": "import fetch from 'node-fetch';\n\nconst response = await fetch('https://api.verdocs.com/v2/templates?param=value', { \n  headers: {\n    'Content-Type': 'application/json',\n    'Authorization: Bearer ACCESS_TOKEN'\n  } \n});\nconst data = await response.json();\nconsole.log(data);"
          },
          {
            "lang": "ruby",
            "label": "Ruby",
            "source": "require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://api.verdocs.com/v2/templates?param=value\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Get.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer ACCESS_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"
          },
          {
            "lang": "python",
            "label": "Python",
            "source": "import http.client\n\nconn = http.client.HTTPSConnection(\"api.verdocs.com\")\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer ACCESS_TOKEN\"\n}\n\nconn.request(\"GET\", \"/v2/templates\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))\n"
          },
          {
            "lang": "csharp",
            "label": "C-Sharp",
            "source": "var client = new RestClient(\"https://api.verdocs.com/v2/templates?param=value\");\nvar request = new RestRequest(Method.GET);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer ACCESS_TOKEN\");\n\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "java",
            "label": "Java",
            "source": "HttpResponse<String> response = Unirest.get(\"https://api.verdocs.com/v2/templates?param=value\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer ACCESS_TOKEN\")\n  .asString();"
          }
        ]
      }
    },
    "/v2/template-documents": {
      "post": {
        "operationId": "createTemplateDocument",
        "summary": "Attach a document to a template",
        "tags": [
          "Template Documents"
        ],
        "parameters": [],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "title": "ITemplateDocument"
                }
              }
            }
          },
          "400": {
            "description": "Request Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Access Denied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "406": {
            "description": "Invalid Parameter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          }
        },
        "requestBody": {
          "description": "Body Parameters",
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "file",
                  "template_id"
                ],
                "properties": {
                  "file": {
                    "type": "string",
                    "format": "binary",
                    "description": "Document file to attach. The file name will automatically be used as the document name."
                  },
                  "template_id": {
                    "type": "string",
                    "format": "uuid",
                    "description": "Template ID to attach the document to"
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "bash",
            "label": "CURL",
            "source": "curl -X POST \"https://api.verdocs.com/v2/template-documents\" \\\n    -H \"Authorization: Bearer ACCESS_TOKEN\" \\\n    -H \"content-type: application/json\" \\\n    -d '{\"param\": \"value\"}'"
          },
          {
            "lang": "typescript",
            "label": "NodeJS",
            "source": "import fetch from 'node-fetch';\n\nconst response = await fetch('https://api.verdocs.com/v2/template-documents', {\n  method: 'post',\n  body: JSON.stringify(body),\n  headers: {\n    'Content-Type': 'application/json',\n    'Authorization: Bearer ACCESS_TOKEN'\n  },\n});\n\nconst data = await response.json();\nconsole.log(data);"
          },
          {
            "lang": "ruby",
            "label": "Ruby",
            "source": "require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://api.verdocs.com/v2/template-documents\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Post.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer ACCESS_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"
          },
          {
            "lang": "python",
            "label": "Python",
            "source": "import http.client\n\nconn = http.client.HTTPSConnection(\"api.verdocs.com\")\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer ACCESS_TOKEN\"\n}\n\nconn.request(\"POST\", \"/v2/template-documents\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))\n"
          },
          {
            "lang": "csharp",
            "label": "C-Sharp",
            "source": "var client = new RestClient(\"https://api.verdocs.com/v2/template-documents\");\nvar request = new RestRequest(Method.POST);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer ACCESS_TOKEN\");\n\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "java",
            "label": "Java",
            "source": "HttpResponse<String> response = Unirest.post(\"https://api.verdocs.com/v2/template-documents\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer ACCESS_TOKEN\")\n  .asString();"
          }
        ]
      }
    },
    "/v2/templates/from-sharepoint": {
      "post": {
        "operationId": "createTemplateFromSharepoint",
        "summary": "Create a template from an asset in Sharepoint",
        "tags": [
          "Templates"
        ],
        "parameters": [],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "title": "ITemplate"
                }
              }
            }
          },
          "400": {
            "description": "Request Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Access Denied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "406": {
            "description": "Invalid Parameter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          }
        },
        "requestBody": {
          "description": "Body Parameters",
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "name",
                  "siteId",
                  "itemId",
                  "oboToken"
                ],
                "properties": {
                  "name": {
                    "type": "string",
                    "description": "Name for the new template"
                  },
                  "siteId": {
                    "type": "string",
                    "description": "Name for the new template"
                  },
                  "itemId": {
                    "type": "string",
                    "description": "Name for the new template"
                  },
                  "oboToken": {
                    "type": "string",
                    "description": "On-Behalf-Of token for calls to Sharepoint. Should be generated as a short-expiration token with at least Read privileges to the siteId/itemId. This token will be discarded after being used."
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "bash",
            "label": "CURL",
            "source": "curl -X POST \"https://api.verdocs.com/v2/templates/from-sharepoint\" \\\n    -H \"Authorization: Bearer ACCESS_TOKEN\" \\\n    -H \"content-type: application/json\" \\\n    -d '{\"param\": \"value\"}'"
          },
          {
            "lang": "typescript",
            "label": "NodeJS",
            "source": "import fetch from 'node-fetch';\n\nconst response = await fetch('https://api.verdocs.com/v2/templates/from-sharepoint', {\n  method: 'post',\n  body: JSON.stringify(body),\n  headers: {\n    'Content-Type': 'application/json',\n    'Authorization: Bearer ACCESS_TOKEN'\n  },\n});\n\nconst data = await response.json();\nconsole.log(data);"
          },
          {
            "lang": "ruby",
            "label": "Ruby",
            "source": "require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://api.verdocs.com/v2/templates/from-sharepoint\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Post.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer ACCESS_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"
          },
          {
            "lang": "python",
            "label": "Python",
            "source": "import http.client\n\nconn = http.client.HTTPSConnection(\"api.verdocs.com\")\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer ACCESS_TOKEN\"\n}\n\nconn.request(\"POST\", \"/v2/templates/from-sharepoint\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))\n"
          },
          {
            "lang": "csharp",
            "label": "C-Sharp",
            "source": "var client = new RestClient(\"https://api.verdocs.com/v2/templates/from-sharepoint\");\nvar request = new RestRequest(Method.POST);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer ACCESS_TOKEN\");\n\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "java",
            "label": "Java",
            "source": "HttpResponse<String> response = Unirest.post(\"https://api.verdocs.com/v2/templates/from-sharepoint\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer ACCESS_TOKEN\")\n  .asString();"
          }
        ]
      }
    },
    "/v2/roles/{template_id}": {
      "post": {
        "operationId": "createTemplateRole",
        "summary": "Add a role to a template",
        "tags": [
          "Roles"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "template_id",
            "description": "The template ID.",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "title": "IRole"
                }
              }
            }
          },
          "400": {
            "description": "Request Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Access Denied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "406": {
            "description": "Invalid Parameter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          }
        },
        "requestBody": {
          "description": "Body Parameters",
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "name",
                  "type"
                ],
                "properties": {
                  "name": {
                    "type": "string",
                    "description": "Name for the new role. Must be unique within the template. May include spaces, but later calls must URL-encode any references to this role, so it is recomended that special characters be avoided."
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "signer",
                      "cc",
                      "approver"
                    ],
                    "description": "Type of role to create. Signers act on documents by filling and signing fields. CC recipients receive a copy but do not act on the document. Approvers control the final submission of a document, but do not have fields of their own to fill out."
                  },
                  "full_name": {
                    "type": "string",
                    "description": "Default full name for the role. May be completed/overridden later, when envelopes are made from the template."
                  },
                  "email": {
                    "type": "string",
                    "description": "Default email address for the role. May be completed/overridden later, when envelopes are made from the template."
                  },
                  "phone": {
                    "type": "string",
                    "description": "Default (SMS-capable) phone number for the role. May be completed/overridden later, when envelopes are made from the template."
                  },
                  "message": {
                    "type": "string",
                    "description": "Optional message to include in email and SMS signing invitations."
                  },
                  "sequence": {
                    "type": "integer",
                    "default": 1,
                    "description": "Optional 1-based sequence number for the role. Roles that share the same sequence number act in parallel, and will receive invitations at the same time."
                  },
                  "order": {
                    "type": "integer",
                    "default": 1,
                    "description": "Optional 1-based order number for the role. Controls the left-to-right display order of roles at the same sequence number in the UI components e.g. `<verdocs-template-roles />`."
                  },
                  "delegator": {
                    "type": "boolean",
                    "description": "If true, the role may delegate their signing responsibility to another party."
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "bash",
            "label": "CURL",
            "source": "curl -X POST \"https://api.verdocs.com/v2/roles/TEMPLATE_ID\" \\\n    -H \"Authorization: Bearer ACCESS_TOKEN\" \\\n    -H \"content-type: application/json\" \\\n    -d '{\"param\": \"value\"}'"
          },
          {
            "lang": "typescript",
            "label": "NodeJS",
            "source": "import fetch from 'node-fetch';\n\nconst response = await fetch('https://api.verdocs.com/v2/roles/TEMPLATE_ID', {\n  method: 'post',\n  body: JSON.stringify(body),\n  headers: {\n    'Content-Type': 'application/json',\n    'Authorization: Bearer ACCESS_TOKEN'\n  },\n});\n\nconst data = await response.json();\nconsole.log(data);"
          },
          {
            "lang": "ruby",
            "label": "Ruby",
            "source": "require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://api.verdocs.com/v2/roles/TEMPLATE_ID\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Post.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer ACCESS_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"
          },
          {
            "lang": "python",
            "label": "Python",
            "source": "import http.client\n\nconn = http.client.HTTPSConnection(\"api.verdocs.com\")\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer ACCESS_TOKEN\"\n}\n\nconn.request(\"POST\", \"/v2/roles/{template_id}\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))\n"
          },
          {
            "lang": "csharp",
            "label": "C-Sharp",
            "source": "var client = new RestClient(\"https://api.verdocs.com/v2/roles/TEMPLATE_ID\");\nvar request = new RestRequest(Method.POST);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer ACCESS_TOKEN\");\n\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "java",
            "label": "Java",
            "source": "HttpResponse<String> response = Unirest.post(\"https://api.verdocs.com/v2/roles/TEMPLATE_ID\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer ACCESS_TOKEN\")\n  .asString();"
          }
        ]
      }
    },
    "/v2/organization-invitations/decline": {
      "post": {
        "operationId": "declineOrganizationInvitation",
        "summary": "Decline an invitation",
        "tags": [
          "Organization Invitations"
        ],
        "parameters": [],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "400": {
            "description": "Request Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Access Denied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "406": {
            "description": "Invalid Parameter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          }
        },
        "description": "Mark the status \"declined,\" providing a visual indication to the organization's admins that the invite was declined, preventing further invites from being created to the same email address, and also preventing the invitee from receiving reminders to join.",
        "requestBody": {
          "description": "Body Parameters",
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "email",
                  "token"
                ],
                "properties": {
                  "email": {
                    "type": "string",
                    "description": "Email address for the invitee"
                  },
                  "token": {
                    "type": "string",
                    "description": "Invite token for the invitee"
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "bash",
            "label": "CURL",
            "source": "curl -X POST \"https://api.verdocs.com/v2/organization-invitations/decline\" \\\n    -H \"Authorization: Bearer ACCESS_TOKEN\" \\\n    -H \"content-type: application/json\" \\\n    -d '{\"param\": \"value\"}'"
          },
          {
            "lang": "typescript",
            "label": "NodeJS",
            "source": "import fetch from 'node-fetch';\n\nconst response = await fetch('https://api.verdocs.com/v2/organization-invitations/decline', {\n  method: 'post',\n  body: JSON.stringify(body),\n  headers: {\n    'Content-Type': 'application/json',\n    'Authorization: Bearer ACCESS_TOKEN'\n  },\n});\n\nconst data = await response.json();\nconsole.log(data);"
          },
          {
            "lang": "ruby",
            "label": "Ruby",
            "source": "require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://api.verdocs.com/v2/organization-invitations/decline\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Post.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer ACCESS_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"
          },
          {
            "lang": "python",
            "label": "Python",
            "source": "import http.client\n\nconn = http.client.HTTPSConnection(\"api.verdocs.com\")\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer ACCESS_TOKEN\"\n}\n\nconn.request(\"POST\", \"/v2/organization-invitations/decline\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))\n"
          },
          {
            "lang": "csharp",
            "label": "C-Sharp",
            "source": "var client = new RestClient(\"https://api.verdocs.com/v2/organization-invitations/decline\");\nvar request = new RestRequest(Method.POST);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer ACCESS_TOKEN\");\n\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "java",
            "label": "Java",
            "source": "HttpResponse<String> response = Unirest.post(\"https://api.verdocs.com/v2/organization-invitations/decline\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer ACCESS_TOKEN\")\n  .asString();"
          }
        ]
      }
    },
    "/v2/envelopes/{envelope_id}/recipients/{role_name}/delegate": {
      "post": {
        "operationId": "delegateRecipient",
        "summary": "Delegate Recipient",
        "tags": [
          "Recipients"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "envelope_id",
            "description": "The envelope to operate on.",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "in": "path",
            "name": "role_name",
            "description": "The role to operate on.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "400": {
            "description": "Request Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Access Denied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "406": {
            "description": "Invalid Parameter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          }
        },
        "requestBody": {
          "description": "Body Parameters",
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "first_name",
                  "last_name",
                  "email"
                ],
                "properties": {
                  "first_name": {
                    "type": "string",
                    "description": "The first name of the new recipient."
                  },
                  "last_name": {
                    "type": "string",
                    "description": "The last name of the new recipient."
                  },
                  "email": {
                    "type": "string",
                    "description": "The email address of the new recipient."
                  },
                  "phone": {
                    "type": "string",
                    "description": "Optional phone number for the new recipient."
                  },
                  "message": {
                    "type": "string",
                    "description": "Optional message for the new recipient's invitation."
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "bash",
            "label": "CURL",
            "source": "curl -X POST \"https://api.verdocs.com/v2/envelopes/ENVELOPE_ID/recipients/ROLE_NAME/delegate\" \\\n    -H \"Authorization: Bearer ACCESS_TOKEN\" \\\n    -H \"content-type: application/json\" \\\n    -d '{\"param\": \"value\"}'"
          },
          {
            "lang": "typescript",
            "label": "NodeJS",
            "source": "import fetch from 'node-fetch';\n\nconst response = await fetch('https://api.verdocs.com/v2/envelopes/ENVELOPE_ID/recipients/ROLE_NAME/delegate', {\n  method: 'post',\n  body: JSON.stringify(body),\n  headers: {\n    'Content-Type': 'application/json',\n    'Authorization: Bearer ACCESS_TOKEN'\n  },\n});\n\nconst data = await response.json();\nconsole.log(data);"
          },
          {
            "lang": "ruby",
            "label": "Ruby",
            "source": "require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://api.verdocs.com/v2/envelopes/ENVELOPE_ID/recipients/ROLE_NAME/delegate\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Post.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer ACCESS_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"
          },
          {
            "lang": "python",
            "label": "Python",
            "source": "import http.client\n\nconn = http.client.HTTPSConnection(\"api.verdocs.com\")\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer ACCESS_TOKEN\"\n}\n\nconn.request(\"POST\", \"/v2/envelopes/{envelope_id}/recipients/{role_name}/delegate\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))\n"
          },
          {
            "lang": "csharp",
            "label": "C-Sharp",
            "source": "var client = new RestClient(\"https://api.verdocs.com/v2/envelopes/ENVELOPE_ID/recipients/ROLE_NAME/delegate\");\nvar request = new RestRequest(Method.POST);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer ACCESS_TOKEN\");\n\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "java",
            "label": "Java",
            "source": "HttpResponse<String> response = Unirest.post(\"https://api.verdocs.com/v2/envelopes/ENVELOPE_ID/recipients/ROLE_NAME/delegate\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer ACCESS_TOKEN\")\n  .asString();"
          }
        ]
      }
    },
    "/v2/api-keys/{client_id}": {
      "delete": {
        "operationId": "deleteApiKey",
        "summary": "Delete API key",
        "tags": [
          "API Keys"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "client_id",
            "description": "",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TBasicResponse"
                }
              }
            }
          },
          "400": {
            "description": "Request Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Access Denied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "406": {
            "description": "Invalid Parameter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "bash",
            "label": "CURL",
            "source": "curl -X DELETE \"https://api.verdocs.com/v2/api-keys/CLIENT_ID\" \\\n    -H \"Authorization: Bearer ACCESS_TOKEN\" \\\n    -H \"content-type: application/json\" \\\n    -d '{\"param\": \"value\"}'"
          },
          {
            "lang": "typescript",
            "label": "NodeJS",
            "source": "import fetch from 'node-fetch';\n\nconst response = await fetch('https://api.verdocs.com/v2/api-keys/CLIENT_ID', {\n  method: 'delete',\n  body: JSON.stringify(body),\n  headers: {\n    'Content-Type': 'application/json',\n    'Authorization: Bearer ACCESS_TOKEN'\n  },\n});\n\nconst data = await response.json();\nconsole.log(data);"
          },
          {
            "lang": "ruby",
            "label": "Ruby",
            "source": "require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://api.verdocs.com/v2/api-keys/CLIENT_ID\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Delete.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer ACCESS_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"
          },
          {
            "lang": "python",
            "label": "Python",
            "source": "import http.client\n\nconn = http.client.HTTPSConnection(\"api.verdocs.com\")\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer ACCESS_TOKEN\"\n}\n\nconn.request(\"DELETE\", \"/v2/api-keys/{client_id}\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))\n"
          },
          {
            "lang": "csharp",
            "label": "C-Sharp",
            "source": "var client = new RestClient(\"https://api.verdocs.com/v2/api-keys/CLIENT_ID\");\nvar request = new RestRequest(Method.DELETE);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer ACCESS_TOKEN\");\n\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "java",
            "label": "Java",
            "source": "HttpResponse<String> response = Unirest.delete(\"https://api.verdocs.com/v2/api-keys/CLIENT_ID\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer ACCESS_TOKEN\")\n  .asString();"
          }
        ]
      },
      "patch": {
        "operationId": "updateApiKey",
        "summary": "Update API key",
        "tags": [
          "API Keys"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "client_id",
            "description": "",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/IApiKey"
                }
              }
            }
          },
          "400": {
            "description": "Request Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Access Denied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "406": {
            "description": "Invalid Parameter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          }
        },
        "requestBody": {
          "description": "Body Parameters",
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [],
                "properties": {
                  "name": {
                    "type": "string",
                    "description": "New name for the API key"
                  },
                  "profile_id": {
                    "type": "string",
                    "format": "uuid",
                    "description": "New profile ID that calls made using the key will act as"
                  },
                  "global_admin": {
                    "type": "boolean",
                    "description": "If true, the key has full access to the organization, overriding the permissions of its assigned profile."
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "bash",
            "label": "CURL",
            "source": "curl -X PATCH \"https://api.verdocs.com/v2/api-keys/CLIENT_ID\" \\\n    -H \"Authorization: Bearer ACCESS_TOKEN\" \\\n    -H \"content-type: application/json\" \\\n    -d '{\"param\": \"value\"}'"
          },
          {
            "lang": "typescript",
            "label": "NodeJS",
            "source": "import fetch from 'node-fetch';\n\nconst response = await fetch('https://api.verdocs.com/v2/api-keys/CLIENT_ID', {\n  method: 'patch',\n  body: JSON.stringify(body),\n  headers: {\n    'Content-Type': 'application/json',\n    'Authorization: Bearer ACCESS_TOKEN'\n  },\n});\n\nconst data = await response.json();\nconsole.log(data);"
          },
          {
            "lang": "ruby",
            "label": "Ruby",
            "source": "require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://api.verdocs.com/v2/api-keys/CLIENT_ID\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Patch.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer ACCESS_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"
          },
          {
            "lang": "python",
            "label": "Python",
            "source": "import http.client\n\nconn = http.client.HTTPSConnection(\"api.verdocs.com\")\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer ACCESS_TOKEN\"\n}\n\nconn.request(\"PATCH\", \"/v2/api-keys/{client_id}\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))\n"
          },
          {
            "lang": "csharp",
            "label": "C-Sharp",
            "source": "var client = new RestClient(\"https://api.verdocs.com/v2/api-keys/CLIENT_ID\");\nvar request = new RestRequest(Method.PATCH);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer ACCESS_TOKEN\");\n\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "java",
            "label": "Java",
            "source": "HttpResponse<String> response = Unirest.patch(\"https://api.verdocs.com/v2/api-keys/CLIENT_ID\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer ACCESS_TOKEN\")\n  .asString();"
          }
        ]
      }
    },
    "/v2/organizations/{organizationid}/brands/{brandid}": {
      "delete": {
        "operationId": "deleteBrand",
        "summary": "Delete brand",
        "tags": [
          "Brands"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "organizationid",
            "description": "",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "path",
            "name": "brandid",
            "description": "",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "400": {
            "description": "Request Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Access Denied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "406": {
            "description": "Invalid Parameter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "bash",
            "label": "CURL",
            "source": "curl -X DELETE \"https://api.verdocs.com/v2/organizations/ORGANIZATIONID/brands/BRANDID\" \\\n    -H \"Authorization: Bearer ACCESS_TOKEN\" \\\n    -H \"content-type: application/json\" \\\n    -d '{\"param\": \"value\"}'"
          },
          {
            "lang": "typescript",
            "label": "NodeJS",
            "source": "import fetch from 'node-fetch';\n\nconst response = await fetch('https://api.verdocs.com/v2/organizations/ORGANIZATIONID/brands/BRANDID', {\n  method: 'delete',\n  body: JSON.stringify(body),\n  headers: {\n    'Content-Type': 'application/json',\n    'Authorization: Bearer ACCESS_TOKEN'\n  },\n});\n\nconst data = await response.json();\nconsole.log(data);"
          },
          {
            "lang": "ruby",
            "label": "Ruby",
            "source": "require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://api.verdocs.com/v2/organizations/ORGANIZATIONID/brands/BRANDID\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Delete.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer ACCESS_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"
          },
          {
            "lang": "python",
            "label": "Python",
            "source": "import http.client\n\nconn = http.client.HTTPSConnection(\"api.verdocs.com\")\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer ACCESS_TOKEN\"\n}\n\nconn.request(\"DELETE\", \"/v2/organizations/{organizationid}/brands/{brandid}\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))\n"
          },
          {
            "lang": "csharp",
            "label": "C-Sharp",
            "source": "var client = new RestClient(\"https://api.verdocs.com/v2/organizations/ORGANIZATIONID/brands/BRANDID\");\nvar request = new RestRequest(Method.DELETE);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer ACCESS_TOKEN\");\n\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "java",
            "label": "Java",
            "source": "HttpResponse<String> response = Unirest.delete(\"https://api.verdocs.com/v2/organizations/ORGANIZATIONID/brands/BRANDID\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer ACCESS_TOKEN\")\n  .asString();"
          }
        ]
      },
      "get": {
        "operationId": "getBrand",
        "summary": "Get brand",
        "tags": [
          "Brands"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "organizationid",
            "description": "",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "path",
            "name": "brandid",
            "description": "",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "title": "IBrand"
                }
              }
            }
          },
          "400": {
            "description": "Request Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Access Denied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "406": {
            "description": "Invalid Parameter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "bash",
            "label": "CURL",
            "source": "curl -X GET \"https://api.verdocs.com/v2/organizations/ORGANIZATIONID/brands/BRANDID\" \\\n    -H \"Authorization: Bearer ACCESS_TOKEN\" \\\n    -H \"content-type: application/json\" \\\n    -d '{\"param\": \"value\"}'"
          },
          {
            "lang": "typescript",
            "label": "NodeJS",
            "source": "import fetch from 'node-fetch';\n\nconst response = await fetch('https://api.verdocs.com/v2/organizations/ORGANIZATIONID/brands/BRANDID', { \n  headers: {\n    'Content-Type': 'application/json',\n    'Authorization: Bearer ACCESS_TOKEN'\n  } \n});\nconst data = await response.json();\nconsole.log(data);"
          },
          {
            "lang": "ruby",
            "label": "Ruby",
            "source": "require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://api.verdocs.com/v2/organizations/ORGANIZATIONID/brands/BRANDID\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Get.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer ACCESS_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"
          },
          {
            "lang": "python",
            "label": "Python",
            "source": "import http.client\n\nconn = http.client.HTTPSConnection(\"api.verdocs.com\")\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer ACCESS_TOKEN\"\n}\n\nconn.request(\"GET\", \"/v2/organizations/{organizationid}/brands/{brandid}\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))\n"
          },
          {
            "lang": "csharp",
            "label": "C-Sharp",
            "source": "var client = new RestClient(\"https://api.verdocs.com/v2/organizations/ORGANIZATIONID/brands/BRANDID\");\nvar request = new RestRequest(Method.GET);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer ACCESS_TOKEN\");\n\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "java",
            "label": "Java",
            "source": "HttpResponse<String> response = Unirest.get(\"https://api.verdocs.com/v2/organizations/ORGANIZATIONID/brands/BRANDID\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer ACCESS_TOKEN\")\n  .asString();"
          }
        ]
      },
      "patch": {
        "operationId": "updateBrandThumbnail",
        "summary": "Update brand thumbnail",
        "tags": [
          "Brands"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "organizationid",
            "description": "",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "path",
            "name": "brandid",
            "description": "",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "title": "IBrand"
                }
              }
            }
          },
          "400": {
            "description": "Request Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Access Denied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "406": {
            "description": "Invalid Parameter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          }
        },
        "requestBody": {
          "description": "Body Parameters",
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "thumbnail"
                ],
                "properties": {
                  "thumbnail": {
                    "type": "string",
                    "format": "binary",
                    "description": "Form-encoded file to upload"
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "bash",
            "label": "CURL",
            "source": "curl -X PATCH \"https://api.verdocs.com/v2/organizations/ORGANIZATIONID/brands/BRANDID\" \\\n    -H \"Authorization: Bearer ACCESS_TOKEN\" \\\n    -H \"content-type: application/json\" \\\n    -d '{\"param\": \"value\"}'"
          },
          {
            "lang": "typescript",
            "label": "NodeJS",
            "source": "import fetch from 'node-fetch';\n\nconst response = await fetch('https://api.verdocs.com/v2/organizations/ORGANIZATIONID/brands/BRANDID', {\n  method: 'patch',\n  body: JSON.stringify(body),\n  headers: {\n    'Content-Type': 'application/json',\n    'Authorization: Bearer ACCESS_TOKEN'\n  },\n});\n\nconst data = await response.json();\nconsole.log(data);"
          },
          {
            "lang": "ruby",
            "label": "Ruby",
            "source": "require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://api.verdocs.com/v2/organizations/ORGANIZATIONID/brands/BRANDID\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Patch.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer ACCESS_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"
          },
          {
            "lang": "python",
            "label": "Python",
            "source": "import http.client\n\nconn = http.client.HTTPSConnection(\"api.verdocs.com\")\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer ACCESS_TOKEN\"\n}\n\nconn.request(\"PATCH\", \"/v2/organizations/{organizationid}/brands/{brandid}\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))\n"
          },
          {
            "lang": "csharp",
            "label": "C-Sharp",
            "source": "var client = new RestClient(\"https://api.verdocs.com/v2/organizations/ORGANIZATIONID/brands/BRANDID\");\nvar request = new RestRequest(Method.PATCH);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer ACCESS_TOKEN\");\n\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "java",
            "label": "Java",
            "source": "HttpResponse<String> response = Unirest.patch(\"https://api.verdocs.com/v2/organizations/ORGANIZATIONID/brands/BRANDID\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer ACCESS_TOKEN\")\n  .asString();"
          }
        ]
      }
    },
    "/v2/envelopes/{envelope_id}/recipients/{role_name}/fields/{field_name}": {
      "put": {
        "operationId": "uploadEnvelopeFieldAttachment",
        "summary": "Upload envelope field attachment",
        "tags": [
          "Envelopes"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "envelope_id",
            "description": "The ID of the envelope to update.",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "in": "path",
            "name": "role_name",
            "description": "The recipient role name.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "path",
            "name": "field_name",
            "description": "The attachment field name to update.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "title": "IEnvelopeFieldSettings"
                }
              }
            }
          },
          "400": {
            "description": "Request Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Access Denied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "406": {
            "description": "Invalid Parameter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          }
        },
        "requestBody": {
          "description": "Body Parameters",
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "document"
                ],
                "properties": {
                  "document": {
                    "type": "string",
                    "format": "binary",
                    "description": "File to upload"
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "bash",
            "label": "CURL",
            "source": "curl -X PUT \"https://api.verdocs.com/v2/envelopes/ENVELOPE_ID/recipients/ROLE_NAME/fields/FIELD_NAME\" \\\n    -H \"Authorization: Bearer ACCESS_TOKEN\" \\\n    -H \"content-type: application/json\" \\\n    -d '{\"param\": \"value\"}'"
          },
          {
            "lang": "typescript",
            "label": "NodeJS",
            "source": "import fetch from 'node-fetch';\n\nconst response = await fetch('https://api.verdocs.com/v2/envelopes/ENVELOPE_ID/recipients/ROLE_NAME/fields/FIELD_NAME', {\n  method: 'put',\n  body: JSON.stringify(body),\n  headers: {\n    'Content-Type': 'application/json',\n    'Authorization: Bearer ACCESS_TOKEN'\n  },\n});\n\nconst data = await response.json();\nconsole.log(data);"
          },
          {
            "lang": "ruby",
            "label": "Ruby",
            "source": "require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://api.verdocs.com/v2/envelopes/ENVELOPE_ID/recipients/ROLE_NAME/fields/FIELD_NAME\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Put.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer ACCESS_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"
          },
          {
            "lang": "python",
            "label": "Python",
            "source": "import http.client\n\nconn = http.client.HTTPSConnection(\"api.verdocs.com\")\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer ACCESS_TOKEN\"\n}\n\nconn.request(\"PUT\", \"/v2/envelopes/{envelope_id}/recipients/{role_name}/fields/{field_name}\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))\n"
          },
          {
            "lang": "csharp",
            "label": "C-Sharp",
            "source": "var client = new RestClient(\"https://api.verdocs.com/v2/envelopes/ENVELOPE_ID/recipients/ROLE_NAME/fields/FIELD_NAME\");\nvar request = new RestRequest(Method.PUT);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer ACCESS_TOKEN\");\n\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "java",
            "label": "Java",
            "source": "HttpResponse<String> response = Unirest.put(\"https://api.verdocs.com/v2/envelopes/ENVELOPE_ID/recipients/ROLE_NAME/fields/FIELD_NAME\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer ACCESS_TOKEN\")\n  .asString();"
          }
        ]
      }
    },
    "/v2/fields/{template_id}/{field_name}": {
      "delete": {
        "operationId": "deleteField",
        "summary": "Delete a field",
        "tags": [
          "Fields"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "template_id",
            "description": "",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "path",
            "name": "field_name",
            "description": "",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "400": {
            "description": "Request Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Access Denied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "406": {
            "description": "Invalid Parameter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "bash",
            "label": "CURL",
            "source": "curl -X DELETE \"https://api.verdocs.com/v2/fields/TEMPLATE_ID/FIELD_NAME\" \\\n    -H \"Authorization: Bearer ACCESS_TOKEN\" \\\n    -H \"content-type: application/json\" \\\n    -d '{\"param\": \"value\"}'"
          },
          {
            "lang": "typescript",
            "label": "NodeJS",
            "source": "import fetch from 'node-fetch';\n\nconst response = await fetch('https://api.verdocs.com/v2/fields/TEMPLATE_ID/FIELD_NAME', {\n  method: 'delete',\n  body: JSON.stringify(body),\n  headers: {\n    'Content-Type': 'application/json',\n    'Authorization: Bearer ACCESS_TOKEN'\n  },\n});\n\nconst data = await response.json();\nconsole.log(data);"
          },
          {
            "lang": "ruby",
            "label": "Ruby",
            "source": "require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://api.verdocs.com/v2/fields/TEMPLATE_ID/FIELD_NAME\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Delete.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer ACCESS_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"
          },
          {
            "lang": "python",
            "label": "Python",
            "source": "import http.client\n\nconn = http.client.HTTPSConnection(\"api.verdocs.com\")\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer ACCESS_TOKEN\"\n}\n\nconn.request(\"DELETE\", \"/v2/fields/{template_id}/{field_name}\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))\n"
          },
          {
            "lang": "csharp",
            "label": "C-Sharp",
            "source": "var client = new RestClient(\"https://api.verdocs.com/v2/fields/TEMPLATE_ID/FIELD_NAME\");\nvar request = new RestRequest(Method.DELETE);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer ACCESS_TOKEN\");\n\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "java",
            "label": "Java",
            "source": "HttpResponse<String> response = Unirest.delete(\"https://api.verdocs.com/v2/fields/TEMPLATE_ID/FIELD_NAME\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer ACCESS_TOKEN\")\n  .asString();"
          }
        ]
      },
      "patch": {
        "operationId": "updateField",
        "summary": "Update a field",
        "tags": [
          "Fields"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "template_id",
            "description": "",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "path",
            "name": "field_name",
            "description": "",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "title": "ITemplateField"
                }
              }
            }
          },
          "400": {
            "description": "Request Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Access Denied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "406": {
            "description": "Invalid Parameter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          }
        },
        "requestBody": {
          "description": "Body Parameters",
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "role_name",
                  "document_id"
                ],
                "properties": {
                  "name": {
                    "type": "string",
                    "description": "Rename the field. Note that template field names must be unique within a template."
                  },
                  "role_name": {
                    "type": "string",
                    "description": "Role to assign to the field."
                  },
                  "document_id": {
                    "type": "string",
                    "description": "ID of the document upon which to place the field."
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "signature",
                      "initial",
                      "checkbox",
                      "radio",
                      "textbox",
                      "timestamp",
                      "date",
                      "dropdown",
                      "textarea",
                      "attachment",
                      "payment"
                    ],
                    "description": "Change the field type. Note that while this is technically allowed, fields have different behaviors, validators, default sizes, etc. It is usually easier to add a new field and delete the old one."
                  },
                  "required": {
                    "type": "boolean",
                    "default": "false",
                    "description": "Whether the field is required"
                  },
                  "page": {
                    "type": "integer",
                    "description": "0-based page number upon which to place the field"
                  },
                  "x": {
                    "type": "integer",
                    "description": "X position for the field (left to right)"
                  },
                  "y": {
                    "type": "integer",
                    "description": "Y position for the field (_bottom to top!_)"
                  },
                  "label": {
                    "type": "string",
                    "description": "Optional label to display above the field"
                  },
                  "width": {
                    "type": "integer",
                    "description": "Width of the field. Note that all fields have built-in defaults, and it is recommended that this only be set on text fields."
                  },
                  "height": {
                    "type": "integer",
                    "description": "Height of the field. Note that all fields have built-in defaults, and it is recommended that this only be set on text fields."
                  },
                  "placeholder": {
                    "type": "string",
                    "description": "Optional placeholder to display in text fields"
                  },
                  "group": {
                    "type": "string",
                    "description": "For fields that support grouping (radio buttons and check boxes) the value selected will be stored under this name"
                  },
                  "options": {
                    "type": "array",
                    "items": {
                      "title": "IDropdownOption"
                    },
                    "description": "For dropdown fields, the options to display"
                  },
                  "value": {
                    "type": "string",
                    "description": "Optional default value to set on the field"
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "bash",
            "label": "CURL",
            "source": "curl -X PATCH \"https://api.verdocs.com/v2/fields/TEMPLATE_ID/FIELD_NAME\" \\\n    -H \"Authorization: Bearer ACCESS_TOKEN\" \\\n    -H \"content-type: application/json\" \\\n    -d '{\"param\": \"value\"}'"
          },
          {
            "lang": "typescript",
            "label": "NodeJS",
            "source": "import fetch from 'node-fetch';\n\nconst response = await fetch('https://api.verdocs.com/v2/fields/TEMPLATE_ID/FIELD_NAME', {\n  method: 'patch',\n  body: JSON.stringify(body),\n  headers: {\n    'Content-Type': 'application/json',\n    'Authorization: Bearer ACCESS_TOKEN'\n  },\n});\n\nconst data = await response.json();\nconsole.log(data);"
          },
          {
            "lang": "ruby",
            "label": "Ruby",
            "source": "require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://api.verdocs.com/v2/fields/TEMPLATE_ID/FIELD_NAME\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Patch.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer ACCESS_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"
          },
          {
            "lang": "python",
            "label": "Python",
            "source": "import http.client\n\nconn = http.client.HTTPSConnection(\"api.verdocs.com\")\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer ACCESS_TOKEN\"\n}\n\nconn.request(\"PATCH\", \"/v2/fields/{template_id}/{field_name}\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))\n"
          },
          {
            "lang": "csharp",
            "label": "C-Sharp",
            "source": "var client = new RestClient(\"https://api.verdocs.com/v2/fields/TEMPLATE_ID/FIELD_NAME\");\nvar request = new RestRequest(Method.PATCH);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer ACCESS_TOKEN\");\n\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "java",
            "label": "Java",
            "source": "HttpResponse<String> response = Unirest.patch(\"https://api.verdocs.com/v2/fields/TEMPLATE_ID/FIELD_NAME\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer ACCESS_TOKEN\")\n  .asString();"
          }
        ]
      }
    },
    "/v2/organization-groups/{group_id}": {
      "delete": {
        "operationId": "deleteGroup",
        "summary": "Delete organization group",
        "tags": [
          "Organization Groups"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "group_id",
            "description": "The group ID to delete. The \"everyone\" group cannot be deleted.",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "400": {
            "description": "Request Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Access Denied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "406": {
            "description": "Invalid Parameter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "bash",
            "label": "CURL",
            "source": "curl -X DELETE \"https://api.verdocs.com/v2/organization-groups/GROUP_ID\" \\\n    -H \"Authorization: Bearer ACCESS_TOKEN\" \\\n    -H \"content-type: application/json\" \\\n    -d '{\"param\": \"value\"}'"
          },
          {
            "lang": "typescript",
            "label": "NodeJS",
            "source": "import fetch from 'node-fetch';\n\nconst response = await fetch('https://api.verdocs.com/v2/organization-groups/GROUP_ID', {\n  method: 'delete',\n  body: JSON.stringify(body),\n  headers: {\n    'Content-Type': 'application/json',\n    'Authorization: Bearer ACCESS_TOKEN'\n  },\n});\n\nconst data = await response.json();\nconsole.log(data);"
          },
          {
            "lang": "ruby",
            "label": "Ruby",
            "source": "require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://api.verdocs.com/v2/organization-groups/GROUP_ID\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Delete.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer ACCESS_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"
          },
          {
            "lang": "python",
            "label": "Python",
            "source": "import http.client\n\nconn = http.client.HTTPSConnection(\"api.verdocs.com\")\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer ACCESS_TOKEN\"\n}\n\nconn.request(\"DELETE\", \"/v2/organization-groups/{group_id}\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))\n"
          },
          {
            "lang": "csharp",
            "label": "C-Sharp",
            "source": "var client = new RestClient(\"https://api.verdocs.com/v2/organization-groups/GROUP_ID\");\nvar request = new RestRequest(Method.DELETE);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer ACCESS_TOKEN\");\n\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "java",
            "label": "Java",
            "source": "HttpResponse<String> response = Unirest.delete(\"https://api.verdocs.com/v2/organization-groups/GROUP_ID\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer ACCESS_TOKEN\")\n  .asString();"
          }
        ]
      },
      "get": {
        "operationId": "getGroup",
        "summary": "Get organization group",
        "tags": [
          "Organization Groups"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "group_id",
            "description": "The group ID to retrieve.",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "title": "IGroup"
                }
              }
            }
          },
          "400": {
            "description": "Request Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Access Denied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "406": {
            "description": "Invalid Parameter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "bash",
            "label": "CURL",
            "source": "curl -X GET \"https://api.verdocs.com/v2/organization-groups/GROUP_ID\" \\\n    -H \"Authorization: Bearer ACCESS_TOKEN\" \\\n    -H \"content-type: application/json\" \\\n    -d '{\"param\": \"value\"}'"
          },
          {
            "lang": "typescript",
            "label": "NodeJS",
            "source": "import fetch from 'node-fetch';\n\nconst response = await fetch('https://api.verdocs.com/v2/organization-groups/GROUP_ID', { \n  headers: {\n    'Content-Type': 'application/json',\n    'Authorization: Bearer ACCESS_TOKEN'\n  } \n});\nconst data = await response.json();\nconsole.log(data);"
          },
          {
            "lang": "ruby",
            "label": "Ruby",
            "source": "require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://api.verdocs.com/v2/organization-groups/GROUP_ID\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Get.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer ACCESS_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"
          },
          {
            "lang": "python",
            "label": "Python",
            "source": "import http.client\n\nconn = http.client.HTTPSConnection(\"api.verdocs.com\")\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer ACCESS_TOKEN\"\n}\n\nconn.request(\"GET\", \"/v2/organization-groups/{group_id}\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))\n"
          },
          {
            "lang": "csharp",
            "label": "C-Sharp",
            "source": "var client = new RestClient(\"https://api.verdocs.com/v2/organization-groups/GROUP_ID\");\nvar request = new RestRequest(Method.GET);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer ACCESS_TOKEN\");\n\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "java",
            "label": "Java",
            "source": "HttpResponse<String> response = Unirest.get(\"https://api.verdocs.com/v2/organization-groups/GROUP_ID\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer ACCESS_TOKEN\")\n  .asString();"
          }
        ]
      },
      "patch": {
        "operationId": "updateGroup",
        "summary": "Update organization group",
        "tags": [
          "Organization Groups"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "group_id",
            "description": "The group ID to update.",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "title": "IGroup"
                }
              }
            }
          },
          "400": {
            "description": "Request Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Access Denied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "406": {
            "description": "Invalid Parameter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          }
        },
        "requestBody": {
          "description": "Body Parameters",
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [],
                "properties": {
                  "name": {
                    "type": "string",
                    "description": "New name for the group. \"everyone\" is reserved and may not be changed."
                  },
                  "permissions": {
                    "type": "array",
                    "items": {
                      "$ref": "#/components/schemas/TPermission"
                    },
                    "description": "Updated permissions for the group"
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "bash",
            "label": "CURL",
            "source": "curl -X PATCH \"https://api.verdocs.com/v2/organization-groups/GROUP_ID\" \\\n    -H \"Authorization: Bearer ACCESS_TOKEN\" \\\n    -H \"content-type: application/json\" \\\n    -d '{\"param\": \"value\"}'"
          },
          {
            "lang": "typescript",
            "label": "NodeJS",
            "source": "import fetch from 'node-fetch';\n\nconst response = await fetch('https://api.verdocs.com/v2/organization-groups/GROUP_ID', {\n  method: 'patch',\n  body: JSON.stringify(body),\n  headers: {\n    'Content-Type': 'application/json',\n    'Authorization: Bearer ACCESS_TOKEN'\n  },\n});\n\nconst data = await response.json();\nconsole.log(data);"
          },
          {
            "lang": "ruby",
            "label": "Ruby",
            "source": "require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://api.verdocs.com/v2/organization-groups/GROUP_ID\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Patch.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer ACCESS_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"
          },
          {
            "lang": "python",
            "label": "Python",
            "source": "import http.client\n\nconn = http.client.HTTPSConnection(\"api.verdocs.com\")\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer ACCESS_TOKEN\"\n}\n\nconn.request(\"PATCH\", \"/v2/organization-groups/{group_id}\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))\n"
          },
          {
            "lang": "csharp",
            "label": "C-Sharp",
            "source": "var client = new RestClient(\"https://api.verdocs.com/v2/organization-groups/GROUP_ID\");\nvar request = new RestRequest(Method.PATCH);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer ACCESS_TOKEN\");\n\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "java",
            "label": "Java",
            "source": "HttpResponse<String> response = Unirest.patch(\"https://api.verdocs.com/v2/organization-groups/GROUP_ID\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer ACCESS_TOKEN\")\n  .asString();"
          }
        ]
      }
    },
    "/v2/organization-groups/{group_id}/members/{profile_id}": {
      "delete": {
        "operationId": "deleteGroupMember",
        "summary": "Remove member from organization group",
        "tags": [
          "Organization Groups"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "group_id",
            "description": "The group ID to update.",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "in": "path",
            "name": "profile_id",
            "description": "Profile ID to remove from the group",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "title": "IGroup"
                }
              }
            }
          },
          "400": {
            "description": "Request Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Access Denied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "406": {
            "description": "Invalid Parameter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "bash",
            "label": "CURL",
            "source": "curl -X DELETE \"https://api.verdocs.com/v2/organization-groups/GROUP_ID/members/PROFILE_ID\" \\\n    -H \"Authorization: Bearer ACCESS_TOKEN\" \\\n    -H \"content-type: application/json\" \\\n    -d '{\"param\": \"value\"}'"
          },
          {
            "lang": "typescript",
            "label": "NodeJS",
            "source": "import fetch from 'node-fetch';\n\nconst response = await fetch('https://api.verdocs.com/v2/organization-groups/GROUP_ID/members/PROFILE_ID', {\n  method: 'delete',\n  body: JSON.stringify(body),\n  headers: {\n    'Content-Type': 'application/json',\n    'Authorization: Bearer ACCESS_TOKEN'\n  },\n});\n\nconst data = await response.json();\nconsole.log(data);"
          },
          {
            "lang": "ruby",
            "label": "Ruby",
            "source": "require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://api.verdocs.com/v2/organization-groups/GROUP_ID/members/PROFILE_ID\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Delete.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer ACCESS_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"
          },
          {
            "lang": "python",
            "label": "Python",
            "source": "import http.client\n\nconn = http.client.HTTPSConnection(\"api.verdocs.com\")\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer ACCESS_TOKEN\"\n}\n\nconn.request(\"DELETE\", \"/v2/organization-groups/{group_id}/members/{profile_id}\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))\n"
          },
          {
            "lang": "csharp",
            "label": "C-Sharp",
            "source": "var client = new RestClient(\"https://api.verdocs.com/v2/organization-groups/GROUP_ID/members/PROFILE_ID\");\nvar request = new RestRequest(Method.DELETE);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer ACCESS_TOKEN\");\n\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "java",
            "label": "Java",
            "source": "HttpResponse<String> response = Unirest.delete(\"https://api.verdocs.com/v2/organization-groups/GROUP_ID/members/PROFILE_ID\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer ACCESS_TOKEN\")\n  .asString();"
          }
        ]
      }
    },
    "/v2/notifications/templates/{id}": {
      "delete": {
        "operationId": "deleteNotificationTemplate",
        "summary": "Delete notification template",
        "tags": [
          "Notifications"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "id",
            "description": "The notification template ID",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "400": {
            "description": "Request Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Access Denied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "406": {
            "description": "Invalid Parameter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "bash",
            "label": "CURL",
            "source": "curl -X DELETE \"https://api.verdocs.com/v2/notifications/templates/ID\" \\\n    -H \"Authorization: Bearer ACCESS_TOKEN\" \\\n    -H \"content-type: application/json\" \\\n    -d '{\"param\": \"value\"}'"
          },
          {
            "lang": "typescript",
            "label": "NodeJS",
            "source": "import fetch from 'node-fetch';\n\nconst response = await fetch('https://api.verdocs.com/v2/notifications/templates/ID', {\n  method: 'delete',\n  body: JSON.stringify(body),\n  headers: {\n    'Content-Type': 'application/json',\n    'Authorization: Bearer ACCESS_TOKEN'\n  },\n});\n\nconst data = await response.json();\nconsole.log(data);"
          },
          {
            "lang": "ruby",
            "label": "Ruby",
            "source": "require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://api.verdocs.com/v2/notifications/templates/ID\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Delete.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer ACCESS_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"
          },
          {
            "lang": "python",
            "label": "Python",
            "source": "import http.client\n\nconn = http.client.HTTPSConnection(\"api.verdocs.com\")\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer ACCESS_TOKEN\"\n}\n\nconn.request(\"DELETE\", \"/v2/notifications/templates/{id}\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))\n"
          },
          {
            "lang": "csharp",
            "label": "C-Sharp",
            "source": "var client = new RestClient(\"https://api.verdocs.com/v2/notifications/templates/ID\");\nvar request = new RestRequest(Method.DELETE);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer ACCESS_TOKEN\");\n\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "java",
            "label": "Java",
            "source": "HttpResponse<String> response = Unirest.delete(\"https://api.verdocs.com/v2/notifications/templates/ID\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer ACCESS_TOKEN\")\n  .asString();"
          }
        ]
      },
      "get": {
        "operationId": "getNotificationTemplate",
        "summary": "Get notification template",
        "tags": [
          "Notifications"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "id",
            "description": "The notification template ID",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "title": "INotificationTemplate"
                }
              }
            }
          },
          "400": {
            "description": "Request Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Access Denied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "406": {
            "description": "Invalid Parameter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "bash",
            "label": "CURL",
            "source": "curl -X GET \"https://api.verdocs.com/v2/notifications/templates/ID\" \\\n    -H \"Authorization: Bearer ACCESS_TOKEN\" \\\n    -H \"content-type: application/json\" \\\n    -d '{\"param\": \"value\"}'"
          },
          {
            "lang": "typescript",
            "label": "NodeJS",
            "source": "import fetch from 'node-fetch';\n\nconst response = await fetch('https://api.verdocs.com/v2/notifications/templates/ID', { \n  headers: {\n    'Content-Type': 'application/json',\n    'Authorization: Bearer ACCESS_TOKEN'\n  } \n});\nconst data = await response.json();\nconsole.log(data);"
          },
          {
            "lang": "ruby",
            "label": "Ruby",
            "source": "require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://api.verdocs.com/v2/notifications/templates/ID\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Get.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer ACCESS_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"
          },
          {
            "lang": "python",
            "label": "Python",
            "source": "import http.client\n\nconn = http.client.HTTPSConnection(\"api.verdocs.com\")\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer ACCESS_TOKEN\"\n}\n\nconn.request(\"GET\", \"/v2/notifications/templates/{id}\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))\n"
          },
          {
            "lang": "csharp",
            "label": "C-Sharp",
            "source": "var client = new RestClient(\"https://api.verdocs.com/v2/notifications/templates/ID\");\nvar request = new RestRequest(Method.GET);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer ACCESS_TOKEN\");\n\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "java",
            "label": "Java",
            "source": "HttpResponse<String> response = Unirest.get(\"https://api.verdocs.com/v2/notifications/templates/ID\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer ACCESS_TOKEN\")\n  .asString();"
          }
        ]
      },
      "patch": {
        "operationId": "updateNotificationTemplate",
        "summary": "Update notification template",
        "tags": [
          "Notifications"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "id",
            "description": "The notification template ID",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "title": "INotificationTemplate"
                }
              }
            }
          },
          "400": {
            "description": "Request Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Access Denied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "406": {
            "description": "Invalid Parameter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          }
        },
        "requestBody": {
          "description": "Body Parameters",
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [],
                "properties": {
                  "html_template": {
                    "type": "string",
                    "description": "The HTML content for the notification. At least one of html_template or text_template is required."
                  },
                  "text_template": {
                    "type": "string",
                    "description": "The plain-text content for the notification. At least one of html_template or text_template is required."
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "bash",
            "label": "CURL",
            "source": "curl -X PATCH \"https://api.verdocs.com/v2/notifications/templates/ID\" \\\n    -H \"Authorization: Bearer ACCESS_TOKEN\" \\\n    -H \"content-type: application/json\" \\\n    -d '{\"param\": \"value\"}'"
          },
          {
            "lang": "typescript",
            "label": "NodeJS",
            "source": "import fetch from 'node-fetch';\n\nconst response = await fetch('https://api.verdocs.com/v2/notifications/templates/ID', {\n  method: 'patch',\n  body: JSON.stringify(body),\n  headers: {\n    'Content-Type': 'application/json',\n    'Authorization: Bearer ACCESS_TOKEN'\n  },\n});\n\nconst data = await response.json();\nconsole.log(data);"
          },
          {
            "lang": "ruby",
            "label": "Ruby",
            "source": "require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://api.verdocs.com/v2/notifications/templates/ID\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Patch.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer ACCESS_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"
          },
          {
            "lang": "python",
            "label": "Python",
            "source": "import http.client\n\nconn = http.client.HTTPSConnection(\"api.verdocs.com\")\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer ACCESS_TOKEN\"\n}\n\nconn.request(\"PATCH\", \"/v2/notifications/templates/{id}\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))\n"
          },
          {
            "lang": "csharp",
            "label": "C-Sharp",
            "source": "var client = new RestClient(\"https://api.verdocs.com/v2/notifications/templates/ID\");\nvar request = new RestRequest(Method.PATCH);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer ACCESS_TOKEN\");\n\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "java",
            "label": "Java",
            "source": "HttpResponse<String> response = Unirest.patch(\"https://api.verdocs.com/v2/notifications/templates/ID\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer ACCESS_TOKEN\")\n  .asString();"
          }
        ]
      }
    },
    "/v2/organizations/{organization_id}": {
      "delete": {
        "operationId": "deleteOrganization",
        "summary": "Delete organization",
        "tags": [
          "Organizations"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "organization_id",
            "description": "",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "title": "IAuthenticateResponse"
                }
              }
            }
          },
          "400": {
            "description": "Request Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Access Denied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "406": {
            "description": "Invalid Parameter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "bash",
            "label": "CURL",
            "source": "curl -X DELETE \"https://api.verdocs.com/v2/organizations/ORGANIZATION_ID\" \\\n    -H \"Authorization: Bearer ACCESS_TOKEN\" \\\n    -H \"content-type: application/json\" \\\n    -d '{\"param\": \"value\"}'"
          },
          {
            "lang": "typescript",
            "label": "NodeJS",
            "source": "import fetch from 'node-fetch';\n\nconst response = await fetch('https://api.verdocs.com/v2/organizations/ORGANIZATION_ID', {\n  method: 'delete',\n  body: JSON.stringify(body),\n  headers: {\n    'Content-Type': 'application/json',\n    'Authorization: Bearer ACCESS_TOKEN'\n  },\n});\n\nconst data = await response.json();\nconsole.log(data);"
          },
          {
            "lang": "ruby",
            "label": "Ruby",
            "source": "require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://api.verdocs.com/v2/organizations/ORGANIZATION_ID\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Delete.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer ACCESS_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"
          },
          {
            "lang": "python",
            "label": "Python",
            "source": "import http.client\n\nconn = http.client.HTTPSConnection(\"api.verdocs.com\")\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer ACCESS_TOKEN\"\n}\n\nconn.request(\"DELETE\", \"/v2/organizations/{organization_id}\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))\n"
          },
          {
            "lang": "csharp",
            "label": "C-Sharp",
            "source": "var client = new RestClient(\"https://api.verdocs.com/v2/organizations/ORGANIZATION_ID\");\nvar request = new RestRequest(Method.DELETE);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer ACCESS_TOKEN\");\n\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "java",
            "label": "Java",
            "source": "HttpResponse<String> response = Unirest.delete(\"https://api.verdocs.com/v2/organizations/ORGANIZATION_ID\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer ACCESS_TOKEN\")\n  .asString();"
          }
        ]
      },
      "get": {
        "operationId": "getOrganization",
        "summary": "Get organization",
        "tags": [
          "Organizations"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "organization_id",
            "description": "",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "title": "IOrganization"
                }
              }
            }
          },
          "400": {
            "description": "Request Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Access Denied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "406": {
            "description": "Invalid Parameter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "bash",
            "label": "CURL",
            "source": "curl -X GET \"https://api.verdocs.com/v2/organizations/ORGANIZATION_ID\" \\\n    -H \"Authorization: Bearer ACCESS_TOKEN\" \\\n    -H \"content-type: application/json\" \\\n    -d '{\"param\": \"value\"}'"
          },
          {
            "lang": "typescript",
            "label": "NodeJS",
            "source": "import fetch from 'node-fetch';\n\nconst response = await fetch('https://api.verdocs.com/v2/organizations/ORGANIZATION_ID', { \n  headers: {\n    'Content-Type': 'application/json',\n    'Authorization: Bearer ACCESS_TOKEN'\n  } \n});\nconst data = await response.json();\nconsole.log(data);"
          },
          {
            "lang": "ruby",
            "label": "Ruby",
            "source": "require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://api.verdocs.com/v2/organizations/ORGANIZATION_ID\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Get.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer ACCESS_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"
          },
          {
            "lang": "python",
            "label": "Python",
            "source": "import http.client\n\nconn = http.client.HTTPSConnection(\"api.verdocs.com\")\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer ACCESS_TOKEN\"\n}\n\nconn.request(\"GET\", \"/v2/organizations/{organization_id}\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))\n"
          },
          {
            "lang": "csharp",
            "label": "C-Sharp",
            "source": "var client = new RestClient(\"https://api.verdocs.com/v2/organizations/ORGANIZATION_ID\");\nvar request = new RestRequest(Method.GET);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer ACCESS_TOKEN\");\n\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "java",
            "label": "Java",
            "source": "HttpResponse<String> response = Unirest.get(\"https://api.verdocs.com/v2/organizations/ORGANIZATION_ID\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer ACCESS_TOKEN\")\n  .asString();"
          }
        ]
      },
      "patch": {
        "operationId": "updateOrganizationThumbnail",
        "summary": "Update organization thumbnail",
        "tags": [
          "Organizations"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "organization_id",
            "description": "The organization ID to update.",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "title": "IOrganization"
                }
              }
            }
          },
          "400": {
            "description": "Request Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Access Denied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "406": {
            "description": "Invalid Parameter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          }
        },
        "requestBody": {
          "description": "Body Parameters",
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "thumbnail"
                ],
                "properties": {
                  "thumbnail": {
                    "type": "string",
                    "format": "binary",
                    "description": "Thumbnail image to upload"
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "bash",
            "label": "CURL",
            "source": "curl -X PATCH \"https://api.verdocs.com/v2/organizations/ORGANIZATION_ID\" \\\n    -H \"Authorization: Bearer ACCESS_TOKEN\" \\\n    -H \"content-type: application/json\" \\\n    -d '{\"param\": \"value\"}'"
          },
          {
            "lang": "typescript",
            "label": "NodeJS",
            "source": "import fetch from 'node-fetch';\n\nconst response = await fetch('https://api.verdocs.com/v2/organizations/ORGANIZATION_ID', {\n  method: 'patch',\n  body: JSON.stringify(body),\n  headers: {\n    'Content-Type': 'application/json',\n    'Authorization: Bearer ACCESS_TOKEN'\n  },\n});\n\nconst data = await response.json();\nconsole.log(data);"
          },
          {
            "lang": "ruby",
            "label": "Ruby",
            "source": "require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://api.verdocs.com/v2/organizations/ORGANIZATION_ID\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Patch.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer ACCESS_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"
          },
          {
            "lang": "python",
            "label": "Python",
            "source": "import http.client\n\nconn = http.client.HTTPSConnection(\"api.verdocs.com\")\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer ACCESS_TOKEN\"\n}\n\nconn.request(\"PATCH\", \"/v2/organizations/{organization_id}\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))\n"
          },
          {
            "lang": "csharp",
            "label": "C-Sharp",
            "source": "var client = new RestClient(\"https://api.verdocs.com/v2/organizations/ORGANIZATION_ID\");\nvar request = new RestRequest(Method.PATCH);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer ACCESS_TOKEN\");\n\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "java",
            "label": "Java",
            "source": "HttpResponse<String> response = Unirest.patch(\"https://api.verdocs.com/v2/organizations/ORGANIZATION_ID\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer ACCESS_TOKEN\")\n  .asString();"
          }
        ]
      }
    },
    "/v2/organization-contacts/{profile_id}": {
      "delete": {
        "operationId": "deleteOrganizationContact",
        "summary": "Delete organization contact",
        "tags": [
          "Organization Contacts"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "profile_id",
            "description": "The contact profile ID to delete.",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "400": {
            "description": "Request Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Access Denied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "406": {
            "description": "Invalid Parameter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "bash",
            "label": "CURL",
            "source": "curl -X DELETE \"https://api.verdocs.com/v2/organization-contacts/PROFILE_ID\" \\\n    -H \"Authorization: Bearer ACCESS_TOKEN\" \\\n    -H \"content-type: application/json\" \\\n    -d '{\"param\": \"value\"}'"
          },
          {
            "lang": "typescript",
            "label": "NodeJS",
            "source": "import fetch from 'node-fetch';\n\nconst response = await fetch('https://api.verdocs.com/v2/organization-contacts/PROFILE_ID', {\n  method: 'delete',\n  body: JSON.stringify(body),\n  headers: {\n    'Content-Type': 'application/json',\n    'Authorization: Bearer ACCESS_TOKEN'\n  },\n});\n\nconst data = await response.json();\nconsole.log(data);"
          },
          {
            "lang": "ruby",
            "label": "Ruby",
            "source": "require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://api.verdocs.com/v2/organization-contacts/PROFILE_ID\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Delete.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer ACCESS_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"
          },
          {
            "lang": "python",
            "label": "Python",
            "source": "import http.client\n\nconn = http.client.HTTPSConnection(\"api.verdocs.com\")\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer ACCESS_TOKEN\"\n}\n\nconn.request(\"DELETE\", \"/v2/organization-contacts/{profile_id}\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))\n"
          },
          {
            "lang": "csharp",
            "label": "C-Sharp",
            "source": "var client = new RestClient(\"https://api.verdocs.com/v2/organization-contacts/PROFILE_ID\");\nvar request = new RestRequest(Method.DELETE);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer ACCESS_TOKEN\");\n\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "java",
            "label": "Java",
            "source": "HttpResponse<String> response = Unirest.delete(\"https://api.verdocs.com/v2/organization-contacts/PROFILE_ID\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer ACCESS_TOKEN\")\n  .asString();"
          }
        ]
      },
      "patch": {
        "operationId": "updateOrganizationContact",
        "summary": "Update organization contact",
        "tags": [
          "Organization Contacts"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "profile_id",
            "description": "The contact profile ID to update.",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "title": "IProfile"
                }
              }
            }
          },
          "400": {
            "description": "Request Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Access Denied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "406": {
            "description": "Invalid Parameter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          }
        },
        "requestBody": {
          "description": "Body Parameters",
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [],
                "properties": {
                  "first_name": {
                    "type": "string",
                    "description": "Contact first name"
                  },
                  "last_name": {
                    "type": "string",
                    "description": "Contact last name"
                  },
                  "email": {
                    "type": "string",
                    "description": "Contact email address"
                  },
                  "phone": {
                    "type": "string",
                    "description": "Contact phone number"
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "bash",
            "label": "CURL",
            "source": "curl -X PATCH \"https://api.verdocs.com/v2/organization-contacts/PROFILE_ID\" \\\n    -H \"Authorization: Bearer ACCESS_TOKEN\" \\\n    -H \"content-type: application/json\" \\\n    -d '{\"param\": \"value\"}'"
          },
          {
            "lang": "typescript",
            "label": "NodeJS",
            "source": "import fetch from 'node-fetch';\n\nconst response = await fetch('https://api.verdocs.com/v2/organization-contacts/PROFILE_ID', {\n  method: 'patch',\n  body: JSON.stringify(body),\n  headers: {\n    'Content-Type': 'application/json',\n    'Authorization: Bearer ACCESS_TOKEN'\n  },\n});\n\nconst data = await response.json();\nconsole.log(data);"
          },
          {
            "lang": "ruby",
            "label": "Ruby",
            "source": "require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://api.verdocs.com/v2/organization-contacts/PROFILE_ID\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Patch.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer ACCESS_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"
          },
          {
            "lang": "python",
            "label": "Python",
            "source": "import http.client\n\nconn = http.client.HTTPSConnection(\"api.verdocs.com\")\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer ACCESS_TOKEN\"\n}\n\nconn.request(\"PATCH\", \"/v2/organization-contacts/{profile_id}\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))\n"
          },
          {
            "lang": "csharp",
            "label": "C-Sharp",
            "source": "var client = new RestClient(\"https://api.verdocs.com/v2/organization-contacts/PROFILE_ID\");\nvar request = new RestRequest(Method.PATCH);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer ACCESS_TOKEN\");\n\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "java",
            "label": "Java",
            "source": "HttpResponse<String> response = Unirest.patch(\"https://api.verdocs.com/v2/organization-contacts/PROFILE_ID\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer ACCESS_TOKEN\")\n  .asString();"
          }
        ]
      }
    },
    "/v2/organization-invitations/{email}": {
      "delete": {
        "operationId": "deleteOrganizationInvitation",
        "summary": "Delete a pending invitation",
        "tags": [
          "Organization Invitations"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "email",
            "description": "",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "400": {
            "description": "Request Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Access Denied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "406": {
            "description": "Invalid Parameter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "bash",
            "label": "CURL",
            "source": "curl -X DELETE \"https://api.verdocs.com/v2/organization-invitations/EMAIL\" \\\n    -H \"Authorization: Bearer ACCESS_TOKEN\" \\\n    -H \"content-type: application/json\" \\\n    -d '{\"param\": \"value\"}'"
          },
          {
            "lang": "typescript",
            "label": "NodeJS",
            "source": "import fetch from 'node-fetch';\n\nconst response = await fetch('https://api.verdocs.com/v2/organization-invitations/EMAIL', {\n  method: 'delete',\n  body: JSON.stringify(body),\n  headers: {\n    'Content-Type': 'application/json',\n    'Authorization: Bearer ACCESS_TOKEN'\n  },\n});\n\nconst data = await response.json();\nconsole.log(data);"
          },
          {
            "lang": "ruby",
            "label": "Ruby",
            "source": "require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://api.verdocs.com/v2/organization-invitations/EMAIL\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Delete.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer ACCESS_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"
          },
          {
            "lang": "python",
            "label": "Python",
            "source": "import http.client\n\nconn = http.client.HTTPSConnection(\"api.verdocs.com\")\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer ACCESS_TOKEN\"\n}\n\nconn.request(\"DELETE\", \"/v2/organization-invitations/{email}\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))\n"
          },
          {
            "lang": "csharp",
            "label": "C-Sharp",
            "source": "var client = new RestClient(\"https://api.verdocs.com/v2/organization-invitations/EMAIL\");\nvar request = new RestRequest(Method.DELETE);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer ACCESS_TOKEN\");\n\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "java",
            "label": "Java",
            "source": "HttpResponse<String> response = Unirest.delete(\"https://api.verdocs.com/v2/organization-invitations/EMAIL\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer ACCESS_TOKEN\")\n  .asString();"
          }
        ]
      },
      "patch": {
        "operationId": "updateOrganizationInvitation",
        "summary": "Update a pending invitation",
        "tags": [
          "Organization Invitations"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "email",
            "description": "",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "title": "IOrganizationInvitation"
                }
              }
            }
          },
          "400": {
            "description": "Request Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Access Denied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "406": {
            "description": "Invalid Parameter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          }
        },
        "requestBody": {
          "description": "Body Parameters",
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "first_name",
                  "last_name",
                  "role"
                ],
                "properties": {
                  "first_name": {
                    "type": "string",
                    "description": "First name. The user may override this after accepting the invitation."
                  },
                  "last_name": {
                    "type": "string",
                    "description": "Last name. The user may override this after accepting the invitation."
                  },
                  "role": {
                    "$ref": "#/components/schemas/TRole",
                    "description": "Initial role to assign to the user once they accept."
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "bash",
            "label": "CURL",
            "source": "curl -X PATCH \"https://api.verdocs.com/v2/organization-invitations/EMAIL\" \\\n    -H \"Authorization: Bearer ACCESS_TOKEN\" \\\n    -H \"content-type: application/json\" \\\n    -d '{\"param\": \"value\"}'"
          },
          {
            "lang": "typescript",
            "label": "NodeJS",
            "source": "import fetch from 'node-fetch';\n\nconst response = await fetch('https://api.verdocs.com/v2/organization-invitations/EMAIL', {\n  method: 'patch',\n  body: JSON.stringify(body),\n  headers: {\n    'Content-Type': 'application/json',\n    'Authorization: Bearer ACCESS_TOKEN'\n  },\n});\n\nconst data = await response.json();\nconsole.log(data);"
          },
          {
            "lang": "ruby",
            "label": "Ruby",
            "source": "require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://api.verdocs.com/v2/organization-invitations/EMAIL\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Patch.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer ACCESS_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"
          },
          {
            "lang": "python",
            "label": "Python",
            "source": "import http.client\n\nconn = http.client.HTTPSConnection(\"api.verdocs.com\")\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer ACCESS_TOKEN\"\n}\n\nconn.request(\"PATCH\", \"/v2/organization-invitations/{email}\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))\n"
          },
          {
            "lang": "csharp",
            "label": "C-Sharp",
            "source": "var client = new RestClient(\"https://api.verdocs.com/v2/organization-invitations/EMAIL\");\nvar request = new RestRequest(Method.PATCH);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer ACCESS_TOKEN\");\n\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "java",
            "label": "Java",
            "source": "HttpResponse<String> response = Unirest.patch(\"https://api.verdocs.com/v2/organization-invitations/EMAIL\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer ACCESS_TOKEN\")\n  .asString();"
          }
        ]
      }
    },
    "/v2/organization-members/{profile_id}": {
      "delete": {
        "operationId": "deleteOrganizationMember",
        "summary": "Delete a member from the organization",
        "tags": [
          "Organization Members"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "profile_id",
            "description": "The Profile ID to remove.",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "400": {
            "description": "Request Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Access Denied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "406": {
            "description": "Invalid Parameter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "bash",
            "label": "CURL",
            "source": "curl -X DELETE \"https://api.verdocs.com/v2/organization-members/PROFILE_ID\" \\\n    -H \"Authorization: Bearer ACCESS_TOKEN\" \\\n    -H \"content-type: application/json\" \\\n    -d '{\"param\": \"value\"}'"
          },
          {
            "lang": "typescript",
            "label": "NodeJS",
            "source": "import fetch from 'node-fetch';\n\nconst response = await fetch('https://api.verdocs.com/v2/organization-members/PROFILE_ID', {\n  method: 'delete',\n  body: JSON.stringify(body),\n  headers: {\n    'Content-Type': 'application/json',\n    'Authorization: Bearer ACCESS_TOKEN'\n  },\n});\n\nconst data = await response.json();\nconsole.log(data);"
          },
          {
            "lang": "ruby",
            "label": "Ruby",
            "source": "require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://api.verdocs.com/v2/organization-members/PROFILE_ID\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Delete.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer ACCESS_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"
          },
          {
            "lang": "python",
            "label": "Python",
            "source": "import http.client\n\nconn = http.client.HTTPSConnection(\"api.verdocs.com\")\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer ACCESS_TOKEN\"\n}\n\nconn.request(\"DELETE\", \"/v2/organization-members/{profile_id}\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))\n"
          },
          {
            "lang": "csharp",
            "label": "C-Sharp",
            "source": "var client = new RestClient(\"https://api.verdocs.com/v2/organization-members/PROFILE_ID\");\nvar request = new RestRequest(Method.DELETE);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer ACCESS_TOKEN\");\n\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "java",
            "label": "Java",
            "source": "HttpResponse<String> response = Unirest.delete(\"https://api.verdocs.com/v2/organization-members/PROFILE_ID\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer ACCESS_TOKEN\")\n  .asString();"
          }
        ]
      },
      "put": {
        "operationId": "unlockOrganizationMember",
        "summary": "Perform an operation on an organization member.",
        "tags": [
          "Organization Members"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "profile_id",
            "description": "The Profile ID to operate on.",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "title": "IProfile"
                }
              }
            }
          },
          "400": {
            "description": "Request Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Access Denied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "406": {
            "description": "Invalid Parameter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          }
        },
        "requestBody": {
          "description": "Body Parameters",
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "action"
                ],
                "properties": {
                  "action": {
                    "type": "string",
                    "enum": [
                      "unlock"
                    ],
                    "description": "Action to perform"
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "bash",
            "label": "CURL",
            "source": "curl -X PUT \"https://api.verdocs.com/v2/organization-members/PROFILE_ID\" \\\n    -H \"Authorization: Bearer ACCESS_TOKEN\" \\\n    -H \"content-type: application/json\" \\\n    -d '{\"param\": \"value\"}'"
          },
          {
            "lang": "typescript",
            "label": "NodeJS",
            "source": "import fetch from 'node-fetch';\n\nconst response = await fetch('https://api.verdocs.com/v2/organization-members/PROFILE_ID', {\n  method: 'put',\n  body: JSON.stringify(body),\n  headers: {\n    'Content-Type': 'application/json',\n    'Authorization: Bearer ACCESS_TOKEN'\n  },\n});\n\nconst data = await response.json();\nconsole.log(data);"
          },
          {
            "lang": "ruby",
            "label": "Ruby",
            "source": "require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://api.verdocs.com/v2/organization-members/PROFILE_ID\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Put.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer ACCESS_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"
          },
          {
            "lang": "python",
            "label": "Python",
            "source": "import http.client\n\nconn = http.client.HTTPSConnection(\"api.verdocs.com\")\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer ACCESS_TOKEN\"\n}\n\nconn.request(\"PUT\", \"/v2/organization-members/{profile_id}\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))\n"
          },
          {
            "lang": "csharp",
            "label": "C-Sharp",
            "source": "var client = new RestClient(\"https://api.verdocs.com/v2/organization-members/PROFILE_ID\");\nvar request = new RestRequest(Method.PUT);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer ACCESS_TOKEN\");\n\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "java",
            "label": "Java",
            "source": "HttpResponse<String> response = Unirest.put(\"https://api.verdocs.com/v2/organization-members/PROFILE_ID\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer ACCESS_TOKEN\")\n  .asString();"
          }
        ]
      },
      "patch": {
        "operationId": "updateOrganizationMember",
        "summary": "Update an organization member.",
        "tags": [
          "Organization Members"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "profile_id",
            "description": "The Profile ID to update.",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "title": "IProfile"
                }
              }
            }
          },
          "400": {
            "description": "Request Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Access Denied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "406": {
            "description": "Invalid Parameter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          }
        },
        "requestBody": {
          "description": "Body Parameters",
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [],
                "properties": {
                  "first_name": {
                    "type": "string",
                    "description": "First name for the member"
                  },
                  "last_name": {
                    "type": "string",
                    "description": "Last name for the member"
                  },
                  "roles": {
                    "type": "array",
                    "items": {
                      "$ref": "#/components/schemas/TRole"
                    },
                    "description": "Roles (e.g. \"member\" or \"admin\") to assign to the user."
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "bash",
            "label": "CURL",
            "source": "curl -X PATCH \"https://api.verdocs.com/v2/organization-members/PROFILE_ID\" \\\n    -H \"Authorization: Bearer ACCESS_TOKEN\" \\\n    -H \"content-type: application/json\" \\\n    -d '{\"param\": \"value\"}'"
          },
          {
            "lang": "typescript",
            "label": "NodeJS",
            "source": "import fetch from 'node-fetch';\n\nconst response = await fetch('https://api.verdocs.com/v2/organization-members/PROFILE_ID', {\n  method: 'patch',\n  body: JSON.stringify(body),\n  headers: {\n    'Content-Type': 'application/json',\n    'Authorization: Bearer ACCESS_TOKEN'\n  },\n});\n\nconst data = await response.json();\nconsole.log(data);"
          },
          {
            "lang": "ruby",
            "label": "Ruby",
            "source": "require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://api.verdocs.com/v2/organization-members/PROFILE_ID\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Patch.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer ACCESS_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"
          },
          {
            "lang": "python",
            "label": "Python",
            "source": "import http.client\n\nconn = http.client.HTTPSConnection(\"api.verdocs.com\")\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer ACCESS_TOKEN\"\n}\n\nconn.request(\"PATCH\", \"/v2/organization-members/{profile_id}\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))\n"
          },
          {
            "lang": "csharp",
            "label": "C-Sharp",
            "source": "var client = new RestClient(\"https://api.verdocs.com/v2/organization-members/PROFILE_ID\");\nvar request = new RestRequest(Method.PATCH);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer ACCESS_TOKEN\");\n\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "java",
            "label": "Java",
            "source": "HttpResponse<String> response = Unirest.patch(\"https://api.verdocs.com/v2/organization-members/PROFILE_ID\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer ACCESS_TOKEN\")\n  .asString();"
          }
        ]
      }
    },
    "/v2/profiles/{profile_id}": {
      "delete": {
        "operationId": "deleteProfile",
        "summary": "Delete a profile",
        "tags": [
          "Profiles"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "profile_id",
            "description": "",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "title": "IAuthenticateResponse"
                }
              }
            }
          },
          "400": {
            "description": "Request Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Access Denied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "406": {
            "description": "Invalid Parameter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "bash",
            "label": "CURL",
            "source": "curl -X DELETE \"https://api.verdocs.com/v2/profiles/PROFILE_ID\" \\\n    -H \"Authorization: Bearer ACCESS_TOKEN\" \\\n    -H \"content-type: application/json\" \\\n    -d '{\"param\": \"value\"}'"
          },
          {
            "lang": "typescript",
            "label": "NodeJS",
            "source": "import fetch from 'node-fetch';\n\nconst response = await fetch('https://api.verdocs.com/v2/profiles/PROFILE_ID', {\n  method: 'delete',\n  body: JSON.stringify(body),\n  headers: {\n    'Content-Type': 'application/json',\n    'Authorization: Bearer ACCESS_TOKEN'\n  },\n});\n\nconst data = await response.json();\nconsole.log(data);"
          },
          {
            "lang": "ruby",
            "label": "Ruby",
            "source": "require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://api.verdocs.com/v2/profiles/PROFILE_ID\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Delete.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer ACCESS_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"
          },
          {
            "lang": "python",
            "label": "Python",
            "source": "import http.client\n\nconn = http.client.HTTPSConnection(\"api.verdocs.com\")\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer ACCESS_TOKEN\"\n}\n\nconn.request(\"DELETE\", \"/v2/profiles/{profile_id}\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))\n"
          },
          {
            "lang": "csharp",
            "label": "C-Sharp",
            "source": "var client = new RestClient(\"https://api.verdocs.com/v2/profiles/PROFILE_ID\");\nvar request = new RestRequest(Method.DELETE);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer ACCESS_TOKEN\");\n\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "java",
            "label": "Java",
            "source": "HttpResponse<String> response = Unirest.delete(\"https://api.verdocs.com/v2/profiles/PROFILE_ID\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer ACCESS_TOKEN\")\n  .asString();"
          }
        ]
      },
      "patch": {
        "operationId": "updateProfilePhoto",
        "summary": "Change profile photo",
        "tags": [
          "Profiles"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "profile_id",
            "description": "Profile ID to update.",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "title": "IProfile"
                }
              }
            }
          },
          "400": {
            "description": "Request Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Access Denied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "406": {
            "description": "Invalid Parameter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          }
        },
        "requestBody": {
          "description": "Body Parameters",
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "picture"
                ],
                "properties": {
                  "picture": {
                    "type": "string",
                    "format": "binary",
                    "description": "Profile photo to upload"
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "bash",
            "label": "CURL",
            "source": "curl -X PATCH \"https://api.verdocs.com/v2/profiles/PROFILE_ID\" \\\n    -H \"Authorization: Bearer ACCESS_TOKEN\" \\\n    -H \"content-type: application/json\" \\\n    -d '{\"param\": \"value\"}'"
          },
          {
            "lang": "typescript",
            "label": "NodeJS",
            "source": "import fetch from 'node-fetch';\n\nconst response = await fetch('https://api.verdocs.com/v2/profiles/PROFILE_ID', {\n  method: 'patch',\n  body: JSON.stringify(body),\n  headers: {\n    'Content-Type': 'application/json',\n    'Authorization: Bearer ACCESS_TOKEN'\n  },\n});\n\nconst data = await response.json();\nconsole.log(data);"
          },
          {
            "lang": "ruby",
            "label": "Ruby",
            "source": "require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://api.verdocs.com/v2/profiles/PROFILE_ID\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Patch.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer ACCESS_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"
          },
          {
            "lang": "python",
            "label": "Python",
            "source": "import http.client\n\nconn = http.client.HTTPSConnection(\"api.verdocs.com\")\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer ACCESS_TOKEN\"\n}\n\nconn.request(\"PATCH\", \"/v2/profiles/{profile_id}\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))\n"
          },
          {
            "lang": "csharp",
            "label": "C-Sharp",
            "source": "var client = new RestClient(\"https://api.verdocs.com/v2/profiles/PROFILE_ID\");\nvar request = new RestRequest(Method.PATCH);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer ACCESS_TOKEN\");\n\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "java",
            "label": "Java",
            "source": "HttpResponse<String> response = Unirest.patch(\"https://api.verdocs.com/v2/profiles/PROFILE_ID\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer ACCESS_TOKEN\")\n  .asString();"
          }
        ]
      }
    },
    "/v2/templates/{template_id}": {
      "delete": {
        "operationId": "deleteTemplate",
        "summary": "Delete a template",
        "tags": [
          "Templates"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "template_id",
            "description": "",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "400": {
            "description": "Request Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Access Denied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "406": {
            "description": "Invalid Parameter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "bash",
            "label": "CURL",
            "source": "curl -X DELETE \"https://api.verdocs.com/v2/templates/TEMPLATE_ID\" \\\n    -H \"Authorization: Bearer ACCESS_TOKEN\" \\\n    -H \"content-type: application/json\" \\\n    -d '{\"param\": \"value\"}'"
          },
          {
            "lang": "typescript",
            "label": "NodeJS",
            "source": "import fetch from 'node-fetch';\n\nconst response = await fetch('https://api.verdocs.com/v2/templates/TEMPLATE_ID', {\n  method: 'delete',\n  body: JSON.stringify(body),\n  headers: {\n    'Content-Type': 'application/json',\n    'Authorization: Bearer ACCESS_TOKEN'\n  },\n});\n\nconst data = await response.json();\nconsole.log(data);"
          },
          {
            "lang": "ruby",
            "label": "Ruby",
            "source": "require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://api.verdocs.com/v2/templates/TEMPLATE_ID\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Delete.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer ACCESS_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"
          },
          {
            "lang": "python",
            "label": "Python",
            "source": "import http.client\n\nconn = http.client.HTTPSConnection(\"api.verdocs.com\")\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer ACCESS_TOKEN\"\n}\n\nconn.request(\"DELETE\", \"/v2/templates/{template_id}\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))\n"
          },
          {
            "lang": "csharp",
            "label": "C-Sharp",
            "source": "var client = new RestClient(\"https://api.verdocs.com/v2/templates/TEMPLATE_ID\");\nvar request = new RestRequest(Method.DELETE);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer ACCESS_TOKEN\");\n\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "java",
            "label": "Java",
            "source": "HttpResponse<String> response = Unirest.delete(\"https://api.verdocs.com/v2/templates/TEMPLATE_ID\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer ACCESS_TOKEN\")\n  .asString();"
          }
        ]
      },
      "put": {
        "operationId": "duplicateTemplate",
        "summary": "Perform an operation on a template",
        "tags": [
          "Templates"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "template_id",
            "description": "",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "title": "ITemplate"
                }
              }
            }
          },
          "400": {
            "description": "Request Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Access Denied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "406": {
            "description": "Invalid Parameter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          }
        },
        "requestBody": {
          "description": "Body Parameters",
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "action"
                ],
                "properties": {
                  "action": {
                    "type": "string",
                    "enum": [
                      "duplicate"
                    ],
                    "description": "Action to perform"
                  },
                  "name": {
                    "type": "string",
                    "description": "If duplicating the template, a name for the new copy"
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "bash",
            "label": "CURL",
            "source": "curl -X PUT \"https://api.verdocs.com/v2/templates/TEMPLATE_ID\" \\\n    -H \"Authorization: Bearer ACCESS_TOKEN\" \\\n    -H \"content-type: application/json\" \\\n    -d '{\"param\": \"value\"}'"
          },
          {
            "lang": "typescript",
            "label": "NodeJS",
            "source": "import fetch from 'node-fetch';\n\nconst response = await fetch('https://api.verdocs.com/v2/templates/TEMPLATE_ID', {\n  method: 'put',\n  body: JSON.stringify(body),\n  headers: {\n    'Content-Type': 'application/json',\n    'Authorization: Bearer ACCESS_TOKEN'\n  },\n});\n\nconst data = await response.json();\nconsole.log(data);"
          },
          {
            "lang": "ruby",
            "label": "Ruby",
            "source": "require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://api.verdocs.com/v2/templates/TEMPLATE_ID\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Put.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer ACCESS_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"
          },
          {
            "lang": "python",
            "label": "Python",
            "source": "import http.client\n\nconn = http.client.HTTPSConnection(\"api.verdocs.com\")\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer ACCESS_TOKEN\"\n}\n\nconn.request(\"PUT\", \"/v2/templates/{template_id}\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))\n"
          },
          {
            "lang": "csharp",
            "label": "C-Sharp",
            "source": "var client = new RestClient(\"https://api.verdocs.com/v2/templates/TEMPLATE_ID\");\nvar request = new RestRequest(Method.PUT);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer ACCESS_TOKEN\");\n\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "java",
            "label": "Java",
            "source": "HttpResponse<String> response = Unirest.put(\"https://api.verdocs.com/v2/templates/TEMPLATE_ID\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer ACCESS_TOKEN\")\n  .asString();"
          }
        ]
      },
      "get": {
        "operationId": "getTemplate",
        "summary": "Get a template.",
        "tags": [
          "Templates"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "template_id",
            "description": "",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "title": "ITemplate"
                }
              }
            }
          },
          "400": {
            "description": "Request Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Access Denied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "406": {
            "description": "Invalid Parameter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "bash",
            "label": "CURL",
            "source": "curl -X GET \"https://api.verdocs.com/v2/templates/TEMPLATE_ID\" \\\n    -H \"Authorization: Bearer ACCESS_TOKEN\" \\\n    -H \"content-type: application/json\" \\\n    -d '{\"param\": \"value\"}'"
          },
          {
            "lang": "typescript",
            "label": "NodeJS",
            "source": "import fetch from 'node-fetch';\n\nconst response = await fetch('https://api.verdocs.com/v2/templates/TEMPLATE_ID', { \n  headers: {\n    'Content-Type': 'application/json',\n    'Authorization: Bearer ACCESS_TOKEN'\n  } \n});\nconst data = await response.json();\nconsole.log(data);"
          },
          {
            "lang": "ruby",
            "label": "Ruby",
            "source": "require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://api.verdocs.com/v2/templates/TEMPLATE_ID\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Get.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer ACCESS_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"
          },
          {
            "lang": "python",
            "label": "Python",
            "source": "import http.client\n\nconn = http.client.HTTPSConnection(\"api.verdocs.com\")\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer ACCESS_TOKEN\"\n}\n\nconn.request(\"GET\", \"/v2/templates/{template_id}\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))\n"
          },
          {
            "lang": "csharp",
            "label": "C-Sharp",
            "source": "var client = new RestClient(\"https://api.verdocs.com/v2/templates/TEMPLATE_ID\");\nvar request = new RestRequest(Method.GET);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer ACCESS_TOKEN\");\n\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "java",
            "label": "Java",
            "source": "HttpResponse<String> response = Unirest.get(\"https://api.verdocs.com/v2/templates/TEMPLATE_ID\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer ACCESS_TOKEN\")\n  .asString();"
          }
        ]
      },
      "patch": {
        "operationId": "updateTemplate",
        "summary": "Update a template",
        "tags": [
          "Templates"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "template_id",
            "description": "",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "title": "ITemplate"
                }
              }
            }
          },
          "400": {
            "description": "Request Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Access Denied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "406": {
            "description": "Invalid Parameter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          }
        },
        "requestBody": {
          "description": "Body Parameters",
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [],
                "properties": {
                  "name": {
                    "type": "string",
                    "description": "Template name"
                  },
                  "description": {
                    "type": "string",
                    "description": "Optional description"
                  },
                  "visibility": {
                    "$ref": "#/components/schemas/TTemplateVisibility",
                    "description": "Visibility setting"
                  },
                  "is_personal": {
                    "type": "boolean",
                    "description": "Deprecated. If true, the template is personal and can only be seen by the caller. (Use \"visibility\" for new calls.)"
                  },
                  "is_public": {
                    "type": "boolean",
                    "description": "Deprecated. If true, the template is public and can be seen by anybody. (Use \"visibility\" for new calls.)"
                  },
                  "sender": {
                    "$ref": "#/components/schemas/TTemplateSender",
                    "description": "Who may send envelopes using this template"
                  },
                  "initial_reminder": {
                    "type": "number",
                    "description": "Delay in ms before the first reminder is sent (min: 4hrs). Set to 0 or null to disable."
                  },
                  "followup_reminders": {
                    "type": "number",
                    "description": "Delay in ms before the subsequent reminders are sent (min: 12hrs). Set to 0 or null to disable."
                  },
                  "max_reminder_days": {
                    "type": "number",
                    "description": "Maximum number of days (after envelope creation) for which reminders will be sent. Defaults to 14."
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "bash",
            "label": "CURL",
            "source": "curl -X PATCH \"https://api.verdocs.com/v2/templates/TEMPLATE_ID\" \\\n    -H \"Authorization: Bearer ACCESS_TOKEN\" \\\n    -H \"content-type: application/json\" \\\n    -d '{\"param\": \"value\"}'"
          },
          {
            "lang": "typescript",
            "label": "NodeJS",
            "source": "import fetch from 'node-fetch';\n\nconst response = await fetch('https://api.verdocs.com/v2/templates/TEMPLATE_ID', {\n  method: 'patch',\n  body: JSON.stringify(body),\n  headers: {\n    'Content-Type': 'application/json',\n    'Authorization: Bearer ACCESS_TOKEN'\n  },\n});\n\nconst data = await response.json();\nconsole.log(data);"
          },
          {
            "lang": "ruby",
            "label": "Ruby",
            "source": "require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://api.verdocs.com/v2/templates/TEMPLATE_ID\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Patch.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer ACCESS_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"
          },
          {
            "lang": "python",
            "label": "Python",
            "source": "import http.client\n\nconn = http.client.HTTPSConnection(\"api.verdocs.com\")\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer ACCESS_TOKEN\"\n}\n\nconn.request(\"PATCH\", \"/v2/templates/{template_id}\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))\n"
          },
          {
            "lang": "csharp",
            "label": "C-Sharp",
            "source": "var client = new RestClient(\"https://api.verdocs.com/v2/templates/TEMPLATE_ID\");\nvar request = new RestRequest(Method.PATCH);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer ACCESS_TOKEN\");\n\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "java",
            "label": "Java",
            "source": "HttpResponse<String> response = Unirest.patch(\"https://api.verdocs.com/v2/templates/TEMPLATE_ID\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer ACCESS_TOKEN\")\n  .asString();"
          }
        ]
      }
    },
    "/v2/template-documents/{document_id}": {
      "delete": {
        "operationId": "deleteTemplateDocument",
        "summary": "Delete a template document",
        "tags": [
          "Template Documents"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "document_id",
            "description": "",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "400": {
            "description": "Request Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Access Denied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "406": {
            "description": "Invalid Parameter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "bash",
            "label": "CURL",
            "source": "curl -X DELETE \"https://api.verdocs.com/v2/template-documents/DOCUMENT_ID\" \\\n    -H \"Authorization: Bearer ACCESS_TOKEN\" \\\n    -H \"content-type: application/json\" \\\n    -d '{\"param\": \"value\"}'"
          },
          {
            "lang": "typescript",
            "label": "NodeJS",
            "source": "import fetch from 'node-fetch';\n\nconst response = await fetch('https://api.verdocs.com/v2/template-documents/DOCUMENT_ID', {\n  method: 'delete',\n  body: JSON.stringify(body),\n  headers: {\n    'Content-Type': 'application/json',\n    'Authorization: Bearer ACCESS_TOKEN'\n  },\n});\n\nconst data = await response.json();\nconsole.log(data);"
          },
          {
            "lang": "ruby",
            "label": "Ruby",
            "source": "require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://api.verdocs.com/v2/template-documents/DOCUMENT_ID\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Delete.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer ACCESS_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"
          },
          {
            "lang": "python",
            "label": "Python",
            "source": "import http.client\n\nconn = http.client.HTTPSConnection(\"api.verdocs.com\")\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer ACCESS_TOKEN\"\n}\n\nconn.request(\"DELETE\", \"/v2/template-documents/{document_id}\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))\n"
          },
          {
            "lang": "csharp",
            "label": "C-Sharp",
            "source": "var client = new RestClient(\"https://api.verdocs.com/v2/template-documents/DOCUMENT_ID\");\nvar request = new RestRequest(Method.DELETE);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer ACCESS_TOKEN\");\n\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "java",
            "label": "Java",
            "source": "HttpResponse<String> response = Unirest.delete(\"https://api.verdocs.com/v2/template-documents/DOCUMENT_ID\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer ACCESS_TOKEN\")\n  .asString();"
          }
        ]
      },
      "get": {
        "operationId": "getTemplateDocumentPreviewLink",
        "summary": "Get template document preview link",
        "tags": [
          "Template Documents"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "document_id",
            "description": "The ID of the document to retrieve.",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "in": "query",
            "name": "type",
            "description": "Generate a preview link.",
            "required": true,
            "schema": {
              "type": "string",
              "enum": [
                "preview"
              ]
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "400": {
            "description": "Request Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Access Denied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "406": {
            "description": "Invalid Parameter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "bash",
            "label": "CURL",
            "source": "curl -X GET \"https://api.verdocs.com/v2/template-documents/DOCUMENT_ID?param=value\" \\\n    -H \"Authorization: Bearer ACCESS_TOKEN\" \\\n    -H \"content-type: application/json\" \\\n    -d '{\"param\": \"value\"}'"
          },
          {
            "lang": "typescript",
            "label": "NodeJS",
            "source": "import fetch from 'node-fetch';\n\nconst response = await fetch('https://api.verdocs.com/v2/template-documents/DOCUMENT_ID?param=value', { \n  headers: {\n    'Content-Type': 'application/json',\n    'Authorization: Bearer ACCESS_TOKEN'\n  } \n});\nconst data = await response.json();\nconsole.log(data);"
          },
          {
            "lang": "ruby",
            "label": "Ruby",
            "source": "require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://api.verdocs.com/v2/template-documents/DOCUMENT_ID?param=value\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Get.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer ACCESS_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"
          },
          {
            "lang": "python",
            "label": "Python",
            "source": "import http.client\n\nconn = http.client.HTTPSConnection(\"api.verdocs.com\")\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer ACCESS_TOKEN\"\n}\n\nconn.request(\"GET\", \"/v2/template-documents/{document_id}\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))\n"
          },
          {
            "lang": "csharp",
            "label": "C-Sharp",
            "source": "var client = new RestClient(\"https://api.verdocs.com/v2/template-documents/DOCUMENT_ID?param=value\");\nvar request = new RestRequest(Method.GET);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer ACCESS_TOKEN\");\n\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "java",
            "label": "Java",
            "source": "HttpResponse<String> response = Unirest.get(\"https://api.verdocs.com/v2/template-documents/DOCUMENT_ID?param=value\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer ACCESS_TOKEN\")\n  .asString();"
          }
        ]
      }
    },
    "/v2/roles/{template_id}/{role_name}": {
      "delete": {
        "operationId": "deleteTemplateRole",
        "summary": "Delete a role.",
        "tags": [
          "Roles"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "template_id",
            "description": "The template ID.",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "in": "path",
            "name": "role_name",
            "description": "The role name to delete.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "400": {
            "description": "Request Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Access Denied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "406": {
            "description": "Invalid Parameter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "bash",
            "label": "CURL",
            "source": "curl -X DELETE \"https://api.verdocs.com/v2/roles/TEMPLATE_ID/ROLE_NAME\" \\\n    -H \"Authorization: Bearer ACCESS_TOKEN\" \\\n    -H \"content-type: application/json\" \\\n    -d '{\"param\": \"value\"}'"
          },
          {
            "lang": "typescript",
            "label": "NodeJS",
            "source": "import fetch from 'node-fetch';\n\nconst response = await fetch('https://api.verdocs.com/v2/roles/TEMPLATE_ID/ROLE_NAME', {\n  method: 'delete',\n  body: JSON.stringify(body),\n  headers: {\n    'Content-Type': 'application/json',\n    'Authorization: Bearer ACCESS_TOKEN'\n  },\n});\n\nconst data = await response.json();\nconsole.log(data);"
          },
          {
            "lang": "ruby",
            "label": "Ruby",
            "source": "require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://api.verdocs.com/v2/roles/TEMPLATE_ID/ROLE_NAME\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Delete.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer ACCESS_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"
          },
          {
            "lang": "python",
            "label": "Python",
            "source": "import http.client\n\nconn = http.client.HTTPSConnection(\"api.verdocs.com\")\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer ACCESS_TOKEN\"\n}\n\nconn.request(\"DELETE\", \"/v2/roles/{template_id}/{role_name}\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))\n"
          },
          {
            "lang": "csharp",
            "label": "C-Sharp",
            "source": "var client = new RestClient(\"https://api.verdocs.com/v2/roles/TEMPLATE_ID/ROLE_NAME\");\nvar request = new RestRequest(Method.DELETE);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer ACCESS_TOKEN\");\n\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "java",
            "label": "Java",
            "source": "HttpResponse<String> response = Unirest.delete(\"https://api.verdocs.com/v2/roles/TEMPLATE_ID/ROLE_NAME\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer ACCESS_TOKEN\")\n  .asString();"
          }
        ]
      },
      "patch": {
        "operationId": "updateTemplateRole",
        "summary": "Update a role",
        "tags": [
          "Roles"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "template_id",
            "description": "The template ID.",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "in": "path",
            "name": "role_name",
            "description": "The role name to update.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "title": "IRole"
                }
              }
            }
          },
          "400": {
            "description": "Request Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Access Denied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "406": {
            "description": "Invalid Parameter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          }
        },
        "requestBody": {
          "description": "Body Parameters",
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [],
                "properties": {
                  "name": {
                    "type": "string",
                    "description": "Rename the role. Note that role names must be unique within a template, so this may fail if the new name is already in use."
                  },
                  "type": {
                    "type": "string",
                    "enum": [
                      "signer",
                      "cc",
                      "approver"
                    ],
                    "description": "Type of role."
                  },
                  "full_name": {
                    "type": "string",
                    "description": "Default full name for the role."
                  },
                  "email": {
                    "type": "string",
                    "description": "Default email address for the role."
                  },
                  "phone": {
                    "type": "string",
                    "description": "Default (SMS-capable) phone number for the role."
                  },
                  "message": {
                    "type": "string",
                    "description": "Optional message to include in email and SMS signing invitations."
                  },
                  "sequence": {
                    "type": "integer",
                    "default": 1,
                    "description": "Optional 1-based sequence number for the role."
                  },
                  "order": {
                    "type": "integer",
                    "default": 1,
                    "description": "Optional 1-based order number for the role."
                  },
                  "delegator": {
                    "type": "boolean",
                    "description": "If true, the role may delegate their signing responsibility to another party."
                  },
                  "kba_method": {
                    "type": "string",
                    "enum": [
                      "pin",
                      "identity",
                      0
                    ],
                    "description": "Active PIN- or Identity-based KBA for the role."
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "bash",
            "label": "CURL",
            "source": "curl -X PATCH \"https://api.verdocs.com/v2/roles/TEMPLATE_ID/ROLE_NAME\" \\\n    -H \"Authorization: Bearer ACCESS_TOKEN\" \\\n    -H \"content-type: application/json\" \\\n    -d '{\"param\": \"value\"}'"
          },
          {
            "lang": "typescript",
            "label": "NodeJS",
            "source": "import fetch from 'node-fetch';\n\nconst response = await fetch('https://api.verdocs.com/v2/roles/TEMPLATE_ID/ROLE_NAME', {\n  method: 'patch',\n  body: JSON.stringify(body),\n  headers: {\n    'Content-Type': 'application/json',\n    'Authorization: Bearer ACCESS_TOKEN'\n  },\n});\n\nconst data = await response.json();\nconsole.log(data);"
          },
          {
            "lang": "ruby",
            "label": "Ruby",
            "source": "require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://api.verdocs.com/v2/roles/TEMPLATE_ID/ROLE_NAME\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Patch.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer ACCESS_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"
          },
          {
            "lang": "python",
            "label": "Python",
            "source": "import http.client\n\nconn = http.client.HTTPSConnection(\"api.verdocs.com\")\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer ACCESS_TOKEN\"\n}\n\nconn.request(\"PATCH\", \"/v2/roles/{template_id}/{role_name}\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))\n"
          },
          {
            "lang": "csharp",
            "label": "C-Sharp",
            "source": "var client = new RestClient(\"https://api.verdocs.com/v2/roles/TEMPLATE_ID/ROLE_NAME\");\nvar request = new RestRequest(Method.PATCH);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer ACCESS_TOKEN\");\n\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "java",
            "label": "Java",
            "source": "HttpResponse<String> response = Unirest.patch(\"https://api.verdocs.com/v2/roles/TEMPLATE_ID/ROLE_NAME\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer ACCESS_TOKEN\")\n  .asString();"
          }
        ]
      }
    },
    "/v2/envelope-documents/{document_id}": {
      "get": {
        "operationId": "getEnvelopeFile",
        "summary": "Download envelope document file",
        "tags": [
          "Envelope Documents"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "document_id",
            "description": "The ID of the document to retrieve.",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "in": "query",
            "name": "type",
            "description": "Return the document binary content.",
            "required": true,
            "schema": {
              "type": "string",
              "enum": [
                "file"
              ]
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "type": "string",
                  "format": "binary"
                }
              }
            }
          },
          "400": {
            "description": "Request Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Access Denied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "406": {
            "description": "Invalid Parameter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "bash",
            "label": "CURL",
            "source": "curl -X GET \"https://api.verdocs.com/v2/envelope-documents/DOCUMENT_ID?param=value\" \\\n    -H \"Authorization: Bearer ACCESS_TOKEN\" \\\n    -H \"content-type: application/json\" \\\n    -d '{\"param\": \"value\"}'"
          },
          {
            "lang": "typescript",
            "label": "NodeJS",
            "source": "import fetch from 'node-fetch';\n\nconst response = await fetch('https://api.verdocs.com/v2/envelope-documents/DOCUMENT_ID?param=value', { \n  headers: {\n    'Content-Type': 'application/json',\n    'Authorization: Bearer ACCESS_TOKEN'\n  } \n});\nconst data = await response.json();\nconsole.log(data);"
          },
          {
            "lang": "ruby",
            "label": "Ruby",
            "source": "require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://api.verdocs.com/v2/envelope-documents/DOCUMENT_ID?param=value\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Get.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer ACCESS_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"
          },
          {
            "lang": "python",
            "label": "Python",
            "source": "import http.client\n\nconn = http.client.HTTPSConnection(\"api.verdocs.com\")\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer ACCESS_TOKEN\"\n}\n\nconn.request(\"GET\", \"/v2/envelope-documents/{document_id}\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))\n"
          },
          {
            "lang": "csharp",
            "label": "C-Sharp",
            "source": "var client = new RestClient(\"https://api.verdocs.com/v2/envelope-documents/DOCUMENT_ID?param=value\");\nvar request = new RestRequest(Method.GET);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer ACCESS_TOKEN\");\n\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "java",
            "label": "Java",
            "source": "HttpResponse<String> response = Unirest.get(\"https://api.verdocs.com/v2/envelope-documents/DOCUMENT_ID?param=value\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer ACCESS_TOKEN\")\n  .asString();"
          }
        ]
      }
    },
    "/v2/envelopes/{envelope_id}/recipients/{role_name}/agree": {
      "post": {
        "operationId": "envelopeRecipientAgree",
        "summary": "Agree to e-Signing Disclosures",
        "tags": [
          "Recipients"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "envelope_id",
            "description": "The envelope to operate on.",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "in": "path",
            "name": "role_name",
            "description": "The role to operate on.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "title": "IRecipient"
                }
              }
            }
          },
          "400": {
            "description": "Request Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Access Denied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "406": {
            "description": "Invalid Parameter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          }
        },
        "requestBody": {
          "description": "Body Parameters",
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [],
                "properties": {
                  "timezone": {
                    "type": "string",
                    "description": "Define the long-form timezone."
                  },
                  "locale": {
                    "type": "string",
                    "description": "Define the locale code."
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "bash",
            "label": "CURL",
            "source": "curl -X POST \"https://api.verdocs.com/v2/envelopes/ENVELOPE_ID/recipients/ROLE_NAME/agree\" \\\n    -H \"Authorization: Bearer ACCESS_TOKEN\" \\\n    -H \"content-type: application/json\" \\\n    -d '{\"param\": \"value\"}'"
          },
          {
            "lang": "typescript",
            "label": "NodeJS",
            "source": "import fetch from 'node-fetch';\n\nconst response = await fetch('https://api.verdocs.com/v2/envelopes/ENVELOPE_ID/recipients/ROLE_NAME/agree', {\n  method: 'post',\n  body: JSON.stringify(body),\n  headers: {\n    'Content-Type': 'application/json',\n    'Authorization: Bearer ACCESS_TOKEN'\n  },\n});\n\nconst data = await response.json();\nconsole.log(data);"
          },
          {
            "lang": "ruby",
            "label": "Ruby",
            "source": "require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://api.verdocs.com/v2/envelopes/ENVELOPE_ID/recipients/ROLE_NAME/agree\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Post.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer ACCESS_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"
          },
          {
            "lang": "python",
            "label": "Python",
            "source": "import http.client\n\nconn = http.client.HTTPSConnection(\"api.verdocs.com\")\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer ACCESS_TOKEN\"\n}\n\nconn.request(\"POST\", \"/v2/envelopes/{envelope_id}/recipients/{role_name}/agree\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))\n"
          },
          {
            "lang": "csharp",
            "label": "C-Sharp",
            "source": "var client = new RestClient(\"https://api.verdocs.com/v2/envelopes/ENVELOPE_ID/recipients/ROLE_NAME/agree\");\nvar request = new RestRequest(Method.POST);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer ACCESS_TOKEN\");\n\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "java",
            "label": "Java",
            "source": "HttpResponse<String> response = Unirest.post(\"https://api.verdocs.com/v2/envelopes/ENVELOPE_ID/recipients/ROLE_NAME/agree\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer ACCESS_TOKEN\")\n  .asString();"
          }
        ]
      }
    },
    "/v2/envelopes/{envelope_id}/recipients/{role_name}/decline": {
      "post": {
        "operationId": "envelopeRecipientDecline",
        "summary": "Decline e-Signing Disclosures",
        "tags": [
          "Recipients"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "envelope_id",
            "description": "The envelope to operate on.",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "in": "path",
            "name": "role_name",
            "description": "The role to adjust.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "title": "IRecipient"
                }
              }
            }
          },
          "400": {
            "description": "Request Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Access Denied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "406": {
            "description": "Invalid Parameter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "bash",
            "label": "CURL",
            "source": "curl -X POST \"https://api.verdocs.com/v2/envelopes/ENVELOPE_ID/recipients/ROLE_NAME/decline\" \\\n    -H \"Authorization: Bearer ACCESS_TOKEN\" \\\n    -H \"content-type: application/json\" \\\n    -d '{\"param\": \"value\"}'"
          },
          {
            "lang": "typescript",
            "label": "NodeJS",
            "source": "import fetch from 'node-fetch';\n\nconst response = await fetch('https://api.verdocs.com/v2/envelopes/ENVELOPE_ID/recipients/ROLE_NAME/decline', {\n  method: 'post',\n  body: JSON.stringify(body),\n  headers: {\n    'Content-Type': 'application/json',\n    'Authorization: Bearer ACCESS_TOKEN'\n  },\n});\n\nconst data = await response.json();\nconsole.log(data);"
          },
          {
            "lang": "ruby",
            "label": "Ruby",
            "source": "require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://api.verdocs.com/v2/envelopes/ENVELOPE_ID/recipients/ROLE_NAME/decline\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Post.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer ACCESS_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"
          },
          {
            "lang": "python",
            "label": "Python",
            "source": "import http.client\n\nconn = http.client.HTTPSConnection(\"api.verdocs.com\")\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer ACCESS_TOKEN\"\n}\n\nconn.request(\"POST\", \"/v2/envelopes/{envelope_id}/recipients/{role_name}/decline\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))\n"
          },
          {
            "lang": "csharp",
            "label": "C-Sharp",
            "source": "var client = new RestClient(\"https://api.verdocs.com/v2/envelopes/ENVELOPE_ID/recipients/ROLE_NAME/decline\");\nvar request = new RestRequest(Method.POST);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer ACCESS_TOKEN\");\n\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "java",
            "label": "Java",
            "source": "HttpResponse<String> response = Unirest.post(\"https://api.verdocs.com/v2/envelopes/ENVELOPE_ID/recipients/ROLE_NAME/decline\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer ACCESS_TOKEN\")\n  .asString();"
          }
        ]
      }
    },
    "/v2/envelopes/{envelope_id}/recipients/{role_name}/submit": {
      "post": {
        "operationId": "envelopeRecipientSubmit",
        "summary": "Submit envelope",
        "tags": [
          "Recipients"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "envelope_id",
            "description": "The envelope to operate on.",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "in": "path",
            "name": "role_name",
            "description": "The role to submit.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "title": "IRecipient"
                }
              }
            }
          },
          "400": {
            "description": "Request Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Access Denied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "406": {
            "description": "Invalid Parameter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          }
        },
        "requestBody": {
          "description": "Body Parameters",
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [],
                "properties": {
                  "timezone": {
                    "type": "string",
                    "description": "Define the long-form timezone."
                  },
                  "locale": {
                    "type": "string",
                    "description": "Define the locale code."
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "bash",
            "label": "CURL",
            "source": "curl -X POST \"https://api.verdocs.com/v2/envelopes/ENVELOPE_ID/recipients/ROLE_NAME/submit\" \\\n    -H \"Authorization: Bearer ACCESS_TOKEN\" \\\n    -H \"content-type: application/json\" \\\n    -d '{\"param\": \"value\"}'"
          },
          {
            "lang": "typescript",
            "label": "NodeJS",
            "source": "import fetch from 'node-fetch';\n\nconst response = await fetch('https://api.verdocs.com/v2/envelopes/ENVELOPE_ID/recipients/ROLE_NAME/submit', {\n  method: 'post',\n  body: JSON.stringify(body),\n  headers: {\n    'Content-Type': 'application/json',\n    'Authorization: Bearer ACCESS_TOKEN'\n  },\n});\n\nconst data = await response.json();\nconsole.log(data);"
          },
          {
            "lang": "ruby",
            "label": "Ruby",
            "source": "require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://api.verdocs.com/v2/envelopes/ENVELOPE_ID/recipients/ROLE_NAME/submit\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Post.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer ACCESS_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"
          },
          {
            "lang": "python",
            "label": "Python",
            "source": "import http.client\n\nconn = http.client.HTTPSConnection(\"api.verdocs.com\")\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer ACCESS_TOKEN\"\n}\n\nconn.request(\"POST\", \"/v2/envelopes/{envelope_id}/recipients/{role_name}/submit\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))\n"
          },
          {
            "lang": "csharp",
            "label": "C-Sharp",
            "source": "var client = new RestClient(\"https://api.verdocs.com/v2/envelopes/ENVELOPE_ID/recipients/ROLE_NAME/submit\");\nvar request = new RestRequest(Method.POST);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer ACCESS_TOKEN\");\n\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "java",
            "label": "Java",
            "source": "HttpResponse<String> response = Unirest.post(\"https://api.verdocs.com/v2/envelopes/ENVELOPE_ID/recipients/ROLE_NAME/submit\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer ACCESS_TOKEN\")\n  .asString();"
          }
        ]
      }
    },
    "/v2/organizations/entitlements": {
      "get": {
        "operationId": "getEntitlements",
        "summary": "Get organization entitlements",
        "tags": [
          "Organizations"
        ],
        "parameters": [],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "title": "IEntitlement"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Request Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Access Denied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "406": {
            "description": "Invalid Parameter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "bash",
            "label": "CURL",
            "source": "curl -X GET \"https://api.verdocs.com/v2/organizations/entitlements\" \\\n    -H \"Authorization: Bearer ACCESS_TOKEN\" \\\n    -H \"content-type: application/json\" \\\n    -d '{\"param\": \"value\"}'"
          },
          {
            "lang": "typescript",
            "label": "NodeJS",
            "source": "import fetch from 'node-fetch';\n\nconst response = await fetch('https://api.verdocs.com/v2/organizations/entitlements', { \n  headers: {\n    'Content-Type': 'application/json',\n    'Authorization: Bearer ACCESS_TOKEN'\n  } \n});\nconst data = await response.json();\nconsole.log(data);"
          },
          {
            "lang": "ruby",
            "label": "Ruby",
            "source": "require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://api.verdocs.com/v2/organizations/entitlements\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Get.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer ACCESS_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"
          },
          {
            "lang": "python",
            "label": "Python",
            "source": "import http.client\n\nconn = http.client.HTTPSConnection(\"api.verdocs.com\")\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer ACCESS_TOKEN\"\n}\n\nconn.request(\"GET\", \"/v2/organizations/entitlements\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))\n"
          },
          {
            "lang": "csharp",
            "label": "C-Sharp",
            "source": "var client = new RestClient(\"https://api.verdocs.com/v2/organizations/entitlements\");\nvar request = new RestRequest(Method.GET);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer ACCESS_TOKEN\");\n\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "java",
            "label": "Java",
            "source": "HttpResponse<String> response = Unirest.get(\"https://api.verdocs.com/v2/organizations/entitlements\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer ACCESS_TOKEN\")\n  .asString();"
          }
        ]
      }
    },
    "/v2/envelope-documents/{id}": {
      "get": {
        "operationId": "getEnvelopeDocument",
        "summary": "Get envelope document",
        "tags": [
          "Envelope Documents"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "id",
            "description": "The ID of the document to retrieve.",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "title": "IEnvelopeDocument"
                }
              }
            }
          },
          "400": {
            "description": "Request Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Access Denied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "406": {
            "description": "Invalid Parameter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "bash",
            "label": "CURL",
            "source": "curl -X GET \"https://api.verdocs.com/v2/envelope-documents/ID\" \\\n    -H \"Authorization: Bearer ACCESS_TOKEN\" \\\n    -H \"content-type: application/json\" \\\n    -d '{\"param\": \"value\"}'"
          },
          {
            "lang": "typescript",
            "label": "NodeJS",
            "source": "import fetch from 'node-fetch';\n\nconst response = await fetch('https://api.verdocs.com/v2/envelope-documents/ID', { \n  headers: {\n    'Content-Type': 'application/json',\n    'Authorization: Bearer ACCESS_TOKEN'\n  } \n});\nconst data = await response.json();\nconsole.log(data);"
          },
          {
            "lang": "ruby",
            "label": "Ruby",
            "source": "require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://api.verdocs.com/v2/envelope-documents/ID\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Get.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer ACCESS_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"
          },
          {
            "lang": "python",
            "label": "Python",
            "source": "import http.client\n\nconn = http.client.HTTPSConnection(\"api.verdocs.com\")\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer ACCESS_TOKEN\"\n}\n\nconn.request(\"GET\", \"/v2/envelope-documents/{id}\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))\n"
          },
          {
            "lang": "csharp",
            "label": "C-Sharp",
            "source": "var client = new RestClient(\"https://api.verdocs.com/v2/envelope-documents/ID\");\nvar request = new RestRequest(Method.GET);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer ACCESS_TOKEN\");\n\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "java",
            "label": "Java",
            "source": "HttpResponse<String> response = Unirest.get(\"https://api.verdocs.com/v2/envelope-documents/ID\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer ACCESS_TOKEN\")\n  .asString();"
          }
        ]
      }
    },
    "/v2/envelope-documents/page-image/{document_id}/{variant}/{page}": {
      "get": {
        "operationId": "getEnvelopeDocumentPageDisplayUri",
        "summary": "Get envelope document page display URI",
        "tags": [
          "Envelopes"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "document_id",
            "description": "The ID of the document to retrieve.",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "in": "path",
            "name": "variant",
            "description": "The variant of the document to retrieve.",
            "required": true,
            "schema": {
              "type": "string",
              "enum": [
                "original",
                "filled"
              ]
            }
          },
          {
            "in": "path",
            "name": "page",
            "description": "The page number to retrieve",
            "required": true,
            "schema": {
              "type": "integer"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "400": {
            "description": "Request Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Access Denied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "406": {
            "description": "Invalid Parameter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "bash",
            "label": "CURL",
            "source": "curl -X GET \"https://api.verdocs.com/v2/envelope-documents/page-image/DOCUMENT_ID/VARIANT/PAGE\" \\\n    -H \"Authorization: Bearer ACCESS_TOKEN\" \\\n    -H \"content-type: application/json\" \\\n    -d '{\"param\": \"value\"}'"
          },
          {
            "lang": "typescript",
            "label": "NodeJS",
            "source": "import fetch from 'node-fetch';\n\nconst response = await fetch('https://api.verdocs.com/v2/envelope-documents/page-image/DOCUMENT_ID/VARIANT/PAGE', { \n  headers: {\n    'Content-Type': 'application/json',\n    'Authorization: Bearer ACCESS_TOKEN'\n  } \n});\nconst data = await response.json();\nconsole.log(data);"
          },
          {
            "lang": "ruby",
            "label": "Ruby",
            "source": "require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://api.verdocs.com/v2/envelope-documents/page-image/DOCUMENT_ID/VARIANT/PAGE\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Get.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer ACCESS_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"
          },
          {
            "lang": "python",
            "label": "Python",
            "source": "import http.client\n\nconn = http.client.HTTPSConnection(\"api.verdocs.com\")\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer ACCESS_TOKEN\"\n}\n\nconn.request(\"GET\", \"/v2/envelope-documents/page-image/{document_id}/{variant}/{page}\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))\n"
          },
          {
            "lang": "csharp",
            "label": "C-Sharp",
            "source": "var client = new RestClient(\"https://api.verdocs.com/v2/envelope-documents/page-image/DOCUMENT_ID/VARIANT/PAGE\");\nvar request = new RestRequest(Method.GET);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer ACCESS_TOKEN\");\n\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "java",
            "label": "Java",
            "source": "HttpResponse<String> response = Unirest.get(\"https://api.verdocs.com/v2/envelope-documents/page-image/DOCUMENT_ID/VARIANT/PAGE\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer ACCESS_TOKEN\")\n  .asString();"
          }
        ]
      }
    },
    "/v2/envelopes/zip/{envelope_ids}": {
      "get": {
        "operationId": "getEnvelopesZip",
        "summary": "Generate envelope ZIP archive",
        "tags": [
          "Envelopes"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "envelope_ids",
            "description": "Comma-separated envelope IDs to include in the archive",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "type": "string",
                  "format": "binary"
                }
              }
            }
          },
          "400": {
            "description": "Request Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Access Denied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "406": {
            "description": "Invalid Parameter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "bash",
            "label": "CURL",
            "source": "curl -X GET \"https://api.verdocs.com/v2/envelopes/zip/ENVELOPE_IDS\" \\\n    -H \"Authorization: Bearer ACCESS_TOKEN\" \\\n    -H \"content-type: application/json\" \\\n    -d '{\"param\": \"value\"}'"
          },
          {
            "lang": "typescript",
            "label": "NodeJS",
            "source": "import fetch from 'node-fetch';\n\nconst response = await fetch('https://api.verdocs.com/v2/envelopes/zip/ENVELOPE_IDS', { \n  headers: {\n    'Content-Type': 'application/json',\n    'Authorization: Bearer ACCESS_TOKEN'\n  } \n});\nconst data = await response.json();\nconsole.log(data);"
          },
          {
            "lang": "ruby",
            "label": "Ruby",
            "source": "require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://api.verdocs.com/v2/envelopes/zip/ENVELOPE_IDS\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Get.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer ACCESS_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"
          },
          {
            "lang": "python",
            "label": "Python",
            "source": "import http.client\n\nconn = http.client.HTTPSConnection(\"api.verdocs.com\")\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer ACCESS_TOKEN\"\n}\n\nconn.request(\"GET\", \"/v2/envelopes/zip/{envelope_ids}\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))\n"
          },
          {
            "lang": "csharp",
            "label": "C-Sharp",
            "source": "var client = new RestClient(\"https://api.verdocs.com/v2/envelopes/zip/ENVELOPE_IDS\");\nvar request = new RestRequest(Method.GET);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer ACCESS_TOKEN\");\n\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "java",
            "label": "Java",
            "source": "HttpResponse<String> response = Unirest.get(\"https://api.verdocs.com/v2/envelopes/zip/ENVELOPE_IDS\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer ACCESS_TOKEN\")\n  .asString();"
          }
        ]
      }
    },
    "/v2/sign/in-person/{envelope_id}/{role_name}": {
      "post": {
        "operationId": "getInPersonLink",
        "summary": "Get In-Person Signing Link",
        "tags": [
          "Recipients"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "envelope_id",
            "description": "The envelope to operate on.",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "in": "path",
            "name": "role_name",
            "description": "The role to request.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "title": "IInPersonLinkResponse"
                }
              }
            }
          },
          "400": {
            "description": "Request Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Access Denied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "406": {
            "description": "Invalid Parameter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "bash",
            "label": "CURL",
            "source": "curl -X POST \"https://api.verdocs.com/v2/sign/in-person/ENVELOPE_ID/ROLE_NAME\" \\\n    -H \"Authorization: Bearer ACCESS_TOKEN\" \\\n    -H \"content-type: application/json\" \\\n    -d '{\"param\": \"value\"}'"
          },
          {
            "lang": "typescript",
            "label": "NodeJS",
            "source": "import fetch from 'node-fetch';\n\nconst response = await fetch('https://api.verdocs.com/v2/sign/in-person/ENVELOPE_ID/ROLE_NAME', {\n  method: 'post',\n  body: JSON.stringify(body),\n  headers: {\n    'Content-Type': 'application/json',\n    'Authorization: Bearer ACCESS_TOKEN'\n  },\n});\n\nconst data = await response.json();\nconsole.log(data);"
          },
          {
            "lang": "ruby",
            "label": "Ruby",
            "source": "require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://api.verdocs.com/v2/sign/in-person/ENVELOPE_ID/ROLE_NAME\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Post.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer ACCESS_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"
          },
          {
            "lang": "python",
            "label": "Python",
            "source": "import http.client\n\nconn = http.client.HTTPSConnection(\"api.verdocs.com\")\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer ACCESS_TOKEN\"\n}\n\nconn.request(\"POST\", \"/v2/sign/in-person/{envelope_id}/{role_name}\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))\n"
          },
          {
            "lang": "csharp",
            "label": "C-Sharp",
            "source": "var client = new RestClient(\"https://api.verdocs.com/v2/sign/in-person/ENVELOPE_ID/ROLE_NAME\");\nvar request = new RestRequest(Method.POST);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer ACCESS_TOKEN\");\n\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "java",
            "label": "Java",
            "source": "HttpResponse<String> response = Unirest.post(\"https://api.verdocs.com/v2/sign/in-person/ENVELOPE_ID/ROLE_NAME\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer ACCESS_TOKEN\")\n  .asString();"
          }
        ]
      }
    },
    "/v2/kba/{envelope_id}/{role_name}": {
      "get": {
        "operationId": "getKbaStep",
        "summary": "Get current KBA step",
        "tags": [
          "KBA"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "envelope_id",
            "description": "The envelope to operate on.",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "in": "path",
            "name": "role_name",
            "description": "The recipient role name.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TRecipientKbaStep"
                }
              }
            }
          },
          "400": {
            "description": "Request Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Access Denied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "406": {
            "description": "Invalid Parameter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "bash",
            "label": "CURL",
            "source": "curl -X GET \"https://api.verdocs.com/v2/kba/ENVELOPE_ID/ROLE_NAME\" \\\n    -H \"Authorization: Bearer ACCESS_TOKEN\" \\\n    -H \"content-type: application/json\" \\\n    -d '{\"param\": \"value\"}'"
          },
          {
            "lang": "typescript",
            "label": "NodeJS",
            "source": "import fetch from 'node-fetch';\n\nconst response = await fetch('https://api.verdocs.com/v2/kba/ENVELOPE_ID/ROLE_NAME', { \n  headers: {\n    'Content-Type': 'application/json',\n    'Authorization: Bearer ACCESS_TOKEN'\n  } \n});\nconst data = await response.json();\nconsole.log(data);"
          },
          {
            "lang": "ruby",
            "label": "Ruby",
            "source": "require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://api.verdocs.com/v2/kba/ENVELOPE_ID/ROLE_NAME\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Get.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer ACCESS_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"
          },
          {
            "lang": "python",
            "label": "Python",
            "source": "import http.client\n\nconn = http.client.HTTPSConnection(\"api.verdocs.com\")\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer ACCESS_TOKEN\"\n}\n\nconn.request(\"GET\", \"/v2/kba/{envelope_id}/{role_name}\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))\n"
          },
          {
            "lang": "csharp",
            "label": "C-Sharp",
            "source": "var client = new RestClient(\"https://api.verdocs.com/v2/kba/ENVELOPE_ID/ROLE_NAME\");\nvar request = new RestRequest(Method.GET);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer ACCESS_TOKEN\");\n\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "java",
            "label": "Java",
            "source": "HttpResponse<String> response = Unirest.get(\"https://api.verdocs.com/v2/kba/ENVELOPE_ID/ROLE_NAME\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer ACCESS_TOKEN\")\n  .asString();"
          }
        ]
      }
    },
    "/v2/users/me": {
      "get": {
        "operationId": "getMyUser",
        "summary": "Get the caller's user record.",
        "tags": [
          "Authentication"
        ],
        "parameters": [],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "title": "IUser"
                }
              }
            }
          },
          "400": {
            "description": "Request Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Access Denied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "406": {
            "description": "Invalid Parameter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "bash",
            "label": "CURL",
            "source": "curl -X GET \"https://api.verdocs.com/v2/users/me\" \\\n    -H \"Authorization: Bearer ACCESS_TOKEN\" \\\n    -H \"content-type: application/json\" \\\n    -d '{\"param\": \"value\"}'"
          },
          {
            "lang": "typescript",
            "label": "NodeJS",
            "source": "import fetch from 'node-fetch';\n\nconst response = await fetch('https://api.verdocs.com/v2/users/me', { \n  headers: {\n    'Content-Type': 'application/json',\n    'Authorization: Bearer ACCESS_TOKEN'\n  } \n});\nconst data = await response.json();\nconsole.log(data);"
          },
          {
            "lang": "ruby",
            "label": "Ruby",
            "source": "require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://api.verdocs.com/v2/users/me\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Get.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer ACCESS_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"
          },
          {
            "lang": "python",
            "label": "Python",
            "source": "import http.client\n\nconn = http.client.HTTPSConnection(\"api.verdocs.com\")\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer ACCESS_TOKEN\"\n}\n\nconn.request(\"GET\", \"/v2/users/me\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))\n"
          },
          {
            "lang": "csharp",
            "label": "C-Sharp",
            "source": "var client = new RestClient(\"https://api.verdocs.com/v2/users/me\");\nvar request = new RestRequest(Method.GET);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer ACCESS_TOKEN\");\n\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "java",
            "label": "Java",
            "source": "HttpResponse<String> response = Unirest.get(\"https://api.verdocs.com/v2/users/me\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer ACCESS_TOKEN\")\n  .asString();"
          }
        ]
      }
    },
    "/v2/notifications": {
      "get": {
        "operationId": "getNotifications",
        "summary": "Get notifications",
        "tags": [
          "Notifications"
        ],
        "parameters": [],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "title": "INotification"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Request Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Access Denied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "406": {
            "description": "Invalid Parameter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "bash",
            "label": "CURL",
            "source": "curl -X GET \"https://api.verdocs.com/v2/notifications\" \\\n    -H \"Authorization: Bearer ACCESS_TOKEN\" \\\n    -H \"content-type: application/json\" \\\n    -d '{\"param\": \"value\"}'"
          },
          {
            "lang": "typescript",
            "label": "NodeJS",
            "source": "import fetch from 'node-fetch';\n\nconst response = await fetch('https://api.verdocs.com/v2/notifications', { \n  headers: {\n    'Content-Type': 'application/json',\n    'Authorization: Bearer ACCESS_TOKEN'\n  } \n});\nconst data = await response.json();\nconsole.log(data);"
          },
          {
            "lang": "ruby",
            "label": "Ruby",
            "source": "require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://api.verdocs.com/v2/notifications\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Get.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer ACCESS_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"
          },
          {
            "lang": "python",
            "label": "Python",
            "source": "import http.client\n\nconn = http.client.HTTPSConnection(\"api.verdocs.com\")\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer ACCESS_TOKEN\"\n}\n\nconn.request(\"GET\", \"/v2/notifications\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))\n"
          },
          {
            "lang": "csharp",
            "label": "C-Sharp",
            "source": "var client = new RestClient(\"https://api.verdocs.com/v2/notifications\");\nvar request = new RestRequest(Method.GET);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer ACCESS_TOKEN\");\n\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "java",
            "label": "Java",
            "source": "HttpResponse<String> response = Unirest.get(\"https://api.verdocs.com/v2/notifications\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer ACCESS_TOKEN\")\n  .asString();"
          }
        ]
      }
    },
    "/v2/oauth2/authorize": {
      "get": {
        "operationId": "getOAuth2AuthorizeUrl",
        "summary": "Initiate an OAuth2 authorization code flow",
        "tags": [
          "Authentication"
        ],
        "parameters": [
          {
            "in": "query",
            "name": "client_id",
            "description": "The client ID of the registered OAuth2 application.",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "in": "query",
            "name": "redirect_uri",
            "description": "The URI to redirect to after authorization. Must match a registered redirect URI for the application.",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uri"
            }
          },
          {
            "in": "query",
            "name": "response_type",
            "description": "Must be 'code' for authorization code flow.",
            "required": true,
            "schema": {
              "type": "string",
              "enum": [
                "code"
              ]
            }
          },
          {
            "in": "query",
            "name": "state",
            "description": "An opaque value used to prevent CSRF attacks. Returned unchanged in the redirect.",
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "scope",
            "description": "Optional scope to request.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {}
                }
              }
            }
          },
          "400": {
            "description": "Request Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Access Denied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "406": {
            "description": "Invalid Parameter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "bash",
            "label": "CURL",
            "source": "curl -X GET \"https://api.verdocs.com/v2/oauth2/authorize?param=value\" \\\n    -H \"Authorization: Bearer ACCESS_TOKEN\" \\\n    -H \"content-type: application/json\" \\\n    -d '{\"param\": \"value\"}'"
          },
          {
            "lang": "typescript",
            "label": "NodeJS",
            "source": "import fetch from 'node-fetch';\n\nconst response = await fetch('https://api.verdocs.com/v2/oauth2/authorize?param=value', { \n  headers: {\n    'Content-Type': 'application/json',\n    'Authorization: Bearer ACCESS_TOKEN'\n  } \n});\nconst data = await response.json();\nconsole.log(data);"
          },
          {
            "lang": "ruby",
            "label": "Ruby",
            "source": "require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://api.verdocs.com/v2/oauth2/authorize?param=value\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Get.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer ACCESS_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"
          },
          {
            "lang": "python",
            "label": "Python",
            "source": "import http.client\n\nconn = http.client.HTTPSConnection(\"api.verdocs.com\")\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer ACCESS_TOKEN\"\n}\n\nconn.request(\"GET\", \"/v2/oauth2/authorize\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))\n"
          },
          {
            "lang": "csharp",
            "label": "C-Sharp",
            "source": "var client = new RestClient(\"https://api.verdocs.com/v2/oauth2/authorize?param=value\");\nvar request = new RestRequest(Method.GET);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer ACCESS_TOKEN\");\n\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "java",
            "label": "Java",
            "source": "HttpResponse<String> response = Unirest.get(\"https://api.verdocs.com/v2/oauth2/authorize?param=value\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer ACCESS_TOKEN\")\n  .asString();"
          }
        ]
      }
    },
    "/v2/organizations/{organization_id}/children": {
      "get": {
        "operationId": "getOrganizationChildren",
        "summary": "Get an organization's children",
        "tags": [
          "Organizations"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "organization_id",
            "description": "",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "title": "IOrganization"
                }
              }
            }
          },
          "400": {
            "description": "Request Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Access Denied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "406": {
            "description": "Invalid Parameter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "bash",
            "label": "CURL",
            "source": "curl -X GET \"https://api.verdocs.com/v2/organizations/ORGANIZATION_ID/children\" \\\n    -H \"Authorization: Bearer ACCESS_TOKEN\" \\\n    -H \"content-type: application/json\" \\\n    -d '{\"param\": \"value\"}'"
          },
          {
            "lang": "typescript",
            "label": "NodeJS",
            "source": "import fetch from 'node-fetch';\n\nconst response = await fetch('https://api.verdocs.com/v2/organizations/ORGANIZATION_ID/children', { \n  headers: {\n    'Content-Type': 'application/json',\n    'Authorization: Bearer ACCESS_TOKEN'\n  } \n});\nconst data = await response.json();\nconsole.log(data);"
          },
          {
            "lang": "ruby",
            "label": "Ruby",
            "source": "require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://api.verdocs.com/v2/organizations/ORGANIZATION_ID/children\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Get.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer ACCESS_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"
          },
          {
            "lang": "python",
            "label": "Python",
            "source": "import http.client\n\nconn = http.client.HTTPSConnection(\"api.verdocs.com\")\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer ACCESS_TOKEN\"\n}\n\nconn.request(\"GET\", \"/v2/organizations/{organization_id}/children\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))\n"
          },
          {
            "lang": "csharp",
            "label": "C-Sharp",
            "source": "var client = new RestClient(\"https://api.verdocs.com/v2/organizations/ORGANIZATION_ID/children\");\nvar request = new RestRequest(Method.GET);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer ACCESS_TOKEN\");\n\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "java",
            "label": "Java",
            "source": "HttpResponse<String> response = Unirest.get(\"https://api.verdocs.com/v2/organizations/ORGANIZATION_ID/children\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer ACCESS_TOKEN\")\n  .asString();"
          }
        ]
      }
    },
    "/v2/organization-invitations/{email}/{token}": {
      "get": {
        "operationId": "getOrganizationInvitation",
        "summary": "Get a pending invitation",
        "tags": [
          "Organization Invitations"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "email",
            "description": "",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "path",
            "name": "token",
            "description": "",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "title": "IOrganizationInvitation"
                }
              }
            }
          },
          "400": {
            "description": "Request Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Access Denied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "406": {
            "description": "Invalid Parameter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "bash",
            "label": "CURL",
            "source": "curl -X GET \"https://api.verdocs.com/v2/organization-invitations/EMAIL/TOKEN\" \\\n    -H \"Authorization: Bearer ACCESS_TOKEN\" \\\n    -H \"content-type: application/json\" \\\n    -d '{\"param\": \"value\"}'"
          },
          {
            "lang": "typescript",
            "label": "NodeJS",
            "source": "import fetch from 'node-fetch';\n\nconst response = await fetch('https://api.verdocs.com/v2/organization-invitations/EMAIL/TOKEN', { \n  headers: {\n    'Content-Type': 'application/json',\n    'Authorization: Bearer ACCESS_TOKEN'\n  } \n});\nconst data = await response.json();\nconsole.log(data);"
          },
          {
            "lang": "ruby",
            "label": "Ruby",
            "source": "require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://api.verdocs.com/v2/organization-invitations/EMAIL/TOKEN\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Get.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer ACCESS_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"
          },
          {
            "lang": "python",
            "label": "Python",
            "source": "import http.client\n\nconn = http.client.HTTPSConnection(\"api.verdocs.com\")\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer ACCESS_TOKEN\"\n}\n\nconn.request(\"GET\", \"/v2/organization-invitations/{email}/{token}\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))\n"
          },
          {
            "lang": "csharp",
            "label": "C-Sharp",
            "source": "var client = new RestClient(\"https://api.verdocs.com/v2/organization-invitations/EMAIL/TOKEN\");\nvar request = new RestRequest(Method.GET);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer ACCESS_TOKEN\");\n\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "java",
            "label": "Java",
            "source": "HttpResponse<String> response = Unirest.get(\"https://api.verdocs.com/v2/organization-invitations/EMAIL/TOKEN\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer ACCESS_TOKEN\")\n  .asString();"
          }
        ]
      }
    },
    "/v2/organizations/{organization_id}/pipeline-settings": {
      "get": {
        "operationId": "getOrganizationPipelineSettings",
        "summary": "Get organization pipeline settings",
        "tags": [
          "Organizations"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "organization_id",
            "description": "",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "title": "IPipelineSettings"
                }
              }
            }
          },
          "400": {
            "description": "Request Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Access Denied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "406": {
            "description": "Invalid Parameter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "bash",
            "label": "CURL",
            "source": "curl -X GET \"https://api.verdocs.com/v2/organizations/ORGANIZATION_ID/pipeline-settings\" \\\n    -H \"Authorization: Bearer ACCESS_TOKEN\" \\\n    -H \"content-type: application/json\" \\\n    -d '{\"param\": \"value\"}'"
          },
          {
            "lang": "typescript",
            "label": "NodeJS",
            "source": "import fetch from 'node-fetch';\n\nconst response = await fetch('https://api.verdocs.com/v2/organizations/ORGANIZATION_ID/pipeline-settings', { \n  headers: {\n    'Content-Type': 'application/json',\n    'Authorization: Bearer ACCESS_TOKEN'\n  } \n});\nconst data = await response.json();\nconsole.log(data);"
          },
          {
            "lang": "ruby",
            "label": "Ruby",
            "source": "require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://api.verdocs.com/v2/organizations/ORGANIZATION_ID/pipeline-settings\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Get.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer ACCESS_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"
          },
          {
            "lang": "python",
            "label": "Python",
            "source": "import http.client\n\nconn = http.client.HTTPSConnection(\"api.verdocs.com\")\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer ACCESS_TOKEN\"\n}\n\nconn.request(\"GET\", \"/v2/organizations/{organization_id}/pipeline-settings\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))\n"
          },
          {
            "lang": "csharp",
            "label": "C-Sharp",
            "source": "var client = new RestClient(\"https://api.verdocs.com/v2/organizations/ORGANIZATION_ID/pipeline-settings\");\nvar request = new RestRequest(Method.GET);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer ACCESS_TOKEN\");\n\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "java",
            "label": "Java",
            "source": "HttpResponse<String> response = Unirest.get(\"https://api.verdocs.com/v2/organizations/ORGANIZATION_ID/pipeline-settings\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer ACCESS_TOKEN\")\n  .asString();"
          }
        ]
      },
      "patch": {
        "operationId": "updateOrganizationPipelineSettings",
        "summary": "Update organization pipeline settings",
        "tags": [
          "Organizations"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "organization_id",
            "description": "",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "title": "IPipelineSettings"
                }
              }
            }
          },
          "400": {
            "description": "Request Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Access Denied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "406": {
            "description": "Invalid Parameter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          }
        },
        "requestBody": {
          "description": "Body Parameters",
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [],
                "properties": {
                  "process_acroforms": {
                    "type": "boolean",
                    "description": "Auto-detect AcroForm (fillable PDF) fields when a document has no text tags."
                  },
                  "process_tags": {
                    "type": "boolean",
                    "description": "Process {{...}} text tags in uploaded documents."
                  },
                  "ignore_invalid_roles": {
                    "type": "boolean",
                    "description": "Skip (rather than reject) document tags with an empty/invalid role name."
                  },
                  "ignore_invalid_fields": {
                    "type": "boolean",
                    "description": "Skip (rather than reject) document tags that don't form a valid field."
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "bash",
            "label": "CURL",
            "source": "curl -X PATCH \"https://api.verdocs.com/v2/organizations/ORGANIZATION_ID/pipeline-settings\" \\\n    -H \"Authorization: Bearer ACCESS_TOKEN\" \\\n    -H \"content-type: application/json\" \\\n    -d '{\"param\": \"value\"}'"
          },
          {
            "lang": "typescript",
            "label": "NodeJS",
            "source": "import fetch from 'node-fetch';\n\nconst response = await fetch('https://api.verdocs.com/v2/organizations/ORGANIZATION_ID/pipeline-settings', {\n  method: 'patch',\n  body: JSON.stringify(body),\n  headers: {\n    'Content-Type': 'application/json',\n    'Authorization: Bearer ACCESS_TOKEN'\n  },\n});\n\nconst data = await response.json();\nconsole.log(data);"
          },
          {
            "lang": "ruby",
            "label": "Ruby",
            "source": "require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://api.verdocs.com/v2/organizations/ORGANIZATION_ID/pipeline-settings\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Patch.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer ACCESS_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"
          },
          {
            "lang": "python",
            "label": "Python",
            "source": "import http.client\n\nconn = http.client.HTTPSConnection(\"api.verdocs.com\")\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer ACCESS_TOKEN\"\n}\n\nconn.request(\"PATCH\", \"/v2/organizations/{organization_id}/pipeline-settings\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))\n"
          },
          {
            "lang": "csharp",
            "label": "C-Sharp",
            "source": "var client = new RestClient(\"https://api.verdocs.com/v2/organizations/ORGANIZATION_ID/pipeline-settings\");\nvar request = new RestRequest(Method.PATCH);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer ACCESS_TOKEN\");\n\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "java",
            "label": "Java",
            "source": "HttpResponse<String> response = Unirest.patch(\"https://api.verdocs.com/v2/organizations/ORGANIZATION_ID/pipeline-settings\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer ACCESS_TOKEN\")\n  .asString();"
          }
        ]
      }
    },
    "/v2/organizations/{organization_id}/usage": {
      "get": {
        "operationId": "getOrganizationUsage",
        "summary": "Get an organization's usage metrics",
        "tags": [
          "Organizations"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "organization_id",
            "description": "",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TOrganizationUsage"
                }
              }
            }
          },
          "400": {
            "description": "Request Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Access Denied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "406": {
            "description": "Invalid Parameter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "bash",
            "label": "CURL",
            "source": "curl -X GET \"https://api.verdocs.com/v2/organizations/ORGANIZATION_ID/usage\" \\\n    -H \"Authorization: Bearer ACCESS_TOKEN\" \\\n    -H \"content-type: application/json\" \\\n    -d '{\"param\": \"value\"}'"
          },
          {
            "lang": "typescript",
            "label": "NodeJS",
            "source": "import fetch from 'node-fetch';\n\nconst response = await fetch('https://api.verdocs.com/v2/organizations/ORGANIZATION_ID/usage', { \n  headers: {\n    'Content-Type': 'application/json',\n    'Authorization: Bearer ACCESS_TOKEN'\n  } \n});\nconst data = await response.json();\nconsole.log(data);"
          },
          {
            "lang": "ruby",
            "label": "Ruby",
            "source": "require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://api.verdocs.com/v2/organizations/ORGANIZATION_ID/usage\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Get.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer ACCESS_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"
          },
          {
            "lang": "python",
            "label": "Python",
            "source": "import http.client\n\nconn = http.client.HTTPSConnection(\"api.verdocs.com\")\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer ACCESS_TOKEN\"\n}\n\nconn.request(\"GET\", \"/v2/organizations/{organization_id}/usage\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))\n"
          },
          {
            "lang": "csharp",
            "label": "C-Sharp",
            "source": "var client = new RestClient(\"https://api.verdocs.com/v2/organizations/ORGANIZATION_ID/usage\");\nvar request = new RestRequest(Method.GET);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer ACCESS_TOKEN\");\n\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "java",
            "label": "Java",
            "source": "HttpResponse<String> response = Unirest.get(\"https://api.verdocs.com/v2/organizations/ORGANIZATION_ID/usage\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer ACCESS_TOKEN\")\n  .asString();"
          }
        ]
      }
    },
    "/v2/template-documents/{id}": {
      "get": {
        "operationId": "getTemplateDocument",
        "summary": "Get template document",
        "tags": [
          "Template Documents"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "id",
            "description": "The ID of the document to retrieve.",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "title": "ITemplateDocument"
                }
              }
            }
          },
          "400": {
            "description": "Request Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Access Denied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "406": {
            "description": "Invalid Parameter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "bash",
            "label": "CURL",
            "source": "curl -X GET \"https://api.verdocs.com/v2/template-documents/ID\" \\\n    -H \"Authorization: Bearer ACCESS_TOKEN\" \\\n    -H \"content-type: application/json\" \\\n    -d '{\"param\": \"value\"}'"
          },
          {
            "lang": "typescript",
            "label": "NodeJS",
            "source": "import fetch from 'node-fetch';\n\nconst response = await fetch('https://api.verdocs.com/v2/template-documents/ID', { \n  headers: {\n    'Content-Type': 'application/json',\n    'Authorization: Bearer ACCESS_TOKEN'\n  } \n});\nconst data = await response.json();\nconsole.log(data);"
          },
          {
            "lang": "ruby",
            "label": "Ruby",
            "source": "require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://api.verdocs.com/v2/template-documents/ID\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Get.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer ACCESS_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"
          },
          {
            "lang": "python",
            "label": "Python",
            "source": "import http.client\n\nconn = http.client.HTTPSConnection(\"api.verdocs.com\")\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer ACCESS_TOKEN\"\n}\n\nconn.request(\"GET\", \"/v2/template-documents/{id}\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))\n"
          },
          {
            "lang": "csharp",
            "label": "C-Sharp",
            "source": "var client = new RestClient(\"https://api.verdocs.com/v2/template-documents/ID\");\nvar request = new RestRequest(Method.GET);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer ACCESS_TOKEN\");\n\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "java",
            "label": "Java",
            "source": "HttpResponse<String> response = Unirest.get(\"https://api.verdocs.com/v2/template-documents/ID\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer ACCESS_TOKEN\")\n  .asString();"
          }
        ]
      }
    },
    "/v2/templates/{template_id}/documents/{document_id}": {
      "get": {
        "operationId": "getTemplateDocumentThumbnail",
        "summary": "Download template document thumbnail",
        "tags": [
          "Template Documents"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "template_id",
            "description": "The template ID.",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "in": "path",
            "name": "document_id",
            "description": "The document ID to retrieve.",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "in": "query",
            "name": "thumbnail",
            "description": "Return the thumbnail image bytes.",
            "required": true,
            "schema": {
              "type": "boolean",
              "default": "true"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "type": "string",
                  "format": "binary"
                }
              }
            }
          },
          "400": {
            "description": "Request Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Access Denied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "406": {
            "description": "Invalid Parameter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "bash",
            "label": "CURL",
            "source": "curl -X GET \"https://api.verdocs.com/v2/templates/TEMPLATE_ID/documents/DOCUMENT_ID?param=value\" \\\n    -H \"Authorization: Bearer ACCESS_TOKEN\" \\\n    -H \"content-type: application/json\" \\\n    -d '{\"param\": \"value\"}'"
          },
          {
            "lang": "typescript",
            "label": "NodeJS",
            "source": "import fetch from 'node-fetch';\n\nconst response = await fetch('https://api.verdocs.com/v2/templates/TEMPLATE_ID/documents/DOCUMENT_ID?param=value', { \n  headers: {\n    'Content-Type': 'application/json',\n    'Authorization: Bearer ACCESS_TOKEN'\n  } \n});\nconst data = await response.json();\nconsole.log(data);"
          },
          {
            "lang": "ruby",
            "label": "Ruby",
            "source": "require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://api.verdocs.com/v2/templates/TEMPLATE_ID/documents/DOCUMENT_ID?param=value\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Get.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer ACCESS_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"
          },
          {
            "lang": "python",
            "label": "Python",
            "source": "import http.client\n\nconn = http.client.HTTPSConnection(\"api.verdocs.com\")\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer ACCESS_TOKEN\"\n}\n\nconn.request(\"GET\", \"/v2/templates/{template_id}/documents/{document_id}\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))\n"
          },
          {
            "lang": "csharp",
            "label": "C-Sharp",
            "source": "var client = new RestClient(\"https://api.verdocs.com/v2/templates/TEMPLATE_ID/documents/DOCUMENT_ID?param=value\");\nvar request = new RestRequest(Method.GET);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer ACCESS_TOKEN\");\n\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "java",
            "label": "Java",
            "source": "HttpResponse<String> response = Unirest.get(\"https://api.verdocs.com/v2/templates/TEMPLATE_ID/documents/DOCUMENT_ID?param=value\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer ACCESS_TOKEN\")\n  .asString();"
          }
        ]
      }
    },
    "/v2/template-documents/page-image/{document_id}/{variant}/{page}": {
      "get": {
        "operationId": "getTemplateDocumentPageDisplayUri",
        "summary": "Get template document page display URI",
        "tags": [
          "Template Documents"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "document_id",
            "description": "The ID of the document to retrieve.",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "in": "path",
            "name": "variant",
            "description": "The variant of the document to retrieve.",
            "required": true,
            "schema": {
              "type": "string",
              "enum": [
                "original",
                "tagged"
              ]
            }
          },
          {
            "in": "path",
            "name": "page",
            "description": "The page number to retrieve",
            "required": true,
            "schema": {
              "type": "integer"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "400": {
            "description": "Request Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Access Denied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "406": {
            "description": "Invalid Parameter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "bash",
            "label": "CURL",
            "source": "curl -X GET \"https://api.verdocs.com/v2/template-documents/page-image/DOCUMENT_ID/VARIANT/PAGE\" \\\n    -H \"Authorization: Bearer ACCESS_TOKEN\" \\\n    -H \"content-type: application/json\" \\\n    -d '{\"param\": \"value\"}'"
          },
          {
            "lang": "typescript",
            "label": "NodeJS",
            "source": "import fetch from 'node-fetch';\n\nconst response = await fetch('https://api.verdocs.com/v2/template-documents/page-image/DOCUMENT_ID/VARIANT/PAGE', { \n  headers: {\n    'Content-Type': 'application/json',\n    'Authorization: Bearer ACCESS_TOKEN'\n  } \n});\nconst data = await response.json();\nconsole.log(data);"
          },
          {
            "lang": "ruby",
            "label": "Ruby",
            "source": "require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://api.verdocs.com/v2/template-documents/page-image/DOCUMENT_ID/VARIANT/PAGE\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Get.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer ACCESS_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"
          },
          {
            "lang": "python",
            "label": "Python",
            "source": "import http.client\n\nconn = http.client.HTTPSConnection(\"api.verdocs.com\")\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer ACCESS_TOKEN\"\n}\n\nconn.request(\"GET\", \"/v2/template-documents/page-image/{document_id}/{variant}/{page}\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))\n"
          },
          {
            "lang": "csharp",
            "label": "C-Sharp",
            "source": "var client = new RestClient(\"https://api.verdocs.com/v2/template-documents/page-image/DOCUMENT_ID/VARIANT/PAGE\");\nvar request = new RestRequest(Method.GET);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer ACCESS_TOKEN\");\n\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "java",
            "label": "Java",
            "source": "HttpResponse<String> response = Unirest.get(\"https://api.verdocs.com/v2/template-documents/page-image/DOCUMENT_ID/VARIANT/PAGE\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer ACCESS_TOKEN\")\n  .asString();"
          }
        ]
      }
    },
    "/v2/webhooks": {
      "get": {
        "operationId": "getWebhooks",
        "summary": "Get organization webhooks config",
        "tags": [
          "Webhooks"
        ],
        "parameters": [],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "title": "IWebhook"
                }
              }
            }
          },
          "400": {
            "description": "Request Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Access Denied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "406": {
            "description": "Invalid Parameter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "bash",
            "label": "CURL",
            "source": "curl -X GET \"https://api.verdocs.com/v2/webhooks\" \\\n    -H \"Authorization: Bearer ACCESS_TOKEN\" \\\n    -H \"content-type: application/json\" \\\n    -d '{\"param\": \"value\"}'"
          },
          {
            "lang": "typescript",
            "label": "NodeJS",
            "source": "import fetch from 'node-fetch';\n\nconst response = await fetch('https://api.verdocs.com/v2/webhooks', { \n  headers: {\n    'Content-Type': 'application/json',\n    'Authorization: Bearer ACCESS_TOKEN'\n  } \n});\nconst data = await response.json();\nconsole.log(data);"
          },
          {
            "lang": "ruby",
            "label": "Ruby",
            "source": "require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://api.verdocs.com/v2/webhooks\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Get.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer ACCESS_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"
          },
          {
            "lang": "python",
            "label": "Python",
            "source": "import http.client\n\nconn = http.client.HTTPSConnection(\"api.verdocs.com\")\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer ACCESS_TOKEN\"\n}\n\nconn.request(\"GET\", \"/v2/webhooks\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))\n"
          },
          {
            "lang": "csharp",
            "label": "C-Sharp",
            "source": "var client = new RestClient(\"https://api.verdocs.com/v2/webhooks\");\nvar request = new RestRequest(Method.GET);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer ACCESS_TOKEN\");\n\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "java",
            "label": "Java",
            "source": "HttpResponse<String> response = Unirest.get(\"https://api.verdocs.com/v2/webhooks\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer ACCESS_TOKEN\")\n  .asString();"
          }
        ]
      },
      "patch": {
        "operationId": "setWebhooks",
        "summary": "Update organization webhooks config",
        "tags": [
          "Webhooks"
        ],
        "parameters": [],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "title": "IWebhook"
                }
              }
            }
          },
          "400": {
            "description": "Request Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Access Denied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "406": {
            "description": "Invalid Parameter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          }
        },
        "description": "Note that Webhooks cannot currently be deleted, but may be easily disabled by setting ",
        "requestBody": {
          "description": "Body Parameters",
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "url",
                  "active",
                  "events"
                ],
                "properties": {
                  "url": {
                    "type": "string",
                    "description": "URL to send Webhook events to. An empty or invalid URL will disable Webhook calls."
                  },
                  "active": {
                    "type": "boolean",
                    "description": "Set to true to enable Webhooks calls."
                  },
                  "auth_method": {
                    "type": "string",
                    "enum": [
                      "none",
                      "hmac",
                      "client_credentials"
                    ],
                    "description": "Enable HMAC or Client Credentials authentication for Webhooks calls."
                  },
                  "token_endpoint": {
                    "type": "string",
                    "description": "Required if `auth_method` is set to `client_credentials`. Token endpoint to use for authenticating Webhooks calls."
                  },
                  "client_id": {
                    "type": "string",
                    "description": "Required if `auth_method` is set to `client_credentials`. Client ID to use for authenticating Webhooks calls."
                  },
                  "client_secret": {
                    "type": "string",
                    "description": "Required if `auth_method` is set to `client_credentials`. Client secret to use for authenticating Webhooks calls."
                  },
                  "scope": {
                    "type": "string",
                    "description": "Optional scope to include in authentication calls if `auth_method` is set to `client_credentials`."
                  },
                  "events": {
                    "type": "object",
                    "description": "Record<TWebhookEvent, boolean> map of events to enable/disable."
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "bash",
            "label": "CURL",
            "source": "curl -X PATCH \"https://api.verdocs.com/v2/webhooks\" \\\n    -H \"Authorization: Bearer ACCESS_TOKEN\" \\\n    -H \"content-type: application/json\" \\\n    -d '{\"param\": \"value\"}'"
          },
          {
            "lang": "typescript",
            "label": "NodeJS",
            "source": "import fetch from 'node-fetch';\n\nconst response = await fetch('https://api.verdocs.com/v2/webhooks', {\n  method: 'patch',\n  body: JSON.stringify(body),\n  headers: {\n    'Content-Type': 'application/json',\n    'Authorization: Bearer ACCESS_TOKEN'\n  },\n});\n\nconst data = await response.json();\nconsole.log(data);"
          },
          {
            "lang": "ruby",
            "label": "Ruby",
            "source": "require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://api.verdocs.com/v2/webhooks\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Patch.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer ACCESS_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"
          },
          {
            "lang": "python",
            "label": "Python",
            "source": "import http.client\n\nconn = http.client.HTTPSConnection(\"api.verdocs.com\")\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer ACCESS_TOKEN\"\n}\n\nconn.request(\"PATCH\", \"/v2/webhooks\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))\n"
          },
          {
            "lang": "csharp",
            "label": "C-Sharp",
            "source": "var client = new RestClient(\"https://api.verdocs.com/v2/webhooks\");\nvar request = new RestRequest(Method.PATCH);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer ACCESS_TOKEN\");\n\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "java",
            "label": "Java",
            "source": "HttpResponse<String> response = Unirest.patch(\"https://api.verdocs.com/v2/webhooks\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer ACCESS_TOKEN\")\n  .asString();"
          }
        ]
      }
    },
    "/v2/envelopes/{envelope_id}/recipients/{role_name}": {
      "patch": {
        "operationId": "updateRecipient",
        "summary": "Update Recipient",
        "tags": [
          "Recipients"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "envelope_id",
            "description": "The envelope to operate on.",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "in": "path",
            "name": "role_name",
            "description": "The role name to update.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "title": "IRecipient"
                }
              }
            }
          },
          "400": {
            "description": "Request Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Access Denied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "406": {
            "description": "Invalid Parameter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          }
        },
        "requestBody": {
          "description": "Body Parameters",
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [],
                "properties": {
                  "action": {
                    "type": "string",
                    "enum": [
                      "remind",
                      "reset"
                    ],
                    "description": "Trigger a reminder, or fully reset the recipient"
                  },
                  "first_name": {
                    "type": "string",
                    "description": "Update the recipient's first name."
                  },
                  "last_name": {
                    "type": "string",
                    "description": "Update the recipient's last name."
                  },
                  "email": {
                    "type": "string",
                    "description": "Update the recipient's email address."
                  },
                  "message": {
                    "type": "string",
                    "description": "Update the recipient's invite message."
                  },
                  "phone": {
                    "type": "string",
                    "description": "Update the recipient's phone number."
                  },
                  "passcode": {
                    "type": "string",
                    "description": "If passcode authentication is used, the recipient's address to prefill. May only be changed if the recipient has not already completed passcode-based auth."
                  },
                  "address": {
                    "type": "string",
                    "description": "If KBA-based authentication is used, the recipient's address to prefill. May only be changed if the recipient has not already completed KBA-based auth."
                  },
                  "city": {
                    "type": "string",
                    "description": "If KBA-based authentication is used, the recipient's city to prefill. May only be changed if the recipient has not already completed KBA-based auth."
                  },
                  "state": {
                    "type": "string",
                    "description": "If KBA-based authentication is used, the recipient's state to prefill. May only be changed if the recipient has not already completed KBA-based auth."
                  },
                  "zip": {
                    "type": "string",
                    "description": "If KBA-based authentication is used, the recipient's zip code to prefill. May only be changed if the recipient has not already completed KBA-based auth."
                  },
                  "dob": {
                    "type": "string",
                    "description": "If KBA-based authentication is used, the recipient's date of birth to prefill. May only be changed if the recipient has not already completed KBA-based auth."
                  },
                  "ssn_last_4": {
                    "type": "string",
                    "description": "If KBA-based authentication is used, the recipient's SSN-last-4 to prefill. May only be changed if the recipient has not already completed KBA-based auth."
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "bash",
            "label": "CURL",
            "source": "curl -X PATCH \"https://api.verdocs.com/v2/envelopes/ENVELOPE_ID/recipients/ROLE_NAME\" \\\n    -H \"Authorization: Bearer ACCESS_TOKEN\" \\\n    -H \"content-type: application/json\" \\\n    -d '{\"param\": \"value\"}'"
          },
          {
            "lang": "typescript",
            "label": "NodeJS",
            "source": "import fetch from 'node-fetch';\n\nconst response = await fetch('https://api.verdocs.com/v2/envelopes/ENVELOPE_ID/recipients/ROLE_NAME', {\n  method: 'patch',\n  body: JSON.stringify(body),\n  headers: {\n    'Content-Type': 'application/json',\n    'Authorization: Bearer ACCESS_TOKEN'\n  },\n});\n\nconst data = await response.json();\nconsole.log(data);"
          },
          {
            "lang": "ruby",
            "label": "Ruby",
            "source": "require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://api.verdocs.com/v2/envelopes/ENVELOPE_ID/recipients/ROLE_NAME\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Patch.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer ACCESS_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"
          },
          {
            "lang": "python",
            "label": "Python",
            "source": "import http.client\n\nconn = http.client.HTTPSConnection(\"api.verdocs.com\")\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer ACCESS_TOKEN\"\n}\n\nconn.request(\"PATCH\", \"/v2/envelopes/{envelope_id}/recipients/{role_name}\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))\n"
          },
          {
            "lang": "csharp",
            "label": "C-Sharp",
            "source": "var client = new RestClient(\"https://api.verdocs.com/v2/envelopes/ENVELOPE_ID/recipients/ROLE_NAME\");\nvar request = new RestRequest(Method.PATCH);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer ACCESS_TOKEN\");\n\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "java",
            "label": "Java",
            "source": "HttpResponse<String> response = Unirest.patch(\"https://api.verdocs.com/v2/envelopes/ENVELOPE_ID/recipients/ROLE_NAME\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer ACCESS_TOKEN\")\n  .asString();"
          }
        ]
      }
    },
    "/v2/organization-invitations/resend": {
      "post": {
        "operationId": "resendOrganizationInvitation",
        "summary": "Send a reminder to a pending invitee",
        "tags": [
          "Organization Invitations"
        ],
        "parameters": [],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "title": "IOrganizationInvitation"
                }
              }
            }
          },
          "400": {
            "description": "Request Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Access Denied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "406": {
            "description": "Invalid Parameter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          }
        },
        "requestBody": {
          "description": "Body Parameters",
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "email"
                ],
                "properties": {
                  "email": {
                    "type": "string",
                    "description": "The recipient to send the reminder to"
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "bash",
            "label": "CURL",
            "source": "curl -X POST \"https://api.verdocs.com/v2/organization-invitations/resend\" \\\n    -H \"Authorization: Bearer ACCESS_TOKEN\" \\\n    -H \"content-type: application/json\" \\\n    -d '{\"param\": \"value\"}'"
          },
          {
            "lang": "typescript",
            "label": "NodeJS",
            "source": "import fetch from 'node-fetch';\n\nconst response = await fetch('https://api.verdocs.com/v2/organization-invitations/resend', {\n  method: 'post',\n  body: JSON.stringify(body),\n  headers: {\n    'Content-Type': 'application/json',\n    'Authorization: Bearer ACCESS_TOKEN'\n  },\n});\n\nconst data = await response.json();\nconsole.log(data);"
          },
          {
            "lang": "ruby",
            "label": "Ruby",
            "source": "require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://api.verdocs.com/v2/organization-invitations/resend\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Post.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer ACCESS_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"
          },
          {
            "lang": "python",
            "label": "Python",
            "source": "import http.client\n\nconn = http.client.HTTPSConnection(\"api.verdocs.com\")\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer ACCESS_TOKEN\"\n}\n\nconn.request(\"POST\", \"/v2/organization-invitations/resend\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))\n"
          },
          {
            "lang": "csharp",
            "label": "C-Sharp",
            "source": "var client = new RestClient(\"https://api.verdocs.com/v2/organization-invitations/resend\");\nvar request = new RestRequest(Method.POST);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer ACCESS_TOKEN\");\n\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "java",
            "label": "Java",
            "source": "HttpResponse<String> response = Unirest.post(\"https://api.verdocs.com/v2/organization-invitations/resend\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer ACCESS_TOKEN\")\n  .asString();"
          }
        ]
      }
    },
    "/v2/users/resend-verification": {
      "post": {
        "operationId": "resendVerification",
        "summary": "Resend an email verification request for a \"partially\" authenticated user",
        "tags": [
          "Authentication"
        ],
        "parameters": [],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "400": {
            "description": "Request Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Access Denied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "406": {
            "description": "Invalid Parameter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "bash",
            "label": "CURL",
            "source": "curl -X POST \"https://api.verdocs.com/v2/users/resend-verification\" \\\n    -H \"Authorization: Bearer ACCESS_TOKEN\" \\\n    -H \"content-type: application/json\" \\\n    -d '{\"param\": \"value\"}'"
          },
          {
            "lang": "typescript",
            "label": "NodeJS",
            "source": "import fetch from 'node-fetch';\n\nconst response = await fetch('https://api.verdocs.com/v2/users/resend-verification', {\n  method: 'post',\n  body: JSON.stringify(body),\n  headers: {\n    'Content-Type': 'application/json',\n    'Authorization: Bearer ACCESS_TOKEN'\n  },\n});\n\nconst data = await response.json();\nconsole.log(data);"
          },
          {
            "lang": "ruby",
            "label": "Ruby",
            "source": "require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://api.verdocs.com/v2/users/resend-verification\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Post.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer ACCESS_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"
          },
          {
            "lang": "python",
            "label": "Python",
            "source": "import http.client\n\nconn = http.client.HTTPSConnection(\"api.verdocs.com\")\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer ACCESS_TOKEN\"\n}\n\nconn.request(\"POST\", \"/v2/users/resend-verification\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))\n"
          },
          {
            "lang": "csharp",
            "label": "C-Sharp",
            "source": "var client = new RestClient(\"https://api.verdocs.com/v2/users/resend-verification\");\nvar request = new RestRequest(Method.POST);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer ACCESS_TOKEN\");\n\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "java",
            "label": "Java",
            "source": "HttpResponse<String> response = Unirest.post(\"https://api.verdocs.com/v2/users/resend-verification\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer ACCESS_TOKEN\")\n  .asString();"
          }
        ]
      }
    },
    "/v2/users/reset-password": {
      "post": {
        "operationId": "resetPassword",
        "summary": "Reset a password for a user",
        "tags": [
          "Authentication"
        ],
        "parameters": [],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "400": {
            "description": "Request Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Access Denied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "406": {
            "description": "Invalid Parameter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          }
        },
        "requestBody": {
          "description": "Body Parameters",
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "email"
                ],
                "properties": {
                  "email": {
                    "type": "string",
                    "description": "Email address for the user account"
                  },
                  "code": {
                    "type": "string",
                    "description": "To initiate a reset request, omit this field. To complete it, provide the emailed code received by the user."
                  },
                  "new_password": {
                    "type": "string",
                    "description": "To initiate a reset request, omit this field. To complete it, provide the new password the user wishes to use."
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "bash",
            "label": "CURL",
            "source": "curl -X POST \"https://api.verdocs.com/v2/users/reset-password\" \\\n    -H \"Authorization: Bearer ACCESS_TOKEN\" \\\n    -H \"content-type: application/json\" \\\n    -d '{\"param\": \"value\"}'"
          },
          {
            "lang": "typescript",
            "label": "NodeJS",
            "source": "import fetch from 'node-fetch';\n\nconst response = await fetch('https://api.verdocs.com/v2/users/reset-password', {\n  method: 'post',\n  body: JSON.stringify(body),\n  headers: {\n    'Content-Type': 'application/json',\n    'Authorization: Bearer ACCESS_TOKEN'\n  },\n});\n\nconst data = await response.json();\nconsole.log(data);"
          },
          {
            "lang": "ruby",
            "label": "Ruby",
            "source": "require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://api.verdocs.com/v2/users/reset-password\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Post.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer ACCESS_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"
          },
          {
            "lang": "python",
            "label": "Python",
            "source": "import http.client\n\nconn = http.client.HTTPSConnection(\"api.verdocs.com\")\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer ACCESS_TOKEN\"\n}\n\nconn.request(\"POST\", \"/v2/users/reset-password\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))\n"
          },
          {
            "lang": "csharp",
            "label": "C-Sharp",
            "source": "var client = new RestClient(\"https://api.verdocs.com/v2/users/reset-password\");\nvar request = new RestRequest(Method.POST);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer ACCESS_TOKEN\");\n\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "java",
            "label": "Java",
            "source": "HttpResponse<String> response = Unirest.post(\"https://api.verdocs.com/v2/users/reset-password\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer ACCESS_TOKEN\")\n  .asString();"
          }
        ]
      }
    },
    "/v2/api-keys/{client_id}/rotate": {
      "post": {
        "operationId": "rotateApiKey",
        "summary": "Rotate API key",
        "tags": [
          "API Keys"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "client_id",
            "description": "The client ID of the key to rotate",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/IApiKey"
                }
              }
            }
          },
          "400": {
            "description": "Request Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Access Denied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "406": {
            "description": "Invalid Parameter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "bash",
            "label": "CURL",
            "source": "curl -X POST \"https://api.verdocs.com/v2/api-keys/CLIENT_ID/rotate\" \\\n    -H \"Authorization: Bearer ACCESS_TOKEN\" \\\n    -H \"content-type: application/json\" \\\n    -d '{\"param\": \"value\"}'"
          },
          {
            "lang": "typescript",
            "label": "NodeJS",
            "source": "import fetch from 'node-fetch';\n\nconst response = await fetch('https://api.verdocs.com/v2/api-keys/CLIENT_ID/rotate', {\n  method: 'post',\n  body: JSON.stringify(body),\n  headers: {\n    'Content-Type': 'application/json',\n    'Authorization: Bearer ACCESS_TOKEN'\n  },\n});\n\nconst data = await response.json();\nconsole.log(data);"
          },
          {
            "lang": "ruby",
            "label": "Ruby",
            "source": "require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://api.verdocs.com/v2/api-keys/CLIENT_ID/rotate\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Post.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer ACCESS_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"
          },
          {
            "lang": "python",
            "label": "Python",
            "source": "import http.client\n\nconn = http.client.HTTPSConnection(\"api.verdocs.com\")\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer ACCESS_TOKEN\"\n}\n\nconn.request(\"POST\", \"/v2/api-keys/{client_id}/rotate\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))\n"
          },
          {
            "lang": "csharp",
            "label": "C-Sharp",
            "source": "var client = new RestClient(\"https://api.verdocs.com/v2/api-keys/CLIENT_ID/rotate\");\nvar request = new RestRequest(Method.POST);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer ACCESS_TOKEN\");\n\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "java",
            "label": "Java",
            "source": "HttpResponse<String> response = Unirest.post(\"https://api.verdocs.com/v2/api-keys/CLIENT_ID/rotate\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer ACCESS_TOKEN\")\n  .asString();"
          }
        ]
      }
    },
    "/v2/webhooks/rotate-secret": {
      "put": {
        "operationId": "rotateWebhookSecret",
        "summary": "Rotate Webhook secret key",
        "tags": [
          "Webhooks"
        ],
        "parameters": [],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "title": "IWebhook"
                }
              }
            }
          },
          "400": {
            "description": "Request Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Access Denied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "406": {
            "description": "Invalid Parameter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          }
        },
        "description": "Rotates (or first creates) the secret used to sign webhook deliveries. The response includes the new, unmasked ",
        "x-codeSamples": [
          {
            "lang": "bash",
            "label": "CURL",
            "source": "curl -X PUT \"https://api.verdocs.com/v2/webhooks/rotate-secret\" \\\n    -H \"Authorization: Bearer ACCESS_TOKEN\" \\\n    -H \"content-type: application/json\" \\\n    -d '{\"param\": \"value\"}'"
          },
          {
            "lang": "typescript",
            "label": "NodeJS",
            "source": "import fetch from 'node-fetch';\n\nconst response = await fetch('https://api.verdocs.com/v2/webhooks/rotate-secret', {\n  method: 'put',\n  body: JSON.stringify(body),\n  headers: {\n    'Content-Type': 'application/json',\n    'Authorization: Bearer ACCESS_TOKEN'\n  },\n});\n\nconst data = await response.json();\nconsole.log(data);"
          },
          {
            "lang": "ruby",
            "label": "Ruby",
            "source": "require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://api.verdocs.com/v2/webhooks/rotate-secret\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Put.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer ACCESS_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"
          },
          {
            "lang": "python",
            "label": "Python",
            "source": "import http.client\n\nconn = http.client.HTTPSConnection(\"api.verdocs.com\")\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer ACCESS_TOKEN\"\n}\n\nconn.request(\"PUT\", \"/v2/webhooks/rotate-secret\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))\n"
          },
          {
            "lang": "csharp",
            "label": "C-Sharp",
            "source": "var client = new RestClient(\"https://api.verdocs.com/v2/webhooks/rotate-secret\");\nvar request = new RestRequest(Method.PUT);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer ACCESS_TOKEN\");\n\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "java",
            "label": "Java",
            "source": "HttpResponse<String> response = Unirest.put(\"https://api.verdocs.com/v2/webhooks/rotate-secret\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer ACCESS_TOKEN\")\n  .asString();"
          }
        ]
      }
    },
    "/v2/sign/unauth/{envelope_id}/{role_name}/{key}": {
      "post": {
        "operationId": "startSigningSession",
        "summary": "Start Signing Session",
        "tags": [
          "Recipients"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "envelope_id",
            "description": "The envelope to operate on.",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "in": "path",
            "name": "role_name",
            "description": "The role to request.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "path",
            "name": "key",
            "description": "Access key generated by the envelope creator or email/SMS invite.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "title": "ISignerTokenResponse"
                }
              }
            }
          },
          "400": {
            "description": "Request Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Access Denied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "406": {
            "description": "Invalid Parameter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "bash",
            "label": "CURL",
            "source": "curl -X POST \"https://api.verdocs.com/v2/sign/unauth/ENVELOPE_ID/ROLE_NAME/KEY\" \\\n    -H \"Authorization: Bearer ACCESS_TOKEN\" \\\n    -H \"content-type: application/json\" \\\n    -d '{\"param\": \"value\"}'"
          },
          {
            "lang": "typescript",
            "label": "NodeJS",
            "source": "import fetch from 'node-fetch';\n\nconst response = await fetch('https://api.verdocs.com/v2/sign/unauth/ENVELOPE_ID/ROLE_NAME/KEY', {\n  method: 'post',\n  body: JSON.stringify(body),\n  headers: {\n    'Content-Type': 'application/json',\n    'Authorization: Bearer ACCESS_TOKEN'\n  },\n});\n\nconst data = await response.json();\nconsole.log(data);"
          },
          {
            "lang": "ruby",
            "label": "Ruby",
            "source": "require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://api.verdocs.com/v2/sign/unauth/ENVELOPE_ID/ROLE_NAME/KEY\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Post.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer ACCESS_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"
          },
          {
            "lang": "python",
            "label": "Python",
            "source": "import http.client\n\nconn = http.client.HTTPSConnection(\"api.verdocs.com\")\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer ACCESS_TOKEN\"\n}\n\nconn.request(\"POST\", \"/v2/sign/unauth/{envelope_id}/{role_name}/{key}\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))\n"
          },
          {
            "lang": "csharp",
            "label": "C-Sharp",
            "source": "var client = new RestClient(\"https://api.verdocs.com/v2/sign/unauth/ENVELOPE_ID/ROLE_NAME/KEY\");\nvar request = new RestRequest(Method.POST);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer ACCESS_TOKEN\");\n\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "java",
            "label": "Java",
            "source": "HttpResponse<String> response = Unirest.post(\"https://api.verdocs.com/v2/sign/unauth/ENVELOPE_ID/ROLE_NAME/KEY\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer ACCESS_TOKEN\")\n  .asString();"
          }
        ]
      }
    },
    "/v2/kba/response": {
      "post": {
        "operationId": "submitKbaChallengeResponse",
        "summary": "Submit KBA challenge responses",
        "tags": [
          "KBA"
        ],
        "parameters": [],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TRecipientKbaStep"
                }
              }
            }
          },
          "400": {
            "description": "Request Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Access Denied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "406": {
            "description": "Invalid Parameter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          }
        },
        "requestBody": {
          "description": "Body Parameters",
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "envelope_id",
                  "role_name",
                  "responses"
                ],
                "properties": {
                  "envelope_id": {
                    "type": "string",
                    "format": "uuid",
                    "description": "The envelope to operate on."
                  },
                  "role_name": {
                    "type": "string",
                    "description": "The recipient role name."
                  },
                  "responses": {
                    "type": "array",
                    "items": {
                      "title": "IKbaChallengeResponse"
                    },
                    "description": "Answers in the same order as the challenge questions"
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "bash",
            "label": "CURL",
            "source": "curl -X POST \"https://api.verdocs.com/v2/kba/response\" \\\n    -H \"Authorization: Bearer ACCESS_TOKEN\" \\\n    -H \"content-type: application/json\" \\\n    -d '{\"param\": \"value\"}'"
          },
          {
            "lang": "typescript",
            "label": "NodeJS",
            "source": "import fetch from 'node-fetch';\n\nconst response = await fetch('https://api.verdocs.com/v2/kba/response', {\n  method: 'post',\n  body: JSON.stringify(body),\n  headers: {\n    'Content-Type': 'application/json',\n    'Authorization: Bearer ACCESS_TOKEN'\n  },\n});\n\nconst data = await response.json();\nconsole.log(data);"
          },
          {
            "lang": "ruby",
            "label": "Ruby",
            "source": "require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://api.verdocs.com/v2/kba/response\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Post.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer ACCESS_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"
          },
          {
            "lang": "python",
            "label": "Python",
            "source": "import http.client\n\nconn = http.client.HTTPSConnection(\"api.verdocs.com\")\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer ACCESS_TOKEN\"\n}\n\nconn.request(\"POST\", \"/v2/kba/response\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))\n"
          },
          {
            "lang": "csharp",
            "label": "C-Sharp",
            "source": "var client = new RestClient(\"https://api.verdocs.com/v2/kba/response\");\nvar request = new RestRequest(Method.POST);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer ACCESS_TOKEN\");\n\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "java",
            "label": "Java",
            "source": "HttpResponse<String> response = Unirest.post(\"https://api.verdocs.com/v2/kba/response\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer ACCESS_TOKEN\")\n  .asString();"
          }
        ]
      }
    },
    "/v2/kba/identity": {
      "post": {
        "operationId": "submitKbaIdentity",
        "summary": "Submit KBA identity",
        "tags": [
          "KBA"
        ],
        "parameters": [],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TRecipientKbaStep"
                }
              }
            }
          },
          "400": {
            "description": "Request Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Access Denied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "406": {
            "description": "Invalid Parameter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          }
        },
        "requestBody": {
          "description": "Body Parameters",
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "envelope_id",
                  "role_name",
                  "identity"
                ],
                "properties": {
                  "envelope_id": {
                    "type": "string",
                    "format": "uuid",
                    "description": "The envelope to operate on."
                  },
                  "role_name": {
                    "type": "string",
                    "description": "The recipient role name."
                  },
                  "identity": {
                    "type": "object",
                    "description": "Recipient identity details used for verification"
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "bash",
            "label": "CURL",
            "source": "curl -X POST \"https://api.verdocs.com/v2/kba/identity\" \\\n    -H \"Authorization: Bearer ACCESS_TOKEN\" \\\n    -H \"content-type: application/json\" \\\n    -d '{\"param\": \"value\"}'"
          },
          {
            "lang": "typescript",
            "label": "NodeJS",
            "source": "import fetch from 'node-fetch';\n\nconst response = await fetch('https://api.verdocs.com/v2/kba/identity', {\n  method: 'post',\n  body: JSON.stringify(body),\n  headers: {\n    'Content-Type': 'application/json',\n    'Authorization: Bearer ACCESS_TOKEN'\n  },\n});\n\nconst data = await response.json();\nconsole.log(data);"
          },
          {
            "lang": "ruby",
            "label": "Ruby",
            "source": "require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://api.verdocs.com/v2/kba/identity\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Post.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer ACCESS_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"
          },
          {
            "lang": "python",
            "label": "Python",
            "source": "import http.client\n\nconn = http.client.HTTPSConnection(\"api.verdocs.com\")\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer ACCESS_TOKEN\"\n}\n\nconn.request(\"POST\", \"/v2/kba/identity\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))\n"
          },
          {
            "lang": "csharp",
            "label": "C-Sharp",
            "source": "var client = new RestClient(\"https://api.verdocs.com/v2/kba/identity\");\nvar request = new RestRequest(Method.POST);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer ACCESS_TOKEN\");\n\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "java",
            "label": "Java",
            "source": "HttpResponse<String> response = Unirest.post(\"https://api.verdocs.com/v2/kba/identity\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer ACCESS_TOKEN\")\n  .asString();"
          }
        ]
      }
    },
    "/v2/kba/pin": {
      "post": {
        "operationId": "submitKbaPin",
        "summary": "Submit KBA PIN",
        "tags": [
          "KBA"
        ],
        "parameters": [],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TRecipientKbaStep"
                }
              }
            }
          },
          "400": {
            "description": "Request Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Access Denied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "406": {
            "description": "Invalid Parameter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          }
        },
        "requestBody": {
          "description": "Body Parameters",
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "envelope_id",
                  "role_name",
                  "pin"
                ],
                "properties": {
                  "envelope_id": {
                    "type": "string",
                    "format": "uuid",
                    "description": "The envelope to operate on."
                  },
                  "role_name": {
                    "type": "string",
                    "description": "The recipient role name."
                  },
                  "pin": {
                    "type": "string",
                    "description": "PIN entered by the recipient"
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "bash",
            "label": "CURL",
            "source": "curl -X POST \"https://api.verdocs.com/v2/kba/pin\" \\\n    -H \"Authorization: Bearer ACCESS_TOKEN\" \\\n    -H \"content-type: application/json\" \\\n    -d '{\"param\": \"value\"}'"
          },
          {
            "lang": "typescript",
            "label": "NodeJS",
            "source": "import fetch from 'node-fetch';\n\nconst response = await fetch('https://api.verdocs.com/v2/kba/pin', {\n  method: 'post',\n  body: JSON.stringify(body),\n  headers: {\n    'Content-Type': 'application/json',\n    'Authorization: Bearer ACCESS_TOKEN'\n  },\n});\n\nconst data = await response.json();\nconsole.log(data);"
          },
          {
            "lang": "ruby",
            "label": "Ruby",
            "source": "require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://api.verdocs.com/v2/kba/pin\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Post.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer ACCESS_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"
          },
          {
            "lang": "python",
            "label": "Python",
            "source": "import http.client\n\nconn = http.client.HTTPSConnection(\"api.verdocs.com\")\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer ACCESS_TOKEN\"\n}\n\nconn.request(\"POST\", \"/v2/kba/pin\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))\n"
          },
          {
            "lang": "csharp",
            "label": "C-Sharp",
            "source": "var client = new RestClient(\"https://api.verdocs.com/v2/kba/pin\");\nvar request = new RestRequest(Method.POST);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer ACCESS_TOKEN\");\n\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "java",
            "label": "Java",
            "source": "HttpResponse<String> response = Unirest.post(\"https://api.verdocs.com/v2/kba/pin\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer ACCESS_TOKEN\")\n  .asString();"
          }
        ]
      }
    },
    "/v2/profiles/{profile_id}/switch": {
      "post": {
        "operationId": "switchProfile",
        "summary": "Change the \"current\" profile for the caller",
        "tags": [
          "Profiles"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "profile_id",
            "description": "",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "title": "IAuthenticateResponse"
                }
              }
            }
          },
          "400": {
            "description": "Request Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Access Denied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "406": {
            "description": "Invalid Parameter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "bash",
            "label": "CURL",
            "source": "curl -X POST \"https://api.verdocs.com/v2/profiles/PROFILE_ID/switch\" \\\n    -H \"Authorization: Bearer ACCESS_TOKEN\" \\\n    -H \"content-type: application/json\" \\\n    -d '{\"param\": \"value\"}'"
          },
          {
            "lang": "typescript",
            "label": "NodeJS",
            "source": "import fetch from 'node-fetch';\n\nconst response = await fetch('https://api.verdocs.com/v2/profiles/PROFILE_ID/switch', {\n  method: 'post',\n  body: JSON.stringify(body),\n  headers: {\n    'Content-Type': 'application/json',\n    'Authorization: Bearer ACCESS_TOKEN'\n  },\n});\n\nconst data = await response.json();\nconsole.log(data);"
          },
          {
            "lang": "ruby",
            "label": "Ruby",
            "source": "require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://api.verdocs.com/v2/profiles/PROFILE_ID/switch\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Post.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer ACCESS_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"
          },
          {
            "lang": "python",
            "label": "Python",
            "source": "import http.client\n\nconn = http.client.HTTPSConnection(\"api.verdocs.com\")\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer ACCESS_TOKEN\"\n}\n\nconn.request(\"POST\", \"/v2/profiles/{profile_id}/switch\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))\n"
          },
          {
            "lang": "csharp",
            "label": "C-Sharp",
            "source": "var client = new RestClient(\"https://api.verdocs.com/v2/profiles/PROFILE_ID/switch\");\nvar request = new RestRequest(Method.POST);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer ACCESS_TOKEN\");\n\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "java",
            "label": "Java",
            "source": "HttpResponse<String> response = Unirest.post(\"https://api.verdocs.com/v2/profiles/PROFILE_ID/switch\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer ACCESS_TOKEN\")\n  .asString();"
          }
        ]
      }
    },
    "/v2/templates/{template_id}/stars/toggle": {
      "post": {
        "operationId": "toggleTemplateStar",
        "summary": "Toggle template star",
        "tags": [
          "Templates"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "template_id",
            "description": "",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "title": "ITemplate"
                }
              }
            }
          },
          "400": {
            "description": "Request Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Access Denied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "406": {
            "description": "Invalid Parameter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "bash",
            "label": "CURL",
            "source": "curl -X POST \"https://api.verdocs.com/v2/templates/TEMPLATE_ID/stars/toggle\" \\\n    -H \"Authorization: Bearer ACCESS_TOKEN\" \\\n    -H \"content-type: application/json\" \\\n    -d '{\"param\": \"value\"}'"
          },
          {
            "lang": "typescript",
            "label": "NodeJS",
            "source": "import fetch from 'node-fetch';\n\nconst response = await fetch('https://api.verdocs.com/v2/templates/TEMPLATE_ID/stars/toggle', {\n  method: 'post',\n  body: JSON.stringify(body),\n  headers: {\n    'Content-Type': 'application/json',\n    'Authorization: Bearer ACCESS_TOKEN'\n  },\n});\n\nconst data = await response.json();\nconsole.log(data);"
          },
          {
            "lang": "ruby",
            "label": "Ruby",
            "source": "require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://api.verdocs.com/v2/templates/TEMPLATE_ID/stars/toggle\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Post.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer ACCESS_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"
          },
          {
            "lang": "python",
            "label": "Python",
            "source": "import http.client\n\nconn = http.client.HTTPSConnection(\"api.verdocs.com\")\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer ACCESS_TOKEN\"\n}\n\nconn.request(\"POST\", \"/v2/templates/{template_id}/stars/toggle\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))\n"
          },
          {
            "lang": "csharp",
            "label": "C-Sharp",
            "source": "var client = new RestClient(\"https://api.verdocs.com/v2/templates/TEMPLATE_ID/stars/toggle\");\nvar request = new RestRequest(Method.POST);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer ACCESS_TOKEN\");\n\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "java",
            "label": "Java",
            "source": "HttpResponse<String> response = Unirest.post(\"https://api.verdocs.com/v2/templates/TEMPLATE_ID/stars/toggle\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer ACCESS_TOKEN\")\n  .asString();"
          }
        ]
      }
    },
    "/v2/organizations/{organizationid}/brands/{brandid}/email-domain/verify": {
      "post": {
        "operationId": "verifyBrandEmailDomain",
        "summary": "Verify email domain",
        "tags": [
          "Brands"
        ],
        "parameters": [
          {
            "in": "path",
            "name": "organizationid",
            "description": "",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "path",
            "name": "brandid",
            "description": "",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "title": "IBrand"
                }
              }
            }
          },
          "400": {
            "description": "Request Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Access Denied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "406": {
            "description": "Invalid Parameter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "bash",
            "label": "CURL",
            "source": "curl -X POST \"https://api.verdocs.com/v2/organizations/ORGANIZATIONID/brands/BRANDID/email-domain/verify\" \\\n    -H \"Authorization: Bearer ACCESS_TOKEN\" \\\n    -H \"content-type: application/json\" \\\n    -d '{\"param\": \"value\"}'"
          },
          {
            "lang": "typescript",
            "label": "NodeJS",
            "source": "import fetch from 'node-fetch';\n\nconst response = await fetch('https://api.verdocs.com/v2/organizations/ORGANIZATIONID/brands/BRANDID/email-domain/verify', {\n  method: 'post',\n  body: JSON.stringify(body),\n  headers: {\n    'Content-Type': 'application/json',\n    'Authorization: Bearer ACCESS_TOKEN'\n  },\n});\n\nconst data = await response.json();\nconsole.log(data);"
          },
          {
            "lang": "ruby",
            "label": "Ruby",
            "source": "require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://api.verdocs.com/v2/organizations/ORGANIZATIONID/brands/BRANDID/email-domain/verify\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Post.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer ACCESS_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"
          },
          {
            "lang": "python",
            "label": "Python",
            "source": "import http.client\n\nconn = http.client.HTTPSConnection(\"api.verdocs.com\")\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer ACCESS_TOKEN\"\n}\n\nconn.request(\"POST\", \"/v2/organizations/{organizationid}/brands/{brandid}/email-domain/verify\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))\n"
          },
          {
            "lang": "csharp",
            "label": "C-Sharp",
            "source": "var client = new RestClient(\"https://api.verdocs.com/v2/organizations/ORGANIZATIONID/brands/BRANDID/email-domain/verify\");\nvar request = new RestRequest(Method.POST);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer ACCESS_TOKEN\");\n\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "java",
            "label": "Java",
            "source": "HttpResponse<String> response = Unirest.post(\"https://api.verdocs.com/v2/organizations/ORGANIZATIONID/brands/BRANDID/email-domain/verify\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer ACCESS_TOKEN\")\n  .asString();"
          }
        ]
      }
    },
    "/v2/users/verify": {
      "post": {
        "operationId": "verifyEmail",
        "summary": "Resend the email verification request by email and token are known",
        "tags": [
          "Authentication"
        ],
        "parameters": [],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "title": "IAuthenticateResponse"
                }
              }
            }
          },
          "400": {
            "description": "Request Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Access Denied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "406": {
            "description": "Invalid Parameter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "bash",
            "label": "CURL",
            "source": "curl -X POST \"https://api.verdocs.com/v2/users/verify\" \\\n    -H \"Authorization: Bearer ACCESS_TOKEN\" \\\n    -H \"content-type: application/json\" \\\n    -d '{\"param\": \"value\"}'"
          },
          {
            "lang": "typescript",
            "label": "NodeJS",
            "source": "import fetch from 'node-fetch';\n\nconst response = await fetch('https://api.verdocs.com/v2/users/verify', {\n  method: 'post',\n  body: JSON.stringify(body),\n  headers: {\n    'Content-Type': 'application/json',\n    'Authorization: Bearer ACCESS_TOKEN'\n  },\n});\n\nconst data = await response.json();\nconsole.log(data);"
          },
          {
            "lang": "ruby",
            "label": "Ruby",
            "source": "require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://api.verdocs.com/v2/users/verify\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Post.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer ACCESS_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"
          },
          {
            "lang": "python",
            "label": "Python",
            "source": "import http.client\n\nconn = http.client.HTTPSConnection(\"api.verdocs.com\")\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer ACCESS_TOKEN\"\n}\n\nconn.request(\"POST\", \"/v2/users/verify\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))\n"
          },
          {
            "lang": "csharp",
            "label": "C-Sharp",
            "source": "var client = new RestClient(\"https://api.verdocs.com/v2/users/verify\");\nvar request = new RestRequest(Method.POST);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer ACCESS_TOKEN\");\n\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "java",
            "label": "Java",
            "source": "HttpResponse<String> response = Unirest.post(\"https://api.verdocs.com/v2/users/verify\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer ACCESS_TOKEN\")\n  .asString();"
          }
        ]
      }
    },
    "/v2/sign/verify": {
      "post": {
        "operationId": "verifySigner",
        "summary": "Verify recipient/signer",
        "tags": [
          "Recipients"
        ],
        "parameters": [],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "title": "ISignerTokenResponse"
                }
              }
            }
          },
          "400": {
            "description": "Request Error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Access Denied",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          },
          "406": {
            "description": "Invalid Parameter",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "error"
                  ],
                  "properties": {
                    "status": {
                      "type": "string",
                      "enum": [
                        "ERROR"
                      ],
                      "description": "Always set to \"ERROR\"."
                    },
                    "error": {
                      "type": "string",
                      "description": "Description of the error that occurred."
                    }
                  }
                }
              }
            }
          }
        },
        "requestBody": {
          "description": "Body Parameters",
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "auth_method"
                ],
                "properties": {
                  "auth_method": {
                    "type": "string",
                    "enum": [
                      "passcode",
                      "email",
                      "sms",
                      "kba",
                      "id"
                    ],
                    "description": "The authentication method being completed"
                  },
                  "code": {
                    "type": "string",
                    "description": "The passcode or OTP entered. Required for passcode, email, and SMS methods."
                  },
                  "resend": {
                    "type": "boolean",
                    "description": "For SMS or email methods, set to send a new code."
                  },
                  "first_name": {
                    "type": "string",
                    "description": "For KBA, the recipient's first name"
                  },
                  "last_name": {
                    "type": "string",
                    "description": "For KBA, the recipient's last name"
                  },
                  "address": {
                    "type": "string",
                    "description": "For KBA, the recipient's address"
                  },
                  "city": {
                    "type": "string",
                    "description": "For KBA, the recipient's city"
                  },
                  "state": {
                    "type": "string",
                    "description": "For KBA, the recipient's state"
                  },
                  "zip": {
                    "type": "string",
                    "description": "For KBA, the recipient's zip code"
                  },
                  "ssn_last_4": {
                    "type": "string",
                    "description": "For KBA, the last 4 digits of the recipient's SSN"
                  },
                  "dob": {
                    "type": "string",
                    "description": "For KBA, the recipient's date of birth"
                  },
                  "responses": {
                    "type": "array",
                    "items": {
                      "title": "IKBAResponse"
                    },
                    "description": "For KBA, responses to any challenge questions presented"
                  }
                }
              }
            }
          }
        },
        "x-codeSamples": [
          {
            "lang": "bash",
            "label": "CURL",
            "source": "curl -X POST \"https://api.verdocs.com/v2/sign/verify\" \\\n    -H \"Authorization: Bearer ACCESS_TOKEN\" \\\n    -H \"content-type: application/json\" \\\n    -d '{\"param\": \"value\"}'"
          },
          {
            "lang": "typescript",
            "label": "NodeJS",
            "source": "import fetch from 'node-fetch';\n\nconst response = await fetch('https://api.verdocs.com/v2/sign/verify', {\n  method: 'post',\n  body: JSON.stringify(body),\n  headers: {\n    'Content-Type': 'application/json',\n    'Authorization: Bearer ACCESS_TOKEN'\n  },\n});\n\nconst data = await response.json();\nconsole.log(data);"
          },
          {
            "lang": "ruby",
            "label": "Ruby",
            "source": "require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://api.verdocs.com/v2/sign/verify\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\n\nrequest = Net::HTTP::Post.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer ACCESS_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"
          },
          {
            "lang": "python",
            "label": "Python",
            "source": "import http.client\n\nconn = http.client.HTTPSConnection(\"api.verdocs.com\")\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer ACCESS_TOKEN\"\n}\n\nconn.request(\"POST\", \"/v2/sign/verify\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))\n"
          },
          {
            "lang": "csharp",
            "label": "C-Sharp",
            "source": "var client = new RestClient(\"https://api.verdocs.com/v2/sign/verify\");\nvar request = new RestRequest(Method.POST);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer ACCESS_TOKEN\");\n\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "java",
            "label": "Java",
            "source": "HttpResponse<String> response = Unirest.post(\"https://api.verdocs.com/v2/sign/verify\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer ACCESS_TOKEN\")\n  .asString();"
          }
        ]
      }
    }
  },
  "components": {
    "securitySchemes": {
      "BearerAuth": {
        "type": "http",
        "scheme": "bearer",
        "description": "Bearer Token"
      },
      "OAuth2": {
        "type": "oauth2",
        "flows": {
          "authorizationCode": {
            "authorizationUrl": "https://api.verdocs.com/v2/oauth2/token",
            "tokenUrl": "https://api.verdocs.com/v2/oauth2/token",
            "scopes": {
              "read": "Grants read access",
              "write": "Grants write access",
              "admin": "Grants admin access"
            }
          }
        }
      }
    },
    "schemas": {
      "Error": {
        "description": "An error occurred. Refer to the response error message for details.",
        "type": "object",
        "required_properties": [
          "status",
          "error"
        ],
        "properties": {
          "status": {
            "type": "string",
            "enum": [
              "ERROR"
            ],
            "description": "Always set to \"ERROR\"."
          },
          "error": {
            "type": "string",
            "description": "Description of the error that occurred."
          }
        }
      },
      "IAcceptOrganizationInvitationRequest": {
        "type": "object",
        "description": "",
        "required": [],
        "properties": {}
      },
      "IAddBrandEmailDomainRequest": {
        "type": "object",
        "description": "",
        "required": [],
        "properties": {}
      },
      "IApiKey": {
        "type": "object",
        "description": "",
        "required": [
          "client_id",
          "created_at",
          "global_admin",
          "last_used_at",
          "name",
          "organization_id",
          "profile_id"
        ],
        "properties": {
          "client_id": {
            "type": "string",
            "description": "Only returned when a key is created or rotated."
          },
          "client_secret": {
            "type": "string",
            "description": "Only returned when a key is created or rotated."
          },
          "created_at": {
            "type": "string",
            "description": "Creation date/time."
          },
          "global_admin": {
            "type": "boolean",
            "description": "If set, the key has full access to the organization, overriding the permissions of its assigned profile."
          },
          "last_used_at": {
            "type": "string",
            "description": "Last date/time the key was used."
          },
          "name": {
            "type": "string",
            "description": "User-provided name for the key. Only used for identification."
          },
          "organization_id": {
            "type": "string",
            "description": "Organization the key is connected to."
          },
          "profile_id": {
            "type": "string",
            "description": "The profile calls made with this key will act as. Ignored if global_admin is set."
          }
        }
      },
      "IAuthenticateRecipientViaEmailRequest": {
        "type": "object",
        "description": "",
        "required": [],
        "properties": {}
      },
      "IAuthenticateRecipientViaKBARequest": {
        "type": "object",
        "description": "",
        "required": [],
        "properties": {}
      },
      "IAuthenticateRecipientViaPasscodeRequest": {
        "type": "object",
        "description": "",
        "required": [],
        "properties": {}
      },
      "IAuthenticateRecipientViaSMSRequest": {
        "type": "object",
        "description": "",
        "required": [],
        "properties": {}
      },
      "IAuthenticateResponse": {
        "type": "object",
        "description": "",
        "required": [],
        "properties": {}
      },
      "IAuthorizationCodeRequest": {
        "type": "object",
        "description": "",
        "required": [],
        "properties": {}
      },
      "IBrand": {
        "type": "object",
        "description": "",
        "required": [],
        "properties": {
          "locale": {
            "type": "string",
            "description": "The long-form timezone."
          },
          "timezone": {
            "type": "string",
            "description": "The locale code"
          }
        }
      },
      "IChangePasswordRequest": {
        "type": "object",
        "description": "",
        "required": [],
        "properties": {}
      },
      "IChangePasswordResponse": {
        "type": "object",
        "description": "",
        "required": [],
        "properties": {}
      },
      "IChannel": {
        "type": "object",
        "description": "",
        "required": [],
        "properties": {}
      },
      "IClientCredentialsRequest": {
        "type": "object",
        "description": "",
        "required": [],
        "properties": {}
      },
      "ICountry": {
        "type": "object",
        "description": "",
        "required": [],
        "properties": {}
      },
      "ICreateApiKeyRequest": {
        "type": "object",
        "description": "",
        "required": [],
        "properties": {}
      },
      "ICreateBrandRequest": {
        "type": "object",
        "description": "",
        "required": [],
        "properties": {}
      },
      "ICreateEnvelopeDirectlyRequest": {
        "type": "object",
        "description": "",
        "required": [
          "documents",
          "fields",
          "followup_reminders",
          "initial_reminder",
          "name",
          "recipients"
        ],
        "properties": {
          "data": {
            "type": "string",
            "description": "Optional metadata to attach to the envelope. This is not used by Verdocs, but may be used for internal tracking purposes by the caller. This is not shown to recipients, but is not private and should not be used to store sensitive data."
          },
          "description": {
            "type": "string",
            "description": "The description of the envelope to create."
          },
          "documents": {
            "type": "string",
            "description": "Documents to attach to the envelope."
          },
          "environment": {
            "type": "string",
            "description": "Environment in which to execute the envelope. Do not set this unless instructed to do so by Verdocs support."
          },
          "expires_at": {
            "type": "string",
            "description": "If set, the envelope will automatically expire at the specified date/time (ISO8601, UTC)"
          },
          "fields": {
            "type": "string",
            "description": "Fields to create in the envelope. Note that document_id is a number in this call and should match the index of the document in the documents array."
          },
          "followup_reminders": {
            "type": "integer",
            "description": "Delay (in seconds) before subsequent remidners are sent (min: 12hrs). Set to 0 or null to disable."
          },
          "initial_reminder": {
            "type": "integer",
            "description": "Delay (in seconds) before the first reminder is sent (min: 4hrs). Set to 0 or null to disable."
          },
          "locale": {
            "type": "string",
            "description": "The long-form timezone."
          },
          "max_reminder_days": {
            "type": "integer",
            "description": "Maximum number of days (after envelope creation) for which reminders will be sent. Defaults to 14."
          },
          "name": {
            "type": "string",
            "description": "The name of the envelope to create."
          },
          "no_contact": {
            "type": "boolean",
            "description": "If set, Verdocs will not attempt to contact the recipient via email or SMS."
          },
          "recipients": {
            "type": "string",
            "description": "List of recipients to configure."
          },
          "sender_email": {
            "type": "string",
            "description": "Override the sender email of the envelope in email and other notifications. NOTE: This will change areas that reflect the sender's email in the Web UI and certificate. It cannot change the email address used for notifications."
          },
          "sender_name": {
            "type": "string",
            "description": "Override the sender name of the envelope in email and other notifications. NOTE: To prevent spam filters from blocking messages, only the NAME may be overidden. The \"from\" email address will be notifications@verdocs.com and cannot be changed."
          },
          "timezone": {
            "type": "string",
            "description": "The locale code"
          },
          "visibility": {
            "type": "string",
            "description": "Visibility of the envelope. If set to 'shared', the envelope will be visible to all users in the organization. If set to 'private', only the creator and recipients will see it."
          }
        }
      },
      "ICreateEnvelopeDocumentFromData": {
        "type": "object",
        "description": "",
        "required": [
          "data"
        ],
        "properties": {
          "data": {
            "type": "string",
            "description": "Base-64 encoded content of the document."
          },
          "mime": {
            "type": "string",
            "description": "Override the detected MIME type for the document."
          },
          "name": {
            "type": "string",
            "description": "The name of the document. Will be used to generate the final filename."
          },
          "order": {
            "type": "integer",
            "description": "The order in which the document should be displayed."
          }
        }
      },
      "ICreateEnvelopeDocumentFromFile": {
        "type": "object",
        "description": "",
        "required": [],
        "properties": {
          "file": {
            "type": "string",
            "description": "Directly attach a file via form-url-encoded POST attachment."
          },
          "mime": {
            "type": "string",
            "description": "Override the detected MIME type for the document."
          },
          "name": {
            "type": "string",
            "description": "The name of the document. Will be used to generate the final filename."
          },
          "order": {
            "type": "integer",
            "description": "The order in which the document should be displayed."
          }
        }
      },
      "ICreateEnvelopeDocumentFromUri": {
        "type": "object",
        "description": "",
        "required": [
          "uri"
        ],
        "properties": {
          "mime": {
            "type": "string",
            "description": "Override the detected MIME type for the document."
          },
          "name": {
            "type": "string",
            "description": "The name of the document. Will be used to generate the final filename."
          },
          "order": {
            "type": "integer",
            "description": "The order in which the document should be displayed."
          },
          "uri": {
            "type": "string",
            "description": "URI from which Verdocs should download a copy of the document. Pre-signed URLs with short (<60s) expirations are strongly recommended."
          }
        }
      },
      "ICreateEnvelopeFieldDirectly": {
        "type": "object",
        "description": "",
        "required": [
          "document_id",
          "name",
          "page",
          "role_name",
          "type",
          "x",
          "y"
        ],
        "properties": {
          "default": {
            "type": "string",
            "description": "The default value for the field."
          },
          "document_id": {
            "type": "integer",
            "description": "The array index of the document the field is for."
          },
          "group": {
            "type": "string",
            "description": "For fields that support grouping (radio buttons and check boxes) the value selected will be stored under this name."
          },
          "height": {
            "type": "integer",
            "description": "The height of the field."
          },
          "label": {
            "type": "string",
            "description": "If set, the placeholder/label for the field."
          },
          "multiline": {
            "type": "boolean",
            "description": "For text boxes, allows more than one line of text to be entered."
          },
          "name": {
            "type": "string",
            "description": "The machine name of the field, e.g. "
          },
          "options": {
            "type": "string",
            "description": "For dropdowns, the options that are selectable."
          },
          "page": {
            "type": "integer",
            "description": "The 1-based page number the field is displayed on. \"Self-placed\" fields that the user must apply will be on page 0."
          },
          "placeholder": {
            "type": "string",
            "description": "The placeholder to show in the field."
          },
          "readonly": {
            "type": "boolean",
            "description": "If true, the field will be not be editable by the participant(s). NOTE: Fields may not be both required and readonly."
          },
          "required": {
            "type": "boolean",
            "description": "If true, the field will be required"
          },
          "role_name": {
            "type": "string",
            "description": "The ID of the role in the recipients list, e.g. "
          },
          "type": {
            "type": "string",
            "description": "The type of the field"
          },
          "width": {
            "type": "integer",
            "description": "The width of the field."
          },
          "x": {
            "type": "integer",
            "description": "The X position of the field."
          },
          "y": {
            "type": "integer",
            "description": "The Y position of the field."
          }
        }
      },
      "ICreateEnvelopeFieldFromTemplate": {
        "type": "object",
        "description": "",
        "required": [
          "name",
          "role_name"
        ],
        "properties": {
          "default": {
            "type": "string",
            "description": "Override the \"default\" setting from the template. If a default is provided, the field will be marked as \"prepared\"."
          },
          "group": {
            "type": "string",
            "description": "For fields that support grouping (radio buttons and check boxes) the value selected will be stored under this name."
          },
          "label": {
            "type": "string",
            "description": "Override the \"label\" setting from the template."
          },
          "multiline": {
            "type": "boolean",
            "description": "Override the \"multiline\" setting from the template."
          },
          "name": {
            "type": "string",
            "description": "The machine name of the field, e.g. "
          },
          "options": {
            "type": "string",
            "description": "Override the \"options\" setting from the template."
          },
          "placeholder": {
            "type": "string",
            "description": "Override the \"placeholder\" setting from the template."
          },
          "readonly": {
            "type": "boolean",
            "description": "Override the \"readonly\" setting from the template."
          },
          "required": {
            "type": "boolean",
            "description": "Override the \"required\" setting from the template."
          },
          "role_name": {
            "type": "string",
            "description": "The ID of the role in the recipients list, e.g. "
          }
        }
      },
      "ICreateEnvelopeFromTemplateRequest": {
        "type": "object",
        "description": "",
        "required": [
          "recipients"
        ],
        "properties": {
          "data": {
            "type": "string",
            "description": "Optional metadata to attach to the envelope. This is not used by Verdocs, but may be used for internal tracking purposes by the caller. This is not shown to recipients, but is not private and should not be used to store sensitive data."
          },
          "description": {
            "type": "string",
            "description": "Override the description of the envelope to create."
          },
          "environment": {
            "type": "string",
            "description": "Environment in which to execute the envelope. Do not set this unless instructed to do so by Verdocs support."
          },
          "expires_at": {
            "type": "string",
            "description": "If set, the envelope will automatically expire at the specified date/time (ISO8601, UTC)"
          },
          "fields": {
            "type": "string",
            "description": "Fields to create in the envelope. Note that document_id is a number in this call and should match the index of the document in the documents array."
          },
          "followup_reminders": {
            "type": "integer",
            "description": "Delay (in seconds) before subsequent remidners are sent (min: 12hrs). Set to 0 or null to disable."
          },
          "initial_reminder": {
            "type": "integer",
            "description": "Delay (in seconds) before the first reminder is sent (min: 4hrs). Set to 0 or null to disable."
          },
          "locale": {
            "type": "string",
            "description": "The long-form timezone."
          },
          "max_reminder_days": {
            "type": "integer",
            "description": "Maximum number of days (after envelope creation) for which reminders will be sent. Defaults to 14."
          },
          "name": {
            "type": "string",
            "description": "Override the name of the envelope to create."
          },
          "no_contact": {
            "type": "boolean",
            "description": "If set, Verdocs will not attempt to contact the recipient via email or SMS."
          },
          "recipients": {
            "type": "string",
            "description": "List of recipients to configure."
          },
          "sender_email": {
            "type": "string",
            "description": "Override the sender email of the envelope in email and other notifications. NOTE: This will change areas that reflect the sender's email in the Web UI and certificate. It cannot change the email address used for notifications."
          },
          "sender_name": {
            "type": "string",
            "description": "Override the sender name of the envelope in email and other notifications. NOTE: To prevent spam filters from blocking messages, only the NAME may be overidden. The \"from\" email address will be notifications@verdocs.com and cannot be changed."
          },
          "timezone": {
            "type": "string",
            "description": "The locale code"
          },
          "visibility": {
            "type": "string",
            "description": "Visibility of the envelope. If set to 'shared', the envelope will be visible to all users in the organization. If set to 'private', only the creator and recipients will see it."
          }
        }
      },
      "ICreateEnvelopeRecipientDirectly": {
        "type": "object",
        "description": "",
        "required": [
          "first_name",
          "role_name",
          "type"
        ],
        "properties": {
          "address": {
            "type": "string",
            "description": "Pre-fill KBA address for the recipient, if known."
          },
          "auth_methods": {
            "type": "string",
            "description": "To enable authentication for the recipient, set to 'pin' or 'identity'."
          },
          "city": {
            "type": "string",
            "description": "Pre-fill KBA city for the recipient, if known."
          },
          "delegator": {
            "type": "boolean",
            "description": "Whether the recipient may delegate their tasks to others. Should be false for most standard workflows."
          },
          "dob": {
            "type": "string",
            "description": "Pre-fill KBA date-of-birth for the recipient, if known."
          },
          "email": {
            "type": "string",
            "description": "The email address of the recipient. One of "
          },
          "first_name": {
            "type": "string",
            "description": "The name of the recipient as it will be displayed in reports and queries, e.g. 'Paige Turner'."
          },
          "message": {
            "type": "string",
            "description": "A custom message to include in the email or SMS invitation. May be left blank for a default message."
          },
          "order": {
            "type": "integer",
            "description": "The 1-based order within the sequence for the recipient. Recipients at the same sequence act in parallel, so\nthis is only for display purposes."
          },
          "passcode": {
            "type": "string",
            "description": "If Passcode-based authentication is used, the passcode to challenge the user to enter."
          },
          "phone": {
            "type": "string",
            "description": "The phone number of the recipient. One of "
          },
          "phone_auth": {
            "type": "string",
            "description": "If SMS-based authentication is used, the phone number to which one-time codes should be sent.\nNOTE: This may be different from the phone number used for notifications, but leaving it blank\nwill trigger an error rather than defaulting to the notifications phone number to avoid mistaken\nassumptions (e.g. if SMS notifications are not enabled for the organization, but SMS authentication\nis)."
          },
          "role_name": {
            "type": "string",
            "description": "Unique identifier for the recipient. When using a template, must match one of the pre-defined roles in the template's Recipients list."
          },
          "sequence": {
            "type": "integer",
            "description": "The 1-based sequence number for the recipient. This can be used to override the template's workflow. Recipients\nare processed in parallel for each matching sequence number (e.g. all recipients at level \"1\" may act in parallel)\nand in series between sequence numbers (e.g. all recipients at level \"1\" must complete their tasks before\nrecipients at level \"2\" may act)."
          },
          "ssn_last_4": {
            "type": "string",
            "description": "Pre-fill KBA SSN-Last-4 for the recipient, if known."
          },
          "state": {
            "type": "string",
            "description": "Pre-fill KBA state for the recipient, if known."
          },
          "type": {
            "type": "string",
            "description": "The type of role to create. Most participants in standard flows will be \"signer\" recipients."
          },
          "zip": {
            "type": "string",
            "description": "Pre-fill KBA zip for the recipient, if known."
          }
        }
      },
      "ICreateEnvelopeRecipientFromTemplate": {
        "type": "object",
        "description": "",
        "required": [
          "first_name",
          "role_name"
        ],
        "properties": {
          "address": {
            "type": "string",
            "description": "Pre-fill KBA address for the recipient, if known."
          },
          "auth_methods": {
            "type": "string",
            "description": "To enable authentication for the recipient, set to 'pin' or 'identity'."
          },
          "city": {
            "type": "string",
            "description": "Pre-fill KBA city for the recipient, if known."
          },
          "delegator": {
            "type": "boolean",
            "description": "Whether the recipient may delegate their tasks to others. Should be false for most standard workflows."
          },
          "dob": {
            "type": "string",
            "description": "Pre-fill KBA date-of-birth for the recipient, if known."
          },
          "email": {
            "type": "string",
            "description": "The email address of the recipient. One of "
          },
          "first_name": {
            "type": "string",
            "description": "The name of the recipient as it will be displayed in reports and queries, e.g. 'Paige Turner'."
          },
          "message": {
            "type": "string",
            "description": "A custom message to include in the email or SMS invitation. May be left blank for a default message."
          },
          "passcode": {
            "type": "string",
            "description": "If Passcode-based authentication is used, the passcode to challenge the user to enter."
          },
          "phone": {
            "type": "string",
            "description": "The phone number of the recipient. One of "
          },
          "phone_auth": {
            "type": "string",
            "description": "If SMS-based authentication is used, the phone number to which one-time codes should be sent.\nNOTE: This may be different from the phone number used for notifications, but leaving it blank\nwill trigger an error rather than defaulting to the notifications phone number to avoid mistaken\nassumptions (e.g. if SMS notifications are not enabled for the organization, but SMS authentication\nis)."
          },
          "role_name": {
            "type": "string",
            "description": "Unique identifier for the recipient. When using a template, must match one of the pre-defined roles in the template's Recipients list."
          },
          "ssn_last_4": {
            "type": "string",
            "description": "Pre-fill KBA SSN-Last-4 for the recipient, if known."
          },
          "state": {
            "type": "string",
            "description": "Pre-fill KBA state for the recipient, if known."
          },
          "zip": {
            "type": "string",
            "description": "Pre-fill KBA zip for the recipient, if known."
          }
        }
      },
      "ICreateEnvelopeReminderRequest": {
        "type": "object",
        "description": "",
        "required": [],
        "properties": {}
      },
      "ICreateInvitationRequest": {
        "type": "object",
        "description": "",
        "required": [],
        "properties": {}
      },
      "ICreateNotificationTemplateRequest": {
        "type": "object",
        "description": "",
        "required": [],
        "properties": {}
      },
      "ICreateProfileRequest": {
        "type": "object",
        "description": "",
        "required": [],
        "properties": {}
      },
      "IDisabledChannel": {
        "type": "object",
        "description": "",
        "required": [],
        "properties": {}
      },
      "IDocumentFromData": {
        "type": "object",
        "description": "Represents a document to be attached to a template via a Base64-encoded string attachment. This is the best option\nfor maximum security but there is a 10MB size limit for the entire creation request. Requests attaching larger files\nshould use",
        "required": [
          "data",
          "name"
        ],
        "properties": {
          "data": {
            "type": "string",
            "description": "Base64-encoded file data."
          },
          "name": {
            "type": "string",
            "description": "A name for the attachment."
          }
        }
      },
      "IDocumentFromUri": {
        "type": "object",
        "description": "Represents a document to be attached to a template via an externally-accessible URI. A copy of the document will be\ndownloaded from the specified URI. Note that the URI will be accessed without headers or other authorization methods\nset, so the URI itself must encode any security tokens or keys required to access the file.",
        "required": [
          "name",
          "uri"
        ],
        "properties": {
          "name": {
            "type": "string",
            "description": "A name for the attachment."
          },
          "uri": {
            "type": "string",
            "description": "The URI to retrieve the file from."
          }
        }
      },
      "IDocumentSearchOptions": {
        "type": "object",
        "description": "",
        "required": [],
        "properties": {}
      },
      "IDropdownOption": {
        "type": "object",
        "description": "",
        "required": [],
        "properties": {}
      },
      "IEmailAccessKey": {
        "type": "object",
        "description": "",
        "required": [],
        "properties": {}
      },
      "IEntitlement": {
        "type": "object",
        "description": "",
        "required": [],
        "properties": {}
      },
      "IEnvelope": {
        "type": "object",
        "description": "An Envelope is a workflow wrapper that shepherds one or more Documents through the various recipients in a signing\nprocess.",
        "required": [
          "canceled_at",
          "created_at",
          "followup_reminders",
          "id",
          "initial_reminder",
          "max_reminder_days",
          "name",
          "next_reminder",
          "organization_id",
          "profile_id",
          "sender_email",
          "sender_name",
          "signed",
          "status",
          "template_id",
          "updated_at",
          "visibility"
        ],
        "properties": {
          "canceled_at": {
            "type": "string",
            "description": "Date/time when the envelope was canceled, or null."
          },
          "created_at": {
            "type": "string",
            "description": "Date/time when the envelope was created."
          },
          "data": {
            "type": "string",
            "description": "Storage for arbitrary data that may be used e.g. to track source database/record IDs to relate Envelopes back to\ninternal systems/applications."
          },
          "documents": {
            "type": "string",
            "description": "Documents attached to this envelope"
          },
          "expires_at": {
            "type": "string",
            "description": "Date/time when the envelope will automatically expire, or null."
          },
          "followup_reminders": {
            "type": "string",
            "description": "Delay (in seconds) before subsequent remidners are sent (min: 12hrs). Set to 0 or null to disable."
          },
          "id": {
            "type": "string",
            "description": "Unique identifier for the envelope (UUID)"
          },
          "initial_reminder": {
            "type": "string",
            "description": "Delay (in seconds) before the first reminder is sent (min: 4hrs). Set to 0 or null to disable."
          },
          "max_reminder_days": {
            "type": "integer",
            "description": "Maximum number of days (after envelope creation) for which reminders will be sent. Defaults to 14."
          },
          "name": {
            "type": "string",
            "description": "Name of the envelope. By defaut, inherited from the envelope's template, but may be overridden when the envelope is created."
          },
          "next_reminder": {
            "type": "string",
            "description": "When the next reminder is scheduled to be sent."
          },
          "no_contact": {
            "type": "boolean",
            "description": "If set to true, no email or SMS messages will be sent to any of the envelope's recipients."
          },
          "organization_id": {
            "type": "string",
            "description": "ID of the organization to which the envelope belongs."
          },
          "profile_id": {
            "type": "string",
            "description": "ID of the envelope's creator."
          },
          "sender_email": {
            "type": "string",
            "description": "Override the sender \"email address\" in places like the Certificate."
          },
          "sender_name": {
            "type": "string",
            "description": "Override the sender \"name\" in places like the Certificate."
          },
          "signed": {
            "type": "boolean",
            "description": "If true, the envelope is fully submitted, processed, certificate-generated, and all documents have been stamped and signed."
          },
          "status": {
            "type": "string",
            "description": "Current status of the envelope. Note that 'complete', 'declined', and 'canceled' are immutable/permanent end states. Also, 'complete' does NOT mean \"fully signed in all aspects\" (see \"signed\" for that). 'complete' means complete from a user's perspective: all required data has been submitted and workflow steps completed."
          },
          "template_id": {
            "type": "string",
            "description": "ID of the template from which the envelope was created."
          },
          "updated_at": {
            "type": "string",
            "description": "Date/time when the envelope was created."
          },
          "visibility": {
            "type": "string",
            "description": "Defaults to 'private'. If set to 'shared', this envelope will be visible to other users in the same organization. Ignored for personal profiles."
          }
        }
      },
      "IEnvelopeDocument": {
        "type": "object",
        "description": "An EnvelopeDocument is an individual document inside an Envelope package.",
        "required": [
          "created_at",
          "envelope_id",
          "id",
          "mime",
          "name",
          "order",
          "page_sizes",
          "pages",
          "signed",
          "size",
          "template_document_id",
          "type",
          "updated_at"
        ],
        "properties": {
          "created_at": {
            "type": "string",
            "description": "Date/time when the document was created."
          },
          "envelope_id": {
            "type": "string",
            "description": "Unique identifier for the envelope (UUID)"
          },
          "id": {
            "type": "string",
            "description": "Unique identifier for the document (UUID)"
          },
          "mime": {
            "type": "string",
            "description": "MIME type"
          },
          "name": {
            "type": "string",
            "description": "The name of the document"
          },
          "order": {
            "type": "integer",
            "description": "The order in which the document appears in the envelope."
          },
          "page_sizes": {
            "type": "string",
            "description": "Collection of width/height dimensions for each page"
          },
          "pages": {
            "type": "integer",
            "description": "Page count"
          },
          "signed": {
            "type": "boolean",
            "description": "Whether the file has been signed. Note that document.signed is different from envelope.signed. Documents are signed first, then the certificate is created and signed, then the envelope is finally marked signed."
          },
          "size": {
            "type": "integer",
            "description": "File size (bytes)"
          },
          "template_document_id": {
            "type": "string",
            "description": "Unique identifier for the template (UUID). May be null for envelopes created without templates"
          },
          "type": {
            "type": "string",
            "description": "Whether the document is a signer-supplied attachment or a Verdocs-generated certificate"
          },
          "updated_at": {
            "type": "string",
            "description": "Date/time when the document was created."
          }
        }
      },
      "IEnvelopeField": {
        "type": "object",
        "description": "",
        "required": [
          "default",
          "document_id",
          "envelope_id",
          "group",
          "height",
          "label",
          "multiline",
          "name",
          "options",
          "page",
          "placeholder",
          "prepared",
          "readonly",
          "required",
          "role_name",
          "settings",
          "type",
          "width",
          "x",
          "y"
        ],
        "properties": {
          "default": {
            "type": "string",
            "description": "The default value for the field."
          },
          "document_id": {
            "type": "string",
            "description": "The ID of the document the field is for."
          },
          "envelope_id": {
            "type": "string",
            "description": "The ID of the envelope the field is for."
          },
          "group": {
            "type": "string",
            "description": "For fields that support grouping (radio buttons and check boxes) the value selected will be stored under this name."
          },
          "height": {
            "type": "integer",
            "description": "The height of the field."
          },
          "label": {
            "type": "string",
            "description": "If set, the placeholder/label for the field."
          },
          "multiline": {
            "type": "boolean",
            "description": "For text boxes, allows more than one line of text to be entered."
          },
          "name": {
            "type": "string",
            "description": "The machine name of the field, e.g. "
          },
          "options": {
            "type": "string",
            "description": "For dropdowns, the options that are selectable."
          },
          "page": {
            "type": "integer",
            "description": "The 1-based page number the field is displayed on. \"Self-placed\" fields that the user must apply will be on page 0."
          },
          "placeholder": {
            "type": "string",
            "description": "The placeholder to show in the field."
          },
          "prepared": {
            "type": "string",
            "description": "Not sent by the server. Used in the UI to identify prepared fields."
          },
          "readonly": {
            "type": "string",
            "description": "If true, the field will be not be editable by the participant(s). NOTE: Fields may not be both required and readonly."
          },
          "required": {
            "type": "string",
            "description": "If true, the field will be required"
          },
          "role_name": {
            "type": "string",
            "description": "The ID of the role in the recipients list, e.g. "
          },
          "settings": {
            "type": "string",
            "description": "@deprecated. Use top-level fields instead."
          },
          "type": {
            "type": "string",
            "description": "The type of the field"
          },
          "width": {
            "type": "integer",
            "description": "The width of the field."
          },
          "x": {
            "type": "integer",
            "description": "The X position of the field."
          },
          "y": {
            "type": "integer",
            "description": "The Y position of the field."
          }
        }
      },
      "IEnvelopeFieldOptions": {
        "type": "object",
        "description": "",
        "required": [
          "checked",
          "id",
          "selected",
          "value",
          "x",
          "y"
        ],
        "properties": {
          "checked": {
            "type": "string",
            "description": "For checkboxes, whether it is currently checked"
          },
          "id": {
            "type": "string",
            "description": "The unique ID of the field"
          },
          "selected": {
            "type": "string",
            "description": "For radio buttons, whether it is currently selected"
          },
          "value": {
            "type": "string",
            "description": "The visible label for the field e.g. 'Not Applicable'"
          },
          "x": {
            "type": "integer",
            "description": "The X position of the field on the page. Self-placed fields will have an X value of 0."
          },
          "y": {
            "type": "integer",
            "description": "The Y position of the field on the page. Self-placed fields will have an X value of 0."
          }
        }
      },
      "IEnvelopeFieldSettings": {
        "type": "object",
        "description": "",
        "required": [],
        "properties": {
          "base64": {
            "type": "string",
            "description": "Signatures and Initials, result will be \"signed\""
          },
          "leading": {
            "type": "integer",
            "description": "Text field settings"
          },
          "minimum_checked": {
            "type": "integer",
            "description": "Checkbox settings"
          },
          "options": {
            "type": "string",
            "description": "Dropdowns, checkboxes, radio groups"
          },
          "result": {
            "type": "string",
            "description": "If the field has been filled in, this contains the current value"
          }
        }
      },
      "IEnvelopeHistory": {
        "type": "object",
        "description": "",
        "required": [],
        "properties": {}
      },
      "IEnvelopesSearchResult": {
        "type": "object",
        "description": "",
        "required": [],
        "properties": {}
      },
      "IFileWithData": {
        "type": "object",
        "description": "",
        "required": [],
        "properties": {}
      },
      "IGetTemplatesParams": {
        "type": "object",
        "description": "",
        "required": [],
        "properties": {
          "ascending": {
            "type": "boolean",
            "description": "Set to true or false to control the sort order. Omit this field to sort dates descending, names ascending."
          },
          "is_creator": {
            "type": "boolean",
            "description": "List only those templates created by the caller."
          },
          "is_starred": {
            "type": "boolean",
            "description": "List only those templates with at least one \"star\"."
          },
          "page": {
            "type": "integer",
            "description": "Page to retrieve (0-based). Defaults to 0."
          },
          "q": {
            "type": "string",
            "description": "List only those templates whose names, descriptions, etc contain this search term."
          },
          "rows": {
            "type": "integer",
            "description": "Number of rows to retrieve. Defaults to 10."
          },
          "sort_by": {
            "type": "string",
            "description": "Sort order"
          },
          "visibility": {
            "type": "string",
            "description": "Visibility status of templates to include. private_shared is the default (private + shared)"
          }
        }
      },
      "IGroup": {
        "type": "object",
        "description": "",
        "required": [],
        "properties": {}
      },
      "IGroupProfile": {
        "type": "object",
        "description": "",
        "required": [],
        "properties": {}
      },
      "IIdToken": {
        "type": "object",
        "description": "",
        "required": [],
        "properties": {}
      },
      "IInAppAccessKey": {
        "type": "object",
        "description": "",
        "required": [],
        "properties": {}
      },
      "IInitial": {
        "type": "object",
        "description": "",
        "required": [],
        "properties": {}
      },
      "IInPersonAccessKey": {
        "type": "object",
        "description": "",
        "required": [],
        "properties": {}
      },
      "IInPersonLinkResponse": {
        "type": "object",
        "description": "",
        "required": [
          "access_key",
          "access_token",
          "envelope",
          "link",
          "recipient"
        ],
        "properties": {
          "access_key": {
            "type": "string",
            "description": "The access key that matches the signing session. May be used for later initiation requests\nif in-person signing was desired, but not necessarily instant (e.g. to hand-off to a\ncompanion application. **NOTE: Access keys are as sensitive as Bearer Tokens and must be\nprotected from theft and unauthorized sharing!**"
          },
          "access_token": {
            "type": "string",
            "description": "An access token that may be used with a VerdocsEndpoint to perform signing operations.\nWhen signing, the caller's \"authentication\" status will be recorded as \"in-person\"."
          },
          "envelope": {
            "type": "string",
            "description": "A copy of the envelope related to the signing session. This is almost always needed when\na signing session is being started, so it is included here for convenience."
          },
          "link": {
            "type": "string",
            "description": "A valid Verdocs Web URL that hosts a signing experience."
          },
          "recipient": {
            "type": "string",
            "description": "A copy of the recipient record related to the signing session. This is almost always needed when\na signing session is being started, so it is included here for convenience."
          }
        }
      },
      "IKbaChallengeResponse": {
        "type": "object",
        "description": "",
        "required": [],
        "properties": {}
      },
      "IKbaIdentity": {
        "type": "object",
        "description": "",
        "required": [],
        "properties": {}
      },
      "IKbaPINRequired": {
        "type": "object",
        "description": "",
        "required": [],
        "properties": {}
      },
      "IKBAQuestion": {
        "type": "object",
        "description": "",
        "required": [],
        "properties": {}
      },
      "IKBAResponse": {
        "type": "object",
        "description": "",
        "required": [],
        "properties": {}
      },
      "IListEnvelopesParams": {
        "type": "object",
        "description": "",
        "required": [],
        "properties": {}
      },
      "INotification": {
        "type": "object",
        "description": "",
        "required": [],
        "properties": {}
      },
      "INotificationTemplate": {
        "type": "object",
        "description": "",
        "required": [],
        "properties": {}
      },
      "IOAuth2App": {
        "type": "object",
        "description": "",
        "required": [],
        "properties": {}
      },
      "IOAuth2AuthorizeParams": {
        "type": "object",
        "description": "",
        "required": [],
        "properties": {}
      },
      "IOrganization": {
        "type": "object",
        "description": "",
        "required": [
          "contact_email",
          "deletion_protected",
          "id",
          "name"
        ],
        "properties": {
          "api_key": {
            "type": "string",
            "description": "If creating a child organization, an API key will be automatically created and returned. This saves a few API calls\ndoing so in subsequent operations. Please note that this is a synthetic field and not part of the formal IOrganization\ndefinition. In API v3, this field will move to the top level, outside the organization response object."
          },
          "contact_email": {
            "type": "string",
            "description": "If the organization is a business, its name. Note that a business name can be different from an organization name."
          },
          "deletion_protected": {
            "type": "boolean",
            "description": "If set, the organization may not be deleted. Must be set to false before calling DELETE. Defaults to true (protected)."
          },
          "id": {
            "type": "string",
            "description": "The unique ID of the organization"
          },
          "locale": {
            "type": "string",
            "description": "The long-form timezone."
          },
          "name": {
            "type": "string",
            "description": "The organization's name."
          },
          "pipeline_settings": {
            "type": "string",
            "description": "Org-level document-pipeline automation flags."
          },
          "timezone": {
            "type": "string",
            "description": "The locale code"
          },
          "url": {
            "type": "string",
            "description": "Web site URL"
          }
        }
      },
      "IOrganizationInvitation": {
        "type": "object",
        "description": "",
        "required": [],
        "properties": {}
      },
      "IPendingWebhook": {
        "type": "object",
        "description": "",
        "required": [],
        "properties": {}
      },
      "IPipelineSettings": {
        "type": "object",
        "description": "Org-level document-pipeline automation flags. Note that these flags are all \"opt-in\" and default to false if not set.\n\n - process_acroforms:     Auto-detect AcroForm (fillable PDF) fields when a document has no text tags.\n - process_tags:          Process {{...}} text tags in uploaded documents.\n - ignore_invalid_roles:  Skip (vs. reject) document tags whose role name is empty/invalid.\n - ignore_invalid_fields: Skip (vs. reject) document tags that don't form a valid field.",
        "required": [],
        "properties": {}
      },
      "IProfile": {
        "type": "object",
        "description": "",
        "required": [
          "current",
          "id",
          "organization_id",
          "user_id"
        ],
        "properties": {
          "current": {
            "type": "boolean",
            "description": "If true, this is the caller's \"currently selected\" profile. All operations will performed \"as\" this profile."
          },
          "id": {
            "type": "string",
            "description": "The unique ID of the profile"
          },
          "locale": {
            "type": "string",
            "description": "The long-form timezone."
          },
          "organization_id": {
            "type": "string",
            "description": "The profile's organization ID, or a global \"Verdocs\" organization that all personal profiles are members of."
          },
          "timezone": {
            "type": "string",
            "description": "The locale code"
          },
          "user_id": {
            "type": "string",
            "description": "In Verdocs, a user may have multiple profiles. A user represents a single person. A profile\nrepresents that person within an organization. Some profiles may have no user atached, typically\nContacts and Signers. This can change if that person registers for a user later."
          }
        }
      },
      "IRecipient": {
        "type": "object",
        "description": "",
        "required": [
          "order",
          "sequence"
        ],
        "properties": {
          "address": {
            "type": "string",
            "description": "Street address. Only used in KBA workflows. Combine two-line addresses into a single string."
          },
          "auth_method_states": {
            "type": "string",
            "description": "The status of each auth method enabled."
          },
          "auth_methods": {
            "type": "string",
            "description": "The types of authentication/verification required for this recipient."
          },
          "auth_step": {
            "type": "string",
            "description": "The next verification step that must be performed."
          },
          "city": {
            "type": "string",
            "description": "Zip code. Only used in KBA workflows."
          },
          "disclosures": {
            "type": "string",
            "description": "The disclosure text the recipient accepted."
          },
          "disclosures_accepted_at": {
            "type": "string",
            "description": "Date/time the recipient agreed to their e-signing disclosures."
          },
          "dob": {
            "type": "string",
            "description": "Date of birth. Only used in KBA workflows."
          },
          "full_name": {
            "type": "string",
            "description": "@deprecated. Use first_name/last_name instead."
          },
          "id": {
            "type": "string",
            "description": "Used only by the Web SDK during builder processes. Not stored in the backend."
          },
          "in_app_key": {
            "type": "string",
            "description": "Only returned in creation/getEnvelopeById requests by the creator. May be used for in-person signing. Note that\nsigning sessions started with this key will be marked as \"In App\" authenticated. For higher authentication levels,\ne.g. email, the signer must follow a link send via the appropriate channel (email)."
          },
          "kba_questions": {
            "type": "string",
            "description": "If a KBA step requires the user to answer a challenge/differentiator question, the\nquestion(s) to ask."
          },
          "locale": {
            "type": "string",
            "description": "The long-form timezone."
          },
          "order": {
            "type": "integer",
            "description": "The order indicates the order in which recipients are listed in a single \"level\" of the workflow. Note that\nrecipients at the same level may act in parallel despite this value. However, it can often be useful to visually\narrange recipients to match related business processes so this field allows for that."
          },
          "passcode": {
            "type": "string",
            "description": "If auth_method is set to \"passcode\" this is the passcode required. For security reasons, this\nfield will only be visible to the creator of the envelope."
          },
          "phone": {
            "type": "string",
            "description": "Phone number for SMS invites"
          },
          "sequence": {
            "type": "integer",
            "description": "The sequence number indicates the order in which Recipients act. Multiple recipients may have the same sequence\nnumber, in which case they may act in parallel. (e.g. all Recipients at sequence 2 will receive invites once\nall Recipients at sequence 1 have signed.)"
          },
          "ssn_last_4": {
            "type": "string",
            "description": "Last 4 digits of SSN. Only used in KBA workflows."
          },
          "state": {
            "type": "string",
            "description": "Zip code. Only used in KBA workflows."
          },
          "timezone": {
            "type": "string",
            "description": "The locale code"
          },
          "zip": {
            "type": "string",
            "description": "Zip code. Only used in KBA workflows."
          }
        }
      },
      "IRecipientDisclosureAgreeBody": {
        "type": "object",
        "description": "",
        "required": [],
        "properties": {}
      },
      "IRecipientKbaStepChallenge": {
        "type": "object",
        "description": "If a positive identification was not possible, the user may be asked to answer 1 or more\nchallenge questions via this response. They should be submitted via",
        "required": [],
        "properties": {}
      },
      "IRecipientKbaStepComplete": {
        "type": "object",
        "description": "KBA has been completed and no further action is required.",
        "required": [],
        "properties": {}
      },
      "IRecipientKbaStepFailed": {
        "type": "object",
        "description": "Identity verification has failed. The user should be shown the message included. No further\nsigning operations may be performed.",
        "required": [],
        "properties": {}
      },
      "IRecipientKbaStepIdentity": {
        "type": "object",
        "description": "A full identity verification is required. Prompt the user for their address and other (optional)\ndetails and submit them via",
        "required": [],
        "properties": {}
      },
      "IRecipientKbaStepNone": {
        "type": "object",
        "description": "KBA is not required at this time.",
        "required": [],
        "properties": {}
      },
      "IRecipientKbaStepPin": {
        "type": "object",
        "description": "A PIN code is required. Prompt the user to enter this PIN, and submit it via",
        "required": [],
        "properties": {}
      },
      "IRecipientSubmitBody": {
        "type": "object",
        "description": "",
        "required": [],
        "properties": {}
      },
      "IRefreshTokenRequest": {
        "type": "object",
        "description": "",
        "required": [],
        "properties": {}
      },
      "IResetPasswordRequest": {
        "type": "object",
        "description": "",
        "required": [],
        "properties": {}
      },
      "IResetPasswordResponse": {
        "type": "object",
        "description": "",
        "required": [],
        "properties": {}
      },
      "IRole": {
        "type": "object",
        "description": "A placeholder for an individual recipient, CC, or other party in a signing flow. Roles may be \"known\" or \"unknown.\"\n\"Known\" roles will have their email address supplied in the template which will get copied to envelopes created from\nit. This is used when a certain party will always be the same, e.g. a leasing agent counter-signing a lease.\n\"Unknown\" roles are dynamic, and will be filled in later when the envelope is created.",
        "required": [
          "name_locked",
          "order",
          "sequence"
        ],
        "properties": {
          "id": {
            "type": "string",
            "description": "Used only by the Web SDK during builder processes. Not stored in the backend."
          },
          "name_locked": {
            "type": "boolean",
            "description": "If set, the recipient will not be allowed to change their legal name."
          },
          "order": {
            "type": "integer",
            "description": "The order indicates the order in which recipients are listed in a single \"level\" of the workflow. Note that\nrecipients at the same level may act in parallel despite this value. However, it can often be useful to visually\narrange recipients to match related business processes so this field allows for that."
          },
          "sequence": {
            "type": "integer",
            "description": "The sequence number indicates the order in which Roles act. Multiple roles may have the same sequence\nnumber, in which case they may act in parallel. (e.g. all Roles at sequence 2 will receive invites once\nall Recipients at sequence 1 have signed.)"
          }
        }
      },
      "IROPCRequest": {
        "type": "object",
        "description": "",
        "required": [],
        "properties": {}
      },
      "ISetWebhookRequest": {
        "type": "object",
        "description": "",
        "required": [],
        "properties": {}
      },
      "ISignature": {
        "type": "object",
        "description": "",
        "required": [],
        "properties": {}
      },
      "ISignerTokenResponse": {
        "type": "object",
        "description": "",
        "required": [
          "access_token",
          "envelope",
          "recipient"
        ],
        "properties": {
          "access_token": {
            "type": "string",
            "description": "An access token that may be used with a VerdocsEndpoint to perform signing operations.\nWhen signing, the caller's \"authentication\" status will be recorded as \"in-person\"."
          },
          "brand": {
            "type": "string",
            "description": "The org's default brand, if one is set. Contains style_overrides CSS and other branding fields."
          },
          "envelope": {
            "type": "string",
            "description": "A copy of the envelope related to the signing session. This is almost always needed when\na signing session is being started, so it is included here for convenience."
          },
          "initials": {
            "type": "string",
            "description": "Stored initials blocks for the recipient. All entries are returned to support workflows in\nwhich that is required, but for most use-cases, only the first entry should be used."
          },
          "recipient": {
            "type": "string",
            "description": "A copy of the recipient record related to the signing session. This is almost always needed when\na signing session is being started, so it is included here for convenience."
          },
          "signatures": {
            "type": "string",
            "description": "Stored signature blocks for the recipient. All entries are returned to support workflows in\nwhich that is required, but for most use-cases, only the first entry should be used."
          }
        }
      },
      "ISigningSession": {
        "type": "object",
        "description": "A Signing Session connects a caller to a role within an envelope, and can be used only for calls related to signing that envelope.",
        "required": [],
        "properties": {}
      },
      "ISMSAccessKey": {
        "type": "object",
        "description": "",
        "required": [],
        "properties": {}
      },
      "IStar": {
        "type": "object",
        "description": "",
        "required": [],
        "properties": {}
      },
      "ITag": {
        "type": "object",
        "description": "",
        "required": [],
        "properties": {}
      },
      "ITemplate": {
        "type": "object",
        "description": "A reusable template for creating signable instruments. Templates are used to create Envelopes which contain\nDocuments to sign.",
        "required": [
          "counter",
          "created_at",
          "data",
          "followup_reminders",
          "id",
          "initial_reminder",
          "is_personal",
          "is_public",
          "is_sendable",
          "last_used_at",
          "max_reminder_days",
          "organization_id",
          "profile_id",
          "sender",
          "star_counter",
          "updated_at"
        ],
        "properties": {
          "counter": {
            "type": "integer",
            "description": "Number of times the template has been used."
          },
          "created_at": {
            "type": "string",
            "description": "Creation date/time."
          },
          "data": {
            "type": "string",
            "description": "Storage for arbitrary data that may be used e.g. to track source database/record IDs to relate Templates back to\ninternal systems/applications."
          },
          "description": {
            "type": "string",
            "description": "Optional description for the template."
          },
          "followup_reminders": {
            "type": "string",
            "description": "Delay (in seconds) before subsequent remidners are sent (min: 12hrs). Set to 0 or null to disable."
          },
          "id": {
            "type": "string",
            "description": "The unique ID of the template."
          },
          "initial_reminder": {
            "type": "string",
            "description": "Delay (in seconds) before the first reminder is sent (min: 4hrs). Set to 0 or null to disable."
          },
          "is_personal": {
            "type": "boolean",
            "description": "If true, the template is only visible to the creator. If false, the template will also be visible to the user's\norganization, if any.\n@deprecated. See \"visibility\"."
          },
          "is_public": {
            "type": "boolean",
            "description": "If true, the template is visible publicly. Note that this does not necessarily mean it is also visible to the\nuser's organization. It may be desirable to create documents that are public but that do not appear in the\norganization's shared templates list. To achieve this, set both "
          },
          "is_sendable": {
            "type": "boolean",
            "description": "If true, the template is considered \"sendable\" (it has at least one signer, and every signer has at least one field.)"
          },
          "last_used_at": {
            "type": "string",
            "description": "Last-used date/time (when the template was used to create a document)."
          },
          "max_reminder_days": {
            "type": "integer",
            "description": "Maximum number of days (after envelope creation) for which reminders will be sent. Defaults to 14."
          },
          "organization_id": {
            "type": "string",
            "description": "Organization the template lives in."
          },
          "profile_id": {
            "type": "string",
            "description": "The template's owner/creator."
          },
          "sender": {
            "type": "string",
            "description": "Who will \"own\" envelopes created from this template. Note that while either option is\ntechnically allowed for all visibility settings, \"template_owner\" only has an effect if\nvisibility is \"shared\" or \"public\"."
          },
          "star_counter": {
            "type": "integer",
            "description": "Number of times the template has been \"starred\"."
          },
          "template_documents": {
            "type": "string",
            "description": "@deprecated. Use documents instead."
          },
          "updated_at": {
            "type": "string",
            "description": "Last-update date/time."
          },
          "visibility": {
            "type": "string",
            "description": "If set, the visibility level for the template."
          }
        }
      },
      "ITemplateCreateFromSharepointParams": {
        "type": "object",
        "description": "",
        "required": [
          "itemId",
          "name",
          "oboToken",
          "siteId"
        ],
        "properties": {
          "itemId": {
            "type": "string",
            "description": "The item ID of the source file."
          },
          "name": {
            "type": "string",
            "description": "Name for the template to create."
          },
          "oboToken": {
            "type": "string",
            "description": "On-Behalf-Of access token generated for the request. This must have an audience of \"https://graph.microsoft.com\"\nwith Read access to the source file. This token is used ephemerally and discarded after the request, but it is\nstill recommended that you generate it with the minimal permissions possible."
          },
          "siteId": {
            "type": "string",
            "description": "The site ID the source file is in."
          }
        }
      },
      "ITemplateCreateParams": {
        "type": "object",
        "description": "",
        "required": [
          "name"
        ],
        "properties": {
          "description": {
            "type": "string",
            "description": "Optional description for the template to help identify it."
          },
          "documents": {
            "type": "string",
            "description": "Optional list of roles to create. Documents are required if roles or fields will also be specified. Files may\nbe attached via a number of methods (browser File object, remote URI reference, or Base64-encoded string) but\nall entries must of of the same type. If browser File objects are provided, the request will use a FORM POST\ncall, otherwise it will use traditional XHR."
          },
          "fields": {
            "type": "string",
            "description": "Optional list of fields to create."
          },
          "followup_reminders": {
            "type": "integer",
            "description": "Delay (in seconds) before subsequent remidners are sent (min: 12hrs). Set to 0 or null to disable."
          },
          "initial_reminder": {
            "type": "integer",
            "description": "Delay (in seconds) before the first reminder is sent (min: 4hrs). Set to 0 or null to disable."
          },
          "is_personal": {
            "type": "boolean",
            "description": "Optional (defaults to true). Personal templates are only visible to the owner. Non-personal templates are shared\nwithin the user's organization.\n@deprecated. See visibility."
          },
          "is_public": {
            "type": "boolean",
            "description": "Optional (defaults to false). Public templates may be found (via search) and viewed by anyone.\n@deprecated. See visibility."
          },
          "max_reminder_days": {
            "type": "integer",
            "description": "Maximum number of days (after envelope creation) for which reminders will be sent. Defaults to 14."
          },
          "name": {
            "type": "string",
            "description": "Name for the template to create."
          },
          "roles": {
            "type": "string",
            "description": "Optional list of roles to create. Note that if roles are not included in the request, fields will be ignored."
          },
          "sender": {
            "type": "string",
            "description": "Optional (defaults to EVERYONE_AS_CREATOR). Who may create and send envelopes using this template."
          },
          "visibility": {
            "type": "string",
            "description": "If set, the visibility level for the template."
          }
        }
      },
      "ITemplateDocument": {
        "type": "object",
        "description": "A file attached to the template for display/signing.",
        "required": [],
        "properties": {
          "page_numbers": {
            "type": "integer",
            "description": "@deprecated. Use pages instead."
          }
        }
      },
      "ITemplateField": {
        "type": "object",
        "description": "",
        "required": [
          "default",
          "document_id",
          "group",
          "height",
          "multiline",
          "name",
          "options",
          "placeholder",
          "readonly",
          "role_name",
          "settings",
          "template_id",
          "width",
          "x",
          "y"
        ],
        "properties": {
          "default": {
            "type": "string",
            "description": "The default value for the field."
          },
          "document_id": {
            "type": "string",
            "description": "The ID of the document the field is for."
          },
          "group": {
            "type": "string",
            "description": "For fields that support grouping (radio buttons and check boxes) the value selected will be stored under this name."
          },
          "height": {
            "type": "integer",
            "description": "The height of the field."
          },
          "multiline": {
            "type": "boolean",
            "description": "For text boxes, allows more than one line of text to be entered."
          },
          "name": {
            "type": "string",
            "description": "The machine name of the field, e.g. "
          },
          "options": {
            "type": "string",
            "description": "For dropdowns, the options that are selectable."
          },
          "placeholder": {
            "type": "string",
            "description": "The placeholder to show in the field."
          },
          "readonly": {
            "type": "string",
            "description": "If true, the field will be not be editable by the participant(s). NOTE: Fields may not be both required and readonly."
          },
          "role_name": {
            "type": "string",
            "description": "The ID of the role in the recipients list, e.g. "
          },
          "settings": {
            "type": "string",
            "description": "@deprecated. Use top-level fields instead."
          },
          "template_id": {
            "type": "string",
            "description": "The ID of the template the field is for."
          },
          "width": {
            "type": "integer",
            "description": "The width of the field."
          },
          "x": {
            "type": "integer",
            "description": "The X position of the field."
          },
          "y": {
            "type": "integer",
            "description": "The Y position of the field."
          }
        }
      },
      "ITemplateFieldSetting": {
        "type": "object",
        "description": "",
        "required": [],
        "properties": {}
      },
      "ITemplateSearchResult": {
        "type": "object",
        "description": "",
        "required": [],
        "properties": {}
      },
      "ITemplateTag": {
        "type": "object",
        "description": "",
        "required": [],
        "properties": {}
      },
      "ITextFieldSetting": {
        "type": "object",
        "description": "",
        "required": [],
        "properties": {}
      },
      "ITimeRange": {
        "type": "object",
        "description": "",
        "required": [],
        "properties": {}
      },
      "IUpdateApiKeyRequest": {
        "type": "object",
        "description": "",
        "required": [],
        "properties": {}
      },
      "IUpdateBrandRequest": {
        "type": "object",
        "description": "",
        "required": [],
        "properties": {}
      },
      "IUpdateNotificationTemplateRequest": {
        "type": "object",
        "description": "",
        "required": [],
        "properties": {}
      },
      "IUpdateProfileRequest": {
        "type": "object",
        "description": "",
        "required": [],
        "properties": {}
      },
      "IUpdateRecipientParams": {
        "type": "object",
        "description": "",
        "required": [],
        "properties": {
          "action": {
            "type": "string",
            "description": "Trigger a reminder invite, or fully reset the recipient's status."
          },
          "address": {
            "type": "string",
            "description": "If KBA-based authentication is used, the recipient's address to prefill. May only be changed if the recipient has not already completed KBA-based auth."
          },
          "city": {
            "type": "string",
            "description": "If KBA-based authentication is used, the recipient's city to prefill. May only be changed if the recipient has not already completed KBA-based auth."
          },
          "dob": {
            "type": "string",
            "description": "If KBA-based authentication is used, the recipient's date of birth to prefill. May only be changed if the recipient has not already completed KBA-based auth."
          },
          "email": {
            "type": "string",
            "description": "The email address of the recipient. If changed, a new invite will be sent."
          },
          "first_name": {
            "type": "string",
            "description": "The name of the recipient as it will be displayed in reports and queries, e.g. 'Paige Turner'."
          },
          "message": {
            "type": "string",
            "description": "A custom message to include in the email or SMS invitation. May be left blank for a default message."
          },
          "name_locked": {
            "type": "string",
            "description": "If set, the recipient will not be allowed to change their legal name."
          },
          "passcode": {
            "type": "string",
            "description": "If Passcode-based authentication is used, the passcode to challenge the user to enter. May only be changed if the recipient has not already completed passcode-based auth."
          },
          "phone": {
            "type": "string",
            "description": "The phone number of the recipient. If changed, a new invite will be sent."
          },
          "ssn_last_4": {
            "type": "string",
            "description": "If KBA-based authentication is used, the recipient's SSN-Last-4 to prefill. May only be changed if the recipient has not already completed KBA-based auth."
          },
          "state": {
            "type": "string",
            "description": "If KBA-based authentication is used, the recipient's state to prefill. May only be changed if the recipient has not already completed KBA-based auth."
          },
          "zip": {
            "type": "string",
            "description": "If KBA-based authentication is used, the recipient's zip code to prefill. May only be changed if the recipient has not already completed KBA-based auth."
          }
        }
      },
      "IUpdateRecipientStatus": {
        "type": "object",
        "description": "",
        "required": [],
        "properties": {}
      },
      "IUser": {
        "type": "object",
        "description": "",
        "required": [
          "appleId",
          "b2cId",
          "email",
          "email_verified",
          "googleId"
        ],
        "properties": {
          "appleId": {
            "type": "string",
            "description": "If set, the Apple account ID for the user. Set only for users logging in via Apple."
          },
          "b2cId": {
            "type": "string",
            "description": "If set, the Azure B2C ID for the user. Generally set only for Teams/PowerAutomate users."
          },
          "email": {
            "type": "string",
            "description": "Email address."
          },
          "email_verified": {
            "type": "boolean",
            "description": "If true, the email has been verified in some way (e.g. OTP verification or trusted third party."
          },
          "githubId": {
            "type": "string",
            "description": "If set, the Github account ID for the user. Set only for users logging in via Github."
          },
          "googleId": {
            "type": "string",
            "description": "If set, the Google account ID for the user. Set only for users logging in via Google."
          },
          "locale": {
            "type": "string",
            "description": "The long-form timezone."
          },
          "lock_reason": {
            "type": "string",
            "description": "Reason the account is locked. Only visible to admins or owners."
          },
          "locked": {
            "type": "boolean",
            "description": "True if the account is locked, typically due to failed sign-in attempts. Only visible to admins or owners."
          },
          "login_failures": {
            "type": "integer",
            "description": "Consecutive failed sign-in attempts. Only visible to admins or owners."
          },
          "pass_hash": {
            "type": "string",
            "description": "Password hash, present only for type consistency. Marked optional, but will never be returned by the backend."
          },
          "timezone": {
            "type": "string",
            "description": "The locale code"
          }
        }
      },
      "IUserSession": {
        "type": "object",
        "description": "A User Session connects a caller to a Verdocs profile, and can be used for any operations that profile may perform.",
        "required": [],
        "properties": {}
      },
      "IValidator": {
        "type": "object",
        "description": "",
        "required": [],
        "properties": {}
      },
      "IVerifyEmailRequest": {
        "type": "object",
        "description": "",
        "required": [],
        "properties": {}
      },
      "IWebhook": {
        "type": "object",
        "description": "",
        "required": [],
        "properties": {}
      },
      "VerdocsEndpointOptions": {
        "type": "object",
        "description": "Constructor options for VerdocsEndpoint",
        "required": [],
        "properties": {
          "baseURL": {
            "type": "string",
            "description": "Override the API base URL. Rarely needed outside Verdocs-directed setups."
          },
          "clientID": {
            "type": "string",
            "description": "Client ID sent as the X-Client-ID header on each request."
          },
          "environment": {
            "type": "string",
            "description": "Target environment. Defaults to production unless running on a known beta origin."
          },
          "persist": {
            "type": "boolean",
            "description": "By default, sessions will be persisted to localStorage. Set "
          },
          "sessionType": {
            "type": "string",
            "description": "Session type this endpoint manages, either 'user' or 'signing'. Defaults to 'user'."
          },
          "timeout": {
            "type": "integer",
            "description": "Request timeout in milliseconds. Defaults to 60000."
          }
        }
      },
      "ITemplateSortBy": {
        "type": "string",
        "description": "",
        "enum": [
          "created_at",
          "updated_at",
          "name",
          "last_used_at",
          "counter",
          "star_counter"
        ]
      },
      "IWebhookEvents": {
        "type": "string",
        "description": "",
        "enum": []
      },
      "TAccessKey": {
        "type": "string",
        "description": "",
        "enum": [
          null,
          null,
          null,
          null
        ]
      },
      "TAccessKeyType": {
        "type": "string",
        "description": "",
        "enum": [
          "email",
          "in_app",
          "in_person_link",
          "sms"
        ]
      },
      "TAccountPermission": {
        "type": "string",
        "description": "",
        "enum": [
          null,
          null,
          null,
          null,
          null,
          null,
          null
        ]
      },
      "TAccountPermissionAdminAdd": {
        "type": "string",
        "description": "Grant the \"admin\" role to other organization members.",
        "enum": []
      },
      "TAccountPermissionAdminRemove": {
        "type": "string",
        "description": "Remove the \"admin\" role from other organization members.",
        "enum": []
      },
      "TAccountPermissionMemberAdd": {
        "type": "string",
        "description": "Grant the \"member\" role to other organization members.",
        "enum": []
      },
      "TAccountPermissionMemberRemove": {
        "type": "string",
        "description": "Remove the \"member\" role from other organization members.",
        "enum": []
      },
      "TAccountPermissionMemberView": {
        "type": "string",
        "description": "View the members of an organization.",
        "enum": []
      },
      "TAccountPermissionOwnerAdd": {
        "type": "string",
        "description": "Grant the \"owner\" role to other organization members.",
        "enum": []
      },
      "TAccountPermissionOwnerRemove": {
        "type": "string",
        "description": "Remove the \"owner\" role from other organization members.",
        "enum": []
      },
      "TActiveSession": {
        "type": "string",
        "description": "An active authenticated session within Verdocs, either for signing or regular user-based operations.",
        "enum": [
          null,
          null
        ]
      },
      "TAuthenticateRecipientRequest": {
        "type": "string",
        "description": "",
        "enum": [
          null,
          null,
          null,
          null
        ]
      },
      "TAuthenticationRequest": {
        "type": "string",
        "description": "",
        "enum": [
          null,
          null,
          null,
          null
        ]
      },
      "TCreateEnvelopeRequest": {
        "type": "string",
        "description": "",
        "enum": [
          null,
          null
        ]
      },
      "TDeprecatedHistoryEvent": {
        "type": "string",
        "description": "@deprecated. See envelope.created_at, .updated_at, and .canceled_at.",
        "enum": [
          "envelope:created",
          "envelope:completed"
        ]
      },
      "TDomainStatus": {
        "type": "string",
        "description": "",
        "enum": [
          "pending",
          "active",
          "failed",
          "suspended"
        ]
      },
      "TEmailDomainStatus": {
        "type": "string",
        "description": "",
        "enum": [
          "pending",
          "verified",
          "failed",
          "suspended"
        ]
      },
      "TEntitlement": {
        "type": "string",
        "description": "",
        "enum": [
          "envelope",
          "kba_auth",
          "passcode_auth",
          "sms_auth",
          "kba_id_auth",
          "id_auth",
          "custom_disclaimer"
        ]
      },
      "TEnvelopeDocumentType": {
        "type": "string",
        "description": "",
        "enum": [
          "attachment",
          "certificate"
        ]
      },
      "TEnvelopePermission": {
        "type": "string",
        "description": "",
        "enum": [
          null,
          null,
          null,
          null
        ]
      },
      "TEnvelopePermissionCancel": {
        "type": "string",
        "description": "Cancel envelopes. This is a default permission for most users, but it may be removed for\nhighly regulated environments where envelope activities must be audited, and should not\nbe canceled.",
        "enum": []
      },
      "TEnvelopePermissionCreate": {
        "type": "string",
        "description": "Create envelopes.",
        "enum": []
      },
      "TEnvelopePermissionOrg": {
        "type": "string",
        "description": "View envelopes created by other members of the same organization. By default, only templates\nhaving sharing settings controlled by their creators. Envelopes are usually private to the\ncallers who created them. In some organizations it may be useful to have users who can see\n\"all activity\" by all organization members. This is particularly useful when applied to API\nkeys to develop applications that can access all data across the organization.",
        "enum": []
      },
      "TEnvelopePermissionView": {
        "type": "string",
        "description": "View envelopes. This is a default permission for most users, but it may be removed for\nhighly regulated environments where once sent, envelopes may only be viewed by specific\nusers.",
        "enum": []
      },
      "TEnvelopeStatus": {
        "type": "string",
        "description": "",
        "enum": [
          "complete",
          "pending",
          "in progress",
          "declined",
          "canceled"
        ]
      },
      "TEnvelopeUpdateResult": {
        "type": "string",
        "description": "",
        "enum": []
      },
      "TEnvironment": {
        "type": "string",
        "description": "",
        "enum": [
          "",
          "beta"
        ]
      },
      "TEventDetail": {
        "type": "string",
        "description": "",
        "enum": [
          "in_app",
          "mail",
          "signer",
          "sms",
          "reminder",
          "preparer",
          "manual",
          "in_person_link",
          "guest",
          "email",
          "",
          null
        ]
      },
      "TEventName": {
        "type": "string",
        "description": "",
        "enum": [
          "invitation:canceled",
          "transaction:completed",
          "envelope:failed",
          "envelope:expired",
          "envelope:declined",
          "envelope:cc",
          "recipient:reminder",
          "transaction:requested",
          "envelope:completed",
          "transaction:canceled",
          "user:invited",
          "recipient:invited",
          "envelope:canceled",
          "transaction:sent",
          "envelope:signed",
          "email:verify",
          "email:otp",
          "sms:otp",
          "password:reset",
          "recipient:question",
          "delegate:requested",
          "delegate:send_confirmed"
        ]
      },
      "TFieldType": {
        "type": "string",
        "description": "",
        "enum": [
          "signature",
          "initial",
          "checkbox",
          "radio",
          "textbox",
          "timestamp",
          "date",
          "dropdown",
          "textarea",
          "attachment",
          "payment"
        ]
      },
      "THistoryEvent": {
        "type": "string",
        "description": "",
        "enum": [
          "recipient:signed",
          "recipient:opened",
          "recipient:submitted",
          "recipient:prepared",
          "recipient:claimed",
          "recipient:agreed",
          "recipient:invited",
          "recipient:reminder",
          "recipient:delegated",
          "recipient:updated_info",
          "recipient:declined",
          "recipient:kba_verified",
          "recipient:kba_failed",
          "recipient:id_verified",
          "recipient:id_failed",
          "recipient:pin_verified",
          "recipient:pin_failed",
          "invitation:resent",
          "envelope:cc",
          "envelope:canceled",
          "envelope:expired",
          "owner:updated_recipient_info",
          "owner:get_in_person_link",
          null
        ]
      },
      "TNotificationType": {
        "type": "string",
        "description": "",
        "enum": [
          "sms",
          "email",
          "app"
        ]
      },
      "TOrganizationUsage": {
        "type": "string",
        "description": "",
        "enum": []
      },
      "TOrgPermission": {
        "type": "string",
        "description": "",
        "enum": [
          null,
          null,
          null,
          null,
          null,
          null
        ]
      },
      "TOrgPermissionCreate": {
        "type": "string",
        "description": "Create a new organization.",
        "enum": []
      },
      "TOrgPermissionDelete": {
        "type": "string",
        "description": "Delete the organization.",
        "enum": []
      },
      "TOrgPermissionList": {
        "type": "string",
        "description": "List organizations.",
        "enum": []
      },
      "TOrgPermissionTransfer": {
        "type": "string",
        "description": "Transfer ownership of the organization. This primarily allows the holder to remove his/her own\nOwner role or add new Owners even if the holder is not one themselves. This is primarily intended\nto be used for reseller scenarios.",
        "enum": []
      },
      "TOrgPermissionUpdate": {
        "type": "string",
        "description": "Update the organization.",
        "enum": []
      },
      "TOrgPermissionView": {
        "type": "string",
        "description": "View the organization.",
        "enum": []
      },
      "TPermission": {
        "type": "string",
        "description": "Operation within Verdocs that users may perform.",
        "enum": [
          null,
          null,
          null,
          null
        ]
      },
      "TRecipientAction": {
        "type": "string",
        "description": "",
        "enum": [
          "submit",
          "decline",
          "prepare",
          "update"
        ]
      },
      "TRecipientAuthMethod": {
        "type": "string",
        "description": "The authentication method(s) required for a recipient to access an envelope. \"Passcode\" will require a\nPIN or passcode to be entered, which is intended to be known to the sender and recipient ahead of time\nand communicated by means of their choosing. \"SMS\" and \"Email\" will send a one-time-code via the respective\nchannel for the recipient to enter. \"KBA\" will require the recipient to confirm personal information such\nas prior addresses, phone numbers, etc. \"ID\" will require the recipient to perform full ID-based verification.",
        "enum": [
          "kba",
          "passcode",
          "sms",
          "email",
          "id"
        ]
      },
      "TRecipientAuthStep": {
        "type": "string",
        "description": "",
        "enum": [
          null,
          null
        ]
      },
      "TRecipientKbaStep": {
        "type": "string",
        "description": "The recipient's current step in the KBA (Knowledge-Based Authentication) flow. Branch on",
        "enum": [
          null,
          null,
          null,
          null,
          null,
          null
        ]
      },
      "TRecipientStatus": {
        "type": "string",
        "description": "",
        "enum": [
          "invited",
          "opened",
          "signed",
          "submitted",
          "canceled",
          "pending",
          "declined",
          "failed"
        ]
      },
      "TRecipientType": {
        "type": "string",
        "description": "",
        "enum": [
          "signer",
          "cc",
          "approver"
        ]
      },
      "TRequestStatus": {
        "type": "string",
        "description": "",
        "enum": [
          "OK",
          "ERROR"
        ]
      },
      "TRole": {
        "type": "string",
        "description": "Roles provide access to groups of permissions. Note that for historical reasons there is some overlap in the\nuse of the term \"role\". TRole refers to a user type. A \"Role\" (IRole) is a Template participant placeholder.",
        "enum": [
          "contact",
          "basic_user",
          "member",
          "admin",
          "owner"
        ]
      },
      "TSession": {
        "type": "string",
        "description": "Represents a possibly-authenticated session within Verdocs, either for signing or regular user-based operations.",
        "enum": [
          null,
          null,
          null
        ]
      },
      "TSessionChangedListener": {
        "type": "string",
        "description": "",
        "enum": []
      },
      "TSessionType": {
        "type": "string",
        "description": "Verdocs supports two types of authenticated sessions: User and Signing. Both behave similarly and have similar\nproperties, but signing sessions only have access to a small set of signing-related functions.",
        "enum": [
          "user",
          "signing"
        ]
      },
      "TSortTemplateBy": {
        "type": "string",
        "description": "Plans provide access to Verdocs product features.",
        "enum": [
          "created_at",
          "updated_at",
          "name",
          "last_used_at",
          "counter",
          "star_counter"
        ]
      },
      "TTemplateAction": {
        "type": "string",
        "description": "",
        "enum": [
          "create_personal",
          "create_org",
          "create_public",
          "read",
          "write",
          "delete",
          "change_visibility_personal",
          "change_visibility_org",
          "change_visibility_public"
        ]
      },
      "TTemplateMemberDelete": {
        "type": "string",
        "description": "Edit templates shared by other members of the same organization. Those templates must also\nhave",
        "enum": []
      },
      "TTemplateMemberRead": {
        "type": "string",
        "description": "View templates shared by other members of the same organization. Those templates must also\nhave",
        "enum": []
      },
      "TTemplateMemberVisibility": {
        "type": "string",
        "description": "Edit templates shared by other members of the same organization. Those templates must also\nhave",
        "enum": []
      },
      "TTemplateMemberWrite": {
        "type": "string",
        "description": "Edit templates shared by other members of the same organization. Those templates must also\nhave",
        "enum": []
      },
      "TTemplatePermission": {
        "type": "string",
        "description": "",
        "enum": [
          null,
          null,
          null,
          null,
          null,
          null,
          null,
          null,
          null
        ]
      },
      "TTemplatePermissionCreateOrg": {
        "type": "string",
        "description": "Create templates shared with other users of the same organization.",
        "enum": []
      },
      "TTemplatePermissionCreatePersonal": {
        "type": "string",
        "description": "Create templates private to the creator.",
        "enum": []
      },
      "TTemplatePermissionCreatePublic": {
        "type": "string",
        "description": "Create public templates. Public templates are still owned and managed by the creator,\nbut may be searched for and used to create envelopes by other users.",
        "enum": []
      },
      "TTemplatePermissionDelete": {
        "type": "string",
        "description": "Create templates private to the creator.",
        "enum": []
      },
      "TTemplatePermissionVisibility": {
        "type": "string",
        "description": "Alter the visiiblity settings on a template.",
        "enum": []
      },
      "TTemplateSender": {
        "type": "string",
        "description": "",
        "enum": [
          "envelope_creator",
          "template_owner"
        ]
      },
      "TTemplateVisibility": {
        "type": "string",
        "description": "",
        "enum": [
          "private",
          "shared",
          "public"
        ]
      },
      "TTemplateVisibilityFilter": {
        "type": "string",
        "description": "",
        "enum": [
          "private_shared",
          "private",
          "shared",
          "public"
        ]
      },
      "TUsageType": {
        "type": "string",
        "description": "",
        "enum": [
          "envelope",
          "envelope_canceled",
          "envelope_completed",
          "envelope_expired",
          "sms_invite",
          "template",
          "auth_email",
          "auth_sms",
          "auth_kba",
          "auth_id",
          "auth_passcode"
        ]
      },
      "TWebhookAuthMethod": {
        "type": "string",
        "description": "Methods for authenticating webhook requests.",
        "enum": [
          "none",
          "hmac",
          "client_credentials"
        ]
      },
      "TWebhookEvent": {
        "type": "string",
        "description": "",
        "enum": [
          "envelope_created",
          "envelope_completed",
          "envelope_canceled",
          "envelope_updated",
          "envelope_expired",
          "template_created",
          "template_updated",
          "template_deleted",
          "template_used",
          "recipient_submitted",
          "recipient_updated",
          "recipient_delegated",
          "kba_event",
          "entitlement_used",
          "recipient_invited",
          "recipient_reminded",
          "recipient_opened",
          "recipient_auth_fail",
          "recipient_disclosure_accepted",
          "recipient_docs_downloaded",
          "recipient_invite_failed",
          "recipient_declined",
          "organization_deleted"
        ]
      },
      "TBasicResponse": {
        "type": "object",
        "description": "",
        "required": [
          "status"
        ],
        "properties": {
          "status": {
            "$ref": "#/components/schemas/TRequestStatus"
          },
          "message": {
            "type": "string"
          }
        }
      }
    },
    "responses": {}
  }
}
