# API

VisionPro Deep Learning supports API via C (C++) and C# (.NET). If you want to leverage API, familiarize yourself with the VisionPro Deep Learning GUI first because the GUI and the API share all the fundamental concepts and walkthroughs for using the VisionPro Deep Learning tools.

For more information about the API of each programming language, see the following documentation:

Programming Language | API Documentation Directory | Programming Samples
C |  | C:\ProgramData\Cognex\VisionPro Deep Learning\4.2\Examples\c++
C# | C:\Program Files\Cognex\VisionPro Deep Learning\4.2\Develop\docs | C:\ProgramData\Cognex\VisionPro Deep Learning\4.2\Examples\c++

## Target Frameworks

- Non-UI NuGet packages target .NET Standard 2.0
- UI assemblies and executables target .NET Framework 4.7.2
- Non-UI executables target .NET Core 3.1

## NuGet Packages

NuGet packages are project-based, and have dependencies. The VisionPro Deep Learning .NET library is compiled targeting a cross-platform framework wherever possible. All of the UI-related assemblies are compiled targeting either .NET Framework 4.7.2 or NET Standard 2.0. Since VisionPro Deep Learning inherits ViDi, it retains the name ViDi in many parts of the APIs.

Assembly | Framework Target
--- | ---
ViDi.NET.Local | .NET Standard 2.0
ViDi.NET.Logging | .NET Standard 2.0
ViDi.NET.Remote | .NET Standard 2.0
ViDi.NET.Remote.Service | .NET Standard 2.0
ViDi.NET.Remote.Client | .NET Standard 2.0
ViDi.NET | .NET Standard 2.0
ViDi.NET.Base | .NET Standard 2.0
ViDi.NET.Common | .NET Standard 2.0
ViDi.NET.Extensions | .NET Standard 2.0
ViDi.NET.Interfaces | .NET Standard 2.0
ViDi.NET.UI.Interfaces | .NET Framework 4.7.2
ViDi.NET.GUI | .NET Framework 4.7.2
ViDi.NET.UI | .NET Framework 4.7.2
ViDi.NET.VisionPro | .NET Framework 4.8

For example, the ViDi.NET.UI NuGet package shows exactly which assemblies are required, along with the requisite licenses for third party assemblies.

Note: Dependencies might require additional dependencies.

The VisionPro Deep Learning NuGet packages are located in the following directory:

- C:\ProgramData\Cognex\VisionPro Deep Learning\X.X\Examples\packages

The NuGet feed is automatically set in the examples, but must be set to a global Visual Studio NuGet package feed. Back up the NuGet packages to another secure repository (or its equivalent) and keep a copy. Then configure this location as a new NuGet feed. For more information, see the following Microsoft topic: Hosting your own NuGet feeds

Note: A NuGet is overwritten if a new version is installed. If both versions are unavailable, you must perform a manual NuGet upgrade.