Skip to content

Version 3.1.0 release #20

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
Aug 5, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,8 @@
## [v3.1.0] - WebForms API v1.1.0-1.0.5 - 2025-07-15
### Changed
- Added support for version v1.1.0-1.0.5 of the DocuSign WebForms API.
- Updated the SDK release version.

## [v3.0.2] - WebForms API v1.1.0-1.0.4 - 2024-11-15
### Changed
- Resolved an issue that prevented the use of `RequestJWTApplicationToken` with a production account URL.
Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ This client SDK is provided as open source, which enables you to customize its f
<a id="versionInformation"></a>
### Version Information
- **API version**: 1.1.0
- **Latest SDK version (Including prerelease)**: 3.0.2
- **Latest SDK version (Including prerelease)**: 3.1.0

<a id="requirements"></a>
### Requirements
Expand Down
2 changes: 1 addition & 1 deletion SdkTests/SdkNetCoreTests/Helpers/TestUtils.cs
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ public static TestConfig GetTestConfig()
TestConfig config = new TestConfig();
config.ApiClient = new DocuSignClient(config.Host);
byte[] privateKeyStream = config.PrivateKey;
var scopes = new List<string> { OAuth.Scope_SIGNATURE, OAuth.Scope_IMPERSONATION, "webforms_read", "webforms_write", "webforms_instance_read", "webforms_instance_write" };
var scopes = new List<string> { OAuth.Scope_SIGNATURE, OAuth.Scope_IMPERSONATION, "webforms_read", "webforms_instance_read", "webforms_instance_write" };

