├── README.md ├── LICENSE └── ds_ntx_demo.json /README.md: -------------------------------------------------------------------------------- 1 | # DocuSign/Nintex integration demo 2 | 3 | This repo houses a Swagger file to accompany a DocuSign blog post documenting how to configure an integration between DocuSign and Nintex. 4 | 5 | Read the post: [Automate even more with DocuSign for Nintex](https://www.docusign.com/blog/developers/automate-even-more-docusign-nintex) -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2021 DocuSign Inc. 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /ds_ntx_demo.json: -------------------------------------------------------------------------------- 1 | { 2 | "swagger": "2.0", 3 | "info": { 4 | "title": "DocuSign Custom Connector", 5 | "description": "", 6 | "version": "1.0" 7 | }, 8 | "host": "demo.docusign.net", 9 | "basePath": "/restapi/v2.1", 10 | "schemes": [ 11 | "https" 12 | ], 13 | "x-ntx-render-version" : 2, 14 | "consumes": [ 15 | "application/json", 16 | "application/xml" 17 | ], 18 | "produces": [ 19 | "application/json" 20 | ], 21 | "externalDocs": { 22 | "description": "See the DocuSign REST API Guide for more information.", 23 | "url": "https://docs.docusign.com/esign" 24 | }, 25 | "paths": { 26 | "/accounts/{accountId}/envelopes": { 27 | "post": { 28 | "responses": { 29 | "201": { 30 | "description": "Successful response.", 31 | "schema": { 32 | 33 | "type": "object", 34 | "properties": { 35 | "envelopeId": { 36 | "description": "The envelope ID of the envelope status that failed to post.", 37 | "type": "string" 38 | }, 39 | "status": { 40 | "description": "Indicates the envelope status. Valid values are: \n\n* `completed`: The recipients have finished working with the envelope: the documents are signed and all required tabs are filled in.\n* `created`: The envelope is created as a draft. It can be modified and sent later.\n* `declined`: The envelope has been declined by the recipients.\n* `delivered`: The envelope has been delivered to the recipients.\n* `sent`: The envelope will be sent to the recipients after the envelope is created.\n* `signed`: The envelope has been signed by the recipients.\n* `voided`: The envelope is no longer valid and recipients cannot access or sign the envelope.\n", 41 | "type": "string" 42 | }, 43 | "statusDateTime": { 44 | "description": "The DateTime that the envelope changed status (i.e. was created or sent.)", 45 | "type": "string" 46 | } 47 | } 48 | } 49 | 50 | }, 51 | "400": { 52 | "description": "Error encountered.", 53 | "schema": { 54 | "description": "This object describes errors that occur. It is only valid for responses and ignored in requests.", 55 | "type": "object", 56 | "properties": { 57 | "errorCode": { 58 | "description": "The code associated with the error condition.", 59 | "type": "string" 60 | }, 61 | "message": { 62 | "description": "A brief message describing the error condition.", 63 | "type": "string" 64 | } 65 | }, 66 | "x-ds-definition-name": "errorDetails", 67 | "x-ms-summary": "This object describes errors that occur. It is only valid for responses and ignored in requests." 68 | } 69 | } 70 | }, 71 | "summary": "Send Envelope", 72 | "description": "Send Envelope, with SMS Delivery, 2FA, and multiple documents", 73 | "operationId": "Send_envelope", 74 | "parameters": [ 75 | { 76 | "name": "accountId", 77 | "in": "path", 78 | "description": "The external account number (int) or account ID GUID.", 79 | "required": true, 80 | "type": "string" 81 | }, 82 | { 83 | "name": "body", 84 | "in": "body", 85 | "required": false, 86 | "schema": { 87 | "type": "object", 88 | "properties": { 89 | "documents": { 90 | "type": "array", 91 | "items": { 92 | "type": "object", 93 | "properties": { 94 | "documentBase64": { 95 | "type": "string", 96 | "format": "byte", 97 | "description": "documentBase64+byte" 98 | }, 99 | "documentId": { 100 | "type": "string", 101 | "description": "documentId" 102 | }, 103 | "fileExtension": { 104 | "type": "string", 105 | "description": "fileExtension" 106 | }, 107 | "name": { 108 | "type": "string", 109 | "description": "name" 110 | }, 111 | "order": { 112 | "type": "string", 113 | "description": "order" 114 | } 115 | } 116 | }, 117 | "description": "documents" 118 | }, 119 | "emailSubject": { 120 | "type": "string", 121 | "description": "emailSubject" 122 | }, 123 | "recipients": { 124 | "type": "object", 125 | "properties": { 126 | "signers": { 127 | "type": "array", 128 | "items": { 129 | "type": "object", 130 | "properties": { 131 | "email": { 132 | "type": "string", 133 | "description": "email" 134 | }, 135 | "name": { 136 | "type": "string", 137 | "description": "name" 138 | }, 139 | "recipientId": { 140 | "type": "integer", 141 | "format": "int32", 142 | "description": "recipientId" 143 | }, 144 | "roleName": { 145 | "type": "string", 146 | "description": "roleName" 147 | }, 148 | "accessCode": { 149 | "type": "string", 150 | "description": "accessCode" 151 | }, 152 | "additionalNotifications": { 153 | "type": "array", 154 | "items": { 155 | "type": "object", 156 | "properties": { 157 | "secondaryDeliveryMethod": { 158 | "type": "string", 159 | "description": "secondaryDeliveryMethod" 160 | }, 161 | "phoneNumber": { 162 | "type": "object", 163 | "properties": { 164 | "countryCode": { 165 | "type": "string", 166 | "description": "countryCode" 167 | }, 168 | "number": { 169 | "type": "string", 170 | "description": "number" 171 | } 172 | }, 173 | "description": "phoneNumber" 174 | } 175 | } 176 | }, 177 | "description": "additionalNotifications" 178 | } 179 | } 180 | }, 181 | "description": "signers" 182 | }, 183 | "carbonCopies": { 184 | "type": "array", 185 | "items": { 186 | "type": "object", 187 | "properties": { 188 | "email": { 189 | "type": "string", 190 | "description": "email" 191 | }, 192 | "name": { 193 | "type": "string", 194 | "description": "name" 195 | }, 196 | "recipientId": { 197 | "type": "string", 198 | "description": "recipientId" 199 | }, 200 | "roleName": { 201 | "type": "string", 202 | "description": "roleName" 203 | }, 204 | "routingOrder": { 205 | "type": "string", 206 | "description": "routingOrder" 207 | } 208 | } 209 | }, 210 | "description": "carbonCopies" 211 | } 212 | }, 213 | "description": "recipients" 214 | }, 215 | "status": { 216 | "type": "string", 217 | "description": "status" 218 | } 219 | } 220 | } 221 | } 222 | ] 223 | }, 224 | "get": { 225 | "responses": { 226 | "200": { 227 | "description": "Successful response.", 228 | "schema": { 229 | "type": "object", 230 | "properties": { 231 | "continuationToken": { 232 | "description": "A token returned by an earlier API call that you can use with a new call to resume a search query at the point where it left off. This token system enhances the performance of the API.", 233 | "type": "string" 234 | }, 235 | "envelopes": { 236 | "description": "Set of envelope information", 237 | "type": "array", 238 | "items": { 239 | "type": "object", 240 | "properties": { 241 | "documentBase64": { 242 | "description": "The document's bytes. This field can be used to include a base64 version of the document bytes within an envelope definition instead of sending the document using a multi-part HTTP request. The maximum document size is smaller if this field is used due to the overhead of the base64 encoding.", 243 | "type": "string" 244 | }, 245 | "envelopeDocuments": { 246 | "description": "An array containing information about the documents that are included in the envelope.", 247 | "type": "array", 248 | "items": { 249 | "type": "object", 250 | "properties": { 251 | "documentBase64": { 252 | "description": "The document's bytes. This field can be used to include a base64 version of the document bytes within an envelope definition instead of sending the document using a multi-part HTTP request. The maximum document size is smaller if this field is used due to the overhead of the base64 encoding.", 253 | "type": "string" 254 | }, 255 | "documentId": { 256 | "description": "The id of the document that the tab is placed on. This value must refer to the id of an existing document.", 257 | "type": "string" 258 | }, 259 | "name": { 260 | "description": "The document's file name. \n\nExample: `Q1-Report.docx`", 261 | "type": "string" 262 | } 263 | }, 264 | "x-ds-definition-name": "envelopeDocument", 265 | "description": "This object contains details about the envelope document.", 266 | "x-ms-summary": "This object contains details about the envelope document." 267 | } 268 | }, 269 | "envelopeId": { 270 | "description": "The envelope ID of the envelope status that failed to post.", 271 | "type": "string" 272 | }, 273 | "status": { 274 | "description": "Indicates the envelope status. Valid values are:\n\n* `completed`: The recipients have finished working with the envelope: the documents are signed and all required tabs are filled in.\n* `created`: The envelope is created as a draft. It can be modified and sent later.\n* `declined`: The envelope has been declined by the recipients.\n* `delivered`: The envelope has been delivered to the recipients.\n* `sent`: The envelope will be sent to the recipients after the envelope is created.\n* `signed`: The envelope has been signed by the recipients.\n* `voided`: The envelope is no longer valid and recipients cannot access or sign the envelope.\n", 275 | "type": "string" 276 | }, 277 | "statusDateTime": { 278 | "description": "The DateTime that the envelope changed status (i.e. was created or sent.)", 279 | "type": "string" 280 | } 281 | }, 282 | "x-ds-definition-name": "envelope", 283 | "description": "", 284 | "x-ms-summary": "" 285 | 286 | 287 | }}, 288 | "envelopeTransactionStatuses": { 289 | "description": "Array of envelope statuses and transaction IDs in the result set.", 290 | "type": "array", 291 | "items": { 292 | "type": "object", 293 | "properties": { 294 | "envelopeId": { 295 | "description": "The envelope ID of the envelope status that failed to post.", 296 | "type": "string" 297 | }, 298 | "status": { 299 | "description": "Indicates the envelope status. Valid values are:\n\n* `completed`: The recipients have finished working with the envelope: the documents are signed and all required tabs are filled in.\n* `created`: The envelope is created as a draft. It can be modified and sent later.\n* `declined`: The envelope has been declined by the recipients.\n* `delivered`: The envelope has been delivered to the recipients.\n* `sent`: The envelope will be sent to the recipients after the envelope is created.\n* `signed`: The envelope has been signed by the recipients.\n* `voided`: The envelope is no longer valid and recipients cannot access or sign the envelope.\n", 300 | "type": "string" 301 | } 302 | }, 303 | "x-ds-definition-name": "envelopeTransactionStatus", 304 | "description": "", 305 | "x-ms-summary": "" 306 | } 307 | }, 308 | "lastQueriedDateTime": { 309 | "description": "The last time that a query was performed.", 310 | "type": "string" 311 | }, 312 | "resultSetSize": { 313 | "description": "The number of results in this response. Because you can filter which entries are included in the response, this value is always less than or equal to the `totalSetSize`.", 314 | "type": "string" 315 | } 316 | }, 317 | "x-ds-definition-name": "envelopesInformation", 318 | "description": "Result set for the Envelopes: listStatusChanges method", 319 | "x-ms-summary": "Result set for the Envelopes: listStatusChanges method" 320 | 321 | } 322 | }, 323 | "400": { 324 | "description": "Error encountered.", 325 | "schema": { 326 | "description": "This object describes errors that occur. It is only valid for responses and ignored in requests.", 327 | "type": "object", 328 | "properties": { 329 | "errorCode": { 330 | "description": "The code associated with the error condition.", 331 | "type": "string" 332 | }, 333 | "message": { 334 | "description": "A brief message describing the error condition.", 335 | "type": "string" 336 | } 337 | }, 338 | "x-ds-definition-name": "errorDetails", 339 | "x-ms-summary": "This object describes errors that occur. It is only valid for responses and ignored in requests." 340 | } 341 | } 342 | }, 343 | "summary": "Get Envelope", 344 | "description": "Get Envelope", 345 | "operationId": "Get_envelope", 346 | "parameters": [ 347 | { 348 | "name": "accountId", 349 | "in": "path", 350 | "description": "The external account number (int) or account ID GUID.", 351 | "required": true, 352 | "type": "string" 353 | }, 354 | { 355 | "name": "envelope_ids", 356 | "in": "query", 357 | "required": false, 358 | "type": "string" 359 | } 360 | ] 361 | } 362 | } 363 | }, 364 | "definitions": {}, 365 | "parameters": {}, 366 | "responses": {}, 367 | "securityDefinitions": { 368 | "oauth2_auth": { 369 | "type": "oauth2", 370 | "flow": "accessCode", 371 | "authorizationUrl": "https://account-d.docusign.com/oauth/auth", 372 | "tokenUrl": "https://account-d.docusign.com/oauth/token", 373 | "scopes": { 374 | "signature extended": "signature extended" 375 | } 376 | } 377 | }, 378 | "security": [ 379 | { 380 | "oauth2_auth": [ 381 | "signature extended" 382 | ] 383 | } 384 | ], 385 | "tags": [] 386 | } --------------------------------------------------------------------------------