();
15 |
16 | [JsonProperty("Name")]
17 | public string Name { get; set; }
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/launcher-csharp/wwwroot/lib/jquery-validation-unobtrusive/LICENSE.txt:
--------------------------------------------------------------------------------
1 | Copyright (c) .NET Foundation. All rights reserved.
2 |
3 | Licensed under the Apache License, Version 2.0 (the "License"); you may not use
4 | these files except in compliance with the License. You may obtain a copy of the
5 | License at
6 |
7 | http://www.apache.org/licenses/LICENSE-2.0
8 |
9 | Unless required by applicable law or agreed to in writing, software distributed
10 | under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
11 | CONDITIONS OF ANY KIND, either express or implied. See the License for the
12 | specific language governing permissions and limitations under the License.
13 |
--------------------------------------------------------------------------------
/launcher-csharp/Rooms/Views/AssignFormToFormGroups/Reg009.cshtml:
--------------------------------------------------------------------------------
1 | @model DocuSign.CodeExamples.Rooms.Controllers.AssignFormToFormGroups
2 |
3 | 9. @Html.Raw(ViewBag.CodeExampleText.ExampleName)
4 |
5 | @Html.Raw(ViewBag.CodeExampleText.ExampleDescription)
6 |
7 |
8 |
9 |
10 | @Html.Raw(
11 | @String.Format(
12 | ViewBag.SupportingTexts.ViewSourceFile,
13 | "AssignFormToFormGroups.cs "
14 | )
15 | )
16 |
17 |
18 |
--------------------------------------------------------------------------------
/launcher-csharp/eSignature/Models/Locals.cs:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) Docusign. All rights reserved.
3 | //
4 |
5 | namespace DocuSign.CodeExamples.Models
6 | {
7 | using System;
8 | using System.Collections.Generic;
9 | using System.Linq;
10 | using System.Threading.Tasks;
11 |
12 | public class Locals
13 | {
14 | public DsConfiguration DsConfig { get; set; }
15 |
16 | public User User { get; set; }
17 |
18 | public Session Session { get; set; }
19 |
20 | public string Messages { get; set; }
21 |
22 | public object Json { get; internal set; }
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/launcher-csharp/wwwroot/lib/jquery/.bower.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "jquery",
3 | "main": "dist/jquery.js",
4 | "license": "MIT",
5 | "ignore": [
6 | "package.json"
7 | ],
8 | "keywords": [
9 | "jquery",
10 | "javascript",
11 | "browser",
12 | "library"
13 | ],
14 | "homepage": "https://github.com/jquery/jquery-dist",
15 | "version": "3.3.1",
16 | "_release": "3.3.1",
17 | "_resolution": {
18 | "type": "version",
19 | "tag": "3.3.1",
20 | "commit": "9e8ec3d10fad04748176144f108d7355662ae75e"
21 | },
22 | "_source": "https://github.com/jquery/jquery-dist.git",
23 | "_target": "^3.3.1",
24 | "_originalSource": "jquery",
25 | "_direct": true
26 | }
--------------------------------------------------------------------------------
/launcher-csharp/Rooms/Models/RoomFilterModel.cs:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) Docusign. All rights reserved.
3 | //
4 |
5 | namespace DocuSign.CodeExamples.Rooms.Models
6 | {
7 | using System;
8 |
9 | public class RoomFilterModel
10 | {
11 | public RoomFilterModel()
12 | {
13 | this.FieldDataChangedStartDate = DateTimeOffset.Now.AddDays(-10);
14 | this.FieldDataChangedEndDate = DateTimeOffset.Now;
15 | }
16 |
17 | public DateTimeOffset FieldDataChangedStartDate { get; set; }
18 |
19 | public DateTimeOffset FieldDataChangedEndDate { get; set; }
20 | }
21 | }
--------------------------------------------------------------------------------
/launcher-csharp/Rooms/Views/CreateRoomFromTemplate/Reg002.cshtml:
--------------------------------------------------------------------------------
1 | @model DocuSign.CodeExamples.Rooms.Controllers.CreateRoomFromTemplate
2 |
3 | 2. @Html.Raw(ViewBag.CodeExampleText.ExampleName)
4 |
5 | @Html.Raw(ViewBag.CodeExampleText.ExampleDescription)
6 |
7 |
8 |
9 |
10 | @Html.Raw(
11 | @String.Format(
12 | ViewBag.SupportingTexts.ViewSourceFile,
13 | "CreateRoomFromTemplate.cs "
14 | )
15 | )
16 |
17 |
18 |
19 |
--------------------------------------------------------------------------------
/launcher-csharp/Rooms/Views/GrantOfficeAccessToFormGroup/Reg008.cshtml:
--------------------------------------------------------------------------------
1 | @model DocuSign.CodeExamples.Rooms.Controllers.GrantOfficeAccessToFormGroup
2 |
3 | 8. @Html.Raw(ViewBag.CodeExampleText.ExampleName)
4 |
5 | @Html.Raw(ViewBag.CodeExampleText.ExampleDescription)
6 |
7 |
8 |
9 |
10 | @Html.Raw(
11 | @String.Format(
12 | ViewBag.SupportingTexts.ViewSourceFile,
13 | "GrantOfficeAccessToFormGroup.cs "
14 | )
15 | )
16 |
17 |
18 |
19 |
--------------------------------------------------------------------------------
/launcher-csharp/Monitor/Models/MonitorFilterModel.cs:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) Docusign. All rights reserved.
3 | //
4 |
5 | namespace DocuSign.CodeExamples.Monitor.Models
6 | {
7 | using System;
8 |
9 | public class MonitorFilterModel
10 | {
11 | public MonitorFilterModel()
12 | {
13 | this.FieldDataChangedStartDate = DateTimeOffset.Now.AddDays(-10);
14 | this.FieldDataChangedEndDate = DateTimeOffset.Now;
15 | }
16 |
17 | public DateTimeOffset FieldDataChangedStartDate { get; set; }
18 |
19 | public DateTimeOffset FieldDataChangedEndDate { get; set; }
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/launcher-csharp/eSignature/Models/AccountRoleSettingsExtension.cs:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) Docusign. All rights reserved.
3 | //
4 |
5 | namespace DocuSign.CodeExamples.Models
6 | {
7 | using DocuSign.eSign.Model;
8 |
9 | ///
10 | /// Temporary subclass for AccountRoleSettings
11 | /// This class is needed for now until DCM-3905 is ready
12 | ///
13 | public class AccountRoleSettingsExtension : AccountRoleSettings
14 | {
15 | [System.Runtime.Serialization.DataMember(Name = "signingUIVersion", EmitDefaultValue = false)]
16 | public string SigningUiVersion { get; set; }
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/launcher-csharp/eSignature/Models/Session.cs:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) Docusign. All rights reserved.
3 | //
4 |
5 | namespace DocuSign.CodeExamples.Models
6 | {
7 | public class Session
8 | {
9 | public string AccountId { get; set; }
10 |
11 | public string AccountName { get; set; }
12 |
13 | public string BasePath { get; set; }
14 |
15 | public string WebFormsBasePath { get; set; }
16 |
17 | public string RoomsApiBasePath { get; set; }
18 |
19 | public string AdminApiBasePath { get; set; }
20 |
21 | public string MaestroApiBasePath { get; set; }
22 |
23 | public string IamBasePath { get; set; }
24 | }
25 | }
--------------------------------------------------------------------------------
/launcher-csharp/GlobalSuppressions.cs:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) Docusign. All rights reserved.
3 | //
4 |
5 | using System.Diagnostics.CodeAnalysis;
6 |
7 | [assembly: SuppressMessage("StyleCop.CSharp.MaintainabilityRules", "SA1401:Fields should be private", Justification = "The class in question is used as static", Scope = "member", Target = "~F:DocuSign.CodeExamples.Common.Languages.SupportedLanguages")]
8 | [assembly: SuppressMessage("StyleCop.CSharp.SpacingRules", "SA1005:Single line comments should begin with single space", Justification = "Specific comments for DocuSign tools", Scope = "member", Target = "~M:DocuSign.CodeExamples.Admin.Controllers.CreateClmeSignUser.InitializeInternal")]
9 |
--------------------------------------------------------------------------------
/launcher-csharp/WebForms/Views/CreateRemoteInstance/web002.cshtml:
--------------------------------------------------------------------------------
1 | @Html.Raw(ViewBag.CodeExampleText.ExampleName)
2 |
3 | @Html.Raw(ViewBag.CodeExampleText.ExampleDescription)
4 |
5 |
6 |
7 |
8 |
9 | @Html.Raw(
10 | @String.Format(
11 | ViewBag.SupportingTexts.ViewSourceFile,
12 | "CreateAndEmbedFormService.cs "
13 | )
14 | )
15 |
16 |
17 |
18 |
21 |
22 |
--------------------------------------------------------------------------------
/launcher-csharp/Admin/Views/AuditUsers/Aeg005.cshtml:
--------------------------------------------------------------------------------
1 | @model DocuSign.CodeExamples.Admin.Controllers.AuditUsers
2 |
3 | @Html.Raw(ViewBag.CodeExampleText.ExampleName)
4 |
5 | @Html.Raw(ViewBag.CodeExampleText.ExampleDescription)
6 |
7 |
8 |
9 |
10 | @Html.Raw(
11 | @String.Format(
12 | ViewBag.SupportingTexts.ViewSourceFile,
13 | "AuditUsers.cs "
14 | )
15 | )
16 |
17 |
18 |
21 |
--------------------------------------------------------------------------------
/launcher-csharp/Admin/Views/AuditUsers/Aeg05.cshtml:
--------------------------------------------------------------------------------
1 | @model DocuSign.CodeExamples.Admin.Controllers.AuditUsers
2 |
3 | 5. @Html.Raw(ViewBag.CodeExampleText.ExampleName)
4 |
5 | @Html.Raw(ViewBag.CodeExampleText.ExampleDescription)
6 |
7 |
8 |
9 |
10 | @Html.Raw(
11 | @String.Format(
12 | ViewBag.SupportingTexts.ViewSourceFile,
13 | "AuditUsers.cs "
14 | )
15 | )
16 |
17 |
18 |
21 |
--------------------------------------------------------------------------------
/launcher-csharp/eSignature/Views/CreatePermissionProfile/Eg024.cshtml:
--------------------------------------------------------------------------------
1 | @model DocuSign.CodeExamples.Controllers.CreatePermissionProfile
2 | @Html.Raw(ViewBag.CodeExampleText.ExampleName)
3 |
4 | @Html.Raw(ViewBag.CodeExampleText.ExampleDescription)
5 |
6 |
7 | @if (ViewBag.showDoc == true)
8 | {
9 | Documentation about this example
10 | }
11 |
12 |
13 |
14 | @Html.Raw(
15 | @String.Format(
16 | ViewBag.SupportingTexts.ViewSourceFile,
17 | "CreatePermissionProfile.cs "
18 | )
19 | )
20 |
21 |
22 |
23 |
--------------------------------------------------------------------------------
/launcher-csharp/Views/Shared/mustAuthenticate.cshtml:
--------------------------------------------------------------------------------
1 | @{
2 | Layout = "_HomeLayout";
3 | }
4 |
5 | @Html.Raw(ViewBag.SupportingTexts.LoginPage.LoginHeader)
6 |
17 |
18 |
@Html.Raw(ViewBag.SupportingTexts.LoginPage.LoginHelperText)
19 |
--------------------------------------------------------------------------------
/launcher-csharp/eSignature/Views/ChangePermissionSingleSetting/Eg026.cshtml:
--------------------------------------------------------------------------------
1 | @model DocuSign.CodeExamples.Controllers.ChangePermissionSingleSetting
2 | @Html.Raw(ViewBag.CodeExampleText.ExampleName)
3 |
4 |
5 | @Html.Raw(ViewBag.CodeExampleText.ExampleDescription)
6 |
7 |
8 | @if (ViewBag.showDoc == true)
9 | {
10 | Documentation about this example
11 | }
12 |
13 |
14 |
15 |
16 | @Html.Raw(
17 | @String.Format(
18 | ViewBag.SupportingTexts.ViewSourceFile,
19 | "ChangePermissionSingleSetting.cs "
20 | )
21 | )
22 |
23 |
24 |
25 |
--------------------------------------------------------------------------------
/Quick_ACG/Properties/launchSettings.json:
--------------------------------------------------------------------------------
1 | {
2 | "iisSettings": {
3 | "windowsAuthentication": true,
4 | "anonymousAuthentication": true,
5 | "iisExpress": {
6 | "applicationUrl": "http://localhost:8080",
7 | "sslPort": 44333
8 | }
9 | },
10 | "profiles": {
11 | "IIS Express": {
12 | "commandName": "IISExpress",
13 | "launchBrowser": true,
14 | "environmentVariables": {
15 | "ASPNETCORE_ENVIRONMENT": "Development"
16 | },
17 | "applicationUrl": "https://localhost:8080;http://localhost:5000"
18 | },
19 | "CodeExamples": {
20 | "commandName": "Project",
21 | "launchBrowser": true,
22 | "environmentVariables": {
23 | "ASPNETCORE_ENVIRONMENT": "Development"
24 | },
25 | "applicationUrl": "https://localhost:44333;http://localhost:5002"
26 | }
27 | }
28 | }
--------------------------------------------------------------------------------
/launcher-csharp/eSignature/Views/ListAccountEnvelopes/eg003.cshtml:
--------------------------------------------------------------------------------
1 | @Html.Raw(ViewBag.CodeExampleText.ExampleName)
2 |
3 | @Html.Raw(ViewBag.CodeExampleText.ExampleDescription)
4 |
5 |
6 | @if (@ViewBag.showDoc) {
7 | Documentation about this example
8 | }
9 |
10 |
11 |
12 | @Html.Raw(@String.Format(ViewBag.SupportingTexts.ViewSourceFile, "ListAccountEnvelopes.cs "))
13 |
14 |
15 |
19 |
20 |
--------------------------------------------------------------------------------
/launcher-csharp/Properties/launchSettings.json:
--------------------------------------------------------------------------------
1 | {
2 | "iisSettings": {
3 | "windowsAuthentication": true,
4 | "anonymousAuthentication": true,
5 | "iisExpress": {
6 | "applicationUrl": "http://localhost:8080",
7 | "sslPort": 44333
8 | }
9 | },
10 | "profiles": {
11 | "IIS Express": {
12 | "commandName": "IISExpress",
13 | "launchBrowser": true,
14 | "applicationUrl": "https://localhost:8080;http://localhost:5000",
15 | "environmentVariables": {
16 | "ASPNETCORE_ENVIRONMENT": "Development"
17 | }
18 | },
19 | "CodeExamples": {
20 | "commandName": "Project",
21 | "launchBrowser": true,
22 | "applicationUrl": "https://localhost:44333;http://localhost:5002",
23 | "environmentVariables": {
24 | "ASPNETCORE_ENVIRONMENT": "Development"
25 | }
26 | }
27 | }
28 | }
--------------------------------------------------------------------------------
/launcher-csharp/Click/Views/RetrieveClickwraps/Ceg004.cshtml:
--------------------------------------------------------------------------------
1 | @model DocuSign.CodeExamples.Click.Controllers.RetrieveClickwraps
2 |
3 | @Html.Raw(ViewBag.CodeExampleText.ExampleName)
4 |
5 | @Html.Raw(ViewBag.CodeExampleText.ExampleDescription)
6 |
7 |
8 |
9 |
10 | @Html.Raw(
11 | @String.Format(
12 | ViewBag.SupportingTexts.ViewSourceFile,
13 | "RetrieveClickwraps.cs "
14 | )
15 | )
16 |
17 |
18 |
22 |
--------------------------------------------------------------------------------
/launcher-csharp/Click/Views/RetrieveClickwraps/ClickEg04.cshtml:
--------------------------------------------------------------------------------
1 | @model DocuSign.CodeExamples.Click.Controllers.RetrieveClickwraps
2 |
3 | @Html.Raw(ViewBag.CodeExampleText.ExampleName)
4 |
5 | @Html.Raw(ViewBag.CodeExampleText.ExampleDescription)
6 |
7 |
8 |
9 |
10 | @Html.Raw(
11 | @String.Format(
12 | ViewBag.SupportingTexts.ViewSourceFile,
13 | "RetrieveClickwraps.cs "
14 | )
15 | )
16 |
17 |
18 |
22 |
--------------------------------------------------------------------------------
/launcher-csharp/Navigator/Views/Nav001ListAgreements/nav001.cshtml:
--------------------------------------------------------------------------------
1 | @Html.Raw(ViewBag.CodeExampleText.ExampleName)
2 |
3 | @Html.Raw(ViewBag.CodeExampleText.ExampleDescription)
4 |
5 |
6 | @if (ViewBag.showDoc == true)
7 | {
8 | Documentation about this example
9 | }
10 |
11 |
12 |
13 |
14 | @Html.Raw(@String.Format(ViewBag.SupportingTexts.ViewSourceFile, "NavigatorMethods.cs "))
15 |
16 |
17 |
21 |
--------------------------------------------------------------------------------
/launcher-csharp/Rooms/Views/CreateRoomWithData/Shared/CreateRoomView.cshtml:
--------------------------------------------------------------------------------
1 | @model DocuSign.CodeExamples.Rooms.Models.RoomModel
2 | @{
3 | int formNumber = 0;
4 | int roomNameInputNumber = 0;
5 | }
6 |
7 |
--------------------------------------------------------------------------------
/launcher-csharp/Rooms/Views/CreateExternalFormFillSession/Reg006.cshtml:
--------------------------------------------------------------------------------
1 | @model DocuSign.CodeExamples.Rooms.Controllers.CreateExternalFormFillSession
2 |
3 | 6. @Html.Raw(ViewBag.CodeExampleText.ExampleName)
4 |
5 | @Html.Raw(ViewBag.CodeExampleText.ExampleDescription)
6 |
7 |
8 |
9 |
10 | @Html.Raw(
11 | @String.Format(
12 | ViewBag.SupportingTexts.ViewSourceFile,
13 | "CreateExternalFormFillSession.cs "
14 | )
15 | )
16 |
17 |
18 | @if (Model.RoomDocumentModel.RoomId == null)
19 | {
20 |
21 | }
22 | else
23 | {
24 |
25 | }
26 |
--------------------------------------------------------------------------------
/launcher-csharp/Rooms/Views/CreateFormGroups/Shared/CreateFromGroupView.cshtml:
--------------------------------------------------------------------------------
1 | @model DocuSign.CodeExamples.Rooms.Models.FormGroupModel
2 | @{
3 | int formNumber = 0;
4 | int roomNameInputNumber = 0;
5 | }
6 |
7 |
--------------------------------------------------------------------------------
/launcher-csharp/Views/Shared/example_done.cshtml:
--------------------------------------------------------------------------------
1 | @ViewBag.h1
2 | @Html.Raw(ViewBag.message)
3 |
4 | @if (ViewBag.Locals != null && ViewBag.Locals.Json != null)
5 | {
6 |
7 |
8 |
@ViewBag.Locals.Json
9 | }
10 |
11 | @if (ViewBag.AdditionalLink != null)
12 | {
13 | @ViewBag.AdditionalLinkText
14 | }
15 | @if (ViewBag.ConfirmAdditionalLink != null)
16 | {
17 | @Html.Raw(ViewBag.SupportingTexts.ContinueButton)
18 | }
19 | @if (ViewBag.OnlyConfirmAdditionalLink == null)
20 | {
21 | @Html.Raw(ViewBag.SupportingTexts.ContinueButton)
22 | }
23 |
--------------------------------------------------------------------------------
/launcher-csharp/Monitor/Views/GetMonitoringData/Meg001.cshtml:
--------------------------------------------------------------------------------
1 | 1. @Html.Raw(ViewBag.CodeExampleText.ExampleName)
2 |
3 | @Html.Raw(ViewBag.CodeExampleText.ExampleDescription)
4 |
5 |
6 | @if (@ViewBag.showDoc)
7 | {
8 | Documentation about this example.
9 | }
10 |
11 |
12 |
13 |
14 | @Html.Raw(
15 | @String.Format(
16 | ViewBag.SupportingTexts.ViewSourceFile,
17 | "GetMonitoringData.cs "
18 | )
19 | )
20 |
21 |
22 |
--------------------------------------------------------------------------------
/launcher-csharp/eSignature/Examples/ListEnvelopeDocuments.cs:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) Docusign. All rights reserved.
3 | //
4 |
5 | namespace ESignature.Examples
6 | {
7 | using System.Collections.Generic;
8 | using DocuSign.eSign.Api;
9 | using DocuSign.eSign.Client;
10 | using DocuSign.eSign.Model;
11 |
12 | public static class ListEnvelopeDocuments
13 | {
14 | public class EnvelopeDocItem
15 | {
16 | public string Name { get; set; }
17 |
18 | public string Type { get; set; }
19 |
20 | public string DocumentId { get; set; }
21 | }
22 |
23 | public class EnvelopeDocuments
24 | {
25 | public string EnvelopeId { get; set; }
26 |
27 | public List Documents { get; set; }
28 | }
29 | }
30 | }
31 |
--------------------------------------------------------------------------------
/launcher-csharp/eSignature/Views/CreateNewTemplate/eg008.cshtml:
--------------------------------------------------------------------------------
1 | @Html.Raw(ViewBag.CodeExampleText.ExampleName)
2 |
3 | @Html.Raw(ViewBag.CodeExampleText.ExampleDescription)
4 |
5 |
6 | @if (ViewBag.showDoc) {
7 | Documentation about this example
8 | }
9 |
10 |
11 |
12 |
13 | @Html.Raw(
14 | @String.Format(
15 | ViewBag.SupportingTexts.ViewSourceFile,
16 | "CreateNewTemplate.cs "
17 | )
18 | )
19 |
20 |
21 |
25 |
--------------------------------------------------------------------------------
/launcher-csharp/Views/Shared/Error.cshtml:
--------------------------------------------------------------------------------
1 | @{
2 | ViewData["Title"] = "Error";
3 | }
4 |
5 | Problem: an error occurred
6 |
7 |
8 | @if (ViewBag.errorCode != null)
9 | {
10 | Error information:
11 |
12 | if (ViewBag.fixingInstructions != null)
13 | {
14 | @Html.Raw(ViewBag.fixingInstructions)
15 | }
16 |
17 | @if (ViewBag.SupportMessage != null)
18 | {
19 | @Html.Raw(ViewBag.SupportMessage)
20 | }
21 |
22 | @ViewBag.errorCode: @ViewBag.errorMessage
23 | @Html.Raw(ViewBag.errorInformation)
24 | }
25 | else
26 | {
27 | Error information:
28 |
29 |
@ViewBag.err
30 |
31 |
32 | @if (ViewBag.err != null)
33 | {
34 | Stack trace
35 |
36 |
@ViewBag.err.StackTrace
37 |
38 | }
39 | }
40 |
41 | Continue
42 |
--------------------------------------------------------------------------------
/launcher-csharp/Common/SetViewBagAttribute.cs:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) Docusign. All rights reserved.
3 | //
4 |
5 | namespace DocuSign.CodeExamples.Common
6 | {
7 | using System;
8 | using DocuSign.CodeExamples.Controllers;
9 | using Microsoft.AspNetCore.Mvc.Filters;
10 |
11 | public class SetViewBagAttribute : ActionFilterAttribute
12 | {
13 | public override void OnActionExecuting(ActionExecutingContext context)
14 | {
15 | var egController = context.Controller as EgController;
16 |
17 | if (egController == null)
18 | {
19 | throw new InvalidOperationException("Controller is not of type EgController, attribute is not applicable.");
20 | }
21 |
22 | egController.ViewBag.SupportingTexts = egController.LauncherTexts.ManifestStructure.SupportingTexts;
23 | }
24 | }
25 | }
26 |
--------------------------------------------------------------------------------
/launcher-csharp/Click/Views/EmbedClickwrap/Embed.cshtml:
--------------------------------------------------------------------------------
1 | @ViewBag.h1
2 | @Html.Raw(ViewBag.message)
3 |
4 | @Html.Raw(ViewBag.SupportingTexts.HelpingTexts.EmbedClickwrapUrl)
5 |
6 | @ViewBag.AgreementUrl
7 |
8 |
9 |
10 |
11 | @Html.Raw(ViewBag.SupportingTexts.HelpingTexts.NotAgreed)
12 |
13 |
14 | @Html.Raw(ViewBag.SupportingTexts.ContinueButton)
15 |
16 |
17 |
18 |
--------------------------------------------------------------------------------
/launcher-csharp/wwwroot/css/site.css:
--------------------------------------------------------------------------------
1 | /* Please see documentation at https://docs.microsoft.com/aspnet/core/client-side/bundling-and-minification\
2 | for details on configuring this project to bundle and minify static web assets. */
3 | body {
4 | padding-top: 10px;
5 | padding-bottom: 10px;
6 | }
7 |
8 | /* Wrapping element */
9 | /* Set some basic padding to keep content from hitting the edges */
10 | .body-content {
11 | }
12 |
13 | /* Carousel */
14 | .carousel-caption p {
15 | font-size: 20px;
16 | line-height: 1.4;
17 | }
18 |
19 | /* Make .svg files in the carousel display properly in older browsers */
20 | .carousel-inner .item img[src$=".svg"] {
21 | width: 100%;
22 | }
23 |
24 | /* QR code generator */
25 | #qrCode {
26 | margin: 15px;
27 | }
28 |
29 | /* Hide/rearrange for smaller screens */
30 | @media screen and (max-width: 767px) {
31 | /* Hide captions */
32 | .carousel-caption {
33 | display: none;
34 | }
35 | }
36 |
--------------------------------------------------------------------------------
/launcher-csharp/Common/SessionExtensions.cs:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) Docusign. All rights reserved.
3 | //
4 |
5 | namespace DocuSign.CodeExamples.Common
6 | {
7 | using System;
8 | using System.Collections.Generic;
9 | using System.Linq;
10 | using System.Threading.Tasks;
11 | using Microsoft.AspNetCore.Http;
12 | using Newtonsoft.Json;
13 |
14 | public static class SessionExtensions
15 | {
16 | public static void SetObjectAsJson(this ISession session, string key, object value)
17 | {
18 | session.SetString(key, JsonConvert.SerializeObject(value));
19 | }
20 |
21 | public static T GetObjectFromJson(this ISession session, string key)
22 | {
23 | var value = session.GetString(key);
24 |
25 | return value == null ? default(T) : JsonConvert.DeserializeObject(value);
26 | }
27 | }
28 | }
29 |
--------------------------------------------------------------------------------
/launcher-csharp/Admin/Views/ImportUser/Aeg004.cshtml:
--------------------------------------------------------------------------------
1 |
2 | @Html.Raw(ViewBag.CodeExampleText.ExampleName)
3 |
4 | @Html.Raw(ViewBag.CodeExampleText.ExampleDescription)
5 |
6 |
7 | @if (ViewBag.showDoc == true)
8 | {
9 | Documentation about this example.
10 | }
11 |
12 |
13 |
14 |
15 | @Html.Raw(
16 | @String.Format(
17 | ViewBag.SupportingTexts.ViewSourceFile,
18 | "Eg04AddUsersBulkImportController.cs "
19 | )
20 | )
21 |
22 |
23 |
27 |
--------------------------------------------------------------------------------
/launcher-csharp/Admin/Views/ImportUser/Aeg04.cshtml:
--------------------------------------------------------------------------------
1 |
2 | 4. @Html.Raw(ViewBag.CodeExampleText.ExampleName)
3 |
4 | @Html.Raw(ViewBag.CodeExampleText.ExampleDescription)
5 |
6 |
7 | @if (ViewBag.showDoc == true)
8 | {
9 | Documentation about this example.
10 | }
11 |
12 |
13 |
14 |
15 | @Html.Raw(
16 | @String.Format(
17 | ViewBag.SupportingTexts.ViewSourceFile,
18 | "Eg04AddUsersBulkImportController.cs "
19 | )
20 | )
21 |
22 |
23 |
27 |
--------------------------------------------------------------------------------
/.github/workflows/dotnet.yml:
--------------------------------------------------------------------------------
1 | name: .NET
2 |
3 | on:
4 | push:
5 | branches: [ "master" ]
6 | pull_request:
7 | branches: [ "master" ]
8 |
9 | jobs:
10 | build:
11 |
12 | runs-on: windows-latest
13 |
14 | steps:
15 | - uses: actions/checkout@v3
16 | - name: Setup .NET
17 | uses: actions/setup-dotnet@v3
18 | with:
19 | dotnet-version: '8.0.x'
20 | - name: setup-msbuild
21 | uses: microsoft/setup-msbuild@v1.1.3
22 | - name: Restore dependencies
23 | run: dotnet restore launcher-csharp.sln
24 | - name: Build
25 | run: dotnet build launcher-csharp.sln --no-restore
26 | - name: Test
27 | env:
28 | CLIENT_ID: ${{ secrets.CLIENT_ID }}
29 | IMPERSONATED_USER_ID: ${{ secrets.IMPERSONATED_USER_ID }}
30 | PRIVATE_KEY: ${{ secrets.PRIVATE_KEY }}
31 | SIGNER_EMAIL: ${{ secrets.SIGNER_EMAIL }}
32 | SIGNER_NAME: ${{ secrets.SIGNER_NAME }}
33 | run: dotnet test launcher-csharp.sln --no-build --verbosity normal
--------------------------------------------------------------------------------
/launcher-csharp/Admin/Views/BulkExportUserData/Aeg003.cshtml:
--------------------------------------------------------------------------------
1 |
2 | @Html.Raw(ViewBag.CodeExampleText.ExampleName)
3 |
4 | @Html.Raw(ViewBag.CodeExampleText.ExampleDescription)
5 |
6 |
7 |
8 | @if (ViewBag.showDoc == true)
9 | {
10 | Documentation about this example.
11 | }
12 |
13 |
14 |
15 |
16 | @Html.Raw(
17 | @String.Format(
18 | ViewBag.SupportingTexts.ViewSourceFile,
19 | "BulkExportUserData.cs "
20 | )
21 | )
22 |
23 |
24 |
28 |
--------------------------------------------------------------------------------
/launcher-csharp/Admin/Views/BulkExportUserData/Aeg03.cshtml:
--------------------------------------------------------------------------------
1 |
2 | 3. @Html.Raw(ViewBag.CodeExampleText.ExampleName)
3 |
4 | @Html.Raw(ViewBag.CodeExampleText.ExampleDescription)
5 |
6 |
7 |
8 | @if (ViewBag.showDoc == true)
9 | {
10 | Documentation about this example.
11 | }
12 |
13 |
14 |
15 |
16 | @Html.Raw(
17 | @String.Format(
18 | ViewBag.SupportingTexts.ViewSourceFile,
19 | "BulkExportUserData.cs "
20 | )
21 | )
22 |
23 |
24 |
28 |
--------------------------------------------------------------------------------
/launcher-csharp.Tests/TestConfig/ITestConfig.cs:
--------------------------------------------------------------------------------
1 | using DocuSign.eSign.Client;
2 |
3 | namespace launcher_csharp.Tests
4 | {
5 | public interface ITestConfig
6 | {
7 | public string ClientId { get; set; }
8 |
9 | public string Host { get; set; }
10 |
11 | public DocuSignClient ApiClient { get; set; }
12 |
13 | public string AccountId { get; set; }
14 |
15 | public string SignerEmail { get; set; }
16 |
17 | public string SignerName { get; set; }
18 |
19 | public string AccessToken { get; set; }
20 |
21 | public string BasePath { get; set; }
22 |
23 | public string TemplateId { get; set; }
24 |
25 | public string ImpersonatedUserId { get; set; }
26 |
27 | public string OAuthBasePath { get; set; }
28 |
29 | public string PrivateKey { get; set; }
30 |
31 | public string PathToSolution { get; set; }
32 |
33 | public byte[] PrivateKeyBytes { get; set; }
34 |
35 | public void OpenUrlUsingConsoleWindow(string url);
36 | }
37 | }
--------------------------------------------------------------------------------
/launcher-csharp/Views/Shared/dsReturn.cshtml:
--------------------------------------------------------------------------------
1 | Returned data from Docusign!
2 | Data:
3 |
4 | @if (ViewBag._event != null)
5 | {
6 |
7 | event: @ViewBag._event. This event parameter is supplied by Docusign.
8 | Since it could have been spoofed, don't make business decisions based on
9 | its value. Instead, query Docusign as appropriate.
10 |
11 | }
12 |
13 | @if(ViewBag.envelopeId!=null) {
14 |
15 | envelopeId: @ViewBag.envelopeId. The envelopeId parameter is supplied by Docusign.
16 | Since it could have been spoofed, don't make business decisions based on
17 | its value. Instead, query Docusign as appropriate.
18 |
19 | }
20 |
21 | @if (ViewBag.state != null) {
22 |
23 | state: @ViewBag.state. This example state was sent to Docusign and has now been received back.
24 | It is usually better to store state in your web framework's session.
25 |
26 | }
27 |
28 | @Html.Raw(ViewBag.SupportingTexts.ContinueButton)
29 |
30 |
--------------------------------------------------------------------------------
/launcher-csharp/Views/Shared/PermissionProfileView.cshtml:
--------------------------------------------------------------------------------
1 | @model DocuSign.CodeExamples.Models.PermissionProfileModel
2 | @{
3 | int formNumber = 0;
4 | int profileNameInputNumber = 0;
5 | }
6 |
7 | @Html.Raw(ViewBag.CodeExampleText.Forms[formNumber].FormName)
8 |
9 |
--------------------------------------------------------------------------------
/launcher-csharp/Views/Shared/LinkToMethodView.cshtml:
--------------------------------------------------------------------------------
1 | @using Microsoft.EntityFrameworkCore.Migrations
2 | @model DocuSign.CodeExamples.ESignature.Models.CodeExampleText
3 |
4 | @if (Model.LinksToApiMethod.Count != 0)
5 | {
6 | @if (Model.LinksToApiMethod.Count == 1)
7 | {
8 | @Html.Raw(ViewBag.SupportingTexts.ApiMethodUsed)
9 | }
10 | else
11 | {
12 | @Html.Raw(ViewBag.SupportingTexts.ApiMethodUsedPlural)
13 | }
14 |
15 | @for (int i = 0; i < Model.LinksToApiMethod.Count; ++i)
16 | {
17 | @Html.Raw(Model.LinksToApiMethod[i].PathName)
18 | @if (i + 1 == Model.LinksToApiMethod.Count)
19 | {
20 |
21 | }
22 | else if (i + 1 == Model.LinksToApiMethod.Count - 1)
23 | {
24 | and
25 | }
26 | else
27 | {
28 | ,
29 | }
30 | }
31 | }
32 |
33 |
--------------------------------------------------------------------------------
/launcher-csharp/wwwroot/js/site.js:
--------------------------------------------------------------------------------
1 | // Please see documentation at https://docs.microsoft.com/aspnet/core/client-side/bundling-and-minification
2 | // for details on configuring this project to bundle and minify static web assets.
3 |
4 | // Write your JavaScript code.
5 |
6 | $(document).ready(function () {
7 | $("#Products").on("change", function () {
8 | $list = $("#PermissionProfilesFiltered");
9 | $.ajax({
10 | url: "/getPermissionProfiles",
11 | type: "GET",
12 | data: { productId: $("#Products").val() },
13 | traditional: true,
14 | success: function (result) {
15 | $list.empty();
16 | $.each(result, function (i, item) {
17 | $list.append(' ' + item["permissionProfileName"] + ' ');
18 | });
19 | },
20 | error: function () {
21 | console.warn("Issues with calling the getPermissionProfiles endpoint. Please, check the solution.");
22 | }
23 | });
24 | });
25 | });
26 |
--------------------------------------------------------------------------------
/PAYMENTS_INSTALLATION.md:
--------------------------------------------------------------------------------
1 | # Configure a payment gateway
2 |
3 | DocuSign offers built-in connections to multiple payment gateways. The payments code example uses a developer account via the Stripe gateway service.
4 |
5 |
6 | ## Create a Stripe payment gateway
7 |
8 | 1. Select the Stripe button on the [**Payments**](https://admindemo.docusign.com/authenticate?goTo=payments) page in your developer account.
9 |
10 | 1. For development, you can skip the Stripe account application by using the **Skip this account form** link at the top of the page.
11 |
12 | 
13 |
14 | An enabled Stripe payment gateway is now associated with your DocuSign developer account and is shown under **Payment Gateway**.
15 |
16 | 1. Save the **Gateway Account ID** GUID to the code example launcher configuration file.
17 |
18 |
19 | ## Additional documentation
20 | * [Managing Payment Gateways](https://support.docusign.com/en/guides/managing-payment-gateways)
21 | * [How to send a request for payment](https://developers.docusign.com/docs/esign-rest-api/how-to/request-a-payment)
22 |
--------------------------------------------------------------------------------
/launcher-csharp/wwwroot/lib/jquery-validation/.bower.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "jquery-validation",
3 | "homepage": "https://jqueryvalidation.org/",
4 | "repository": {
5 | "type": "git",
6 | "url": "git://github.com/jquery-validation/jquery-validation.git"
7 | },
8 | "authors": [
9 | "Jörn Zaefferer "
10 | ],
11 | "description": "Form validation made easy",
12 | "main": "dist/jquery.validate.js",
13 | "keywords": [
14 | "forms",
15 | "validation",
16 | "validate"
17 | ],
18 | "license": "MIT",
19 | "ignore": [
20 | "**/.*",
21 | "node_modules",
22 | "bower_components",
23 | "test",
24 | "demo",
25 | "lib"
26 | ],
27 | "dependencies": {
28 | "jquery": ">= 1.7.2"
29 | },
30 | "version": "1.17.0",
31 | "_release": "1.17.0",
32 | "_resolution": {
33 | "type": "version",
34 | "tag": "1.17.0",
35 | "commit": "fc9b12d3bfaa2d0c04605855b896edb2934c0772"
36 | },
37 | "_source": "https://github.com/jzaefferer/jquery-validation.git",
38 | "_target": "^1.17.0",
39 | "_originalSource": "jquery-validation",
40 | "_direct": true
41 | }
--------------------------------------------------------------------------------
/launcher-csharp/wwwroot/lib/bootstrap/.bower.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "bootstrap",
3 | "description": "The most popular front-end framework for developing responsive, mobile first projects on the web.",
4 | "keywords": [
5 | "css",
6 | "js",
7 | "less",
8 | "mobile-first",
9 | "responsive",
10 | "front-end",
11 | "framework",
12 | "web"
13 | ],
14 | "homepage": "http://getbootstrap.com",
15 | "license": "MIT",
16 | "moduleType": "globals",
17 | "main": [
18 | "less/bootstrap.less",
19 | "dist/js/bootstrap.js"
20 | ],
21 | "ignore": [
22 | "/.*",
23 | "_config.yml",
24 | "CNAME",
25 | "composer.json",
26 | "CONTRIBUTING.md",
27 | "docs",
28 | "js/tests",
29 | "test-infra"
30 | ],
31 | "dependencies": {
32 | "jquery": "1.9.1 - 3"
33 | },
34 | "version": "3.3.7",
35 | "_release": "3.3.7",
36 | "_resolution": {
37 | "type": "version",
38 | "tag": "v3.3.7",
39 | "commit": "0b9c4a4007c44201dce9a6cc1a38407005c26c86"
40 | },
41 | "_source": "https://github.com/twbs/bootstrap.git",
42 | "_target": "v3.3.7",
43 | "_originalSource": "bootstrap",
44 | "_direct": true
45 | }
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
1 | The MIT License
2 |
3 | Copyright (c) 2018 DocuSign, Inc. (https://www.docusign.com)
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
22 |
--------------------------------------------------------------------------------
/launcher-csharp/wwwroot/lib/bootstrap/LICENSE:
--------------------------------------------------------------------------------
1 | The MIT License (MIT)
2 |
3 | Copyright (c) 2011-2016 Twitter, Inc.
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in
13 | all copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
21 | THE SOFTWARE.
22 |
--------------------------------------------------------------------------------
/Quick_ACG/Quick_ACG.sln:
--------------------------------------------------------------------------------
1 |
2 | Microsoft Visual Studio Solution File, Format Version 12.00
3 | # Visual Studio Version 17
4 | VisualStudioVersion = 17.4.33213.308
5 | MinimumVisualStudioVersion = 10.0.40219.1
6 | Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Quick_ACG", "Quick_ACG.csproj", "{753D39F8-CC42-4845-ADC2-92F08C54FD59}"
7 | EndProject
8 | Global
9 | GlobalSection(SolutionConfigurationPlatforms) = preSolution
10 | Debug|Any CPU = Debug|Any CPU
11 | Release|Any CPU = Release|Any CPU
12 | EndGlobalSection
13 | GlobalSection(ProjectConfigurationPlatforms) = postSolution
14 | {753D39F8-CC42-4845-ADC2-92F08C54FD59}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
15 | {753D39F8-CC42-4845-ADC2-92F08C54FD59}.Debug|Any CPU.Build.0 = Debug|Any CPU
16 | {753D39F8-CC42-4845-ADC2-92F08C54FD59}.Release|Any CPU.ActiveCfg = Release|Any CPU
17 | {753D39F8-CC42-4845-ADC2-92F08C54FD59}.Release|Any CPU.Build.0 = Release|Any CPU
18 | EndGlobalSection
19 | GlobalSection(SolutionProperties) = preSolution
20 | HideSolutionNode = FALSE
21 | EndGlobalSection
22 | GlobalSection(ExtensibilityGlobals) = postSolution
23 | SolutionGuid = {D70C90D3-EA3C-4B09-94FD-34A06732E4FF}
24 | EndGlobalSection
25 | EndGlobal
26 |
--------------------------------------------------------------------------------
/JWT-Console/JWT-Console.sln:
--------------------------------------------------------------------------------
1 |
2 | Microsoft Visual Studio Solution File, Format Version 12.00
3 | # Visual Studio Version 17
4 | VisualStudioVersion = 17.4.33213.308
5 | MinimumVisualStudioVersion = 10.0.40219.1
6 | Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "JWT-Console", "JWT-Console.csproj", "{B8481849-3BB5-48D3-AF1A-0124E7E872AB}"
7 | EndProject
8 | Global
9 | GlobalSection(SolutionConfigurationPlatforms) = preSolution
10 | Debug|Any CPU = Debug|Any CPU
11 | Release|Any CPU = Release|Any CPU
12 | EndGlobalSection
13 | GlobalSection(ProjectConfigurationPlatforms) = postSolution
14 | {B8481849-3BB5-48D3-AF1A-0124E7E872AB}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
15 | {B8481849-3BB5-48D3-AF1A-0124E7E872AB}.Debug|Any CPU.Build.0 = Debug|Any CPU
16 | {B8481849-3BB5-48D3-AF1A-0124E7E872AB}.Release|Any CPU.ActiveCfg = Release|Any CPU
17 | {B8481849-3BB5-48D3-AF1A-0124E7E872AB}.Release|Any CPU.Build.0 = Release|Any CPU
18 | EndGlobalSection
19 | GlobalSection(SolutionProperties) = preSolution
20 | HideSolutionNode = FALSE
21 | EndGlobalSection
22 | GlobalSection(ExtensibilityGlobals) = postSolution
23 | SolutionGuid = {A0BF7CDB-84F6-4247-BCCD-06F9746131F2}
24 | EndGlobalSection
25 | EndGlobal
26 |
--------------------------------------------------------------------------------
/launcher-csharp/wwwroot/lib/jquery-validation/LICENSE.md:
--------------------------------------------------------------------------------
1 | The MIT License (MIT)
2 | =====================
3 |
4 | Copyright Jörn Zaefferer
5 |
6 | Permission is hereby granted, free of charge, to any person obtaining a copy
7 | of this software and associated documentation files (the "Software"), to deal
8 | in the Software without restriction, including without limitation the rights
9 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
10 | copies of the Software, and to permit persons to whom the Software is
11 | furnished to do so, subject to the following conditions:
12 |
13 | The above copyright notice and this permission notice shall be included in
14 | all copies or substantial portions of the Software.
15 |
16 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
17 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
18 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
19 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
20 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
21 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
22 | THE SOFTWARE.
23 |
--------------------------------------------------------------------------------
/launcher-csharp/Maestro/Views/Mae003ResumeWorkflow/mae003.cshtml:
--------------------------------------------------------------------------------
1 | @Html.Raw(ViewBag.CodeExampleText.ExampleName)
2 |
3 |
4 | @Html.Raw(ViewBag.CodeExampleText.ExampleDescription)
5 |
6 |
7 |
8 | API method used:
9 | @ViewBag.CodeExampleText.LinksToApiMethod[0].PathName
10 |
11 |
12 |
13 | @Html.Raw(
14 | @String.Format(
15 | ViewBag.SupportingTexts.ViewSourceFile,
16 | "ResumeWorkflow.cs "
17 | )
18 | )
19 |
20 |
21 | @if (ViewBag.IsWorkflowIdPresent)
22 | {
23 |
26 | }
27 | else
28 | {
29 |
30 | @Html.Raw(
31 | ViewBag.CodeExampleText.CustomErrorTexts[0].ErrorMessage
32 | )
33 |
34 |
35 |
38 | }
--------------------------------------------------------------------------------
/launcher-csharp/Connect/Examples/HMACValidation.cs:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) Docusign. All rights reserved.
3 | //
4 |
5 | namespace DocuSign.Connect.Examples
6 | {
7 | using System;
8 | using System.Security.Cryptography;
9 | using System.Text;
10 |
11 | public static class HMACValidation
12 | {
13 | //ds-snippet-start:Connect1Step1
14 | public static string ComputeHash(string secret, string payload)
15 | {
16 | byte[] bytes = Encoding.UTF8.GetBytes(secret);
17 | var hmac = new HMACSHA256(bytes);
18 | bytes = Encoding.UTF8.GetBytes(payload);
19 |
20 | return Convert.ToBase64String(hmac.ComputeHash(bytes));
21 | }
22 |
23 | public static bool HashIsValid(string secret, string payload, string verify)
24 | {
25 | ReadOnlySpan hashBytes = Convert.FromBase64String(ComputeHash(secret, payload));
26 | ReadOnlySpan verifyBytes = Convert.FromBase64String(verify);
27 |
28 | return CryptographicOperations.FixedTimeEquals(hashBytes, verifyBytes);
29 | }
30 |
31 | //ds-snippet-end:Connect1Step1
32 | }
33 | }
34 |
--------------------------------------------------------------------------------
/launcher-csharp/Maestro/Views/Mae002PauseWorkflow/mae002.cshtml:
--------------------------------------------------------------------------------
1 | @Html.Raw(ViewBag.CodeExampleText.ExampleName)
2 |
3 |
4 | @Html.Raw(ViewBag.CodeExampleText.ExampleDescription)
5 |
6 |
7 |
8 | API method used:
9 | @ViewBag.CodeExampleText.LinksToApiMethod[0].PathName
10 |
11 |
12 |
13 | @Html.Raw(
14 | @String.Format(
15 | ViewBag.SupportingTexts.ViewSourceFile,
16 | "PauseWorkflow.cs "
17 | )
18 | )
19 |
20 |
21 | @if (ViewBag.IsWorkflowIdPresent)
22 | {
23 |
26 | }
27 | else
28 | {
29 |
30 | @Html.Raw(
31 | ViewBag.CodeExampleText.CustomErrorTexts[0].ErrorMessage
32 | )
33 |
34 |
35 |
38 | }
39 |
--------------------------------------------------------------------------------
/launcher-csharp/Maestro/Views/Mae004CancelWorkflowInstance/mae004.cshtml:
--------------------------------------------------------------------------------
1 | @Html.Raw(ViewBag.CodeExampleText.ExampleName)
2 |
3 |
4 | @Html.Raw(ViewBag.CodeExampleText.ExampleDescription)
5 |
6 |
7 |
8 | API method used:
9 | @ViewBag.CodeExampleText.LinksToApiMethod[0].PathName
10 |
11 |
12 |
13 | @Html.Raw(
14 | @String.Format(
15 | ViewBag.SupportingTexts.ViewSourceFile,
16 | "CancelWorkflowInstance.cs "
17 | )
18 | )
19 |
20 |
21 | @if (ViewBag.IsWorkflowIdPresent)
22 | {
23 |
26 | }
27 | else
28 | {
29 |
30 | @Html.Raw(
31 | ViewBag.CodeExampleText.CustomErrorTexts[0].ErrorMessage
32 | )
33 |
34 |
35 |
38 | }
--------------------------------------------------------------------------------
/launcher-csharp/WebForms/Views/CreateAndEmbedForm/web001.cshtml:
--------------------------------------------------------------------------------
1 | @{
2 | var additionalPages = ViewBag.CodeExampleText.AdditionalPages;
3 | var description = "";
4 | foreach (var additionalPage in additionalPages)
5 | {
6 | if (additionalPage.Name == "create_web_form_template")
7 | {
8 | description = additionalPage.ResultsPageText;
9 | }
10 | }
11 | }
12 |
13 | @Html.Raw(ViewBag.CodeExampleText.ExampleName)
14 |
15 | @description
16 |
17 |
18 |
19 | API methods used:
20 | Templates::list , and
21 | Templates::create .
22 |
23 |
24 |
25 | @Html.Raw(
26 | @String.Format(
27 | ViewBag.SupportingTexts.ViewSourceFile,
28 | "CreateAndEmbedFormService.cs "
29 | )
30 | )
31 |
32 |
33 |
34 |
37 |
38 |
--------------------------------------------------------------------------------
/Quick_ACG/Program.cs:
--------------------------------------------------------------------------------
1 | using Microsoft.AspNetCore;
2 | using Microsoft.AspNetCore.Hosting;
3 | using Microsoft.Extensions.Configuration;
4 | using System.IO;
5 | using System.Runtime.InteropServices;
6 |
7 | namespace DocuSign.QuickACG
8 | {
9 | public class Program
10 | {
11 | public static void Main(string[] args)
12 | {
13 | CreateWebHostBuilder(args).Build().Run();
14 | }
15 |
16 | public static IWebHostBuilder CreateWebHostBuilder(string[] args)
17 | {
18 | var builder = WebHost.CreateDefaultBuilder(args).UseStartup();
19 | builder.ConfigureAppConfiguration((hostingContext, config) =>
20 | {
21 | string path = string.Empty;
22 |
23 | if (RuntimeInformation.IsOSPlatform(OSPlatform.OSX))
24 | {
25 | path = Path.GetFullPath(@"../launcher-csharp/appsettings.json");
26 | }
27 | else
28 | {
29 | path = Path.GetFullPath(@"..\\launcher-csharp\\appsettings.json");
30 | }
31 |
32 |
33 | config.AddJsonFile(path,
34 | optional: false,
35 | reloadOnChange: true);
36 | });
37 | return builder;
38 | }
39 | }
40 | }
41 |
--------------------------------------------------------------------------------
/Quick_ACG/eSignature/Controllers/DSController.cs:
--------------------------------------------------------------------------------
1 | using Microsoft.AspNetCore.Authentication;
2 | using Microsoft.AspNetCore.Mvc;
3 | using Microsoft.Extensions.Configuration;
4 |
5 | namespace DocuSign.CodeExamples.Controllers
6 | {
7 | [Route("ds/[action]")]
8 | public class AccountController : Controller
9 | {
10 | private IRequestItemsService _requestItemsService;
11 |
12 | private IConfiguration Configuration { get; }
13 |
14 | public AccountController(IRequestItemsService requestItemsService, IConfiguration configuration)
15 | {
16 | this._requestItemsService = requestItemsService;
17 | this.Configuration = configuration;
18 | }
19 |
20 | [HttpGet]
21 | public IActionResult Login(string returnUrl = "/")
22 | {
23 | return Challenge(new AuthenticationProperties() { RedirectUri = returnUrl });
24 | }
25 |
26 | public IActionResult MustAuthenticate()
27 | {
28 | return Login();
29 | }
30 |
31 | public async System.Threading.Tasks.Task Logout()
32 | {
33 | await AuthenticationHttpContextExtensions.SignOutAsync(HttpContext);
34 | _requestItemsService.Logout();
35 | return LocalRedirect("/?egName=home");
36 | }
37 | }
38 | }
39 |
--------------------------------------------------------------------------------
/launcher-csharp/Common/MustAuthenticateAttribute.cs:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) Docusign. All rights reserved.
3 | //
4 |
5 | namespace DocuSign.CodeExamples.Common
6 | {
7 | using System;
8 | using DocuSign.CodeExamples.Controllers;
9 | using Microsoft.AspNetCore.Mvc;
10 | using Microsoft.AspNetCore.Mvc.Filters;
11 | using Microsoft.Extensions.DependencyInjection;
12 |
13 | public class MustAuthenticateAttribute : ActionFilterAttribute
14 | {
15 | public override void OnActionExecuting(ActionExecutingContext context)
16 | {
17 | var requestItemsService = context.HttpContext.RequestServices.GetService();
18 | var egController = context.Controller as EgController;
19 |
20 | if (egController == null)
21 | {
22 | throw new InvalidOperationException("Controller is not of type EgController, attribute is not applicable.");
23 | }
24 |
25 | bool tokenOk = requestItemsService.CheckToken(3);
26 | if (!tokenOk)
27 | {
28 | requestItemsService.EgName = egController.EgName;
29 | context.Result = new RedirectResult("/ds/mustAuthenticate");
30 | }
31 | }
32 | }
33 | }
34 |
--------------------------------------------------------------------------------
/launcher-csharp/Click/Views/CreateClickwrap/Ceg001.cshtml:
--------------------------------------------------------------------------------
1 | @model DocuSign.CodeExamples.Click.Controllers.CreateClickwrap
2 | @{
3 | int formNumber = 0;
4 | int clickwrapInputNumber = 0;
5 | }
6 |
7 | @Html.Raw(ViewBag.CodeExampleText.ExampleName)
8 |
9 | @Html.Raw(ViewBag.CodeExampleText.ExampleDescription)
10 |
11 |
12 |
13 |
14 | @Html.Raw(
15 | @String.Format(
16 | ViewBag.SupportingTexts.ViewSourceFile,
17 | "CreateClickwrap.cs "
18 | )
19 | )
20 |
21 |
22 |
35 |
--------------------------------------------------------------------------------
/launcher-csharp/Click/Views/CreateClickwrap/ClickEg01.cshtml:
--------------------------------------------------------------------------------
1 | @model DocuSign.CodeExamples.Click.Controllers.CreateClickwrap
2 | @{
3 | int formNumber = 0;
4 | int clickwrapInputNumber = 0;
5 | }
6 |
7 | @Html.Raw(ViewBag.CodeExampleText.ExampleName)
8 |
9 | @Html.Raw(ViewBag.CodeExampleText.ExampleDescription)
10 |
11 |
12 |
13 |
14 | @Html.Raw(
15 | @String.Format(
16 | ViewBag.SupportingTexts.ViewSourceFile,
17 | "CreateClickwrap.cs "
18 | )
19 | )
20 |
21 |
22 |
35 |
--------------------------------------------------------------------------------
/launcher-csharp/Rooms/Views/GetRoomsWithFilters/Shared/GetFilteredRoomsView.cshtml:
--------------------------------------------------------------------------------
1 | @model DocuSign.CodeExamples.Rooms.Models.RoomFilterModel
2 | @{
3 | int formNumber = 0;
4 | int startDateInputNumber = 0;
5 | int endDateInputNumber = 1;
6 | }
7 |
8 |
--------------------------------------------------------------------------------
/launcher-csharp/Admin/Views/RetrieveDocuSignProfileByEmailAddress/Aeg006.cshtml:
--------------------------------------------------------------------------------
1 | @{
2 | int formNumber = 0;
3 | int emailInputNumber = 0;
4 | }
5 |
6 | @Html.Raw(ViewBag.CodeExampleText.ExampleName)
7 |
8 | @Html.Raw(ViewBag.CodeExampleText.ExampleDescription)
9 |
10 |
11 |
12 |
13 |
14 | @Html.Raw(
15 | @String.Format(
16 | ViewBag.SupportingTexts.ViewSourceFile,
17 | "RetrieveDocuSignProfileByEmailAddress.cs "
18 | )
19 | )
20 |
21 |
22 |
35 |
--------------------------------------------------------------------------------
/launcher-csharp/Admin/Views/RetrieveDocuSignProfileByEmailAddress/Aeg06.cshtml:
--------------------------------------------------------------------------------
1 | @{
2 | int formNumber = 0;
3 | int emailInputNumber = 0;
4 | }
5 |
6 | 6. @Html.Raw(ViewBag.CodeExampleText.ExampleName)
7 |
8 | @Html.Raw(ViewBag.CodeExampleText.ExampleDescription)
9 |
10 |
11 |
12 |
13 |
14 | @Html.Raw(
15 | @String.Format(
16 | ViewBag.SupportingTexts.ViewSourceFile,
17 | "RetrieveDocuSignProfileByEmailAddress.cs "
18 | )
19 | )
20 |
21 |
22 |
35 |
--------------------------------------------------------------------------------
/launcher-csharp/doc_1.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | World Wide Corp
9 | Order Processing Division
12 | Ordered by {USER_FULLNAME}
13 | Email: {USER_EMAIL}
14 | Copy to: {CC_NAME}, {CC_EMAIL}
15 |
16 | Candy bonbon pastry jujubes lollipop wafer biscuit biscuit. Topping brownie sesame snaps sweet roll pie. Croissant danish biscuit soufflé caramels jujubes jelly. Dragée danish caramels lemon drops dragée. Gummi bears cupcake biscuit tiramisu sugar plum pastry. Dragée gummies applicake pudding liquorice. Donut jujubes oat cake jelly-o. Dessert bear claw chocolate cake gummies lollipop sugar plum ice cream gummies cheesecake.
17 |
18 |
19 | Agreed: **signature_1**/
20 |
21 |
22 |
--------------------------------------------------------------------------------
/launcher-csharp/eSignature/Views/DeleteRestoreEnvelope/restoreEnvelope.cshtml:
--------------------------------------------------------------------------------
1 | @{
2 | int formNumber = 0;
3 | int folderNameInputNumber = 1;
4 | }
5 |
6 | @Html.Raw(ViewBag.CodeExampleText.ExampleName)
7 |
8 | @Html.Raw(ViewBag.CodeExampleText.ExampleDescription)
9 |
10 |
11 |
12 |
13 | @Html.Raw(string.Format(ViewBag.SupportingTexts.HelpingTexts.EnvelopeWillBeRestored, ViewBag.EnvelopeId))
14 |
15 |
16 |
35 |
--------------------------------------------------------------------------------
/DSHelper.cs:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) Docusign. All rights reserved.
3 | //
4 |
5 | namespace DocuSign.CodeExamples.Common
6 | {
7 | using System.IO;
8 | using System.Runtime.InteropServices;
9 |
10 | internal class DsHelper
11 | {
12 | internal static string PrepareFullPrivateKeyFilePath(string fileName)
13 | {
14 | const string defaultRsaPrivateKeyFileName = "private.key";
15 |
16 | var fileNameOnly = Path.GetFileName(fileName);
17 | if (string.IsNullOrEmpty(fileNameOnly))
18 | {
19 | fileNameOnly = defaultRsaPrivateKeyFileName;
20 | }
21 |
22 | var filePath = Path.GetDirectoryName(fileName);
23 | if (string.IsNullOrEmpty(filePath))
24 | {
25 | filePath = Directory.GetCurrentDirectory();
26 | }
27 |
28 | if (RuntimeInformation.IsOSPlatform(OSPlatform.OSX) && Directory.GetCurrentDirectory().Contains("bin"))
29 | {
30 | fileNameOnly = defaultRsaPrivateKeyFileName;
31 | filePath = Path.GetFullPath(filePath);
32 | }
33 |
34 | return Path.Combine(filePath, fileNameOnly);
35 | }
36 |
37 | internal static byte[] ReadFileContent(string path)
38 | {
39 | return File.ReadAllBytes(path);
40 | }
41 | }
42 | }
43 |
--------------------------------------------------------------------------------
/launcher-csharp/Maestro/Examples/PauseWorkflow.cs:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) Docusign. All rights reserved.
3 | //
4 |
5 | namespace DocuSign.CodeExamples.Examples
6 | {
7 | using System.Threading.Tasks;
8 | using Docusign.IAM.SDK;
9 | using Docusign.IAM.SDK.Models.Components;
10 |
11 | public static class PauseWorkflow
12 | {
13 | //ds-snippet-start:Maestro2Step3
14 | public static async Task PauseMaestroWorkflow(
15 | string basePath,
16 | string accessToken,
17 | string accountId,
18 | string workflowId)
19 | {
20 | var client = CreateAuthenticatedClient(basePath, accessToken);
21 | return await client.Maestro.Workflows.PauseNewWorkflowInstancesAsync(accountId, workflowId);
22 | }
23 |
24 | //ds-snippet-end:Maestro2Step3
25 |
26 | ///
27 | /// Creates an authenticated IAM client.
28 | ///
29 | //ds-snippet-start:Maestro2Step2
30 | private static IamClient CreateAuthenticatedClient(string basePath, string accessToken)
31 | {
32 | return IamClient.Builder()
33 | .WithServerUrl(basePath)
34 | .WithAccessToken(accessToken)
35 | .Build();
36 | }
37 |
38 | //ds-snippet-end:Maestro2Step2
39 | }
40 | }
41 |
--------------------------------------------------------------------------------
/launcher-csharp/Maestro/Examples/ResumeWorkflow.cs:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) Docusign. All rights reserved.
3 | //
4 |
5 | namespace DocuSign.CodeExamples.Examples
6 | {
7 | using System.Threading.Tasks;
8 | using Docusign.IAM.SDK;
9 | using Docusign.IAM.SDK.Models.Components;
10 |
11 | public static class ResumeWorkflow
12 | {
13 | //ds-snippet-start:Maestro3Step3
14 | public static async Task ResumeMaestroWorkflow(
15 | string basePath,
16 | string accessToken,
17 | string accountId,
18 | string workflowId)
19 | {
20 | var client = CreateAuthenticatedClient(basePath, accessToken);
21 | return await client.Maestro.Workflows.ResumePausedWorkflowAsync(accountId, workflowId);
22 | }
23 |
24 | //ds-snippet-end:Maestro3Step3
25 |
26 | ///
27 | /// Creates an authenticated IAM client.
28 | ///
29 | //ds-snippet-start:Maestro3Step2
30 | private static IamClient CreateAuthenticatedClient(string basePath, string accessToken)
31 | {
32 | return IamClient.Builder()
33 | .WithServerUrl(basePath)
34 | .WithAccessToken(accessToken)
35 | .Build();
36 | }
37 |
38 | //ds-snippet-end:Maestro3Step2
39 | }
40 | }
41 |
--------------------------------------------------------------------------------
/JWT-Console/JWT-Console.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Exe
5 | net8.0
6 | JWT_Console
7 | JWT
8 |
9 |
10 |
11 | bin\Debug\net6.0
12 | false
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
--------------------------------------------------------------------------------
/launcher-csharp/Admin/Views/RetrieveDocuSignProfileByUserId/Aeg007.cshtml:
--------------------------------------------------------------------------------
1 | @{
2 | int formNumber = 0;
3 | int userIdInputNumber = 0;
4 | }
5 |
6 | @Html.Raw(ViewBag.CodeExampleText.ExampleName)
7 |
8 | @Html.Raw(ViewBag.CodeExampleText.ExampleDescription)
9 |
10 |
11 |
12 |
13 | @Html.Raw(
14 | @String.Format(
15 | ViewBag.SupportingTexts.ViewSourceFile,
16 | "RetrieveDocuSignProfileByUserId.cs "
17 | )
18 | )
19 |
20 |
21 |
39 |
--------------------------------------------------------------------------------
/launcher-csharp/Admin/Views/RetrieveDocuSignProfileByUserId/Aeg07.cshtml:
--------------------------------------------------------------------------------
1 | @{
2 | int formNumber = 0;
3 | int userIdInputNumber = 0;
4 | }
5 |
6 | 7. @Html.Raw(ViewBag.CodeExampleText.ExampleName)
7 |
8 | @Html.Raw(ViewBag.CodeExampleText.ExampleDescription)
9 |
10 |
11 |
12 |
13 | @Html.Raw(
14 | @String.Format(
15 | ViewBag.SupportingTexts.ViewSourceFile,
16 | "RetrieveDocuSignProfileByUserId.cs "
17 | )
18 | )
19 |
20 |
21 |
39 |
--------------------------------------------------------------------------------
/launcher-csharp/Workspaces/Examples/CreateWorkspace.cs:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) Docusign. All rights reserved.
3 | //
4 |
5 | namespace DocuSign.CodeExamples.Examples
6 | {
7 | using System.Threading.Tasks;
8 | using Docusign.IAM.SDK;
9 | using Docusign.IAM.SDK.Models.Components;
10 |
11 | public static class CreateWorkspace
12 | {
13 | public static async Task CreateWorkspaceAsync(
14 | string accessToken,
15 | string accountId,
16 | string workspaceName)
17 | {
18 | //ds-snippet-start:Workspaces1Step2
19 | var client = CreateAuthenticatedClient(accessToken);
20 | //ds-snippet-end:Workspaces1Step2
21 |
22 | //ds-snippet-start:Workspaces1Step3
23 | var createWorkspaceBody = new CreateWorkspaceBody
24 | {
25 | Name = workspaceName,
26 | };
27 | //ds-snippet-end:Workspaces1Step3
28 | //ds-snippet-start:Workspaces1Step4
29 | return await client.Workspaces.Workspaces.CreateWorkspaceAsync(accountId, createWorkspaceBody);
30 | //ds-snippet-end:Workspaces1Step4
31 | }
32 |
33 | private static IamClient CreateAuthenticatedClient(string accessToken)
34 | {
35 | return IamClient.Builder()
36 | .WithAccessToken(accessToken)
37 | .Build();
38 | }
39 | }
40 | }
41 |
--------------------------------------------------------------------------------
/launcher-csharp/Admin/Views/DeleteUserDataFromOrganization/Aeg010.cshtml:
--------------------------------------------------------------------------------
1 | @using System.Text.RegularExpressions;
2 | @{
3 | int formNumber = 0;
4 | int emailInputNumber = 0;
5 | }
6 |
7 | @Html.Raw(ViewBag.CodeExampleText.ExampleName)
8 |
9 | @Html.Raw(ViewBag.CodeExampleText.ExampleDescription)
10 |
11 |
12 |
13 |
14 |
15 |
16 | @Html.Raw(
17 | @String.Format(
18 | ViewBag.SupportingTexts.ViewSourceFile,
19 | "DeleteUserDataFromOrganization.cs "
20 | )
21 | )
22 |
23 |
24 |
40 |
41 |
--------------------------------------------------------------------------------
/launcher-csharp/eSignature/Views/Eg039InPersonSigning/Eg039.cshtml:
--------------------------------------------------------------------------------
1 | @{
2 | int formNumber = 0;
3 | int nameInputNumber = 0;
4 | }
5 |
6 | @Html.Raw(ViewBag.CodeExampleText.ExampleName)
7 |
8 | @Html.Raw(ViewBag.CodeExampleText.ExampleDescription)
9 |
10 |
11 | @if (ViewBag.showDoc == true)
12 | {
13 | Documentation about this example
14 | }
15 |
16 |
17 |
18 | @Html.Raw(
19 | @String.Format(
20 | ViewBag.SupportingTexts.ViewSourceFile,
21 | "Eg039InPersonSigningController.cs "
22 | )
23 | )
24 |
25 |
26 |
43 |
--------------------------------------------------------------------------------
/launcher-csharp/Workspaces/Views/Work001CreateWorkspace/work001.cshtml:
--------------------------------------------------------------------------------
1 | @{
2 | int formNumber = 0;
3 | int workspaceNameInputNumber = 0;
4 | }
5 |
6 | @Html.Raw(ViewBag.CodeExampleText.ExampleName)
7 |
8 | @Html.Raw(ViewBag.CodeExampleText.ExampleDescription)
9 |
10 |
11 | @if (ViewBag.showDoc == true)
12 | {
13 | Documentation about this example
14 | }
15 |
16 |
17 |
18 |
19 | @Html.Raw(@String.Format(ViewBag.SupportingTexts.ViewSourceFile, "CreateWorkspace.cs "))
20 |
21 |
22 |
39 |
--------------------------------------------------------------------------------
/launcher-csharp/Navigator/Views/Nav002GetSingleAgreement/nav002.cshtml:
--------------------------------------------------------------------------------
1 | @{
2 | int formNumber = 0;
3 | int agreementsInputNumber = 0;
4 | }
5 |
6 | @Html.Raw(ViewBag.CodeExampleText.ExampleName)
7 |
8 | @Html.Raw(ViewBag.CodeExampleText.ExampleDescription)
9 |
10 |
11 | @if (ViewBag.showDoc == true)
12 | {
13 | Documentation about this example
14 | }
15 |
16 |
17 |
18 |
19 | @Html.Raw(@String.Format(ViewBag.SupportingTexts.ViewSourceFile, "NavigatorMethods.cs "))
20 |
21 |
22 |
42 |
--------------------------------------------------------------------------------
/launcher-csharp/eSignature/Views/DeletePermission/Eg027.cshtml:
--------------------------------------------------------------------------------
1 | @{
2 | int formNumber = 0;
3 | int permissionInputNumber = 0;
4 | }
5 |
6 | @Html.Raw(ViewBag.CodeExampleText.ExampleName)
7 |
8 | @Html.Raw(ViewBag.CodeExampleText.ExampleDescription)
9 |
10 |
11 |
12 | @Html.Raw(ViewBag.CodeExampleText.Notes)
13 |
14 |
15 | @if (ViewBag.showDoc == true)
16 | {
17 | Documentation about this example
18 | }
19 |
20 |
21 |
22 |
23 |
24 | @Html.Raw(
25 | @String.Format(
26 | ViewBag.SupportingTexts.ViewSourceFile,
27 | "DeletePermission.cs "
28 | )
29 | )
30 |
31 |
32 |
48 |
--------------------------------------------------------------------------------
/launcher-csharp/Admin/Views/DeleteUserDataFromAccount/Aeg011.cshtml:
--------------------------------------------------------------------------------
1 | @using System.Text.RegularExpressions;
2 | @{
3 | int formNumber = 0;
4 | int userIdInputNumber = 0;
5 | }
6 |
7 | @Html.Raw(ViewBag.CodeExampleText.ExampleName)
8 |
9 | @Html.Raw(ViewBag.CodeExampleText.ExampleDescription)
10 |
11 |
12 |
13 |
14 |
15 |
16 | @Html.Raw(
17 | @String.Format(
18 | ViewBag.SupportingTexts.ViewSourceFile,
19 | "DeleteUserDataFromAccount.cs "
20 | )
21 | )
22 |
23 |
24 |
--------------------------------------------------------------------------------
/launcher-csharp/Rooms/Views/ExportDataFromRoom/Shared/ExportDataView.cshtml:
--------------------------------------------------------------------------------
1 | @model DocuSign.CodeExamples.Rooms.Models.RoomsListModel
2 | @using System.Text.RegularExpressions;
3 | @{
4 | var redirectToFirstCodeExample = "href='reg001'";
5 | int formNumber = 0;
6 | int roomNameInputNumber = 0;
7 | }
8 |
9 | @if (Model.Rooms.Any())
10 | {
11 |
22 | }
23 | else
24 | {
25 |
26 | @Html.Raw(
27 | String.Format(
28 | ((IEnumerable) ViewBag.CodeExampleText.RedirectsToOtherCodeExamples)
29 | .Where(x => x.CodeExampleToRedirectTo == int.Parse(Regex.Match(redirectToFirstCodeExample, @"\d+").Value))
30 | .FirstOrDefault()
31 | .RedirectText,
32 | "href='eg01'"
33 | )
34 | )
35 |
36 | @Html.Raw(ViewBag.SupportingTexts.ContinueButton)
37 | }
--------------------------------------------------------------------------------
/launcher-csharp/appsettings.example.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Debug",
5 | "System": "Information",
6 | "Microsoft": "Information"
7 | }
8 | },
9 | "DocuSign": {
10 | "ClientId": "{INTEGRATION_KEY_AUTH_CODE}",
11 | "ClientSecret": "{SECRET_KEY}",
12 | "AuthorizationEndpoint": "https://account-d.docusign.com/oauth/auth",
13 | "TokenEndpoint": "https://account-d.docusign.com/oauth/token",
14 | "UserInformationEndpoint": "https://account-d.docusign.com/oauth/userinfo",
15 | "AppUrl": "https://localhost:44333",
16 | "RoomsApiEndpoint": "https://demo.rooms.docusign.com",
17 | "AdminApiEndpoint": "https://api-d.docusign.net/management",
18 | "MaestroApiEndpoint": "https://apps-d.docusign.com/api/maestro",
19 | "WebFormsBasePath": "https://apps-d.docusign.com/api/webforms",
20 | "IamBasePath": "https://api-d.docusign.com/v1",
21 | "CodeExamplesManifest": "https://raw.githubusercontent.com/docusign/code-examples-csharp/master/manifest/CodeExamplesManifest.json",
22 | "SignerEmail": "{SIGNER_EMAIL}",
23 | "SignerName": "{SIGNER_NAME}",
24 | "GatewayAccountId": "{GATEWAY_ACCOUNT_ID}",
25 | "GatewayName": "TestApplication",
26 | "GatewayDisplayName": "TestApplication",
27 | "TargetAccountId": "{TARGET_ACCOUNT_ID}"
28 | },
29 | "DocuSignJWT": {
30 | "ClientId": "{INTEGRATION_KEY_JWT}",
31 | "ImpersonatedUserId": "{IMPERSONATED_USER_ID}",
32 | "AuthServer": "account-d.docusign.com",
33 | "PrivateKeyFile": "private.key"
34 | },
35 | "AllowedHosts": "*",
36 | "quickstart": "{QUICKSTART_VALUE}"
37 | }
--------------------------------------------------------------------------------
/launcher-csharp.Tests/eSignatureUnitTests/CreateBrandUnitTests.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using DocuSign.CodeExamples.Common;
3 | using DocuSign.eSign.Model;
4 | using ESignature.Examples;
5 | using Xunit;
6 |
7 | namespace launcher_csharp.Tests.eSignatureUnitTests
8 | {
9 | [Collection("eSignature tests")]
10 | public sealed class CreateBrandUnitTests
11 | {
12 | private const string EsignarurePathPrefix = "/restapi";
13 |
14 | private readonly TestConfig _testConfig;
15 |
16 | public CreateBrandUnitTests()
17 | {
18 | this._testConfig = new TestConfig();
19 |
20 | var jwtLoginMethod = new JwtLoginMethodUnitTest();
21 | jwtLoginMethod.RequestJWTUserToken_CorrectInputParameters_ReturnsOAuthToken(ExamplesApiType.ESignature, _testConfig);
22 | }
23 |
24 | [Fact]
25 | public void CreateBrand_CorrectInputParameters_ReturnsBrandsResponse()
26 | {
27 | // Assert
28 | string brandName = Guid.NewGuid().ToString("n").Substring(0, 8);
29 | var defaultBrandLanguage = "en";
30 | string basePath = _testConfig.BasePath + EsignarurePathPrefix;
31 |
32 | //Act
33 | BrandsResponse permissionProfile = CreateBrand.Create(
34 | brandName,
35 | defaultBrandLanguage,
36 | _testConfig.AccessToken,
37 | basePath,
38 | _testConfig.AccountId);
39 |
40 | // Assert
41 | Assert.NotNull(permissionProfile);
42 | Assert.NotEmpty(permissionProfile.Brands);
43 | }
44 | }
45 | }
46 |
--------------------------------------------------------------------------------
/launcher-csharp/Connect/Controllers/ValidateWebhookMessage.cs:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) Docusign. All rights reserved.
3 | //
4 |
5 | namespace DocuSign.CodeExamples.Connect.Controllers
6 | {
7 | using DocuSign.CodeExamples.Common;
8 | using DocuSign.CodeExamples.Controllers;
9 | using DocuSign.CodeExamples.Models;
10 | using DocuSign.Connect.Examples;
11 | using Microsoft.AspNetCore.Mvc;
12 |
13 | [Area("Connect")]
14 | [Route("con001")]
15 | public class ValidateWebhookMessage : EgController
16 | {
17 | public ValidateWebhookMessage(DsConfiguration config, LauncherTexts launcherTexts, IRequestItemsService requestItemsService)
18 | : base(config, launcherTexts, requestItemsService)
19 | {
20 | this.CodeExampleText = this.GetExampleText(this.EgName, ExamplesApiType.Connect);
21 | this.ViewBag.title = this.CodeExampleText.ExampleName;
22 | }
23 |
24 | public override string EgName => "con001";
25 |
26 | [SetViewBag]
27 | [HttpPost]
28 | [ValidateAntiForgeryToken]
29 | public ActionResult ValidateMessageUsing(string hmacSecret, string jsonPayload)
30 | {
31 | jsonPayload = jsonPayload.Replace("\\", string.Empty);
32 |
33 | string hashedOutput = HMACValidation.ComputeHash(hmacSecret, jsonPayload);
34 |
35 | this.ViewBag.h1 = this.CodeExampleText.ExampleName;
36 | this.ViewBag.message = this.CodeExampleText.ResultsPageText.Replace("{0}", hashedOutput);
37 |
38 | return this.View("example_done");
39 | }
40 | }
41 | }
--------------------------------------------------------------------------------
/launcher-csharp/ConnectWebhookHMACValidation.cs:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) Docusign. All rights reserved.
3 | //
4 |
5 | namespace ESignature.Examples
6 | {
7 | using System;
8 | using System.Security.Cryptography;
9 | using System.Text;
10 |
11 | public static class ConnectWebhookHmacValidation
12 | {
13 | ///
14 | /// Validates the payload that was recevied in the body (raw content) of the Connect webhook message
15 | ///
16 | /// HMAC key from the Conenct page in DocuSign
17 | /// Raw Content of the webhook message without wrapping or formatting
18 | /// Value of the x-docusign-signature-1 header of the webhook request
19 | /// True if the payload was verified with the secret
20 | public static bool HashIsValid(string secret, string payload, string verify)
21 | {
22 | ReadOnlySpan hashBytes = Convert.FromBase64String(ComputeHash(secret, payload));
23 | ReadOnlySpan verifyBytes = Convert.FromBase64String(verify);
24 |
25 | return CryptographicOperations.FixedTimeEquals(hashBytes, verifyBytes);
26 | }
27 |
28 | private static string ComputeHash(string secret, string payload)
29 | {
30 | byte[] bytes = Encoding.UTF8.GetBytes(secret);
31 | HMAC hmac = new HMACSHA256(bytes);
32 | bytes = Encoding.UTF8.GetBytes(payload);
33 |
34 | return Convert.ToBase64String(hmac.ComputeHash(bytes));
35 | }
36 | }
37 | }
38 |
--------------------------------------------------------------------------------
/launcher-csharp/wwwroot/lib/jquery/LICENSE.txt:
--------------------------------------------------------------------------------
1 | Copyright JS Foundation and other contributors, https://js.foundation/
2 |
3 | This software consists of voluntary contributions made by many
4 | individuals. For exact contribution history, see the revision history
5 | available at https://github.com/jquery/jquery
6 |
7 | The following license applies to all parts of this software except as
8 | documented below:
9 |
10 | ====
11 |
12 | Permission is hereby granted, free of charge, to any person obtaining
13 | a copy of this software and associated documentation files (the
14 | "Software"), to deal in the Software without restriction, including
15 | without limitation the rights to use, copy, modify, merge, publish,
16 | distribute, sublicense, and/or sell copies of the Software, and to
17 | permit persons to whom the Software is furnished to do so, subject to
18 | the following conditions:
19 |
20 | The above copyright notice and this permission notice shall be
21 | included in all copies or substantial portions of the Software.
22 |
23 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
24 | EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
25 | MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
26 | NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
27 | LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
28 | OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
29 | WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
30 |
31 | ====
32 |
33 | All files located in the node_modules and external directories are
34 | externally maintained libraries used by this software which have their
35 | own licenses; we recommend you read them, as their terms may differ from
36 | the terms above.
37 |
--------------------------------------------------------------------------------
/launcher-csharp/eSignature/Views/DeleteRestoreEnvelope/Eg045.cshtml:
--------------------------------------------------------------------------------
1 | @using System.Text.RegularExpressions;
2 | @{
3 | int formNumber = 0;
4 | int envelopeIdInputNumber = 0;
5 | }
6 |
7 | @Html.Raw(ViewBag.CodeExampleText.ExampleName)
8 |
9 | @Html.Raw(ViewBag.CodeExampleText.ExampleDescription)
10 |
11 |
12 | @if (ViewBag.showDoc == true)
13 | {
14 | Documentation about this example
15 | }
16 |
17 |
18 |
19 |
20 | @Html.Raw(
21 | @String.Format(
22 | ViewBag.SupportingTexts.ViewSourceFile,
23 | "DeleteRestoreEnvelope.cs "
24 | )
25 | )
26 |
27 |
28 |
49 |
--------------------------------------------------------------------------------
/launcher-csharp/Rooms/Views/CreateRoomFromTemplate/Shared/CreateRoomView.cshtml:
--------------------------------------------------------------------------------
1 | @model DocuSign.CodeExamples.Rooms.Models.RoomModel
2 | @using System.Text.RegularExpressions;
3 | @{
4 | var redirectToSecondCodeExample = "href='reg002'";
5 | int formNumber = 0;
6 | int roomNameInputNumber = 0;
7 | int templateInputNumber = 1;
8 | }
9 |
10 | @if (Model.Templates != null && Model.Templates.Any())
11 | {
12 |
35 | }
36 | else
37 | {
38 | @Html.Raw(ViewBag.CodeExampleText.RedirectsToOtherCodeExamples[0].RedirectText)
39 | @Html.Raw(ViewBag.SupportingTexts.ContinueButton)
40 | }
41 |
--------------------------------------------------------------------------------
/launcher-csharp/eSignature/Views/ListEnvelopeRecipients/eg005.cshtml:
--------------------------------------------------------------------------------
1 | @using System.Text.RegularExpressions;
2 | @{
3 | var redirectToSecondCodeExample = "href='eg002'";
4 | int formNumber = 0;
5 | }
6 |
7 | @Html.Raw(ViewBag.CodeExampleText.ExampleName)
8 | @Html.Raw(ViewBag.CodeExampleText.ExampleDescription)
9 |
10 | @if (ViewBag.showDoc)
11 | {
12 | Documentation about this example
13 | }
14 |
15 |
16 |
17 | @Html.Raw(@String.Format(ViewBag.SupportingTexts.ViewSourceFile, "ListEnvelopeRecipients.cs "))
18 |
19 |
20 | @if (ViewBag.envelopeOk)
21 | {
22 | @Html.Raw(ViewBag.CodeExampleText.Forms[formNumber].FormName)
23 |
24 |
28 |
29 | }
30 | else
31 | {
32 |
33 | @Html.Raw(
34 | String.Format(
35 | ((IEnumerable)ViewBag.CodeExampleText.RedirectsToOtherCodeExamples)
36 | .Where(x => x.CodeExampleToRedirectTo == int.Parse(Regex.Match(redirectToSecondCodeExample, @"\d+").Value))
37 | .FirstOrDefault()
38 | .RedirectText,
39 | "href='eg002'"
40 | )
41 | )
42 |
43 |
44 |
47 | }
48 |
--------------------------------------------------------------------------------
/launcher-csharp/eSignature/Models/DSConfiguration.cs:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) Docusign. All rights reserved.
3 | //
4 |
5 | namespace DocuSign.CodeExamples.Models
6 | {
7 | public class DsConfiguration
8 | {
9 | public string RedirectForEg043 = "Eg043/EnvelopesListStatus";
10 | public string DocDocx = "World_Wide_Corp_Battle_Plan_Trafalgar.docx";
11 | public string TabsDocx = "World_Wide_Corp_salary.docx";
12 | public string DocPdf = "World_Wide_Corp_lorem.pdf";
13 | public string DocumentTemplatePdf = "World_Wide_Corp_Web_Form.pdf";
14 | public string WebFormConfig = "web-form-config.json";
15 | public string MaestroWorkflowConfig = "maestro-workflow-definition.json";
16 | public string OfferDocDocx = "Offer_Letter_Dynamic_Table.docx";
17 | public string DocCsv = "UserData.csv";
18 | public string DocHtml = "doc_1.html";
19 | public string ExportUsersPath = @"..\..\..\ExportedUserData.csv";
20 | public string GithubExampleUrl = "https://github.com/docusign/code-examples-csharp/blob/master/launcher-csharp";
21 | public string Documentation = null;
22 |
23 | public string AppUrl { get; set; }
24 |
25 | public string SignerEmail { get; set; }
26 |
27 | public string SignerName { get; set; }
28 |
29 | public string GatewayAccountId { get; set; }
30 |
31 | public string GatewayName { get; set; }
32 |
33 | public string QuickAcg { get; set; }
34 |
35 | public bool IsLoggedInAfterEg043 { get; set; }
36 |
37 | public string GatewayDisplayName { get; set; }
38 |
39 | public string CodeExamplesManifest { get; set; }
40 |
41 | public string PrincipalUserId { get; set; }
42 | }
43 | }
--------------------------------------------------------------------------------
/launcher-csharp/eSignature/Views/ListEnvelopeDocuments/eg006.cshtml:
--------------------------------------------------------------------------------
1 | @using System.Text.RegularExpressions;
2 | @{
3 | var redirectToSecondCodeExample = "href='eg002'";
4 | int formNumber = 0;
5 | }
6 |
7 | @Html.Raw(ViewBag.CodeExampleText.ExampleName)
8 |
9 | @Html.Raw(ViewBag.CodeExampleText.ExampleDescription)
10 |
11 | @if (ViewBag.showDoc)
12 | {
13 | Documentation about this example
14 | }
15 |
16 |
17 |
18 |
19 | @Html.Raw(@String.Format(ViewBag.SupportingTexts.ViewSourceFile, "ListEnvelopeDocuments.cs "))
20 |
21 |
22 | @if (ViewBag.envelopeOk)
23 | {
24 | @Html.Raw(ViewBag.CodeExampleText.Forms[formNumber].FormName)
25 |
26 |
30 |
31 | }
32 | else
33 | {
34 |
35 | @Html.Raw(
36 | String.Format(
37 | ((IEnumerable)ViewBag.CodeExampleText.RedirectsToOtherCodeExamples)
38 | .Where(x => x.CodeExampleToRedirectTo == int.Parse(Regex.Match(redirectToSecondCodeExample, @"\d+").Value))
39 | .FirstOrDefault()
40 | .RedirectText,
41 | "href='eg002'"
42 | )
43 | )
44 |
45 |
46 |
49 | }
50 |
51 |
--------------------------------------------------------------------------------
/launcher-csharp/eSignature/Views/GetCustomFields/eg018.cshtml:
--------------------------------------------------------------------------------
1 | @{
2 | int formNumber = 0;
3 | }
4 | @using System.Text.RegularExpressions;
5 | @{
6 | var redirectTo16CodeExample = "href='eg016'";
7 | }
8 |
9 | @Html.Raw(ViewBag.CodeExampleText.ExampleName)
10 | @Html.Raw(ViewBag.CodeExampleText.ExampleDescription)
11 |
12 | @if (ViewBag.showDoc)
13 | {
14 | Documentation about this example
15 | }
16 |
17 |
18 |
19 |
20 | @Html.Raw(@String.Format(ViewBag.SupportingTexts.ViewSourceFile, "GetCustomFields.cs "))
21 |
22 |
23 | @if (ViewBag.envelopeOk)
24 | {
25 | @Html.Raw(String.Format(ViewBag.CodeExampleText.Forms[formNumber].FormName, "eg016"))
26 |
27 |
31 | }
32 | else
33 | {
34 |
35 | @Html.Raw(
36 | String.Format(
37 | ((IEnumerable)ViewBag.CodeExampleText.RedirectsToOtherCodeExamples)
38 | .Where(x => x.CodeExampleToRedirectTo ==int.Parse(Regex.Match(redirectTo16CodeExample, @"\d+").Value))
39 | .FirstOrDefault()
40 | .RedirectText,
41 | redirectTo16CodeExample
42 | )
43 | )
44 |
45 |
46 |
49 |
50 | }
51 |
--------------------------------------------------------------------------------
/launcher-csharp/eSignature/Views/GetEnvelopeTabData/eg015.cshtml:
--------------------------------------------------------------------------------
1 | @using System.Text.RegularExpressions;
2 | @{
3 | var redirectToNinthCodeExample = "href='eg009'";
4 | int formNumber = 0;
5 | }
6 |
7 | @Html.Raw(ViewBag.CodeExampleText.ExampleName)
8 |
9 | @Html.Raw(ViewBag.CodeExampleText.ExampleDescription)
10 |
11 | @if (ViewBag.showDoc)
12 | {
13 | Documentation about this example
14 | }
15 |
16 |
17 |
18 |
19 | @Html.Raw(@String.Format(ViewBag.SupportingTexts.ViewSourceFile, "GetEnvelopeTabData.cs "))
20 |
21 |
22 | @if (ViewBag.envelopeOk)
23 | {
24 | @Html.Raw(String.Format(ViewBag.CodeExampleText.Forms[formNumber].FormName, "eg009"))
25 |
26 |
30 | }
31 | else
32 | {
33 |
34 | @Html.Raw(
35 | String.Format(
36 | ((IEnumerable)ViewBag.CodeExampleText.RedirectsToOtherCodeExamples)
37 | .Where(x => x.CodeExampleToRedirectTo == int.Parse(Regex.Match(redirectToNinthCodeExample, @"\d+").Value))
38 | .FirstOrDefault()
39 | .RedirectText,
40 | redirectToNinthCodeExample
41 | )
42 | )
43 |
44 |
45 |
48 |
49 | }
50 |
--------------------------------------------------------------------------------
/launcher-csharp/eSignature/Models/ModelsToReadManifest/CodeExampleText.cs:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) Docusign. All rights reserved.
3 | //
4 |
5 | namespace DocuSign.CodeExamples.ESignature.Models
6 | {
7 | using System.Collections.Generic;
8 | using Newtonsoft.Json;
9 |
10 | public class CodeExampleText
11 | {
12 | [JsonProperty("ExampleNumber")]
13 | public int ExampleNumber { get; set; }
14 |
15 | [JsonProperty("ExampleName")]
16 | public string ExampleName { get; set; }
17 |
18 | [JsonProperty("ExampleDescription")]
19 | public string ExampleDescription { get; set; }
20 |
21 | [JsonProperty("CFREnabled")]
22 | public string CfrEnabled { get; set; }
23 |
24 | [JsonProperty("Notes")]
25 | public string Notes { get; set; }
26 |
27 | [JsonProperty("ResultsPageText")]
28 | public string ResultsPageText { get; set; }
29 |
30 | [JsonProperty("SkipForLanguages")]
31 | public string SkipForLanguages { get; set; }
32 |
33 | [JsonProperty("LinksToAPIMethod")]
34 | public List LinksToApiMethod { get; } = new List();
35 |
36 | [JsonProperty("CustomErrorTexts")]
37 | public List CustomErrorTexts { get; } = new List();
38 |
39 | [JsonProperty("RedirectsToOtherCodeExamples")]
40 | public List RedirectsToOtherCodeExamples { get; } = new List();
41 |
42 | [JsonProperty("Forms")]
43 | public List Forms { get; } = new List();
44 |
45 | [JsonProperty("AdditionalPage")]
46 | public List AdditionalPages { get; } = new List();
47 | }
48 | }
49 |
--------------------------------------------------------------------------------
/launcher-csharp/Rooms/Views/CreateExternalFormFillSession/Shared/CreateExternalFormFillSessionView.cshtml:
--------------------------------------------------------------------------------
1 | @model DocuSign.CodeExamples.Rooms.Models.RoomDocumentModel
2 | @using System.Text.RegularExpressions;
3 | @{
4 | var redirectToForthCodeExample = "href='reg004'";
5 | int formNumber = 0;
6 | int documentsInputNumber = 0;
7 | }
8 |
9 | @if (Model.Documents != null && Model.Documents.Any())
10 | {
11 | @Html.Raw(ViewBag.CodeExampleText.Forms[formNumber].FormName)
12 |
13 |
29 | }
30 | else
31 | {
32 |
33 | @Html.Raw(
34 | String.Format(
35 | ((IEnumerable)ViewBag.CodeExampleText.RedirectsToOtherCodeExamples)
36 | .Where(x => x.CodeExampleToRedirectTo == int.Parse(Regex.Match(redirectToForthCodeExample, @"\d+").Value))
37 | .FirstOrDefault()
38 | .RedirectText,
39 | redirectToForthCodeExample
40 | )
41 | )
42 |
43 | @Html.Raw(ViewBag.SupportingTexts.ContinueButton)
44 | }
45 |
--------------------------------------------------------------------------------
/launcher-csharp/eSignature/Views/GetEnvelopeInformation/eg004.cshtml:
--------------------------------------------------------------------------------
1 | @using System.Text.RegularExpressions;
2 | @{
3 | var redirectToSecondCodeExample = "href='eg002'";
4 | int formNumber = 0;
5 | }
6 |
7 | @Html.Raw(ViewBag.CodeExampleText.ExampleName)
8 |
9 | @Html.Raw(ViewBag.CodeExampleText.ExampleDescription)
10 |
11 |
12 | @if (ViewBag.showDoc)
13 | {
14 | Documentation about this example
15 | }
16 |
17 |
18 |
19 |
20 | @Html.Raw(@String.Format(ViewBag.SupportingTexts.ViewSourceFile, "GetEnvelopeInformation.cs "))
21 |
22 |
23 | @if (ViewBag.envelopeOk)
24 | {
25 |
26 | @Html.Raw(ViewBag.CodeExampleText.Forms[formNumber].FormName)
27 |
28 |
29 |
33 |
34 | }
35 | else
36 | {
37 |
38 | @Html.Raw(
39 | String.Format(
40 | ((IEnumerable)ViewBag.CodeExampleText.RedirectsToOtherCodeExamples)
41 | .Where(x => x.CodeExampleToRedirectTo == int.Parse(Regex.Match(redirectToSecondCodeExample, @"\d+").Value))
42 | .FirstOrDefault()
43 | .RedirectText,
44 | redirectToSecondCodeExample
45 | )
46 | )
47 |
48 |
49 |
52 | }
53 |
--------------------------------------------------------------------------------
/launcher-csharp.Tests/launcher-csharp.Tests.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | net8.0
5 | launcher_csharp.Tests
6 |
7 | false
8 |
9 |
10 |
11 | bin\Debug\net6.0
12 | false
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 | all
34 | runtime; build; native; contentfiles; analyzers; buildtransitive
35 |
36 |
37 | all
38 | runtime; build; native; contentfiles; analyzers; buildtransitive
39 |
40 |
41 |
42 |
43 |
44 |
45 |
46 |
47 |
--------------------------------------------------------------------------------
/launcher-csharp/Connect/Views/ValidateWebhookMessage/Con001.cshtml:
--------------------------------------------------------------------------------
1 | @{
2 | int formNumber = 0;
3 | int hmacInputNumber = 0;
4 | int jsonInputNumber = 1;
5 | }
6 |
7 | @Html.Raw(ViewBag.CodeExampleText.ExampleName)
8 |
9 | @Html.Raw(ViewBag.CodeExampleText.ExampleDescription)
10 |
11 |
12 |
13 |
14 | @Html.Raw(
15 | @String.Format(
16 | ViewBag.SupportingTexts.ViewSourceFile,
17 | "HMACValidation.cs "
18 | )
19 | )
20 |
21 |
22 |
23 | Prerequisites: See How to validate an HMAC signature .
24 |
25 |
26 |
53 |
54 |
--------------------------------------------------------------------------------
/launcher-csharp/eSignature/Views/SetUserGroupPermission/Eg025.cshtml:
--------------------------------------------------------------------------------
1 | @{
2 | int formNumber = 0;
3 | int permissionInputNumber = 0;
4 | int groupInputNumber = 1;
5 | }
6 |
7 |
8 | @Html.Raw(ViewBag.CodeExampleText.ExampleName)
9 |
10 | @Html.Raw(ViewBag.CodeExampleText.ExampleDescription)
11 |
12 |
13 |
14 | @if (ViewBag.showDoc)
15 | {
16 | Documentation about this example
17 | }
18 |
19 |
20 |
21 |
22 | @Html.Raw(@String.Format(ViewBag.SupportingTexts.ViewSourceFile, "SetUserGroupPermission.cs "))
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 | @Html.Raw(ViewBag.CodeExampleText.Forms[formNumber].Inputs[permissionInputNumber].InputName)
31 |
32 | @Html.DropDownList(
33 | "permissionProfileId",
34 | ViewBag.PermissionProfiles,
35 | @ViewBag.CodeExampleText.Forms[formNumber].Inputs[permissionInputNumber].InputPlaceholder,
36 | new { @class = "custom-select", required = "required" })
37 |
38 |
39 |
40 | @Html.Raw(ViewBag.CodeExampleText.Forms[formNumber].Inputs[groupInputNumber].InputName)
41 |
42 | @Html.DropDownList(
43 | "userGroupId",
44 | ViewBag.UserGroups,
45 | @ViewBag.CodeExampleText.Forms[formNumber].Inputs[groupInputNumber].InputPlaceholder,
46 | new { @class = "custom-select", required = "required" })
47 |
48 |
49 | @Html.Raw(ViewBag.SupportingTexts.SubmitButton)
50 |
--------------------------------------------------------------------------------
/launcher-csharp/Rooms/Views/CreateExternalFormFillSession/Shared/SelectRoomView.cshtml:
--------------------------------------------------------------------------------
1 | @model DocuSign.CodeExamples.Rooms.Models.RoomDocumentModel
2 | @using System.Text.RegularExpressions;
3 | @{
4 | var redirectToFirstCodeExample = "href='reg001'";
5 | int formNumber = 1;
6 | int documentsInputNumber = 0;
7 | }
8 |
9 | @if (Model.Rooms != null && Model.Rooms.Any())
10 | {
11 | @Html.Raw(ViewBag.CodeExampleText.Forms[formNumber].FormName)
12 |
13 |
14 |
15 |
16 | @Html.Raw(ViewBag.CodeExampleText.Forms[formNumber].Inputs[documentsInputNumber].InputName)
17 |
18 |
19 |
25 | @ViewBag.CodeExampleText.Forms[formNumber].Inputs[documentsInputNumber].InputPlaceholder
26 |
27 |
28 |
29 |
30 | }
31 | else
32 | {
33 |
34 | @Html.Raw(
35 | String.Format(
36 | ((IEnumerable)ViewBag.CodeExampleText.RedirectsToOtherCodeExamples)
37 | .Where(x => x.CodeExampleToRedirectTo == int.Parse(Regex.Match(redirectToFirstCodeExample, @"\d+").Value))
38 | .FirstOrDefault()
39 | .RedirectText,
40 | redirectToFirstCodeExample
41 | )
42 | )
43 |
44 | @Html.Raw(ViewBag.SupportingTexts.ContinueButton)
45 | }
--------------------------------------------------------------------------------
/launcher-csharp/eSignature/Views/ShowEmbeddedConsole/eg012.cshtml:
--------------------------------------------------------------------------------
1 | @using System.Text.RegularExpressions;
2 | @{
3 | var redirectToSecondCodeExample = "href='eg002'";
4 | int formNumber = 0;
5 | int viewInputNumber = 0;
6 | }
7 |
8 | @Html.Raw(ViewBag.CodeExampleText.ExampleName)
9 |
10 | @Html.Raw(ViewBag.CodeExampleText.ExampleDescription)
11 |
12 |
13 | @if (ViewBag.showDoc) {
14 | Documentation about this example
15 | }
16 |
17 |
18 |
19 |
20 | @Html.Raw(@String.Format(ViewBag.SupportingTexts.ViewSourceFile, "ShowEmbeddedConsole.cs "))
21 |
22 |
23 | @if (!ViewBag.envelopeOk) {
24 | @Html.Raw(
25 | String.Format(
26 | ((IEnumerable) ViewBag.CodeExampleText.RedirectsToOtherCodeExamples)
27 | .Where(x => x.CodeExampleToRedirectTo == int.Parse(Regex.Match(redirectToSecondCodeExample, @"\d+").Value))
28 | .FirstOrDefault()
29 | .RedirectText,
30 | redirectToSecondCodeExample
31 | )
32 | )
33 | }
34 |
35 |
36 |
37 | @Html.Raw(ViewBag.CodeExampleText.Forms[formNumber].Inputs[viewInputNumber].InputName)
38 |
39 | Front page
40 | The envelope's Documents view!option>
41 |
42 |
43 |
44 | @Html.Raw(ViewBag.SupportingTexts.ContinueButton)
45 |
46 |
--------------------------------------------------------------------------------
/launcher-csharp/Workspaces/Examples/AddDocumentToWorkspaces.cs:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) Docusign. All rights reserved.
3 | //
4 |
5 | namespace DocuSign.CodeExamples.Examples
6 | {
7 | using System.IO;
8 | using System.Threading.Tasks;
9 | using Docusign.IAM.SDK;
10 | using Docusign.IAM.SDK.Models.Components;
11 |
12 | public static class AddDocumentToWorkspaces
13 | {
14 | public static async Task AddDocumentToWorkspaceAsync(
15 | string accessToken,
16 | string accountId,
17 | string workspaceId,
18 | string documentName,
19 | string documentPath)
20 | {
21 | //ds-snippet-start:Workspaces2Step2
22 | var client = CreateAuthenticatedClient(accessToken);
23 | //ds-snippet-end:Workspaces2Step2
24 |
25 | byte[] fileBytes = File.ReadAllBytes(documentPath);
26 |
27 | //ds-snippet-start:Workspaces2Step3
28 | var addWorkspaceDocumentRequest = new AddWorkspaceDocumentRequest
29 | {
30 | File = new AddWorkspaceDocumentRequestFile
31 | {
32 | FileName = documentName,
33 | Content = fileBytes,
34 | },
35 | };
36 | //ds-snippet-end:Workspaces2Step3
37 |
38 | //ds-snippet-start:Workspaces2Step4
39 | return await client.Workspaces.WorkspaceDocuments.AddWorkspaceDocumentAsync(
40 | accountId,
41 | workspaceId,
42 | addWorkspaceDocumentRequest);
43 | //ds-snippet-end:Workspaces2Step4
44 | }
45 |
46 | private static IamClient CreateAuthenticatedClient(string accessToken)
47 | {
48 | return IamClient.Builder()
49 | .WithAccessToken(accessToken)
50 | .Build();
51 | }
52 | }
53 | }
54 |
--------------------------------------------------------------------------------
/launcher-csharp/eSignature/Views/UnpauseSignatureWorkflow/Eg033.cshtml:
--------------------------------------------------------------------------------
1 | @using Microsoft.AspNetCore.Html
2 | @using System.Text.RegularExpressions;
3 | @{
4 | var redirectTo32CodeExample = "href='eg032'";
5 | }
6 | @functions
7 | {
8 | IHtmlContent GetTextInputMarkup(string id, string title, string type)
9 | {
10 | return Html.Raw($@"
11 |
12 | {title}
13 |
14 |
");
15 | }
16 | }
17 |
18 | @Html.Raw(ViewBag.CodeExampleText.ExampleName)
19 |
20 | @Html.Raw(ViewBag.CodeExampleText.ExampleDescription)
21 |
22 |
23 |
24 | @if (ViewBag.showDoc)
25 | {
26 | Documentation about this example
}
27 |
28 |
29 |
30 |
31 | @Html.Raw(@String.Format(ViewBag.SupportingTexts.ViewSourceFile, "UnpauseSignatureWorkflow.cs "))
32 |
33 |
34 | @if (ViewBag.pausedEnvelopeOk) {
35 |
36 | @Html.Raw(ViewBag.SupportingTexts.SubmitButton)
37 |
38 | }else {
39 |
40 | @Html.Raw(
41 | String.Format(
42 | ((IEnumerable) ViewBag.CodeExampleText.RedirectsToOtherCodeExamples)
43 | .Where(x => x.CodeExampleToRedirectTo == int.Parse(Regex.Match(redirectTo32CodeExample, @"\d+").Value))
44 | .FirstOrDefault()
45 | .RedirectText,
46 | redirectTo32CodeExample
47 | )
48 | )
49 |
50 |
51 |
52 | @Html.Raw(ViewBag.SupportingTexts.ContinueButton)
53 |
54 | }
--------------------------------------------------------------------------------
/launcher-csharp/Common/IRequestItemsService.cs:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) Docusign. All rights reserved.
3 | //
4 |
5 | namespace DocuSign.CodeExamples
6 | {
7 | using System;
8 | using System.Collections.Generic;
9 | using DocuSign.CodeExamples.Models;
10 | using Docusign.IAM.SDK.Models.Components;
11 | using Microsoft.Extensions.Configuration;
12 |
13 | public interface IRequestItemsService
14 | {
15 | public string EgName { get; set; }
16 |
17 | public Session Session { get; set; }
18 |
19 | public User User { get; set; }
20 |
21 | public IConfiguration Configuration { get; set; }
22 |
23 | public Guid? OrganizationId { get; set; }
24 |
25 | public string AuthenticatedUserEmail { get; set; }
26 |
27 | string EnvelopeId { get; set; }
28 |
29 | public List ExtensionApps { get; set; }
30 |
31 | public string DocumentId { get; set; }
32 |
33 | public string ClickwrapId { get; set; }
34 |
35 | public string ClickwrapName { get; set; }
36 |
37 | public EnvelopeDocuments EnvelopeDocuments { get; set; }
38 |
39 | public string TemplateId { get; set; }
40 |
41 | public string WebFormsTemplateId { get; set; }
42 |
43 | public string WorkflowId { get; set; }
44 |
45 | public string WorkspaceId { get; set; }
46 |
47 | public string CreatorId { get; set; }
48 |
49 | public string WorkspaceDocumentId { get; set; }
50 |
51 | public bool IsWorkflowPublished { get; set; }
52 |
53 | public string InstanceId { get; set; }
54 |
55 | public string PausedEnvelopeId { get; set; }
56 |
57 | public string Status { get; set; }
58 |
59 | public string EmailAddress { get; set; }
60 |
61 | public void UpdateUserFromJwt();
62 |
63 | public string IdentifyApiOfCodeExample(string eg);
64 |
65 | public void Logout();
66 |
67 | public bool CheckToken(int bufferMin);
68 | }
69 | }
--------------------------------------------------------------------------------
/launcher-csharp/Maestro/Examples/CancelWorkflowInstance.cs:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) Docusign. All rights reserved.
3 | //
4 |
5 | namespace DocuSign.CodeExamples.Examples
6 | {
7 | using System.Threading.Tasks;
8 | using Docusign.IAM.SDK;
9 | using Docusign.IAM.SDK.Models.Components;
10 |
11 | public static class CancelWorkflowInstance
12 | {
13 | //ds-snippet-start:Maestro4Step3
14 | public static async Task CancelInstanceMaestroWorkflow(
15 | string basePath,
16 | string accessToken,
17 | string accountId,
18 | string workflowId,
19 | string workflowInstanceId)
20 | {
21 | var client = CreateAuthenticatedClient(basePath, accessToken);
22 | return await client.Maestro.WorkflowInstanceManagement.CancelWorkflowInstanceAsync(accountId, workflowId, workflowInstanceId);
23 | }
24 |
25 | //ds-snippet-end:Maestro4Step3
26 |
27 | public static async Task GetWorkflowInstanceStatus(
28 | string basePath,
29 | string accessToken,
30 | string accountId,
31 | string workflowId,
32 | string workflowInstanceId)
33 | {
34 | var client = CreateAuthenticatedClient(basePath, accessToken);
35 | return await client.Maestro.WorkflowInstanceManagement.GetWorkflowInstanceAsync(accountId, workflowId, workflowInstanceId);
36 | }
37 |
38 | ///
39 | /// Creates an authenticated IAM client.
40 | ///
41 | //ds-snippet-start:Maestro4Step2
42 | private static IamClient CreateAuthenticatedClient(string basePath, string accessToken)
43 | {
44 | return IamClient.Builder()
45 | .WithServerUrl(basePath)
46 | .WithAccessToken(accessToken)
47 | .Build();
48 | }
49 |
50 | //ds-snippet-end:Maestro4Step2
51 | }
52 | }
53 |
--------------------------------------------------------------------------------
/launcher-csharp/Rooms/Views/AddingFormToRoom/Shared/AddFormView.cshtml:
--------------------------------------------------------------------------------
1 | @model DocuSign.CodeExamples.Rooms.Models.RoomFormModel
2 | @using System.Text.RegularExpressions;
3 | @{
4 | var redirectToFirstCodeExample = "href='reg001'";
5 | int formNumber = 0;
6 | int roomInputNumber = 0;
7 | int formInputNumber = 1;
8 | }
9 |
10 | @if (Model.Rooms.Any())
11 | {
12 |
13 |
14 |
15 | @Html.Raw(ViewBag.CodeExampleText.Forms[formNumber].Inputs[roomInputNumber].InputName)
16 |
17 |
18 |
20 |
21 |
22 |
23 |
24 | @Html.Raw(ViewBag.CodeExampleText.Forms[formNumber].Inputs[formInputNumber].InputName)
25 |
26 |
27 |
29 |
30 |
31 |
32 |
33 | @Html.Raw(ViewBag.SupportingTexts.SubmitButton)
34 |
35 | }
36 | else
37 | {
38 |
39 | @Html.Raw(
40 | String.Format(
41 | ((IEnumerable) ViewBag.CodeExampleText.RedirectsToOtherCodeExamples)
42 | .Where(x => x.CodeExampleToRedirectTo == int.Parse(Regex.Match(redirectToFirstCodeExample, @"\d+").Value))
43 | .FirstOrDefault()
44 | .RedirectText,
45 | redirectToFirstCodeExample
46 | )
47 | )
48 |
49 |
50 | @Html.Raw(ViewBag.SupportingTexts.ContinueButton)
51 | }
--------------------------------------------------------------------------------
/launcher-csharp/Click/Examples/RetrieveClickwraps.cs:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) Docusign. All rights reserved.
3 | //
4 |
5 | namespace DocuSign.Click.Examples
6 | {
7 | using System;
8 | using DocuSign.Click.Api;
9 | using DocuSign.Click.Client;
10 | using DocuSign.Click.Model;
11 |
12 | public class RetrieveClickwraps
13 | {
14 | ///
15 | /// Gets a list of all clickwraps
16 | ///
17 | /// BasePath for API calls (URI)
18 | /// Access Token for API call (OAuth)
19 | /// The DocuSign Account ID (GUID or short version) for which the APIs call would be made
20 | /// The list of all clickwraps
21 | public static ClickwrapVersionsResponse GetClickwraps(string basePath, string accessToken, string accountId)
22 | {
23 | //ds-snippet-start:Click4Step2
24 | var docuSignClient = new DocuSignClient(basePath);
25 | docuSignClient.Configuration.DefaultHeader.Add("Authorization", "Bearer " + accessToken);
26 | //ds-snippet-end:Click4Step2
27 | //ds-snippet-start:Click4Step3
28 | var clickAccountApi = new AccountsApi(docuSignClient);
29 |
30 | var response = clickAccountApi.GetClickwrapsWithHttpInfo(accountId);
31 |
32 | response.Headers.TryGetValue("X-RateLimit-Remaining", out string remaining);
33 | response.Headers.TryGetValue("X-RateLimit-Reset", out string reset);
34 |
35 | if (reset != null && remaining != null)
36 | {
37 | DateTime resetDate = DateTimeOffset.FromUnixTimeSeconds(long.Parse(reset)).UtcDateTime;
38 | Console.WriteLine("API calls remaining: " + remaining);
39 | Console.WriteLine("Next Reset: " + resetDate);
40 | }
41 |
42 | return response.Data;
43 | //ds-snippet-end:Click4Step3
44 | }
45 | }
46 | }
47 |
--------------------------------------------------------------------------------
/launcher-csharp.Tests/eSignatureUnitTests/SetEnvelopeTabValueUnitTests.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Text;
4 | using DocuSign.CodeExamples.Common;
5 | using ESignature.Examples;
6 | using Xunit;
7 |
8 | namespace launcher_csharp.Tests.eSignatureUnitTests
9 | {
10 | [Collection("eSignature tests")]
11 | public sealed class SetEnvelopeTabValueUnitTests
12 | {
13 | private const string RedirectUrl = "https://developers.docusign.com/docs/esign-rest-api/";
14 | private const string RestApiPrefix = "/restapi";
15 | private const string DocxDocumentName = "World_Wide_Corp_salary.docx";
16 |
17 | private readonly TestConfig _testConfig;
18 |
19 | public SetEnvelopeTabValueUnitTests()
20 | {
21 | this._testConfig = new TestConfig();
22 |
23 | var jwtLoginMethod = new JwtLoginMethodUnitTest();
24 | jwtLoginMethod.RequestJWTUserToken_CorrectInputParameters_ReturnsOAuthToken(ExamplesApiType.ESignature, _testConfig);
25 | }
26 |
27 | [Fact]
28 | public void SetEnvelopeTabValue_CorrectInputParameters_ReturnsEnvelopeIdAndRedirectURL()
29 | {
30 | // Arrange
31 | string basePath = _testConfig.BasePath + RestApiPrefix;
32 | string tabsDocx = _testConfig.PathToSolution + DocxDocumentName;
33 |
34 | // Act
35 | var envelopeAndRedirectUrl = SetEnvelopeTabValue.CreateEnvelopeAndUpdateTabData(
36 | _testConfig.SignerEmail,
37 | _testConfig.SignerName,
38 | _testConfig.ImpersonatedUserId,
39 | _testConfig.AccessToken,
40 | basePath,
41 | _testConfig.AccountId,
42 | tabsDocx,
43 | RedirectUrl,
44 | RedirectUrl);
45 |
46 | string redirectUrl = envelopeAndRedirectUrl.Item2;
47 | string envelopeId = envelopeAndRedirectUrl.Item1;
48 |
49 | // Assert
50 | Assert.NotNull(redirectUrl);
51 | Assert.NotNull(envelopeId);
52 | }
53 | }
54 | }
55 |
--------------------------------------------------------------------------------
/launcher-csharp/eSignature/Views/CreateBrand/eg028.cshtml:
--------------------------------------------------------------------------------
1 | @using DocuSign.CodeExamples.Common
2 | @{
3 | int formNumber = 0;
4 | int brandNameInputNumber = 0;
5 | int languageInputNumber = 1;
6 | }
7 |
8 | @Html.Raw(ViewBag.CodeExampleText.ExampleName)
9 |
10 | @Html.Raw(ViewBag.CodeExampleText.ExampleDescription)
11 |
12 |
13 | @if (ViewBag.showDoc == true)
14 | {
15 | Documentation about this example
16 | }
17 |
18 |
19 |
20 |
21 |
22 | @Html.Raw(@String.Format(ViewBag.SupportingTexts.ViewSourceFile, "CreateBrand.cs "))
23 |
24 |
25 |
26 |
27 | @Html.Raw(ViewBag.CodeExampleText.Forms[formNumber].FormName)
28 |
29 |
30 |
31 |
32 | @Html.Raw(ViewBag.CodeExampleText.Forms[formNumber].Inputs[brandNameInputNumber].InputName)
33 |
34 |
35 |
42 |
43 |
44 |
45 |
46 | @Html.Raw(ViewBag.CodeExampleText.Forms[formNumber].Inputs[languageInputNumber].InputName)
47 |
48 |
49 | @Html.DropDownList(
50 | "defaultBrandLanguage",
51 | new SelectList(Languages.SupportedLanguages, "Key", "Value", "en"),
52 | new { @class = "form-control", @required = "required" }
53 | )
54 |
55 |
56 | @Html.Raw(ViewBag.SupportingTexts.SubmitButton)
57 |
58 |
--------------------------------------------------------------------------------
/launcher-csharp/Admin/Views/DeleteUserProductPermissionProfile/Aeg009.cshtml:
--------------------------------------------------------------------------------
1 | @using System.Text.RegularExpressions;
2 | @{
3 | var redirectToSecondCodeExample = "href='aeg002'";
4 | int formNumber = 0;
5 | int permissionInputNumber = 0;
6 | }
7 | @Html.Raw(ViewBag.CodeExampleText.ExampleName)
8 |
9 | @Html.Raw(ViewBag.CodeExampleText.ExampleDescription)
10 |
11 |
12 |
13 |
14 |
15 | @Html.Raw(
16 | @String.Format(
17 | ViewBag.SupportingTexts.ViewSourceFile,
18 | "DeleteUserProductPermissionProfile.cs "
19 | )
20 | )
21 |
22 |
23 | @if (ViewBag.EmailAddress != null) {
24 |
25 | @Html.Raw(String.Format(ViewBag.CodeExampleText.Forms[formNumber].FormName, @ViewBag.EmailAddress))
26 |
27 |
28 |
29 |
30 |
31 | @Html.Raw(ViewBag.CodeExampleText.Forms[formNumber].Inputs[permissionInputNumber].InputName)
32 |
33 |
34 | @Html.DropDownList(
35 | "ProductId",
36 | new SelectList(ViewBag.Products, "Key", "Value"),
37 | new { @class = "form-control" }
38 | )
39 |
40 |
41 |
42 | @Html.Raw(ViewBag.SupportingTexts.ContinueButton)
43 |
44 | }
45 | else
46 | {
47 |
48 | @Html.Raw(
49 | String.Format(
50 | ((IEnumerable) ViewBag.CodeExampleText.RedirectsToOtherCodeExamples)
51 | .Where(x => x.CodeExampleToRedirectTo == int.Parse(Regex.Match(redirectToSecondCodeExample, @"\d+").Value))
52 | .FirstOrDefault()
53 | .RedirectText,
54 | redirectToSecondCodeExample
55 | )
56 | )
57 |
58 | }
59 |
60 |
--------------------------------------------------------------------------------
/launcher-csharp/eSignature/Examples/DeletePermission.cs:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) Docusign. All rights reserved.
3 | //
4 |
5 | namespace ESignature.Examples
6 | {
7 | using System;
8 | using DocuSign.eSign.Api;
9 | using DocuSign.eSign.Client;
10 |
11 | public static class DeletePermission
12 | {
13 | ///
14 | /// Deletes a permission profile
15 | ///
16 | /// Permission profile ID
17 | /// Access Token for API call (OAuth)
18 | /// BasePath for API calls (URI)
19 | /// The DocuSign Account ID (GUID or short version) for which the APIs call would be made
20 | public static void DeletePermissionProfile(string permissionProfileId, string accessToken, string basePath, string accountId)
21 | {
22 | // Construct your API headers
23 | //ds-snippet-start:eSign27Step2
24 | var docuSignClient = new DocuSignClient(basePath);
25 | docuSignClient.Configuration.DefaultHeader.Add("Authorization", "Bearer " + accessToken);
26 | AccountsApi accountsApi = new AccountsApi(docuSignClient);
27 | //ds-snippet-end:eSign27Step2
28 |
29 | // Call the eSignature REST API
30 | //ds-snippet-start:eSign27Step3
31 | var response = accountsApi.DeletePermissionProfileWithHttpInfo(accountId, permissionProfileId);
32 | response.Headers.TryGetValue("X-RateLimit-Remaining", out string remaining);
33 | response.Headers.TryGetValue("X-RateLimit-Reset", out string reset);
34 |
35 | if (reset != null && remaining != null)
36 | {
37 | DateTime resetDate = DateTimeOffset.FromUnixTimeSeconds(long.Parse(reset)).UtcDateTime;
38 | Console.WriteLine("API calls remaining: " + remaining);
39 | Console.WriteLine("Next Reset: " + resetDate);
40 | }
41 |
42 | //ds-snippet-end:eSign27Step3
43 | }
44 | }
45 | }
46 |
--------------------------------------------------------------------------------
/launcher-csharp/Admin/Views/DeleteUserProductPermissionProfile/Aeg09.cshtml:
--------------------------------------------------------------------------------
1 | @using System.Text.RegularExpressions;
2 | @{
3 | var redirectToSecondCodeExample = "href='Aeg02'";
4 | int formNumber = 0;
5 | int permissionInputNumber = 0;
6 | }
7 | 9. @Html.Raw(ViewBag.CodeExampleText.ExampleName)
8 |
9 | @Html.Raw(ViewBag.CodeExampleText.ExampleDescription)
10 |
11 |
12 |
13 |
14 |
15 | @Html.Raw(
16 | @String.Format(
17 | ViewBag.SupportingTexts.ViewSourceFile,
18 | "DeleteUserProductPermissionProfile.cs "
19 | )
20 | )
21 |
22 |
23 | @if (ViewBag.EmailAddress != null) {
24 |
25 | @Html.Raw(String.Format(ViewBag.CodeExampleText.Forms[formNumber].FormName, @ViewBag.EmailAddress))
26 |
27 |
28 |
29 |
30 |
31 | @Html.Raw(ViewBag.CodeExampleText.Forms[formNumber].Inputs[permissionInputNumber].InputName)
32 |
33 |
34 | @Html.DropDownList(
35 | "ProductId",
36 | new SelectList(ViewBag.Products, "Key", "Value"),
37 | new { @class = "form-control" }
38 | )
39 |
40 |
41 |
42 | @Html.Raw(ViewBag.SupportingTexts.ContinueButton)
43 |
44 | }
45 | else
46 | {
47 |
48 | @Html.Raw(
49 | String.Format(
50 | ((IEnumerable) ViewBag.CodeExampleText.RedirectsToOtherCodeExamples)
51 | .Where(x => x.CodeExampleToRedirectTo == int.Parse(Regex.Match(redirectToSecondCodeExample, @"\d+").Value))
52 | .FirstOrDefault()
53 | .RedirectText,
54 | redirectToSecondCodeExample
55 | )
56 | )
57 |
58 | }
59 |
60 |
--------------------------------------------------------------------------------
/launcher-csharp/eSignature/Examples/ListEnvelopeRecipients.cs:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) Docusign. All rights reserved.
3 | //
4 |
5 | namespace ESignature.Examples
6 | {
7 | using System;
8 | using DocuSign.eSign.Api;
9 | using DocuSign.eSign.Client;
10 | using DocuSign.eSign.Model;
11 |
12 | public static class ListEnvelopeRecipients
13 | {
14 | ///
15 | /// Gets a list of all the recipients for a specific envelope
16 | ///
17 | /// Access Token for API call (OAuth)
18 | /// BasePath for API calls (URI)
19 | /// The DocuSign Account ID (GUID or short version) for which the APIs call would be made
20 | /// The required envelopeId
21 | /// An object containing information about all the recipients in the envelope
22 | public static Recipients GetRecipients(string accessToken, string basePath, string accountId, string envelopeId)
23 | {
24 | //ds-snippet-start:eSign5Step2
25 | var docuSignClient = new DocuSignClient(basePath);
26 | docuSignClient.Configuration.DefaultHeader.Add("Authorization", "Bearer " + accessToken);
27 | EnvelopesApi envelopesApi = new EnvelopesApi(docuSignClient);
28 | var results = envelopesApi.ListRecipientsWithHttpInfo(accountId, envelopeId);
29 | results.Headers.TryGetValue("X-RateLimit-Remaining", out string remaining);
30 | results.Headers.TryGetValue("X-RateLimit-Reset", out string reset);
31 |
32 | if (reset != null && remaining != null)
33 | {
34 | DateTime resetDate = DateTimeOffset.FromUnixTimeSeconds(long.Parse(reset)).UtcDateTime;
35 | Console.WriteLine("API calls remaining: " + remaining);
36 | Console.WriteLine("Next Reset: " + resetDate);
37 | }
38 |
39 | //ds-snippet-end:eSign5Step2
40 |
41 | return results.Data;
42 | }
43 | }
44 | }
45 |
--------------------------------------------------------------------------------
/launcher-csharp/eSignature/Examples/GetEnvelopeInformation.cs:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) Docusign. All rights reserved.
3 | //
4 |
5 | namespace ESignature.Examples
6 | {
7 | using System;
8 | using DocuSign.eSign.Api;
9 | using DocuSign.eSign.Client;
10 | using DocuSign.eSign.Model;
11 |
12 | public static class GetEnvelopeInformation
13 | {
14 | ///
15 | /// Gets the envelope's information for the specified envelope
16 | ///
17 | /// Access Token for API call (OAuth)
18 | /// BasePath for API calls (URI)
19 | /// The DocuSign Account ID (GUID or short version) for which the APIs call would be made
20 | /// The envelopeId for which you wish to get information
21 | /// Object containing envelope information
22 | public static Envelope GetEnvelope(string accessToken, string basePath, string accountId, string envelopeId)
23 | {
24 | //ds-snippet-start:eSign4Step2
25 | var docuSignClient = new DocuSignClient(basePath);
26 | docuSignClient.Configuration.DefaultHeader.Add("Authorization", "Bearer " + accessToken);
27 |
28 | EnvelopesApi envelopesApi = new EnvelopesApi(docuSignClient);
29 | var getEnvelopeReponse = envelopesApi.GetEnvelopeWithHttpInfo(accountId, envelopeId);
30 | getEnvelopeReponse.Headers.TryGetValue("X-RateLimit-Remaining", out string remaining);
31 | getEnvelopeReponse.Headers.TryGetValue("X-RateLimit-Reset", out string reset);
32 |
33 | if (reset != null && remaining != null)
34 | {
35 | DateTime resetDate = DateTimeOffset.FromUnixTimeSeconds(long.Parse(reset)).UtcDateTime;
36 | Console.WriteLine("API calls remaining: " + remaining);
37 | Console.WriteLine("Next Reset: " + resetDate);
38 | }
39 |
40 | return getEnvelopeReponse.Data;
41 | //ds-snippet-end:eSign4Step2
42 | }
43 | }
44 | }
45 |
--------------------------------------------------------------------------------
/launcher-csharp/Admin/Views/CreateAccount/Aeg013.cshtml:
--------------------------------------------------------------------------------
1 | @{
2 | int formNumber = 0;
3 | int emailInputNumber = 0;
4 | int firstNameInputNumber = 1;
5 | int lastNameInputNumber = 2;
6 | }
7 |
8 | @Html.Raw(ViewBag.CodeExampleText.ExampleName)
9 |
10 | @Html.Raw(ViewBag.CodeExampleText.ExampleDescription)
11 |
12 |
13 |
14 |
15 |
16 |
17 | @Html.Raw(
18 | @String.Format(
19 | ViewBag.SupportingTexts.ViewSourceFile,
20 | "CreateAccount.cs "
21 | )
22 | )
23 |
24 |
25 |
26 |
27 |
28 | @Html.Raw(ViewBag.CodeExampleText.Forms[formNumber].Inputs[emailInputNumber].InputName)
29 |
30 |
31 |
33 |
34 |
35 |
36 |
37 | @Html.Raw(ViewBag.CodeExampleText.Forms[formNumber].Inputs[firstNameInputNumber].InputName)
38 |
39 |
40 |
43 |
44 |
45 |
46 |
47 | @Html.Raw(ViewBag.CodeExampleText.Forms[formNumber].Inputs[lastNameInputNumber].InputName)
48 |
49 |
50 |
53 |
54 |
55 | @Html.Raw(ViewBag.SupportingTexts.SubmitButton)
56 |
--------------------------------------------------------------------------------
/launcher-csharp/Click/Examples/GetClickwrapResponses.cs:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) Docusign. All rights reserved.
3 | //
4 |
5 | namespace DocuSign.Click.Examples
6 | {
7 | using System;
8 | using DocuSign.Click.Api;
9 | using DocuSign.Click.Client;
10 | using DocuSign.Click.Model;
11 |
12 | public class GetClickwrapResponses
13 | {
14 | ///
15 | /// Gets a clickwrap agreements
16 | ///
17 | /// The Id of clickwrap
18 | /// BasePath for API calls (URI)
19 | /// Access Token for API call (OAuth)
20 | /// The DocuSign Account ID (GUID or short version) for which the APIs call would be made
21 | /// The agreements of a given clickwrap
22 | public static ClickwrapAgreementsResponse GetAgreements(string clickwrapId, string basePath, string accessToken, string accountId)
23 | {
24 | //ds-snippet-start:Click5Step2
25 | var docuSignClient = new DocuSignClient(basePath);
26 | docuSignClient.Configuration.DefaultHeader.Add("Authorization", "Bearer " + accessToken);
27 | var clickAccountApi = new AccountsApi(docuSignClient);
28 | //ds-snippet-end:Click5Step2
29 |
30 | //ds-snippet-start:Click5Step3
31 | var response = clickAccountApi.GetClickwrapAgreementsWithHttpInfo(accountId, clickwrapId);
32 |
33 | response.Headers.TryGetValue("X-RateLimit-Remaining", out string remaining);
34 | response.Headers.TryGetValue("X-RateLimit-Reset", out string reset);
35 |
36 | if (reset != null && remaining != null)
37 | {
38 | DateTime resetDate = DateTimeOffset.FromUnixTimeSeconds(long.Parse(reset)).UtcDateTime;
39 | Console.WriteLine("API calls remaining: " + remaining);
40 | Console.WriteLine("Next Reset: " + resetDate);
41 | }
42 |
43 | return response.Data;
44 | //ds-snippet-end:Click5Step3
45 | }
46 | }
47 | }
48 |
--------------------------------------------------------------------------------
/launcher-csharp/eSignature/Views/RecipientAuthKBA/eg022.cshtml:
--------------------------------------------------------------------------------
1 | @{
2 | int formNumber = 0;
3 | int signerEmailInputNumber = 0;
4 | int signerNameInputNumber = 1;
5 | }
6 |
7 | @Html.Raw(ViewBag.CodeExampleText.ExampleName)
8 |
9 | @Html.Raw(ViewBag.CodeExampleText.ExampleDescription)
10 |
11 |
12 | @if (ViewBag.showDoc == true)
13 | {
14 | Documentation about this example
15 | }
16 |
17 |
18 |
19 |
20 | @Html.Raw(@String.Format(ViewBag.SupportingTexts.ViewSourceFile, "RecipientAuthKBA.cs "))
21 |
22 |
23 |
24 |
25 |
26 | @Html.Raw(ViewBag.CodeExampleText.Forms[formNumber].Inputs[signerEmailInputNumber].InputName)
27 |
28 |
29 |
36 |
37 | @Html.Raw(ViewBag.SupportingTexts.HelpingTexts.EmailWontBeShared)
38 |
39 |
40 |
41 |
42 | @Html.Raw(ViewBag.CodeExampleText.Forms[formNumber].Inputs[signerNameInputNumber].InputName)
43 |
44 |
45 |
51 |
52 |
53 | @Html.Raw(ViewBag.SupportingTexts.SubmitButton)
54 |
55 |
--------------------------------------------------------------------------------
/launcher-csharp/eSignature/Views/RecipientAuthIDV/eg023.cshtml:
--------------------------------------------------------------------------------
1 | @{
2 | int formNumber = 0;
3 | int signerEmailInputNumber = 0;
4 | int signerNameInputNumber = 1;
5 | }
6 |
7 | @Html.Raw(ViewBag.CodeExampleText.ExampleName)
8 |
9 | @Html.Raw(ViewBag.CodeExampleText.ExampleDescription)
10 |
11 |
12 | @if (ViewBag.showDoc == true)
13 | {
14 | Documentation about this example
15 | }
16 |
17 |
18 |
19 |
20 | @Html.Raw(@String.Format(ViewBag.SupportingTexts.ViewSourceFile, "RecipientAuthIDV.cs "))
21 |
22 |
23 |
24 |
25 |
26 | @Html.Raw(ViewBag.CodeExampleText.Forms[formNumber].Inputs[signerEmailInputNumber].InputName)
27 |
28 |
29 |
36 |
37 |
38 | @Html.Raw(ViewBag.SupportingTexts.HelpingTexts.EmailWontBeShared)
39 |
40 |
41 |
42 |
43 | @Html.Raw(ViewBag.CodeExampleText.Forms[formNumber].Inputs[signerNameInputNumber].InputName)
44 |
45 |
46 |
52 |
53 |
54 |
55 | @Html.Raw(ViewBag.SupportingTexts.SubmitButton)
56 |
57 |
--------------------------------------------------------------------------------
/launcher-csharp/Common/Languages.cs:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) Docusign. All rights reserved.
3 | //
4 |
5 | namespace DocuSign.CodeExamples.Common
6 | {
7 | using System;
8 | using System.Collections.Generic;
9 | using System.Linq;
10 | using System.Threading.Tasks;
11 |
12 | public static class Languages
13 | {
14 | public static Dictionary SupportedLanguages = new Dictionary
15 | {
16 | { "ar", "Arabic" },
17 | { "hy", "Armenian" },
18 | { "id", "Bahasa Indonesia" },
19 | { "ms", "Bahasa Malay" },
20 | { "bg", "Bulgarian" },
21 | { "zh_CN", "Chinese Simplified" },
22 | { "zh_TW", "Chinese Traditional" },
23 | { "hr", "Croatian" },
24 | { "cs", "Czech" },
25 | { "da", "Danish" },
26 | { "nl", "Dutch" },
27 | { "en_GB", "English UK" },
28 | { "en", "English US" },
29 | { "et", "Estonian" },
30 | { "fa", "Farsi" },
31 | { "fi", "Finnish" },
32 | { "fr", "French" },
33 | { "fr_CA", "French Canada" },
34 | { "de", "German" },
35 | { "el", "Greek" },
36 | { "he", "Hebrew" },
37 | { "hi", "Hindi" },
38 | { "hu", "Hungarian" },
39 | { "it", "Italian" },
40 | { "ja", "Japanese" },
41 | { "ko", "Korean" },
42 | { "lv", "Latvian" },
43 | { "lt", "Lithuanian" },
44 | { "no", "Norwegian" },
45 | { "pl", "Polish" },
46 | { "pt", "Portuguese" },
47 | { "pt_BR", "Portuguese Brasil" },
48 | { "ro", "Romanian" },
49 | { "ru", "Russian" },
50 | { "sr", "Serbian" },
51 | { "sk", "Slovak" },
52 | { "sl", "Slovenian" },
53 | { "es", "Spanish" },
54 | { "es_MX", "Spanish Latin America" },
55 | { "sv", "Swedish" },
56 | { "th", "Thai" },
57 | { "tr", "Turkish" },
58 | { "uk", "Ukranian" },
59 | { "vi", "Vietnamese" },
60 | };
61 | }
62 | }
63 |
--------------------------------------------------------------------------------
/launcher-csharp/Click/Views/GetClickwrapResponses/Ceg005.cshtml:
--------------------------------------------------------------------------------
1 | @model DocuSign.CodeExamples.Click.Controllers.GetClickwrapResponses
2 | @using System.Text.RegularExpressions;
3 | @{
4 | var redirectToFirstCodeExample = "href='ceg001'";
5 | int formNumber = 0;
6 | int clickwrapInputNumber = 0;
7 | }
8 |
9 | @Html.Raw(ViewBag.CodeExampleText.ExampleName)
10 |
11 | @Html.Raw(ViewBag.CodeExampleText.ExampleDescription)
12 |
13 |
14 |
15 |
16 | @Html.Raw(
17 | @String.Format(
18 | ViewBag.SupportingTexts.ViewSourceFile,
19 | "GetClickwrapResponses.cs "
20 | )
21 | )
22 |
23 |
24 | @if (ViewBag.ClickwrapsData.Clickwraps.Count > 0) {
25 |
26 | @Html.Raw(ViewBag.CodeExampleText.Forms[formNumber].FormName)
27 |
28 |
29 |
30 |
31 |
32 | @Html.Raw(ViewBag.CodeExampleText.Forms[formNumber].Inputs[clickwrapInputNumber].InputName)
33 |
34 |
35 |
37 |
38 | @foreach (var clickwrap in ViewBag.ClickwrapsData.Clickwraps) {
39 | @Html.Raw(clickwrap.ClickwrapName)
40 | }
41 |
42 |
43 |
44 |
45 | @Html.Raw(ViewBag.SupportingTexts.SubmitButton)
46 |
47 | }
48 | else
49 | {
50 |
51 | @Html.Raw(
52 | String.Format(
53 | ((IEnumerable) ViewBag.CodeExampleText.RedirectsToOtherCodeExamples)
54 | .Where(x => x.CodeExampleToRedirectTo == int.Parse(Regex.Match(redirectToFirstCodeExample, @"\d+").Value))
55 | .FirstOrDefault()
56 | .RedirectText,
57 | redirectToFirstCodeExample
58 | )
59 | )
60 |
61 | }
--------------------------------------------------------------------------------
/launcher-csharp/Click/Views/GetClickwrapResponses/ClickEg05.cshtml:
--------------------------------------------------------------------------------
1 | @model DocuSign.CodeExamples.Click.Controllers.GetClickwrapResponses
2 | @using System.Text.RegularExpressions;
3 | @{
4 | var redirectToFirstCodeExample = "href='eg01'";
5 | int formNumber = 0;
6 | int clickwrapInputNumber = 0;
7 | }
8 |
9 | @Html.Raw(ViewBag.CodeExampleText.ExampleName)
10 |
11 | @Html.Raw(ViewBag.CodeExampleText.ExampleDescription)
12 |
13 |
14 |
15 |
16 | @Html.Raw(
17 | @String.Format(
18 | ViewBag.SupportingTexts.ViewSourceFile,
19 | "GetClickwrapResponses.cs "
20 | )
21 | )
22 |
23 |
24 | @if (ViewBag.ClickwrapsData.Clickwraps.Count > 0) {
25 |
26 | @Html.Raw(ViewBag.CodeExampleText.Forms[formNumber].FormName)
27 |
28 |
29 |
30 |
31 |
32 | @Html.Raw(ViewBag.CodeExampleText.Forms[formNumber].Inputs[clickwrapInputNumber].InputName)
33 |
34 |
35 |
37 |
38 | @foreach (var clickwrap in ViewBag.ClickwrapsData.Clickwraps) {
39 | @Html.Raw(clickwrap.ClickwrapName)
40 | }
41 |
42 |
43 |
44 |
45 | @Html.Raw(ViewBag.SupportingTexts.SubmitButton)
46 |
47 | }
48 | else
49 | {
50 |
51 | @Html.Raw(
52 | String.Format(
53 | ((IEnumerable) ViewBag.CodeExampleText.RedirectsToOtherCodeExamples)
54 | .Where(x => x.CodeExampleToRedirectTo == int.Parse(Regex.Match(redirectToFirstCodeExample, @"\d+").Value))
55 | .FirstOrDefault()
56 | .RedirectText,
57 | redirectToFirstCodeExample
58 | )
59 | )
60 |
61 | }
--------------------------------------------------------------------------------
/launcher-csharp/eSignature/Models/ModelsToReadManifest/SupportingTexts.cs:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) Docusign. All rights reserved.
3 | //
4 |
5 | namespace DocuSign.CodeExamples.ESignature.Models
6 | {
7 | using Newtonsoft.Json;
8 |
9 | public class SupportingTexts
10 | {
11 | [JsonProperty("HomePageText")]
12 | public string HomePageText { get; set; }
13 |
14 | [JsonProperty("ViewSourceFile")]
15 | public string ViewSourceFile { get; set; }
16 |
17 | [JsonProperty("APIMethodUsed")]
18 | public string ApiMethodUsed { get; set; }
19 |
20 | [JsonProperty("APIMethodUsedPlural")]
21 | public string ApiMethodUsedPlural { get; set; }
22 |
23 | [JsonProperty("SearchFailed")]
24 | public string SearchFailed { get; set; }
25 |
26 | [JsonProperty("SubmitButton")]
27 | public string SubmitButton { get; set; }
28 |
29 | [JsonProperty("ContinueButton")]
30 | public string ContinueButton { get; set; }
31 |
32 | [JsonProperty("HomeButton")]
33 | public string HomeButton { get; set; }
34 |
35 | [JsonProperty("LoginButton")]
36 | public string LoginButton { get; set; }
37 |
38 | [JsonProperty("LogoutButton")]
39 | public string LogoutButton { get; set; }
40 |
41 | [JsonProperty("ChangeAPITypeButton")]
42 | public string ChangeApiTypeButton { get; set; }
43 |
44 | [JsonProperty("WelcomeText")]
45 | public string WelcomeText { get; set; }
46 |
47 | [JsonProperty("CFRError")]
48 | public string CfrError { get; set; }
49 |
50 | [JsonProperty("ContactSupportToEnableFeature")]
51 | public string ContactSupportToEnableFeature { get; set; }
52 |
53 | [JsonProperty("IdenticalEmailsNotAllowedErrorMessage")]
54 | public string IdenticalEmailsNotAllowedErrorMessage { get; set; }
55 |
56 | [JsonProperty("LoginPage")]
57 | public LoginPage LoginPage { get; set; }
58 |
59 | [JsonProperty("SelectAPIPage")]
60 | public SelectApiPage SelectApiPage { get; set; }
61 |
62 | [JsonProperty("HelpingTexts")]
63 | public HelpingTexts HelpingTexts { get; set; }
64 | }
65 | }
--------------------------------------------------------------------------------
/launcher-csharp/Admin/Examples/RetrieveDocuSignProfileByUserId.cs:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) Docusign. All rights reserved.
3 | //
4 |
5 | namespace DocuSign.Admin.Examples
6 | {
7 | using System;
8 | using DocuSign.Admin.Api;
9 | using DocuSign.Admin.Client;
10 | using DocuSign.Admin.Model;
11 |
12 | public class RetrieveDocuSignProfileByUserId
13 | {
14 | ///
15 | /// Get a DocuSign profile by the user ID
16 | ///
17 | /// BasePath for API calls (URI)
18 | /// Access Token for API call (OAuth)
19 | /// DocuSign Organization Id (GUID)
20 | /// The DocuSign User Id (GUID)
21 | /// DocuSign profile, that has the searched user ID
22 | public static UsersDrilldownResponse GetDocuSignProfileByUserId(
23 | string basePath,
24 | string accessToken,
25 | Guid? orgId,
26 | Guid userId)
27 | {
28 | //ds-snippet-start:Admin7Step2
29 | var apiClient = new DocuSignClient(basePath);
30 | apiClient.Configuration.DefaultHeader.Add("Authorization", "Bearer " + accessToken);
31 | //ds-snippet-end:Admin7Step2
32 |
33 | //ds-snippet-start:Admin7Step3
34 | var usersApi = new UsersApi(apiClient);
35 | var recentlyModifiedUsers = usersApi.GetUserDSProfileWithHttpInfo(orgId, userId);
36 | recentlyModifiedUsers.Headers.TryGetValue("X-RateLimit-Remaining", out string remaining);
37 | recentlyModifiedUsers.Headers.TryGetValue("X-RateLimit-Reset", out string reset);
38 |
39 | if (reset != null && remaining != null)
40 | {
41 | DateTime resetDate = DateTimeOffset.FromUnixTimeSeconds(long.Parse(reset)).UtcDateTime;
42 | Console.WriteLine("API calls remaining: " + remaining);
43 | Console.WriteLine("Next Reset: " + resetDate);
44 | }
45 |
46 | //ds-snippet-end:Admin7Step3
47 |
48 | return recentlyModifiedUsers.Data;
49 | }
50 | }
51 | }
52 |
--------------------------------------------------------------------------------
/launcher-csharp/eSignature/Views/FocusedView/eg044.cshtml:
--------------------------------------------------------------------------------
1 | @{
2 | int formNumber = 0;
3 | int signerEmailInputNumber = 0;
4 | int signerNameInputNumber = 1;
5 | }
6 |
7 | @Html.Raw(ViewBag.CodeExampleText.ExampleName)
8 | @Html.Raw(ViewBag.CodeExampleText.ExampleDescription)
9 |
10 | @if (ViewBag.showDoc == true)
11 | {
12 | Documentation about this example
13 | }
14 |
15 |
16 |
17 |
18 | @Html.Raw(@String.Format(ViewBag.SupportingTexts.ViewSourceFile, "FocusedView.cs "))
19 |
20 |
21 |
22 |
23 |
24 | @Html.Raw(ViewBag.CodeExampleText.Forms[formNumber].Inputs[signerEmailInputNumber].InputName)
25 |
26 |
27 |
35 |
36 |
37 | @Html.Raw(ViewBag.SupportingTexts.HelpingTexts.EmailWontBeShared)
38 |
39 |
40 |
41 |
42 | @Html.Raw(ViewBag.CodeExampleText.Forms[formNumber].Inputs[signerNameInputNumber].InputName)
43 |
44 |
45 |
52 |
53 |
54 | @Html.Raw(ViewBag.SupportingTexts.SubmitButton)
55 |
56 |
--------------------------------------------------------------------------------
/launcher-csharp/eSignature/Views/EmbeddedSigningCeremony/eg001.cshtml:
--------------------------------------------------------------------------------
1 | @{
2 | int formNumber = 0;
3 | int signerEmailInputNumber = 0;
4 | int signerNameInputNumber = 1;
5 | }
6 |
7 | @Html.Raw(ViewBag.CodeExampleText.ExampleName)
8 | @Html.Raw(ViewBag.CodeExampleText.ExampleDescription)
9 |
10 | @if (ViewBag.showDoc == true)
11 | {
12 | Documentation about this example
13 | }
14 |
15 |
16 |
17 |
18 | @Html.Raw(@String.Format(ViewBag.SupportingTexts.ViewSourceFile, "EmbeddedSigningCeremony.cs "))
19 |
20 |
21 |
22 |
23 |
24 | @Html.Raw(ViewBag.CodeExampleText.Forms[formNumber].Inputs[signerEmailInputNumber].InputName)
25 |
26 |
27 |
35 |
36 |
37 | @Html.Raw(ViewBag.SupportingTexts.HelpingTexts.EmailWontBeShared)
38 |
39 |
40 |
41 |
42 | @Html.Raw(ViewBag.CodeExampleText.Forms[formNumber].Inputs[signerNameInputNumber].InputName)
43 |
44 |
45 |
52 |
53 |
54 | @Html.Raw(ViewBag.SupportingTexts.SubmitButton)
55 |
56 |
--------------------------------------------------------------------------------
/launcher-csharp/eSignature/Views/SetEnvelopeTabValue/eg016.cshtml:
--------------------------------------------------------------------------------
1 | @{
2 | int formNumber = 0;
3 | int signerEmailInputNumber = 1;
4 | int signerNameInputNumber = 0;
5 | }
6 |
7 | @Html.Raw(ViewBag.CodeExampleText.ExampleName)
8 |
9 | @Html.Raw(ViewBag.CodeExampleText.ExampleDescription)
10 |
11 |
12 | @if (ViewBag.showDoc == true)
13 | {
14 | Documentation about this example
15 | }
16 |
17 |
18 |
19 |
20 | @Html.Raw(@String.Format(ViewBag.SupportingTexts.ViewSourceFile, "SetEnvelopeTabValue.cs "))
21 |
22 |
23 |
24 |
25 |
26 | @Html.Raw(ViewBag.CodeExampleText.Forms[formNumber].Inputs[signerEmailInputNumber].InputName)
27 |
28 |
36 | @Html.Raw(ViewBag.SupportingTexts.HelpingTexts.EmailWontBeShared)
37 |
38 |
39 |
40 | @Html.Raw(ViewBag.CodeExampleText.Forms[formNumber].Inputs[signerNameInputNumber].InputName)
41 |
42 |
49 |
50 |
51 | @Html.Raw(ViewBag.SupportingTexts.SubmitButton)
52 |
53 |
--------------------------------------------------------------------------------