Cisco.Api
3.0.176
dotnet add package Cisco.Api --version 3.0.176
NuGet\Install-Package Cisco.Api -Version 3.0.176
<PackageReference Include="Cisco.Api" Version="3.0.176" />
<PackageVersion Include="Cisco.Api" Version="3.0.176" />
<PackageReference Include="Cisco.Api" />
paket add Cisco.Api --version 3.0.176
#r "nuget: Cisco.Api, 3.0.176"
#:package Cisco.Api@3.0.176
#addin nuget:?package=Cisco.Api&version=3.0.176
#tool nuget:?package=Cisco.Api&version=3.0.176
Cisco.Api
A .NET library for accessing Cisco Support APIs, including EoX, Product Information, PSIRT, PSS, Serial Number to Information, PX Cloud, and Umbrella APIs.
Prerequisites
You must have an SNTC (Smart Net Total Care) or PSS (Product Support Services) account in order to use this library.
Installation
Using .NET CLI
dotnet add package Cisco.Api
Using Package Manager Console
Install-Package Cisco.Api
Using Visual Studio
- Open your project in Visual Studio
- Right-click on the project and click "Manage NuGet packages"
- Search for "Cisco.Api"
- Click "Install" to add the latest version to your project
Using PackageReference
Add the following to your .csproj file:
<PackageReference Include="Cisco.Api" Version="*" />
Setup
Before using the library, you need to obtain API credentials:
- Go to the Cisco API Console
- Sign in with your SNTC or PSS account
- Click "Register a New App"
- Add a new Application, selecting the API endpoints that you intend to use
- Note the Client ID and Client Secret - you'll need these for authentication
Example Code
using Cisco.Api;
using System;
using System.Linq;
using System.Threading.Tasks;
namespace My.Project
{
public static class Program
{
public static async Task Main()
{
var ciscoClient = new CiscoClient(
new CiscoClientOptions
{
ClientId = "<YOUR_CLIENT_ID>",
ClientSecret = "<YOUR_CLIENT_SECRET>"
});
var productInformation = await ciscoClient
.ProductInfo
.GetBySerialNumbersAsync(new[] { "<SERIAL_NUMBER>" })
.ConfigureAwait(false);
var productDetails = productInformation.Products.First();
Console.WriteLine($"Product Name: {productDetails.ProductName}");
}
}
}
Supported Frameworks
- .NET 9.0
- .NET 10.0
API Documentation
The Cisco Support APIs documentation can be found here:
License
This project is licensed under the MIT License.
Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
| Product | Versions 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. |
-
net10.0
- Microsoft.Extensions.Logging (>= 10.0.11)
- refit (>= 15.2.0)
- Refit.Newtonsoft.Json (>= 15.2.0)
- SharpZipLib (>= 1.4.2)
- SimpleSOAPClient (>= 2.1.0)
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 |
|---|---|---|
| 3.0.176 | 107 | 9/3/2026 |
| 3.0.174 | 94 | 8/31/2026 |
| 3.0.151 | 142 | 8/28/2026 |
| 3.0.149 | 126 | 8/28/2026 |
| 3.0.127-ge8f1822b2d | 129 | 6/22/2026 |
| 3.0.122 | 352 | 6/19/2026 |
| 3.0.119 | 143 | 5/29/2026 |
| 3.0.118 | 136 | 5/22/2026 |
| 3.0.117 | 599 | 4/16/2026 |
| 3.0.116 | 605 | 3/31/2026 |
| 3.0.115 | 600 | 3/31/2026 |
| 3.0.114 | 602 | 3/30/2026 |
| 3.0.111 | 606 | 3/29/2026 |
| 3.0.110 | 615 | 3/23/2026 |
| 3.0.104 | 684 | 2/20/2026 |
| 3.0.103 | 1,178 | 11/20/2025 |
| 3.0.94 | 970 | 11/17/2025 |
| 3.0.93 | 920 | 11/17/2025 |
| 3.0.92 | 917 | 11/17/2025 |
| 3.0.89 | 864 | 9/30/2025 |
Security fix: sensitive HTTP headers are now redacted in diagnostic output.
Previously the request logging in CustomHttpClientHandler and CustomFastUmbrellaHttpClientHandler
passed the whole HttpRequestMessage to the logger, and its ToString() renders every header. The
Authorization header this client sets on each request was therefore written verbatim.
This was not confined to Trace. LogErrorHeadersIfNeeded fires when Trace is DISABLED and
OnErrorEnsureRequestResponseHeadersLogged is set, logging the whole request at Error level - so on
a normal production logger a usable token reached the log store on every failed request.
Authorization, Proxy-Authorization, Cookie, Set-Cookie and common API key headers are now redacted
in request and response, along with any vendor-prefixed variant whose name ends in "Authorization".
The scheme and credential length are retained, so failures remain diagnosable.
Breaking change to message text: the Request and Response log messages are now rendered by the
library rather than by HttpRequestMessage.ToString(). The shape is the same but code parsing those
messages should be checked.
Consumers should upgrade and then review existing logs for previously captured tokens.