Skip to content

Dependencies

PdfAPI.Client declares three package dependencies in its shipped manifest, references one in-repository project, and depends on the PdfAPI REST API for all five remote members.

Internal dependencies

Dependency Reference Type Project path Usage
SAIF.Web.API.Clients NuGet Package — JsonHttpClient transport and ClientInfo caller identity
SAIF.Framework.Common NuGet Package — Shared framework types required by every client package
PdfAPI.Core Project Reference PdfAPI.Core\PdfAPI.Core.csproj Request and response contracts shared with the API, plus the PdfClientService collaborator backing all six local members — see Contracts

External dependencies

Dependency Version Usage
iTextSharp 5.5.11 Required by the in-process PdfClientService members shipped inside PdfAPI.Core; this dependency travels to every consumer of PdfAPI.Client

Transitive dependencies

Dependency Source framework Type Usage
JsonHttpClient SAIF.Web.API.Clients Transitive JSON transport, serialization, and the PostJson/GetResult result envelope
ClientInfo SAIF.Web.API.Clients Transitive Caller identity attached to each request
Newtonsoft.Json (8.0.3) SAIF.Web.API.Clients Transitive No direct usage in client code; serialization is performed inside JsonHttpClient*
RestSharp (106.12.0) SAIF.Web.API.Clients Transitive No direct usage in client code; transport implementation detail of JsonHttpClient*

PdfAPI.Client\app.config pins a binding redirect for RestSharp to 106.11.7.0 while the project references 106.12.0 — a version mismatch recorded on Tech debt.

API dependencies

Every remote member of this client depends on the wrapped API. The full member-to-endpoint mapping is on the Endpoint map; this table records the API as a dependency.

API Base URL source Version prefix Documented by this run Usage
PdfAPI Caller-supplied constructor argument v1/ Yes Convert (both overloads), Merge, IsPdfa, Track

Dependency risks and notes

  • iTextSharp 5.5.11 is a third-party PDF library declared directly in the client's nuspec — it travels to every consumer of PdfAPI.Client, not just to PdfAPI.Core's own build.
  • Autofac 3.5.2 and log4net 2.0.5 are compile-time project references with no ContainerBuilder registration and no logging call anywhere in the client — both are unused dependencies. Neither is declared in the shipped nuspec, so consumers do not inherit them; recorded here as a build-time-only finding.
  • The nuspec's open version="1.0" lower bound for SAIF.Framework.Common and SAIF.Web.API.Clients differs from the restored 2.0.22074.3 / 2.0.22307.1 versions the project actually compiles against — a consumer resolving the oldest satisfying version could receive a materially older transport implementation than the one this client was built and tested against.

Note: Statements marked with * were inferred from code structure, naming conventions, or contextual evidence where direct confirmation was not available in source artifacts.

Sources

  • Scripts\PdfAPI.Client\PdfAPI.Client.nuspec
  • PdfAPI.Client\PdfAPI.Client.csproj
  • PdfAPI.Client\packages.config
  • PdfAPI.Client\app.config
  • PdfAPI.Core\Services\PdfClientService.cs