Docusign RestAPI - Send Notification to another email - c#

I am using DocuSign API and sending documents to a candidate for signing. As an admin of the DocuSign account, I get a notification email when the candidate viewed/signed or declined the document. Now all I want is to send this admin notification email to another email via API.
Any idea?
PS: I have to trigger the notification email while sending the documents to the candidate.

Viewed/Signed notifications are always sent to the sender of the envelope via DocuSign (out-of-the-box), and you cannot use API or any other DS settings to re-direct these email notifications to someone else who is not in the workflow. Instead you can opt for one the below two options:
a. Add that person's email address first in the routing order as Carbon Copy recipient, once that person is in routing order then he/she has access to the envelope's history, and can always open the envelope and check the envelope history to know who viewed or signed the envelope. But in this case also this person will not receive any viewed/signed envelope email notifications,but he/she can receive any declined/voided email notification.
b. Use DocuSign Connect which is based on publish/subscribe type architecture. Per below screenshot, you can subscribed for interested trigger events, once those events happen then DocuSign will push an XML message to your listener, and once you receive these XML messages then you can use any other email APIs like Gmail etc, to send email notification to anyone interested in receiving such notifications.

Those notifications go to the owner of the envelope, so if you're okay with losing them yourself you can set up a Transfer Rule so that the alternate email address holds the envelope and gets the Sender Notifications.
Documentation on Custody Transfer Rules is available here: https://support.docusign.com/en/guides/ndse-admin-guide-custody-transfer

Related

c# : Approve / Reject through eMail : Not Buttons : Minimal Clicks

I have developed an application, which has got an approval flow. The application approval / reject is working fine and I have been tasked with developing a solution for approval through emails, instead of the users log in on to the application, which anyway uses domain credentials. The application is hosted locally, allowed locally only, and is not published onto any public IPs. This requirement of mail approvals are for Management approvals, who are on the move most of the time and will not be agreeing to go for a VPN Access of the said application.
So far I developed a solution which sends an eMail to the approval authority with 2 URLs (one for approve and other for reject). When the recipient of the mail clicks on the relevant link the action is updated in the database. Until here everything was tested and working fine.
Now in case the mail is forwarded by the authorized approver to a different email ID, they secondary recipient also will be able to click on the relevant links and get the database updated which is not the intended functionality since the secondary recipient is not an authorized approver.
Any suggestions on how to control this are desired.
Edit 1
To the 2 URLs I am sending in mail, I am adding a query string, which is a unique identifier associated with the approval authority ID.
However, if the same mail is forwarded to a secondary recipient, I am not sure on how to validate the eMail ID from which the click originated.
Edit 2
I have tried the suggestions (given in the comments below ). I have generated the mail with Request ID in the subject of the mail and requested the users to reply to that mail with only one word in body either Approve / Reject. I have ensured that the application shall process it in a case insensitive way. However, there were so many typos for one word that I could not imagine the number of combinations I had to cope up with.
I have also tried, having the Request ID in the subject of the mail, and requested the users to reply to that mail by appending either : A for approve or : R for reject (case insensitive). But this again resulted in numerous typos.
You have basically two options
have your users reply to the email with Accept or Reject like you said. In this case, you will have to validate whether the email account in the FROM field has the right to do so.
have your user click a link. In this case, you will HAVE to make the application validate the user based on his login credentials.
There is no other way to go about this. You either have to validate the email sender, or the person has to be logged in to the application. There is no other mechanism available in this scenario.
There might be different ways of implementing these two options, but those are the only options you have.

How to disable auto-reply from users email when mailing via Bot

I have bot for mailing some info to my subscribers via info#domain.com. After sending all mailing, from users comes auto-replied letter like "they got mail, and will answer soon"~something like this.
Question is: How to stop or disable that auto-replied letter from users?
P.S: my mail box filled with auto-replied letters((
I want to get letter when the users himself sends.
P.S: before I used sendgrid service to mailing, so while using sendgrid I never got auto-replied mails. Now it's expensive for me((, so I decided to use just yandex.com service.

Reading Unique mails using gmail API

I am reading mails using Gmail API, where I could successfully download the mails to my system. The idea is to navigate through all the label and download the mails, but that is resulting in duplicate mail downloading, as a single mail can belong to different label.
I tried looking up for label $All to get unique mails but i guess All Mail Label is not supported in latest Gmail API. Is there a way to read unique mails in gmail?
Synchronizing the mailbox can be done using Gmail Synchronization guide:
https://developers.google.com/gmail/api/guides/sync
Use history.list() method of Gmail API with Label ID filter and check for 'messagesAdded' section for Message IDs. You will not get the message body, only IDs, and subsequently have to call message.get() with received Message IDs to get message body.
If a message has multiple labels, history.list() will give you messages directly received in a particular label, hence you will not get the same message twice if you call history.list() with different label IDs.
You can also avoid duplicate messages by handling them in your application by storing each message ID in a cache store such as memcache or an in-memory hash table to avoid processing duplicate messages.

Use Event Notifications to track new signers for draft envelope

My application needs to use both API and Web Portal to prepare DocuSign envelope:
Use API to upload document and initial list of signers
Open web portal to review list of signers and place tabs
My question is: Is there any way to get notified when user add new recipient through web portal?
Initially I was thinking to use customFields for signers but it's not implemented in DocuSign .NET Client.
I also know there is a eventNotification functionality in DocuSign but it seems that it triggers by envelope and recipient status change and ot covers my case.

How to thread emails using custom headers?

Does gmail preserve x-headers in email replies?
I'm developing an application which threads emails and email replies together using a Thread Id.
I add the header through SMTP .net library with the thread id, using the key X-ThreadId.
If I send it to a gmail account, I can see the header in there in the email source. However if I then reply to it, I want that header to be sent in the reply. It seems to drop that particular header.
Does gmail drop header information in the reply email? Is this a generic problem with email? If so, how do I get round this problem?
I can confirm that Gmail does not add X- headers to the new email when you hit reply button.

Categories