Create User API Request – Code Example
The examples below provide code for creating a User.
Prerequisites
Before making an 'create work item' request, you must have an access token to sign the request. You can retrieve an access token using one of the following flows:
- Getting an access token using the Resource Owner flow
- Getting an access token using the Implicit flow
Code Examples
C#
using System; using System.Net; using System.Net.Http; using System.Net.Http.Headers; using System.Text; using System.Threading.Tasks;
namespace HotDocsAdvanceApiExamples { public class UserRequest { public async Task<HttpStatusCode> CreateUser(string token) { // Create the 'create user' request var userId = Guid.NewGuid(); var request = CreateHttpRequestMessage(userId);
//Send create user request to Advance using (var client = new HttpClient()) { client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", token); var response = await client.SendAsync(request); return response.StatusCode; } }
private HttpRequestMessage CreateHttpRequestMessage(Guid userId) { // Create the request for the 'create user' API endpoint var createUserUrl = string.Format("https://yourtenancy.yourorganization.com/HdaApi/rest/v1.1/Users/{0}", userId);
return new HttpRequestMessage { RequestUri = new Uri(createUserUrl), Method = HttpMethod.Post, Content = GetRequestContent() }; }
private StringContent GetRequestContent() { // Generate the JSON request body required by the 'create user' method var json = "{ 'firstName': 'Emma', 'lastName': 'MacDiarmid', 'emailAddress': 'emma.macdiarmid@example.com', 'roles': [ 'SiteAdministrator' ], 'sendEmail': true }"; return new StringContent(json, Encoding.UTF8, "application/json"); } } }
Powershell
The example below assumes that you have already retrieved an access token and assigned it to the variable $token.
$body = @{ "firstName" = "Emma" "lastName" = "MacDiarmid" "emailAddress" = "emma.macdiarmid@example.com" "roles" = @("SiteAdministrator") } | ConvertTo-Json
$header = @{ "Accept"="application/json" "Content-Type"="application/json" "Authorization" = "bearer " + $token }
$createUserResult = Invoke-RestMethod -Uri "https://yourtenancy.yourorganization.com/HdaApi/rest/v1/Users/5b505239-557c-5570-b53f-7cc7f46445bd" -Method 'Post' -Body $body -Headers $header
Write-Host $createUserResult
JavaScript
The example below assumes that you have already retrieved an access token using the Implicit flow, returning the token as a fragment.
// You must omit the # character from the beginning of the token. var token = window.location.hash.substr(1);
// The data to be sent with the request var data = { "firstName": "Bob", "lastName": "Sherunkle", "emailAddress": "bob.sherunkle@example.com", "roles": [ "SiteAdministrator" ], "sendEmail": true };
// Create User request URL var url = "https://yourtenancy.yourorganization.com/HdaApi/rest/v1/Users/3ca8dc6a-8523-4d89-8c1d-b7306651f7a2";
// Create the request var xhr = new XMLHttpRequest(); xhr.open("POST", url, true); xhr.setRequestHeader('Content-Type', 'application/json; charset=UTF-8'); xhr.setRequestHeader('Authorization', 'Bearer ' + token);
// Send the request xhr.send(JSON.stringify(data));