Signing Url generation for a Signer that is a "reviewer"
Thursday, March 5, 2020 at 12:37pmHello,
I have a scenario where I have a signer that is attached to a package but does not have fields to sign on a document. I am able to generate the url for the signer using this line of code in .NET
var signingUrl = eslClient.GetSigningUrl(new PackageId(id), eSignSigner.SessionToken);
But it only generates when the package is created and not completed yet -- when all signers have signed the document and I debug the code down to where the url comes in, I get a 404 error saying the url can't be found for the user.
Any ideas?
Reply to: Signing Url generation for a Signer that is a "reviewer"
Thursday, March 5, 2020 at 01:16pmHi D'Metrius Agurs,
I just did a quick test, and reviewer should still be able to access the signing ceremony, even after the package has been completed.
However, one thing I noticed after checking both old and recent versions of our .NET SDK is, I can't find the .GetSigningUrl() function directly under the EslClient class, source code here. So could it because you were using a very old version SDK or you have changed some functions to the SDK itself?
Some background information to the issue, there are two types of URLs that allows you to access the signing ceremony:
(1)Signing URL(guide here), which may or may not refers to the signing url in your code. Signing url is the link behind the "Go to Document" button from the invitation email. We have a direct API/SDK function to get the link:
string signingUrl = eslClient.PackageService.GetSigningUrl(packageId, signerId);
From the function, it required a signerID instead of the singer's sessionToken, that's why I am wondering.
(2)A link contains the signer's authentication token(guide here): "https://sandbox.esignlive.com/access?sessionToken={signerAuthToken}"
If you have access to the source code of the SDK, you can share the code snippets of this function to me and I can analyze the code for you.
Duo
Reply to: Hi D'Metrius Agurs, I…
Thursday, March 5, 2020 at 01:27pmHello,
My apologies, I didn't give you enough context around that line of code. We have a method we wrote that uses the GetSigningURL from the PackageService
Here is that method:
public Tuple<ESignStatsNotifier, string> GetSigningUrl(
PackageId packageId,
string signerId)
{
string str = "";
try
{
str = this._client.PackageService.GetSigningUrl(packageId, signerId);
}
catch (Exception ex)
{
this._logger.Error<Exception>(ex);
EslNotificationStatus.EslIsDown = true;
}
finally
{
this.CheckIfEslIsDown();
}
return Tuple.Create<ESignStatsNotifier, string>(FailSafeEslClientWrapper.IsDown ? ESignStatsNotifier.Down : ESignStatsNotifier.Up, str);
}
The SessionToken is the SignerId, we just changed the name of the variable but it has the correct value.
As of right now, at the ceremony creation and the package completion I'm not able to generate the url for the signer I created as such.
packageBuilder
.WithSigner(SignerBuilder.NewSignerWithEmail(sender.Email)
.WithFirstName(sender.FName)
.WithLastName(sender.LName));
and this is how I set up our PackageBuilder
var packageBuilder = PackageBuilder
.NewPackageNamed(packageName)
.DescribedAs(packageDescription);
Reply to: Signing Url generation for a Signer that is a "reviewer"
Thursday, March 5, 2020 at 01:43pmHello D'Metrius Agurs,
I see, the code looks fine to me. Just got a question here, since in your package creation code, you are not specifying CustomID for signer, like below:
.WithSigner(SignerBuilder.NewSignerWithEmail("[email protected]")
.WithFirstName("Signer First Name")
.WithLastName("Signer Last Name")
.WithCustomId("Signer"))
How do you retrieve and pass the signer ID to the signing URL function?
And could you provide me with the package ID so that I can check the package status for you in backoffice?
Duo
Reply to: Hello D'Metrius Agurs, I…
Thursday, March 5, 2020 at 03:51pmAh yes,
I've applied the .WithCustomId() and it did the trick. I was able to pull the Signing Url and apply it to the emails we send out to users!
Thanks,
D'Metrius Agurs