Skip to content

Commit f356956

Browse files
authored
Merge pull request #3 from docusign/1.0.0-rc2-v1.0.0-1.0.4
Version 1.0.0-rc2 release
2 parents 18f431f + f966391 commit f356956

15 files changed

+248
-233
lines changed

CHANGELOG.md

Lines changed: 7 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -1,40 +1,8 @@
1-
## [v1.0.0-rc1] - Maestro API v1.0.0-1.0.3 - 2024-04-03
2-
### Changed
3-
- Added support for version v1.0.0-1.0.3 of the DocuSign Maestro API.
4-
- Updated the SDK release version.
5-
6-
## [v1.0.1-rc1] - Maestro API v1.0.0-1.0.1 - 2024-01-29
7-
### Changed
8-
- Added support for version v1.0.0-1.0.1 of the DocuSign Maestro API.
9-
- Updated the SDK release version.
10-
11-
## [v1.0.0-rc7] - Maestro API v1.0.0-1.0.0 - 2024-01-05
12-
### Changed
13-
- Added support for version v1.0.0-1.0.0 of the DocuSign Maestro API.
14-
- Updated the SDK release version.
15-
16-
## [v1.0.0-rc6] - Maestro API v1.0.0-1.0.0 - 2024-01-04
17-
### Changed
18-
- Added support for version v1.0.0-1.0.0 of the DocuSign Maestro API.
19-
- Updated the SDK release version.
20-
21-
## [v1.0.0-rc5] - Maestro API v1.0.0-1.0.0 - 2023-12-26
22-
### Changed
23-
- Added support for version v1.0.0-1.0.0 of the DocuSign Maestro API.
24-
- Updated the SDK release version.
25-
26-
## [v1.0.0-rc4] - Maestro API v1.0.0-1.0.0 - 2023-12-20
27-
### Changed
28-
- Added support for version v1.0.0-1.0.0 of the DocuSign Maestro API.
29-
- Updated the SDK release version.
30-
31-
## [v1.0.0-rc02] - Maestro API v1.0.0-1.0.0 - 2023-12-19
32-
### Changed
33-
- Added support for version v1.0.0-1.0.0 of the DocuSign Maestro API.
34-
- Updated the SDK release version.
35-
36-
## [v1.0.0-rc01] - Maestro API 1.0.0-1.0.0 - 2023-12-15
37-
### Changed
38-
- Added support for version 1.0.0-1.0.0 of the DocuSign Maestro API.
39-
- Updated the SDK release version.
1+
## [v1.0.0-rc2] - Maestro API v1.0.0-1.0.4 - 2024-04-22
2+
### Breaking Changes
3+
- Updated from System.IdentityModel.Tokens.Jwt to Microsoft.IdentityModel.JsonWebTokens for token handling.
4+
### Other Changes
5+
- Added support for version v1.0.0-1.0.4 of the DocuSign Maestro API.
406

7+
## [v1.0.0-rc1] - Maestro API v1.0.0-1.0.3 - 2024-04-03
8+
- Announcing the Release Candidate SDK built on the OpenAPI specification for DocuSign Maestro APIs.

README.md

Lines changed: 72 additions & 74 deletions
Original file line numberDiff line numberDiff line change
@@ -1,80 +1,78 @@
1-
# DocuSign.Maestro - the C# library for the Maestro API
1+
# The Official Docusign Maestro C# Client SDK
22

3-
Maestro authors and executes experiences that allow non-coders the ability to define Simple Business Process without having to write code and to deploy them seamlessly without having to have development expertise
3+
[![Nuget version][nuget-image]][nuget-url]
4+
[![Nuget downloads][downloads-image]][downloads-url]
45

5-
This C# SDK is automatically generated by the [Swagger Codegen](https://github.com/swagger-api/swagger-codegen) project:
6+
Maestro authors and executes experiences that allow non-coders the ability to define Simple Business Process without having to write code and to deploy them seamlessly without having to have development expertise.
67

