Skip to content

Commit 48c73f3

Browse files
authored
Merge pull request #37 from docusign/Admin4_Step4
Step4 added to Admin4
2 parents 513bb1b + 21a9b8b commit 48c73f3

File tree

4 files changed

+53
-2
lines changed

4 files changed

+53
-2
lines changed

launcher-csharp/Admin/Controllers/Eg03BulkExportUserDataController.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,7 @@ public ActionResult Create()
4444

4545
//Show results
4646
ViewBag.h1 = "Bulk export user data";
47-
ViewBag.message = $"User data exported to {filePath}. Results from UserExport:getUserListExport method:";
47+
ViewBag.message = $"User data exported to {filePath}.<br/> Results from UserExport:getUserListExport method:";
4848
ViewBag.Locals.Json = JsonConvert.SerializeObject(organizationExportsResponse, Formatting.Indented);
4949

5050
return View("example_done");

launcher-csharp/Admin/Controllers/Eg04AddUsersBulkImportController.cs

Lines changed: 33 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,8 @@
55
using Newtonsoft.Json;
66
using DocuSign.CodeExamples.Admin.Examples;
77
using DocuSign.Admin.Client;
8+
using DocuSign.Admin.Model;
9+
using System;
810

911
namespace DocuSign.CodeExamples.Admin.Controllers
1012
{
@@ -36,13 +38,15 @@ public ActionResult Create()
3638
try
3739
{
3840
// Call the Admin API to create a new user
39-
var organizationImportResponse = ImportUser.CreateBulkImportRequest(
41+
OrganizationImportResponse organizationImportResponse = ImportUser.CreateBulkImportRequest(
4042
accessToken, basePath, accountId, organizationId, Config.docCsv);
4143

4244
//Show results
4345
ViewBag.h1 = "Add users via bulk import";
4446
ViewBag.message = "Results from UserImport:addBulkUserImport method:";
4547
ViewBag.Locals.Json = JsonConvert.SerializeObject(organizationImportResponse, Formatting.Indented);
48+
ViewBag.AdditionalLinkText = "Check the request status";
49+
ViewBag.AdditionalLink = "CheckStatus?id=" + organizationImportResponse.Id;
4650

4751
return View("example_done");
4852
}
@@ -54,5 +58,33 @@ public ActionResult Create()
5458
return View("Error");
5559
}
5660
}
61+
62+
[MustAuthenticate]
63+
[HttpGet]
64+
[Route("CheckStatus")]
65+
public ActionResult CheckStatus(string id)
66+
{
67+
try
68+
{
69+
// Obtain your OAuth token
70+
var accessToken = RequestItemsService.User.AccessToken;
71+
var basePath = RequestItemsService.Session.AdminApiBasePath;
72+
var organizationId = RequestItemsService.OrganizationId;
73+
OrganizationImportResponse organizationImportResponse = ImportUser.CheckkStatus(accessToken, basePath, organizationId, Guid.Parse(id));
74+
75+
//Show results
76+
ViewBag.h1 = "Check status of users bulk import";
77+
ViewBag.message = "Results from UserImport:getBulkUserImportRequest method:";
78+
ViewBag.Locals.Json = JsonConvert.SerializeObject(organizationImportResponse, Formatting.Indented);
79+
return View("example_done");
80+
}
81+
catch (ApiException apiException)
82+
{
83+
ViewBag.errorCode = apiException.ErrorCode;
84+
ViewBag.errorMessage = apiException.Message;
85+
86+
return View("Error");
87+
}
88+
}
5789
}
5890
}

launcher-csharp/Admin/Examples/ImportUser.cs

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,5 +35,20 @@ public static OrganizationImportResponse CreateBulkImportRequest(string accessTo
3535
return bulkImportsApi.CreateBulkImportAddUsersRequest(organizationId, bytes);
3636
// Step 3 end
3737
}
38+
/// <summary>
39+
/// Checks the status of an existing bulk import requests
40+
/// </summary>
41+
/// <param name="accessToken">Access Token for API call (OAuth)</param>
42+
/// <param name="basePath">BasePath for API calls (URI)</param>
43+
/// <param name="organizationId">The DocuSign organization ID (GUID or short version) for which the APIs call would be made</param>
44+
/// <param name="importId">Unique ID of the bulk user import request</param>
45+
/// <returns></returns>
46+
public static OrganizationImportResponse CheckkStatus(string accessToken, string basePath, Guid? organizationId, Guid? importId)
47+
{
48+
var apiClient = new ApiClient(basePath);
49+
apiClient.Configuration.DefaultHeader.Add("Authorization", "Bearer " + accessToken);
50+
var bulkImportsApi = new BulkImportsApi(apiClient);
51+
return bulkImportsApi.GetBulkUserImportRequest(organizationId, importId);
52+
}
3853
}
3954
}

launcher-csharp/Views/Shared/example_done.cshtml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,4 +8,8 @@
88
<p><pre class="json-display"><code id="json-display">@ViewBag.Locals.Json</code></pre></p>
99
}
1010

11+
@if (ViewBag.AdditionalLink != null)
12+
{
13+
<p><a href="@ViewBag.AdditionalLink">@ViewBag.AdditionalLinkText</a></p>
14+
}
1115
<p><a href="/">Continue</a></p>

0 commit comments

Comments
 (0)