The DocuSign account created is by an individual, but when using the DocuSign API to generate an envelope from a template and sending to a receiver, the name and email address of the account holder shows up instead of the company the user works for.
Is there a way to show company name and official company email instead of the account user's name/email?
The name and email address corresponding to the sending DocuSign user account will always be shown on/for sent envelopes. That being said, there's an easy way to achieve what you describe:
Create another "user" (i.e., membership) within the same DocuSign account -- this will represent the "system sender" user account -- i.e., the user account that you'll specify when sending envelopes with the API.
When creating the new "user", set name and email address to the values that you want to see/use for envelopes you send via the API.
Make sure to grant the new "user" the appropriate API-related settings (under the DocuSign API heading when viewing User Permissions).
Use the "system sender user" credentials to send envelopes via the API.
Keep in mind that when using this "system sender" user to send envelopes via the API, that user will be considered the sender of each envelope sent using that account's credentials -- which means that only that user's credentials can be used via the DocuSign web console to access the DocuSign envelope for viewing/correcting/etc. Other members of that same DocuSign account won't be able to access the envelope via the DocuSign web console unless you explicitly grant 'folder sharing' rights between users.
Related
I'm successfully using the OAuth Authorization Code Grant flow to authenticate with DocuSign and send envelopes. When the email notification is received by the signer recipient there are a number of references to the name/email address of the DocuSign Account, e.g. the sender appears as:
Fred Smith via DocuSign <dse_demo#docusign.net>
And in the body of the email it includes Fred Smith and their email address fred#acme.com. We would like to be able to dynamically/programatically change these references in the email notifications that are sent when we create the envelope.
I haven't seen any options for this in the API docs so far - is this is possible using the Authorization Code Grant flow?
#Anu6is (see comment) is correct. The sender of the DocuSign envelope will be shown as the sender in the email notification (if used).
If your DocuSign account has multiple registered users, then your application can change the sender by either:
having the different sender authenticate with the application (OAuth Authorize Code or Implicit grants)
using the JWT grant to programmatically impersonate the different account users and to send on their behalf
I am using the Docusign Apex Toolkit in Salesforce to send emails as outlined here:
https://developers.docusign.com/salesforce/code-examples/salesforce-sending-signing-template
The email is sent when a case field is updated to a specific value via a trigger.
This works perfectly if I am a signed in user. However, if the user doing this is a guest then the following error is thrown:
You must have DocuSign sender permissions to perform this operation
Class.dfsle.Permissions.verifyIsDocuSignSender: line 300, column 1↵Class.dfsle.Permissions.verifyIsDocuSignSender: line 295
As this is the guest user I am unable to assign the permission sets to them as there is no user.
I have given permissions to all dosusign objects and fields to the guest user profile.
How can I allow emails to be sent automatically via apex in a trigger for guest users?
DocuSign envelope can be created only by users who have DS Account and have atleast a Sender permission. It is like GMAIL, you will be able to send an email from GMAIL domain if you are a GMAIL user.
So in case of the Guest user, they will come to your App but your App should make DS API call to DocuSign with any System user credentials (like apiuser#system.com) who is a user in your DS Account. Auth Type Doc explains this type of flow.
When using the Docusign API (in my case, via the Sandbox/demo env), in the signing view at the top of the screen it displays the name & company of the user account that was used to authenticate with the API.
However, because this is embedded signing from my app, I would have thought we'd only have one user account - for the app. So I want to change what appears at the top there - the information on the sender of the envelope. Either to be the user account that exists in my app that created the envelope, or just to state what company sent the document.
Are there options on the API to do this? I can't see any reference to anything like this in the envelopeDefinition JSON structure in the REST API docs.
You can use the DocuSign SOBO - Send On Behalf Of Functionality
The Send On Behalf Of feature permits automated sending through the API by one account user on behalf of another account user.
More information here
given a demo docusign account with a template, through the api i have created a group with default permission profile of "Docusign Sender" and created a user profile and a membership to the group. using the new user profiles creds (and the account id of the parent docusign account), i can fetch templates shared by the docusign account but i cannot create an envelope from such a template. the error message received is:
USER_LACKS_PERMISSIONS : This user lacks sufficient permissions to access this resource
i can post more details if necessary but perhaps this is a well-known behavior that i just have been unable to resolve through researching the api and stackoverflow.
We discussed that you are using REST to grab shared templates to create envelopes.
When creating a user profile from API those users do not have the correct permission set. When creating the same user from the web console it works. One suggestion might be to grab the permission set of an known good user and compare it to the profile obtained from a user created by your API request:
https://www.docusign.com/p/RESTAPIGuide/RESTAPIGuide.htm#REST%20API%20References/Get%20Use%20Profile.htm?Highlight=profile
https://www.docusign.com/p/RESTAPIGuide/RESTAPIGuide.htm#REST%20API%20References/Get%20Group%20Information.htm
it seems this particular error message is what happens when a user profile attempts to create an envelope (at least from a template in this case) while specifying a bccEmailAddresses recipient under emailSettings. if this bcc recipient is removed, envelope creation succeeds. of course, specifying a bcc recipient is no problem using the parent account's credentials.
I'm using the DocuSign REST API (from a developer demo account) to send a document to an e-mail address that already has a DocuSign account (free account). The user gets the DocuSign notification in their e-mail but not in their DocuSign web interface .........Am I doing something wrong ? Is there a specific API that I have to use so that the documents go into the users' DocuSign web interface ( if the user has an account associated with the e-mail address ).
Cheers !
My request is the following:
--b2cb90e7^M
Content-Type: application/json^M
Content-Disposition: form-data^M
^M
{"status":"sent","emailBlurb":"Please review and sign this report.","emailSubject":"Patient Report","documents":[{"documentId":"1","name":"TEST006.pdf"}],"recipients":{"signers":[{"recipientId":1,"name":"Some Name","email":"somename#company.com","tabs":{"signHereTabs":[{"xPosition":42,"yPosition":42,"documentId":1,"pageNumber":1}]}},{"recipientId":2,"name":"Some Name","email":"some.name#gmail.com","tabs":{"signHereTabs":[{"xPosition":42,"yPosition":42,"documentId":1,"pageNumber":1}]}}]}}^M
--b2cb90e7^M
Content-Type: application/pdf^M
Content-Disposition: file; filename="TEST006.pdf"; documentId=1^M
^M
etc.
Do I understand correctly that your scenario is as follows?
The Envelope is being created/sent via API in the DocuSign Demo environment (http://demo.docusign.net).
The DocuSign account owned by the recipient of the Envelope is a "Free Trial" account. (It's a "Free Trial" account if it's accessed via either http://www.docusign.net or http://na2.docusign.net -- this is the DocuSign Production environment.)
If that's your scenario, then the reason that the Envelope's never showing up in the recipient's DocuSign Inbox (within their "Free Trial" account) is because an Envelope that's sent from the DocuSign Demo environment will never be delivered to a DocuSign user's Inbox in the DocuSign Production environment -- and "Free Trial" accounts technically reside in the DocuSign Production environment.
If you want to test the scenario of sending an Envelope via API in the Demo environment and have it arrive in a user's DocuSign Inbox, then that user account will need to exist in the DocuSign Demo environment as well. You can either add that user as a new user within the same account that you're API calls are using, or create that user under an altogether separate DocuSign account by simply creating another "DocuSign Developer account" via the DocuSign Dev Center.