7-
- Build package: io.swagger.codegen.languages.CSharpClientCodegen
8-
For more information, please visit [https://developers.docusign.com/](https://developers.docusign.com/)
8+
## Version Information
9+
- **API version**: 1.0.0
10+
- **Latest SDK version (Including prerelease)**: 1.0.0-rc2
911

10-
## Frameworks supported
11-
- .NET 4.0 or later
12-
- Windows Phone 7.1 (Mango)
12+
## Requirements
13+
* Microsoft .NET version 4.6.2+ (4.7 recommended)
14+
* Free [developer account](https://go.docusign.com/o/sandbox/?postActivateUrl=https://developers.docusign.com/)
15+
16+
## Compatibility
17+
* .NET Standard 2.0. See [.NET Standard Selector](https://immo.landwerth.net/netstandard-versions/) for details on versioning for the individual components in .NET Standard.
18+
* .NET Core 2.0 or above.
19+
* Microsoft .NET version 4.6.2+.
20+
* TLS 1.2
21+
22+
## Installation
23+
This SDK is provided as open source, which enables you to customize its functionality to suit your particular use case. To do so, download or clone the repository. If the SDK’s given functionality meets your integration needs, or if you’re working through our [code examples](https://developers.docusign.com/docs/maestro-api/how-to/) from the [Docusign Developer Center](https://developers.docusign.com/), you merely need to install it by following the instructions below.
24+
25+
### NuGet Package Manager:
26+
1. Create a new C# project, or open an existing one.
27+
2. Select **Tools** -> **NuGet Package Manager** -> **Manage NuGet Packages for Solution.**
28+
3. Search for **DocuSign**.
29+
4. Select **DocuSign.Maestro**.
30+
5. Select the check box next to your project name.
31+
6. Click **Install.**
32+
33+
### Package Manager Console:
34+
1. Create a new C# project, or open an existing one.
35+
2. Open the **Package Manager Console** by either method:
36+
1. Clicking **Package Manager Console** along the bottom of Visual Studio
37+
2. Clicking **Tools** -> **NuGet Package Manager** -> **Package Manager Console**
38+
3. In the **Package Manager Console**, type: **Install-Package DocuSign.Maestro**
1339

1440
## Dependencies
15-
- [Json.NET](https://www.nuget.org/packages/Newtonsoft.Json/) - 13.0.1 or later
16-
17-
The DLLs included in the package may not be the latest version. We recommned using [NuGet] (https://docs.nuget.org/consume/installing-nuget) to obtain the latest version of the packages:
18-
```
19-
Install-Package Newtonsoft.Json
20-
```
21-
22-
23-
## Getting Started
24-
25-
```csharp
26-
using System;
27-
using System.Diagnostics;
28-
using DocuSign.Maestro.Api;
29-
using DocuSign.Maestro.Client;
30-
using DocuSign.Maestro.Model;
31-
32-
namespace Example
33-
{
34-
public class Example
35-
{
36-
public void main()
37-
{
38-
39-
// Configure OAuth2 access token for authorization: DSAuth
40-
Configuration.Default.AccessToken = "YOUR_ACCESS_TOKEN";
41-
// Configure API key authorization: DSBearerAuth
42-
Configuration.Default.ApiKey.Add("Authorization", "YOUR_API_KEY");
43-
// Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
44-
// Configuration.Default.ApiKeyPrefix.Add("Authorization", "Bearer");
45-
46-
var apiInstance = new WorkflowInstanceManagementApi();
47-
var accountId = new Guid?(); // Guid? | Account ID
48-
var instanceId = new Guid?(); // Guid? | DS Workflow Instance Id (dacId)
49-
50-
try
51-
{
52-
// Cancels a running workflow instance.
53-
CancelResponse result = apiInstance.CancelWorkflowInstance(accountId, instanceId);
54-
Debug.WriteLine(result);
55-
}
56-
catch (Exception e)
57-
{
58-
Debug.Print("Exception when calling WorkflowInstanceManagementApi.CancelWorkflowInstance: " + e.Message );
59-
}
60-
}
61-
}
62-
}
63-
```
64-
65-
## Documentation for Authorization
66-
67-
68-
### DSAuth
69-
70-
- **Type**: OAuth
71-
- **Flow**: accessCode
72-
- **Authorization URL**: https://account-tk1.tk.docusign.dev/oauth/auth
73-
- **Scopes**:
74-
- aow_manage: Manage workflows scope
75-
76-
### DSBearerAuth
77-
78-
- **Type**: API key
79-
- **API key parameter name**: Authorization
80-
- **Location**: HTTP header
41+
This client has the following external dependencies:
42+
43+
### .NET Standard v2 and .NET Core:
44+
* Newtonsoft.Json v13.0.3
45+
* BouncyCastle.Cryptography v2.3.0
46+
* System.ComponentModel.Annotations v5.0.0
47+
* Microsoft.IdentityModel.JsonWebTokens v7.5.1
48+
49+
### .NET Framework, version 4.6.2:
50+
* Newtonsoft.Json v13.0.3
51+
* BouncyCastle.Cryptography v2.3.0
52+
* System.ComponentModel.Annotations v5.0.0
53+
* Microsoft.IdentityModel.JsonWebTokens v7.5.1
54+
55+
## Code examples
56+
Explore our GitHub repository for the [Launcher](https://github.com/docusign/code-examples-csharp/), a self-executing package housing code examples for the Maestro C# SDK. This package showcases several common use cases and their respective source files. Additionally, you can download a version preconfigured for your Docusign developer account from [Quickstart](https://developers.docusign.com/docs/esign-rest-api/quickstart/). These examples support both the [Authorization Code Grant](https://developers.docusign.com/platform/auth/authcode/) and [JSON Web Token (JWT)](https://developers.docusign.com/platform/auth/jwt/) authentication workflows.
57+
58+
## OAuth implementations
59+
For details regarding which type of OAuth grant will work best for your Docusign integration, see [Choose OAuth Type](https://developers.docusign.com/platform/auth/choose/) in the [Docusign Developer Center](https://developers.docusign.com/).
60+
61+
For security purposes, Docusign recommends using the [Authorization Code Grant](https://developers.docusign.com/platform/auth/authcode/) flow.
62+
63+
## Support
64+
Log issues against this client through GitHub. We also have an [active developer community on Stack Overflow](https://stackoverflow.com/questions/tagged/docusignapi).
65+
66+
## License
67+
The Docusign Maestro C# Client SDK is licensed under the [MIT License](https://github.com/docusign/docusign-maestro-csharp-client/blob/master/LICENSE).
68+
69+
## Additional resources
70+
* [Docusign Developer Center](https://developers.docusign.com/)
71+
* [Docusign API on Twitter](https://twitter.com/docusignapi)
72+
* [Docusign For Developers on LinkedIn](https://www.linkedin.com/showcase/docusign-for-developers/)
73+
* [Docusign For Developers on YouTube](https://www.youtube.com/channel/UCJSJ2kMs_qeQotmw4-lX2NQ)
74+
75+
[nuget-image]: https://img.shields.io/nuget/v/DocuSign.Maestro.svg?style=flat
76+
[nuget-url]: https://www.nuget.org/packages/DocuSign.Maestro
77+
[downloads-image]: https://img.shields.io/nuget/dt/DocuSign.Maestro.svg?style=flat
78+
[downloads-url]: https://www.nuget.org/packages/DocuSign.Maestro

sdk/DocuSign.Maestro.sln

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2,18 +2,18 @@ Microsoft Visual Studio Solution File, Format Version 12.00
22
# Visual Studio 2012
33
VisualStudioVersion = 12.0.0.0
44
MinimumVisualStudioVersion = 10.0.0.1
5-
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "DocuSign.Maestro", "src\DocuSign.Maestro\DocuSign.Maestro.csproj", "{E96CD198-212B-44BC-9613-BA7F03291BDD}"
5+
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "DocuSign.Maestro", "src\DocuSign.Maestro\DocuSign.Maestro.csproj", "{E4D29887-C68D-45BE-90AA-75DB9406A8E8}"
66
EndProject
77
Global
88
GlobalSection(SolutionConfigurationPlatforms) = preSolution
99
Debug|Any CPU = Debug|Any CPU
1010
Release|Any CPU = Release|Any CPU
1111
EndGlobalSection
1212
GlobalSection(ProjectConfigurationPlatforms) = postSolution
13-
{E96CD198-212B-44BC-9613-BA7F03291BDD}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
14-
{E96CD198-212B-44BC-9613-BA7F03291BDD}.Debug|Any CPU.Build.0 = Debug|Any CPU
15-
{E96CD198-212B-44BC-9613-BA7F03291BDD}.Release|Any CPU.ActiveCfg = Release|Any CPU
16-
{E96CD198-212B-44BC-9613-BA7F03291BDD}.Release|Any CPU.Build.0 = Release|Any CPU
13+
{E4D29887-C68D-45BE-90AA-75DB9406A8E8}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
14+
{E4D29887-C68D-45BE-90AA-75DB9406A8E8}.Debug|Any CPU.Build.0 = Debug|Any CPU
15+
{E4D29887-C68D-45BE-90AA-75DB9406A8E8}.Release|Any CPU.ActiveCfg = Release|Any CPU
16+
{E4D29887-C68D-45BE-90AA-75DB9406A8E8}.Release|Any CPU.Build.0 = Release|Any CPU
1717
EndGlobalSection
1818
GlobalSection(SolutionProperties) = preSolution
1919
HideSolutionNode = FALSE

sdk/src/DocuSign.Maestro/Client/Configuration.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ public class Configuration
2626
/// Version of the package.
2727
/// </summary>
2828
/// <value>Version of the package.</value>
29-
public const string Version = "1.0.0-rc1";
29+
public const string Version = "1.0.0-rc2";
3030

3131
/// <summary>
3232
/// Identifier for ISO 8601 DateTime Format

sdk/src/DocuSign.Maestro/Client/DocuSignClient.cs

Lines changed: 15 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99
*/
1010

1111
using DocuSign.Maestro.Client.Auth;
12+
using Microsoft.IdentityModel.JsonWebTokens;
1213
using Microsoft.IdentityModel.Tokens;
1314
using Newtonsoft.Json;
1415
using Org.BouncyCastle.Crypto;
@@ -18,7 +19,6 @@
1819
using System;
1920
using System.Collections;
2021
using System.Collections.Generic;
21-
using System.IdentityModel.Tokens.Jwt;
2222
using System.IO;
2323
using System.Linq;
2424
using System.Net;
@@ -915,7 +915,7 @@ public OAuth.OAuthToken RequestJWTUserToken(string clientId, string userId, stri
915915
{
916916
string privateKey = Encoding.UTF8.GetString(privateKeyBytes);
917917

918-
JwtSecurityTokenHandler handler = new JwtSecurityTokenHandler
918+
JsonWebTokenHandler handler = new JsonWebTokenHandler
919919
{
920920
SetDefaultTimesOnTokenCreation = false
921921
};
@@ -953,12 +953,13 @@ public OAuth.OAuthToken RequestJWTUserToken(string clientId, string userId, stri
953953
throw new ApiException(400, "Private key not supplied or is invalid!");
954954
}
955955

956-
var token = handler.CreateToken(descriptor);
957-
string jwtToken = handler.WriteToken(token);
956+
var jwtToken = handler.CreateToken(descriptor);
958957

959-
var localVarFormParams = new Dictionary<String, String>();
960-
localVarFormParams.Add("grant_type", OAuth.Grant_Type_JWT);
961-
localVarFormParams.Add("assertion", jwtToken);
958+
var localVarFormParams = new Dictionary<string, string>
959+
{
960+
{ "grant_type", OAuth.Grant_Type_JWT },
961+
{ "assertion", jwtToken }
962+
};
962963

963964
DocuSignRequest request = PrepareOAuthRequest(oauthBasePath, $"oauth/token", HttpMethod.Post, Configuration.DefaultHeader?.ToList(), localVarFormParams.ToList());
964965
DocuSignResponse response = RestClient.SendRequest(request);
@@ -1003,7 +1004,7 @@ public OAuth.OAuthToken RequestJWTApplicationToken(string clientId, string oauth
10031004
{
10041005
string privateKey = Encoding.UTF8.GetString(privateKeyBytes);
10051006

1006-
JwtSecurityTokenHandler handler = new JwtSecurityTokenHandler();
1007+
JsonWebTokenHandler handler = new JsonWebTokenHandler();
10071008

10081009
SecurityTokenDescriptor descriptor = new SecurityTokenDescriptor()
10091010
{
@@ -1028,12 +1029,13 @@ public OAuth.OAuthToken RequestJWTApplicationToken(string clientId, string oauth
10281029
throw new ApiException(400, "Private key not supplied or is invalid!");
10291030
}
10301031

1031-
var token = handler.CreateToken(descriptor);
1032-
string jwtToken = handler.WriteToken(token);
1032+
var jwtToken = handler.CreateToken(descriptor);
10331033

1034-
var localVarFormParams = new Dictionary<String, String>();
1035-
localVarFormParams.Add("grant_type", OAuth.Grant_Type_JWT);
1036-
localVarFormParams.Add("assertion", jwtToken);
1034+
var localVarFormParams = new Dictionary<string, string>
1035+
{
1036+
{ "grant_type", OAuth.Grant_Type_JWT },
1037+
{ "assertion", jwtToken }
1038+
};
10371039

10381040
DocuSignRequest request = PrepareOAuthRequest(oauthBasePath, $"oauth/token", HttpMethod.Post, Configuration.DefaultHeader?.ToList(), localVarFormParams.ToList());
10391041
DocuSignResponse response = RestClient.SendRequest(request);

sdk/src/DocuSign.Maestro/DocuSign.Maestro.csproj

Lines changed: 7 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
<TargetFrameworks>net462;netstandard2.0</TargetFrameworks>
55
<IsPackable>true</IsPackable>
66
<PackageId>DocuSign.Maestro</PackageId>
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-maestro-csharp-client repository.</Description>
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-maestro-csharp-client repository.</Description>
88
<Company>DocuSign Inc.</Company>
99
<Owners>DocuSign</Owners>
1010
<Copyright>Copyright © DocuSign 2024</Copyright>
@@ -16,7 +16,7 @@
1616
<RootNamespace>DocuSign.Maestro</RootNamespace>
1717
<AssemblyName>DocuSign.Maestro</AssemblyName>
1818
<NeutralLanguage>en-US</NeutralLanguage>
19-
<VersionPrefix>1.0.0-rc1</VersionPrefix>
19+
<VersionPrefix>1.0.0-rc2</VersionPrefix>
2020
<VersionSuffix/>
2121
<GenerateAssemblyInfo>true</GenerateAssemblyInfo>
2222
<GenerateDocumentationFile>true</GenerateDocumentationFile>
@@ -26,7 +26,7 @@
2626
<PackageLicenseUrl>https://github.com/docusign/docusign-csharp-client/blob/master/LICENSE</PackageLicenseUrl>
2727
<RepositoryUrl>https://github.com/docusign/docusign-csharp-client</RepositoryUrl>
2828
<RepositoryType>git</RepositoryType>
29-
<PackageReleaseNotes>[v1.0.0-rc1] - Maestro API v1.0.0-1.0.3 - 4/3/2024</PackageReleaseNotes>
29+
<PackageReleaseNotes>[v1.0.0-rc2] - Maestro API v1.0.0-1.0.4 - 4/22/2024</PackageReleaseNotes>
3030
</PropertyGroup>
3131
<PropertyGroup Condition=" '$(TargetFramework)' == 'net462'">
3232
<DefineConstants>NET462</DefineConstants>
@@ -38,12 +38,10 @@
3838
<Reference Include="System.Web"/>
3939
</ItemGroup>
4040
<ItemGroup>
41-
<PackageReference Include="Microsoft.CSharp" Version="4.5.0"/>
42-
<PackageReference Include="Newtonsoft.Json" Version="13.0.1"/>
43-
<PackageReference Include="System.ComponentModel.Annotations" Version="4.5.0"/>
44-
<PackageReference Include="Microsoft.IdentityModel.Protocols" Version="5.4.0"/>
45-
<PackageReference Include="System.IdentityModel.Tokens.Jwt" Version="5.4.0"/>
46-
<PackageReference Include="BouncyCastle.Cryptography" Version="2.2.1"/>
41+
<PackageReference Include="Microsoft.IdentityModel.JsonWebTokens" Version="7.5.1"/>
42+
<PackageReference Include="Newtonsoft.Json" Version="13.0.3"/>
43+
<PackageReference Include="System.ComponentModel.Annotations" Version="5.0.0"/>
44+
<PackageReference Include="BouncyCastle.Cryptography" Version="2.3.0"/>
4745
</ItemGroup>
4846
<ItemGroup/>
4947
</Project>

0 commit comments

Comments
 (0)