ViewpointPro.Client 7.5.7

dotnet add package ViewpointPro.Client --version 7.5.7
                    
NuGet\Install-Package ViewpointPro.Client -Version 7.5.7
                    
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="ViewpointPro.Client" Version="7.5.7" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="ViewpointPro.Client" Version="7.5.7" />
                    
Directory.Packages.props
<PackageReference Include="ViewpointPro.Client" />
                    
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 ViewpointPro.Client --version 7.5.7
                    
#r "nuget: ViewpointPro.Client, 7.5.7"
                    
#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 ViewpointPro.Client@7.5.7
                    
#: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=ViewpointPro.Client&version=7.5.7
                    
Install as a Cake Addin
#tool nuget:?package=ViewpointPro.Client&version=7.5.7
                    
Install as a Cake Tool

ViewpointPro.Client

This package provides .NET clients for integrating with the Viewpoint Pro API.

Clients

The package contains the following clients:

  • VppClient - common APIs such as search, download, upload, update, delete, and appendix handling.
  • VppUtilsClient - utility services.
  • VppDebugClient - debug APIs used to test Viewpoint error handling and client-side error handling.
  • VppMaintenanceClient - maintenance services. The client must have admin access and can only be used with the legacy Viewpoint authentication flow.

Use VppRecycleClient to create and reuse clients. VppRecycleClient keeps an internal cache of clients based on the configured VppParameters. You can also create clients directly and manage their lifetime yourself.

All client calls are wrapped in a Polly retry policy appropriate for the Viewpoint service.

Authentication options

ViewpointPro.Client supports two authentication flows:

  1. Viewpoint authentication - the legacy/default flow. The client calls the Viewpoint API /auth/token endpoint with a Viewpoint client id and client secret.
  2. Microsoft Entra authentication - the client uses Azure managed identity to get an Entra access token and sends that token to the Viewpoint API.

The default is Viewpoint authentication, so existing integrations do not need to change.

Option 1: Viewpoint authentication

Use this flow for existing clients that receive credentials from Viewpoint Pro.

using ViewpointPro.Client;
using ViewpointPro.Client.Configuration;

var parameters = new VppParameters
{
    BaseAdress = "https://viewpoint-api.example.com",
    ClientId = "<viewpoint-client-id>",
    ClientSecret = "<viewpoint-client-secret>",

    // Optional because this is the default.
    AuthenticationFlow = VppAuthenticationFlow.Viewpoint,
};

using var recycleClient = new VppRecycleClient();
var client = recycleClient.GetClient(parameters);

// Use client.SearchDocument, client.UploadDocument, client.DownloadDocument, etc.

recycleClient.RecycleClient(parameters, client);

Required configuration

Property Description
BaseAdress Base URL of the Viewpoint API.
ClientId Viewpoint client id configured in the Viewpoint API.
ClientSecret Viewpoint client secret configured in the Viewpoint API.
AuthenticationFlow Optional. Defaults to VppAuthenticationFlow.Viewpoint.

The client automatically:

  • posts credentials to /auth/token,
  • caches the returned bearer token until it is close to expiration,
  • adds the token as the Authorization: Bearer header on API calls.

Option 2: Microsoft Entra authentication

Use this flow for Azure-hosted clients that should authenticate through Microsoft Entra ID with managed identity instead of using the Viewpoint /auth/token endpoint or client secrets.

using ViewpointPro.Client;
using ViewpointPro.Client.Configuration;

var parameters = new VppParameters
{
    BaseAdress = "https://viewpoint-api.example.com",
    AuthenticationFlow = VppAuthenticationFlow.Entra,
    EntraAudience = "api://<viewpoint-api-application-id-or-uri>",
};

using var recycleClient = new VppRecycleClient();
var client = recycleClient.GetClient(parameters);

// Use client.SearchDocument, client.UploadDocument, client.DownloadDocument, etc.

