migrating-from-soap

If you are using the legacy Adobe Sign SOAP APIs, we highly recommend migrating your apps to consume the REST APIs. The table below will help you migrate by providing the REST equivalents for the existing SOAP methods.

SOAP API REST Endpoint Description
getBaseUris /base_uris, GET Base URIs – API calls starting v5 of REST API must be made on a specific base URL obtained either from the api_access_point returned from OAuth workflow or making a call to the GET /base_uris endpoint.
sendDocument /agreements, POST SenderInfo is represented through x-api-user. Files are specified through /transientDocuments above
sendDocumentInteractive /agreements, POST InteractiveOptions can be optionally specified for the Interactive behavior
sendDocumentMegaSign /megaSigns, POST MegaSign allows sending the same agreement to multiple recipients and creating a separate instance of agreement for each recipient
createLibraryDocument /libraryDocuments, POST  
createLibraryDocumentInteractive /libraryDocuments, POST InteractiveOptions can be optionally specified for the Interactive behavior
sendReminder /reminders, POST  
removeDocument /agreements/{agrId}, DELETE Deletes the agreement and removes it from Manage Page
cancelDocument /agreements/{agrId}/status, PUT Cancel - Called by sender
rejectDocument /agreements/{agrId}/status, PUT Reject - Called by current signer
replaceSigner /agreements/{agrId}/participantSets/{psId}/ participants/{pId}/alternateParticipants, POST Replace – Called by sender. Both the original signer and new one can sign
delegateSigning /agreements/{agrId}/participantSets/{psId}/ participants/{pId}/alternateParticipants, POST Delegate – Called by signer. Both the delegator and delegatee can sign
getDocumentInfo /agreements/{agrId}, GET In SOAP API, getDocumentInfo, getDocuments, getAuditTrail etc work on documentKeys which can be an agreement, widget or library document ids. REST API demarcates these as separate resources (cleaner design and strongly typed) and hence based on the kind of resource you are working on, there is a corresponding /libraryDocuments, /widgets to these. Example: /widgets/{widgetId}, GET will getDocumentInfo for widgetId. Similarly for the documents, audit trail etc.
getDocumentInfosByExternalId /agreements, GET query = externalId externalId can be used to map your internal Ids to eSign Ids
getDocuments /agreements/{agrId}/documents, GET REST returns a list of document ids that can be provided to the following end-point to get document stream
getDocumentUrls /agreements/{agrId}/combinedDocument/ url, GET
/agreements/{agrId}/documents/{docId}/ url, GET
Retrieve the URL of the combined document
Retrieve the URL of an individual document
getDocumentImageUrls /agreements/{agrId}/documents/imageUrls, GET
/agreements/{agrId}/documents/{docId}/ imageUrls, GET
Retrieve the image URLs of all the visible pages of an agreement
Retrieve image URLs of all the visible pages of an agreement’s document
getSupportingDocuments /agreements/{agrId}/documents, GET Can also specify content format
getFormData /agreements/{agrId}/formData, GET Returns CSV file stream
getAuditTrail /agreements/{agrId}/auditTrail, GET  
getSigningUrl /agreements/{agrId}/signingUrls, GET  
searchUserDocuments /agreements, GET Provide search string in ‘query’ parameter
getDocumentEventsForUser /search/agreementAssetEvents, POST Create search query with date range and event type filters. Get searchId, first page results & next page cursor
getEmbeddedView /views/agreementAssets, GET Equivalent to specifying EmbeddedViewTarget= AGREEMENT
getMyDocuments /agreements, GET  
getUserDocuments /agreements, GET Use x-api-user for specifying the user whose agreements are to be retrieved
getMyLibraryDocuments /libraryDocuments, GET  
getLibraryDocumentsForUser /libraryDocuments, GET Use x-api-user for specifying the user whose lib documents are to be retrieved
getMyWidgets /widgets, GET  
getWidgetsForUser /widgets, GET Use x-api-user for specifying the user whose widgets are to be retrieved
getMegaSignDocument /megaSigns/{megaSignId}/agreements, GET Get all child agreement ids of the parent MegaSign
getUsersInAccount /users, GET  
createGroup /groups, POST  
deleteGroup /groups/{groupId}, DELETE  
renameGroup /groups/{groupId}, PUT  
getGroupsInAccount /groups, GET  
getUsersInGroups /groups/{groupId}/users, GET  
moveUsersToGroup /users/{userId}, PUT Specify the new groupId in the request
getUserInfo /users/{userId}, GET  
createEmbeddedWidget /widgets, POST  
createPersonalEmbeddedWidget /widgets, POST/widgets/{widgetId}/personalize, PUT Create and personalize
personalizeEmbeddedWidget /widgets/{widgetId}/personalize, PUT  
createUrlWidget /widgets, POST  
createPersonalUrlWidget /widgets, POST/widgets/{widgetId}/personalize, PUT Create and personalize
personalizeUrlWidget /widgets/{widgetId}/personalize, PUT  
disableWidget /widgets/{widgetId}/status, PUT Use status value as DISABLE
enableWidget /widgets/{widgetId}/status, PUT Use status value as ENABLE