HighGear.ApiClient
9.0.0.171
Prefix Reserved
See the version list below for details.
dotnet add package HighGear.ApiClient --version 9.0.0.171
NuGet\Install-Package HighGear.ApiClient -Version 9.0.0.171
<PackageReference Include="HighGear.ApiClient" Version="9.0.0.171" />
<PackageVersion Include="HighGear.ApiClient" Version="9.0.0.171" />
<PackageReference Include="HighGear.ApiClient" />
paket add HighGear.ApiClient --version 9.0.0.171
#r "nuget: HighGear.ApiClient, 9.0.0.171"
#:package HighGear.ApiClient@9.0.0.171
#addin nuget:?package=HighGear.ApiClient&version=9.0.0.171
#tool nuget:?package=HighGear.ApiClient&version=9.0.0.171
HighGear.ApiClient is the .NET client for the HighGear REST API.
Introduction
HighGear makes it easy to rapidly deploy and securely manage work, at scale. Empower everyday business users to start building seamless workflows and processes to get your entire team connected across the enterprise, with more visibility, auditability, and real-time measurement of all work activity. Assign tasks, manage work, track progress, and report the status of activity in real time using HighGear's no-code workflow and process management platform. Easily and securely.
And with HighGear's REST API, it's never been easier to rapidly integrate business applications and mission critical work, while HighGear's enterprise-grade security meets the rigors of the most highly regulated industries, keeping your data safe.
If you're interested in learning more about the HighGear platform, schedule a demo or contact us.
This package makes it easier to use the HighGear REST API from .NET applications, as it provides .NET methods and types (aka models) for calling into (and receiving data from) the REST API. It also includes other utilities for building integrations with the HighGear product.
Getting Started
To get started, install this package for your .NET application as follows. Make sure to specify the version of the HighGear API you want to use.
dotnet add package HighGear.ApiClient -v 9.0.0
Once you've done that, you will need to create an instance of the client. There are two ways of doing this:
// Create a client that uses an API key for authorization
HighGearApiClient client = HighGearApiClient.CreateForKey(
host: "https://highgear.example.com",
apiKey: "API KEY HERE"
);
// Create a client that uses a username and password for authorization via OAuth2
// Note: If the OAuth2 client is confidential, there is an optional clientSecret
// parameter where the client secret can be provided.
HighGearApiClient client = await HighGearApiClient.CreateUsingOAuthPasswordGrant(
host: "https://highgear.example.com",
username: "username",
password: "password",
clientId: "OAuth2 client_id"
);
Example: Getting Task Data
HighGearApiClient client = HighGearApiClient.CreateForKey("https://highgear.example.com", "API KEY HERE");
TaskGetModel<IReadOnlyDictionary<string, object>> task = await client.GetTask(3);
// Examples of getting field data
int taskId = task.JobId;
string briefDescription = (string)task.Fields["brief_description"];
ContactBasicInfo[] assignee = (ContactBasicInfo[])task.Fields["assignee"];
See the Field Value Types section below for a reference of what .NET value type is to be expected for each type of field.
Example: Verifying the Digital Signature of a Workflow Web Request
Each workflow web request contains a unique digital signature. The external system that receives the web request should verify the digital signature to be certain that the request originated from HighGear, to prevent unauthorized access.
(The below example verifies the digital signature using the public key obtained from an API connection.
If you don't have an API connection, you can use another overload of DigitalSignatureHelper.VerifyDigitalSignature to provide the public key in PEM format loaded from a config file.)
// This is the MVC endpoint method. The WorkflowWebRequestContent type
// represents the web request body.
public async Task Post([FromBody] WorkflowWebRequestContent content)
{
// Create the HighGearApiClient
HighGearApiClient apiClient = HighGearApiClient.CreateForKey("https://highgear.example.com", "API KEY HERE");
// Retrieve the digital signature from the header
var signature = this.Request.Headers["X-HG-Workflow-Request-Signature"];
// Verify the digital signature. This will throw an exception if the signature is not present or is invalid.
await apiClient.VerifyDigitalSignature(content, signature);
// Perform the work of your integration here
}
This example illustrates deserializing the WorkflowWebRequestContent model in a .NET Framework application. To do so, use the Newtonsoft.Json NuGet package.
.NET MVC applications can be configured to use Newtonsoft.Json for controllers using the AddNewtonsoftJson extension method in the Microsoft.AspNetCore.Mvc.NewtonsoftJson NuGet package:
var builder = WebApplication.CreateBuilder(args);
...
builder.Services.AddControllers().AddNewtonsoftJson();
Field Value Types
When getting task or contact data (which is returned from GetTaskAsync, GetContactAsync, the advanced search endpoints, and the task edit session endpoint), the .NET types for field values differ according to field type. The .NET types are as follows:
FieldDisplayType Enum |
API Field Type | .NET Value Type |
|---|---|---|
Textbox |
textbox | string |
NumericTextbox |
numeric | double |
AppendTextArea |
appendtextarea | HighGear.ApiClient.TextArea |
AttachedFiles |
files | System.Collections.Generic.IReadOnlyList<HighGear.ApiClient.FileResult> |
YesNo |
yesno | bool |
CheckboxList |
checkbox | System.Collections.Generic.IReadOnlyList<string> |
Dropdown |
dropdown | string |
DateTime |
datetime | string (ISO 8601 date and time string in Coordinated Universal Time [UTC]) |
SingleContactLookup |
contact | HighGear.ApiClient.ContactBasicInfo |
Date |
date | string (ISO 8601 date string) |
TextArea |
textarea | HighGear.ApiClient.TextArea |
MultiContactLookup |
multicontact | System.Collections.Generic.IReadOnlyList<HighGear.ApiClient.ContactBasicInfo> |
RadioButtonList |
radio | string |
UrlTextbox |
url | string |
EmailTextbox |
string |
|
SingleProjectLookup |
project | HighGear.ApiClient.TaskBasicInfo |
Signature |
signature | HighGear.ApiClient.Signature |
Additionally, there are three special fields of field type dropdown that have special .NET types:
| Record Type | Field Name | .NET Value Type |
|---|---|---|
| Task | status | HighGear.ApiClient.StatusResult |
| Task | job_type | HighGear.ApiClient.JobType |
| Contact | contact_type | HighGear.ApiClient.ContactType |
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
| .NET Core | netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
| .NET Standard | netstandard2.0 is compatible. netstandard2.1 was computed. |
| .NET Framework | net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
| MonoAndroid | monoandroid was computed. |
| MonoMac | monomac was computed. |
| MonoTouch | monotouch was computed. |
| Tizen | tizen40 was computed. tizen60 was computed. |
| Xamarin.iOS | xamarinios was computed. |
| Xamarin.Mac | xamarinmac was computed. |
| Xamarin.TVOS | xamarintvos was computed. |
| Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETStandard 2.0
- Newtonsoft.Json (>= 13.0.1)
- PemUtils (>= 3.0.0.82)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 10.3.0.244 | 164 | 12/30/2025 |
| 10.2.2.242 | 257 | 10/30/2025 |
| 10.2.1.236 | 222 | 9/9/2025 |
| 10.2.1.234 | 218 | 9/9/2025 |
| 10.2.0.226 | 225 | 9/9/2025 |
| 10.2.0.222 | 211 | 9/9/2025 |
| 10.2.0.218 | 358 | 6/9/2025 |
| 10.2.0.217 | 207 | 6/6/2025 |
| 10.1.0.208 | 224 | 12/2/2024 |
| 10.0.0.204 | 233 | 10/3/2024 |
| 10.0.0.202 | 225 | 10/3/2024 |
| 9.2.0.194 | 222 | 9/13/2024 |
| 9.2.0.191 | 340 | 10/27/2023 |
| 9.1.0.181 | 222 | 9/15/2023 |
| 9.0.0.175 | 272 | 7/17/2023 |
| 9.0.0.171 | 260 | 6/23/2023 |
| 8.9.0.152 | 268 | 7/17/2023 |