recycleClient.RecycleClient(parameters, client);

Required configuration

Property Description
BaseAdress Base URL of the Viewpoint API.
AuthenticationFlow Must be VppAuthenticationFlow.Entra.
EntraAudience Viewpoint API application ID URI, for example api://<viewpoint-api-app-id>.
ManagedIdentityClientId Optional. Set this only when using a user-assigned managed identity. Leave empty for system-assigned managed identity.

If EntraScope is not set, the client requests this scope automatically:

{EntraAudience}/.default

Set EntraScope only if your Entra setup requires an explicit scope value:

var parameters = new VppParameters
{
    BaseAdress = "https://viewpoint-api.example.com",
    AuthenticationFlow = VppAuthenticationFlow.Entra,
    EntraScope = "api://<viewpoint-api-application-id-or-uri>/.default",
};

For a user-assigned managed identity, also set ManagedIdentityClientId:

var parameters = new VppParameters
{
    BaseAdress = "https://viewpoint-api.example.com",
    AuthenticationFlow = VppAuthenticationFlow.Entra,
    EntraAudience = "api://<viewpoint-api-application-id-or-uri>",
    ManagedIdentityClientId = "<user-assigned-managed-identity-client-id>",
};

The client automatically:

  • requests an access token from Azure managed identity,
  • caches the returned Entra access token until it is close to expiration,
  • adds the token as the Authorization: Bearer header on API calls.

Entra app roles

The Viewpoint API expects Entra access tokens to contain one or both of these application roles:

  • Viewpoint.Read
  • Viewpoint.Write

Viewpoint.Admin is not supported for Entra-authenticated clients.

The managed identity client id must also be configured as a Viewpoint client on the API side so Viewpoint can apply schema permissions and client-specific limits.

Example API-side client mapping:

{
  "ClientId": "<managed-identity-client-id>",
  "AllowedScopes": [ "Read", "Write" ],
  "AllowedSchemas": [ "schema1", "schema2" ]
}

Choosing an authentication flow

Scenario Recommended flow
Existing integration using Viewpoint-issued client credentials Viewpoint authentication
New Azure-hosted service-to-service integration using Microsoft Entra ID Entra authentication
Customer-managed identity lifecycle, audit, and secret rotation Entra authentication
Maintenance APIs requiring admin access Viewpoint authentication

Proxy support

If the API is accessed through a proxy path, set ProxyParameters. The value must contain a format placeholder for the request path.

var parameters = new VppParameters
{
    BaseAdress = "https://proxy.example.com",
    ClientId = "<client-id>",
    ClientSecret = "<client-secret>",
    ProxyParameters = "/proxy/viewpoint{0}",
};

Token caching

Both authentication flows use the same token cache behavior. A new token is requested when the cached token is expired or close to expiration. If an API call returns an authorization error, the cached token is cleared and the next call obtains a new token.

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 (2)

Showing the top 2 NuGet packages that depend on ViewpointPro.Client:

Package Downloads
ViewpointPro.IntegrationTests

Package Description

Metaforce.WebEditor.Api.Client

Package Description

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
7.5.7 46 7/16/2026
7.5.6 38 7/16/2026
7.5.5 36 7/14/2026
7.5.4 39 7/14/2026
7.5.3 37 7/14/2026
7.5.2 45 7/14/2026
7.5.1 42 7/14/2026
7.5.1-beta 93 7/13/2026
7.5.0 558 2/23/2026
7.5.0-beta 89 7/13/2026
7.4.1-beta 137 12/12/2025
7.4.0 1,172 12/12/2025
7.4.0-beta 138 12/12/2025
7.3.0-beta 277 11/10/2025
7.2.5 372 11/10/2025
7.2.4 1,079 1/10/2025
7.2.3 274 1/9/2025
7.2.2 286 1/8/2025
7.2.1 278 1/8/2025
7.2.0 1,158 11/16/2024
Loading failed