AutoTask.Psa.Api 1.1.27

dotnet add package AutoTask.Psa.Api --version 1.1.27
                    
NuGet\Install-Package AutoTask.Psa.Api -Version 1.1.27
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="AutoTask.Psa.Api" Version="1.1.27" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="AutoTask.Psa.Api" Version="1.1.27" />
                    
Directory.Packages.props
<PackageReference Include="AutoTask.Psa.Api" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add AutoTask.Psa.Api --version 1.1.27
                    
#r "nuget: AutoTask.Psa.Api, 1.1.27"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package AutoTask.Psa.Api@1.1.27
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=AutoTask.Psa.Api&version=1.1.27
                    
Install as a Cake Addin
#tool nuget:?package=AutoTask.Psa.Api&version=1.1.27
                    
Install as a Cake Tool

License: MIT

Codacy Badge

AutoTask.Psa.Api

Datto Autotask PSA REST API

Nuget

Product Compatible and additional computed target framework versions.
.NET net10.0 is compatible.  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. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

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
1.1.27 58 9/8/2026
1.1.23 80 9/3/2026
1.1.22 92 9/3/2026
1.1.20 83 8/31/2026
1.1.19 85 8/31/2026
1.1.18 86 8/31/2026
1.1.16 107 8/28/2026
1.1.8 525 6/6/2026
1.1.7 190 4/29/2026
1.1.5 216 4/16/2026
1.0.45 9,595 12/20/2024
1.0.40-beta-gc85ed508b0 20,761 1/12/2023
1.0.35-beta-gd862e7b8a9 342 10/14/2022
1.0.21-beta-gd587bc4a05 477 1/21/2022
1.0.20-beta-gadef0dc0f2 640 12/6/2021
1.0.19-beta-g8df6a579c3 667 12/6/2021
1.0.16-beta-g3a72b88cb6 366 12/6/2021
1.0.13-beta-g3ea5f387f4 413 10/22/2021

Fixes GetEntityInfoAsync, which threw for every entity (issue #2). RestUserAccessLevel
was declared with no members, so the userAccessForCreate / Delete / Query / Update
strings AutoTask returns had nothing to bind to and deserialization failed. It now
carries the documented None, All and Restricted levels, reads either the name AutoTask
sends or the number it documents, and maps anything unrecognised to Unknown rather than
failing the whole response. EntityInformationModel.UserAccessForCreate had a private
setter and so was never populated at all; it is now settable like its three siblings.

TicketNotes gains CreateAsync, PatchAsync and UpdateAsync on the flat collection
(issue #1). AutoTask documents the entity as Can Create and Can Update; previously a
note could only be written through the child route under a ticket. There is still no
delete, which matches the entity's documented capabilities.

Breaking change: serialization moved from Newtonsoft.Json to System.Text.Json, and the
Newtonsoft.Json package reference is gone.

Entity serialization is unaffected - Refit was already using its System.Text.Json content
serializer, so the Newtonsoft attributes on the models had no effect. Only the raw-JSON
helpers on AutoTaskClient change shape:

- GetJObjectAsync is now GetJsonObjectAsync and returns System.Text.Json.Nodes.JsonObject?
 in place of Newtonsoft.Json.Linq.JObject?.
- Both GetAllAsync overloads now return List<JsonObject> in place of List<JObject>.

Callers of those three methods need updating; paging, error and empty-body behaviour is
unchanged and is now covered by unit tests. Everything reached through the entity
properties (Tickets, Companies and the rest) is source-compatible.

Also in this release: the entity endpoints are built on first use rather than all 249 of
them in the constructor, so constructing an AutoTaskClient is considerably cheaper. Each
property still returns the same instance every time it is read.

Security fix: sensitive HTTP headers are now redacted in diagnostic output.

Previously AuthenticatedHttpClientHandler passed the request header collection straight to the
logger at Debug level. HttpHeaders.ToString() applies no filtering, so the three headers this
client authenticates with were written verbatim - including Secret, which carries the account
password in plain text. Any consumer running at Debug retained usable credentials for the life
of its log store.

Secret, UserName and ApiIntegrationCode are now redacted, along with Authorization,
Proxy-Authorization, Cookie, Set-Cookie and common API key header names, case-insensitively.
The credential length is retained, so requests remain diagnosable without exposing the value.

Consumers should upgrade and then review existing Debug logs for previously captured
credentials.

Also in this release: logging of response content when an exception occurs, which must be
enabled through the client options LogExceptionContent property.