OAuth.OAuthToken tokenInfo = config.ApiClient.RequestJWTUserToken(
config.IntegratorKey,
Expand Down
2 changes: 1 addition & 1 deletion SdkTests/SdkNetCoreTests/JwtLoginMethodAPIUnitTest.cs
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ public void RequestJWTUserToken_CorrectInputParameters_ReturnsOAuthToken()

byte[] privateKeyStream = testConfig.PrivateKey;

var scopes = new List<string> { OAuth.Scope_IMPERSONATION, OAuth.Scope_SIGNATURE, "webforms_read", "webforms_write", "webforms_instance_read", "webforms_instance_write" };
var scopes = new List<string> { OAuth.Scope_IMPERSONATION, OAuth.Scope_SIGNATURE, "webforms_read", "webforms_instance_read", "webforms_instance_write" };

OAuth.OAuthToken tokenInfo = testConfig.ApiClient.RequestJWTUserToken(
testConfig.IntegratorKey,
Expand Down
2 changes: 1 addition & 1 deletion SdkTests/SdkTests462/Helpers/TestUtils.cs
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ public static TestConfig GetTestConfig()
TestConfig config = new TestConfig();
config.ApiClient = new DocuSignClient(config.Host);
byte[] privateKeyStream = config.PrivateKey;
var scopes = new List<string> { OAuth.Scope_SIGNATURE, OAuth.Scope_IMPERSONATION, "webforms_read", "webforms_write", "webforms_instance_read", "webforms_instance_write" };
var scopes = new List<string> { OAuth.Scope_SIGNATURE, OAuth.Scope_IMPERSONATION, "webforms_read", "webforms_instance_read", "webforms_instance_write" };

OAuth.OAuthToken tokenInfo = config.ApiClient.RequestJWTUserToken(
config.IntegratorKey,
Expand Down
2 changes: 1 addition & 1 deletion SdkTests/SdkTests462/JwtLoginMethodAPIUnitTest.cs
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ public void RequestJWTUserToken_CorrectInputParameters_ReturnsOAuthToken()

byte[] privateKeyStream = testConfig.PrivateKey;

var scopes = new List<string> { OAuth.Scope_IMPERSONATION, OAuth.Scope_SIGNATURE, "webforms_read", "webforms_write", "webforms_instance_read", "webforms_instance_write" };
var scopes = new List<string> { OAuth.Scope_IMPERSONATION, OAuth.Scope_SIGNATURE, "webforms_read", "webforms_instance_read", "webforms_instance_write" };

OAuth.OAuthToken tokenInfo = testConfig.ApiClient.RequestJWTUserToken(
testConfig.IntegratorKey,
Expand Down
10 changes: 5 additions & 5 deletions sdk/DocuSign.WebForms.sln
Original file line number Diff line number Diff line change
Expand Up @@ -2,18 +2,18 @@ Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio 2012
VisualStudioVersion = 12.0.0.0
MinimumVisualStudioVersion = 10.0.0.1
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "DocuSign.WebForms", "src\DocuSign.WebForms\DocuSign.WebForms.csproj", "{4AE28682-D190-4CF6-AD55-06142B257C28}"
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "DocuSign.WebForms", "src\DocuSign.WebForms\DocuSign.WebForms.csproj", "{A656E25E-B9A1-4CFD-8318-31FF88B938A4}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
Release|Any CPU = Release|Any CPU
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{4AE28682-D190-4CF6-AD55-06142B257C28}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{4AE28682-D190-4CF6-AD55-06142B257C28}.Debug|Any CPU.Build.0 = Debug|Any CPU
{4AE28682-D190-4CF6-AD55-06142B257C28}.Release|Any CPU.ActiveCfg = Release|Any CPU
{4AE28682-D190-4CF6-AD55-06142B257C28}.Release|Any CPU.Build.0 = Release|Any CPU
{A656E25E-B9A1-4CFD-8318-31FF88B938A4}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{A656E25E-B9A1-4CFD-8318-31FF88B938A4}.Debug|Any CPU.Build.0 = Debug|Any CPU
{A656E25E-B9A1-4CFD-8318-31FF88B938A4}.Release|Any CPU.ActiveCfg = Release|Any CPU
{A656E25E-B9A1-4CFD-8318-31FF88B938A4}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
Expand Down
2 changes: 1 addition & 1 deletion sdk/src/DocuSign.WebForms/Client/Configuration.cs
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ public class Configuration
/// Version of the package.
/// </summary>
/// <value>Version of the package.</value>
public const string Version = "3.0.2";
public const string Version = "3.1.0";

/// <summary>
/// Identifier for ISO 8601 DateTime Format
Expand Down
6 changes: 3 additions & 3 deletions sdk/src/DocuSign.WebForms/DocuSign.WebForms.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
<Description>The Docusign NuGet package makes integrating Docusign into your apps and websites a super fast and painless process. The library is open sourced on GitHub, look for the docusign-webforms-csharp-client repository.</Description>
<Company>DocuSign Inc.</Company>
<Owners>DocuSign</Owners>
<Copyright>Copyright © Docusign 2024</Copyright>
<Copyright>Copyright © Docusign 2025</Copyright>
<AssemblyTitle>DocuSign.WebForms</AssemblyTitle>
<Authors>DocuSign</Authors>
<OutputType>Library</OutputType>
Expand All @@ -16,7 +16,7 @@
<RootNamespace>DocuSign.WebForms</RootNamespace>
<AssemblyName>DocuSign.WebForms</AssemblyName>
<NeutralLanguage>en-US</NeutralLanguage>
<VersionPrefix>3.0.2</VersionPrefix>
<VersionPrefix>3.1.0</VersionPrefix>
<VersionSuffix/>
<GenerateAssemblyInfo>true</GenerateAssemblyInfo>
<GenerateDocumentationFile>true</GenerateDocumentationFile>
Expand All @@ -26,7 +26,7 @@
<PackageLicenseUrl>https://github.com/docusign/docusign-webforms-csharp-client/blob/master/LICENSE</PackageLicenseUrl>
<RepositoryUrl>https://github.com/docusign/docusign-webforms-csharp-client</RepositoryUrl>
<RepositoryType>git</RepositoryType>
<PackageReleaseNotes>[v3.0.2] - WebForms API v1.1.0-1.0.4 - 11/15/2024</PackageReleaseNotes>
<PackageReleaseNotes>[v3.1.0] - WebForms API v1.1.0-1.0.5 - 7/15/2025</PackageReleaseNotes>
</PropertyGroup>
<PropertyGroup Condition=" '$(TargetFramework)' == 'net462'">
<DefineConstants>NET462</DefineConstants>
Expand Down
45 changes: 34 additions & 11 deletions sdk/src/DocuSign.WebForms/Model/CreateInstanceRequestBody.cs
Original file line number Diff line number Diff line change
Expand Up @@ -38,35 +38,36 @@ public CreateInstanceRequestBody()
[DataMember(Name="authenticationMethod", EmitDefaultValue=false)]
public AuthenticationMethod? AuthenticationMethod { get; set; }
/// <summary>
/// Gets or Sets SendOption
/// </summary>
[DataMember(Name="sendOption", EmitDefaultValue=false)]
public SendOption? SendOption { get; set; }
/// <summary>
/// Initializes a new instance of the <see cref="CreateInstanceRequestBody" /> class.
/// </summary>
/// <param name="FormValues">FormValues.</param>
/// <param name="ClientUserId">ClientUserId (required).</param>
/// <param name="ClientUserId">ClientUserId.</param>
/// <param name="AuthenticationInstant">AuthenticationInstant.</param>
/// <param name="AuthenticationMethod">AuthenticationMethod.</param>
/// <param name="AssertionId">AssertionId.</param>
/// <param name="SecurityDomain">SecurityDomain.</param>
/// <param name="ReturnUrl">ReturnUrl.</param>
/// <param name="ExpirationOffset">ExpirationOffset.</param>
/// <param name="SendOption">SendOption.</param>
/// <param name="Recipients">The recipients who will receive the form in email.</param>
/// <param name="Tags">List of tags provided by the user with each request. This field is optional..</param>
public CreateInstanceRequestBody(WebFormValues FormValues = default(WebFormValues), string ClientUserId = default(string), string AuthenticationInstant = default(string), AuthenticationMethod? AuthenticationMethod = default(AuthenticationMethod?), string AssertionId = default(string), string SecurityDomain = default(string), string ReturnUrl = default(string), long? ExpirationOffset = default(long?), List<string> Tags = default(List<string>))
public CreateInstanceRequestBody(WebFormValues FormValues = default(WebFormValues), string ClientUserId = default(string), string AuthenticationInstant = default(string), AuthenticationMethod? AuthenticationMethod = default(AuthenticationMethod?), string AssertionId = default(string), string SecurityDomain = default(string), string ReturnUrl = default(string), long? ExpirationOffset = default(long?), SendOption? SendOption = default(SendOption?), List<CreateInstanceRequestBodyRecipients> Recipients = default(List<CreateInstanceRequestBodyRecipients>), List<string> Tags = default(List<string>))
{
// to ensure "ClientUserId" is required (not null)
if (ClientUserId == null)
{
throw new InvalidDataException("ClientUserId is a required property for CreateInstanceRequestBody and cannot be null");
}
else
{
this.ClientUserId = ClientUserId;
}
this.FormValues = FormValues;
this.ClientUserId = ClientUserId;
this.AuthenticationInstant = AuthenticationInstant;
this.AuthenticationMethod = AuthenticationMethod;
this.AssertionId = AssertionId;
this.SecurityDomain = SecurityDomain;
this.ReturnUrl = ReturnUrl;
this.ExpirationOffset = ExpirationOffset;
this.SendOption = SendOption;
this.Recipients = Recipients;
this.Tags = Tags;
}

Expand Down Expand Up @@ -106,6 +107,12 @@ public CreateInstanceRequestBody()
[DataMember(Name="expirationOffset", EmitDefaultValue=false)]
public long? ExpirationOffset { get; set; }
/// <summary>
/// The recipients who will receive the form in email
/// </summary>
/// <value>The recipients who will receive the form in email</value>
[DataMember(Name="recipients", EmitDefaultValue=false)]
public List<CreateInstanceRequestBodyRecipients> Recipients { get; set; }
/// <summary>
/// List of tags provided by the user with each request. This field is optional.
/// </summary>
/// <value>List of tags provided by the user with each request. This field is optional.</value>
Expand All @@ -127,6 +134,8 @@ public override string ToString()
sb.Append(" SecurityDomain: ").Append(SecurityDomain).Append("\n");
sb.Append(" ReturnUrl: ").Append(ReturnUrl).Append("\n");
sb.Append(" ExpirationOffset: ").Append(ExpirationOffset).Append("\n");
sb.Append(" SendOption: ").Append(SendOption).Append("\n");
sb.Append(" Recipients: ").Append(Recipients).Append("\n");
sb.Append(" Tags: ").Append(Tags).Append("\n");
sb.Append("}\n");
return sb.ToString();
Expand Down Expand Up @@ -204,6 +213,16 @@ public bool Equals(CreateInstanceRequestBody other)
this.ExpirationOffset != null &&
this.ExpirationOffset.Equals(other.ExpirationOffset)
) &&
(
this.SendOption == other.SendOption ||
this.SendOption != null &&
this.SendOption.Equals(other.SendOption)
) &&
(
this.Recipients == other.Recipients ||
this.Recipients != null &&
this.Recipients.SequenceEqual(other.Recipients)
) &&
(
this.Tags == other.Tags ||
this.Tags != null &&
Expand Down Expand Up @@ -238,6 +257,10 @@ public override int GetHashCode()
hash = hash * 59 + this.ReturnUrl.GetHashCode();
if (this.ExpirationOffset != null)
hash = hash * 59 + this.ExpirationOffset.GetHashCode();
if (this.SendOption != null)
hash = hash * 59 + this.SendOption.GetHashCode();
if (this.Recipients != null)
hash = hash * 59 + this.Recipients.GetHashCode();
if (this.Tags != null)
hash = hash * 59 + this.Tags.GetHashCode();
return hash;
Expand Down
Loading