Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 10 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,16 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0

## [Unreleased]

## [8.0.0] - 2025-06-09
- New services for Cisco Catalyst Center 3.1.3.0's API:
* Backup service
* IndustrialConfiguration service
* KnowYourNetwork service
* Restore service
* Wired service
- SDK is now compatible with Cisco Catalyst Center 3.1.3.0's API.


## [7.0.2] - 2025-02-27
### Changed
- Update Readme
Expand Down
4 changes: 2 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ dnacenter-go-sdk is a Go client library for [Catalyst Center Platform](https://d
## Usage

```go
import dnac "github.com/cisco-en-programmability/dnacenter-go-sdk/v7/sdk"
import dnac "github.com/cisco-en-programmability/dnacenter-go-sdk/v8/sdk"
```

## Introduction
Expand Down Expand Up @@ -85,7 +85,7 @@ if devices.Response != nil {

## Documentation
### dnacenter-go-sdk/v7
[![PkgGoDev](https://pkg.go.dev/badge/github.com/)](https://pkg.go.dev/github.com/cisco-en-programmability/dnacenter-go-sdk/v7)
[![PkgGoDev](https://pkg.go.dev/badge/github.com/)](https://pkg.go.dev/github.com/cisco-en-programmability/dnacenter-go-sdk/v8)
### dnacenter-go-sdk/v6
[![PkgGoDev](https://pkg.go.dev/badge/github.com/)](https://pkg.go.dev/github.com/cisco-en-programmability/dnacenter-go-sdk/v6)
### dnacenter-go-sdk/v5
Expand Down
2 changes: 1 addition & 1 deletion examples/application-policy/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ package main
import (
"fmt"

dnac "github.com/cisco-en-programmability/dnacenter-go-sdk/v7/sdk"
dnac "github.com/cisco-en-programmability/dnacenter-go-sdk/v8/sdk"
)

// Client is Catalyst Center API client
Expand Down
2 changes: 1 addition & 1 deletion examples/applications/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ package main
import (
"fmt"

dnac "github.com/cisco-en-programmability/dnacenter-go-sdk/v7/sdk"
dnac "github.com/cisco-en-programmability/dnacenter-go-sdk/v8/sdk"
)

// Client is Catalyst Center API client
Expand Down
2 changes: 1 addition & 1 deletion examples/clients/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ package main
import (
"fmt"

dnac "github.com/cisco-en-programmability/dnacenter-go-sdk/v7/sdk"
dnac "github.com/cisco-en-programmability/dnacenter-go-sdk/v8/sdk"
)

// Client is Catalyst Center API client
Expand Down
2 changes: 1 addition & 1 deletion examples/command-runner/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ import (
"fmt"
"time"

dnac "github.com/cisco-en-programmability/dnacenter-go-sdk/v7/sdk"
dnac "github.com/cisco-en-programmability/dnacenter-go-sdk/v8/sdk"
)

// client is Catalyst Center API client
Expand Down
2 changes: 1 addition & 1 deletion examples/compliance/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ package main
import (
"fmt"

dnac "github.com/cisco-en-programmability/dnacenter-go-sdk/v7/sdk"
dnac "github.com/cisco-en-programmability/dnacenter-go-sdk/v8/sdk"
)

// client is Catalyst Center API client
Expand Down
4 changes: 2 additions & 2 deletions examples/configuration_archive/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ package main
import (
"fmt"

dnac "github.com/cisco-en-programmability/dnacenter-go-sdk/v7/sdk"
dnac "github.com/cisco-en-programmability/dnacenter-go-sdk/v8/sdk"
)

// client is Catalyst Center API client
Expand Down Expand Up @@ -39,7 +39,7 @@ func main() {

fmt.Println("Post ConfArchive")
reqBody := &dnac.RequestConfigurationArchiveExportDeviceConfigurations{
DeviceID: deviceUUID,
DeviceID: []string{deviceUUID},
Password: "C1sco123!",
}

Expand Down
2 changes: 1 addition & 1 deletion examples/configuration_templates/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ import (
"encoding/json"
"fmt"

dnac "github.com/cisco-en-programmability/dnacenter-go-sdk/v7/sdk"
dnac "github.com/cisco-en-programmability/dnacenter-go-sdk/v8/sdk"
)

// client is Catalyst Center API client
Expand Down
2 changes: 1 addition & 1 deletion examples/credentials/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ package main
import (
"fmt"

dnac "github.com/cisco-en-programmability/dnacenter-go-sdk/v7/sdk"
dnac "github.com/cisco-en-programmability/dnacenter-go-sdk/v8/sdk"
)

// client is Catalyst Center API client
Expand Down
2 changes: 1 addition & 1 deletion examples/custom-call/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ package main
import (
"fmt"

dnac "github.com/cisco-en-programmability/dnacenter-go-sdk/v7/sdk"
dnac "github.com/cisco-en-programmability/dnacenter-go-sdk/v8/sdk"
)

// Client is Catalyst Center API client
Expand Down
2 changes: 1 addition & 1 deletion examples/devices/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ package main
import (
"fmt"

dnac "github.com/cisco-en-programmability/dnacenter-go-sdk/v7/sdk"
dnac "github.com/cisco-en-programmability/dnacenter-go-sdk/v8/sdk"
)

// Client is Catalyst Center API client
Expand Down
2 changes: 1 addition & 1 deletion examples/discovery/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ package main
import (
"fmt"

dnac "github.com/cisco-en-programmability/dnacenter-go-sdk/v7/sdk"
dnac "github.com/cisco-en-programmability/dnacenter-go-sdk/v8/sdk"
)

// Client is Catalyst Center API client
Expand Down
2 changes: 1 addition & 1 deletion examples/event-management/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ package main
import (
"fmt"

dnac "github.com/cisco-en-programmability/dnacenter-go-sdk/v7/sdk"
dnac "github.com/cisco-en-programmability/dnacenter-go-sdk/v8/sdk"
)

// Client is Catalyst Center API client
Expand Down
2 changes: 1 addition & 1 deletion examples/execution-id/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ package main
import (
"fmt"

dnac "github.com/cisco-en-programmability/dnacenter-go-sdk/v7/sdk"
dnac "github.com/cisco-en-programmability/dnacenter-go-sdk/v8/sdk"
)

// Client is Catalyst Center API client
Expand Down
2 changes: 1 addition & 1 deletion examples/files/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ package main
import (
"fmt"

dnac "github.com/cisco-en-programmability/dnacenter-go-sdk/v7/sdk"
dnac "github.com/cisco-en-programmability/dnacenter-go-sdk/v8/sdk"
)

// client is Catalyst Center API client
Expand Down
2 changes: 1 addition & 1 deletion examples/global-pool/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ package main
import (
"fmt"

dnac "github.com/cisco-en-programmability/dnacenter-go-sdk/v7/sdk"
dnac "github.com/cisco-en-programmability/dnacenter-go-sdk/v8/sdk"
)

// Client is Catalyst Center API client
Expand Down
2 changes: 1 addition & 1 deletion examples/health-monitoring/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ package main
import (
"fmt"

dnac "github.com/cisco-en-programmability/dnacenter-go-sdk/v7/sdk"
dnac "github.com/cisco-en-programmability/dnacenter-go-sdk/v8/sdk"
)

// client is Catalyst Center API client
Expand Down
2 changes: 1 addition & 1 deletion examples/pnp-devices/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ package main
import (
"fmt"

dnac "github.com/cisco-en-programmability/dnacenter-go-sdk/v7/sdk"
dnac "github.com/cisco-en-programmability/dnacenter-go-sdk/v8/sdk"
)

// client is Catalyst Center API client
Expand Down
2 changes: 1 addition & 1 deletion examples/swim/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ import (
"io"
"os"

dnac "github.com/cisco-en-programmability/dnacenter-go-sdk/v7/sdk"
dnac "github.com/cisco-en-programmability/dnacenter-go-sdk/v8/sdk"
)

// Client is Catalyst Center API client
Expand Down
2 changes: 1 addition & 1 deletion examples/topology/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ package main
import (
"fmt"

dnac "github.com/cisco-en-programmability/dnacenter-go-sdk/v7/sdk"
dnac "github.com/cisco-en-programmability/dnacenter-go-sdk/v8/sdk"
)

// Client is Catalyst Center API client
Expand Down
2 changes: 1 addition & 1 deletion go.mod
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
module github.com/cisco-en-programmability/dnacenter-go-sdk/v7
module github.com/cisco-en-programmability/dnacenter-go-sdk/v8

go 1.17

Expand Down
12 changes: 8 additions & 4 deletions sdk/ai_endpoint_analytics.go
Original file line number Diff line number Diff line change
Expand Up @@ -447,7 +447,7 @@ func (s *AIEndpointAnalyticsService) GetAncPolicies() (*ResponseAIEndpointAnalyt

@param GetAIEndpointAnalyticsAttributeDictionariesQueryParams Filtering parameter

Documentation Link: https://developer.cisco.com/docs/dna-center/#!get-a-i-endpoint-analytics-attribute-dictionaries
Documentation Link: https://developer.cisco.com/docs/dna-center/#!get-ai-endpoint-analytics-attribute-dictionaries
*/
func (s *AIEndpointAnalyticsService) GetAIEndpointAnalyticsAttributeDictionaries(GetAIEndpointAnalyticsAttributeDictionariesQueryParams *GetAIEndpointAnalyticsAttributeDictionariesQueryParams) (*ResponseAIEndpointAnalyticsGetAIEndpointAnalyticsAttributeDictionaries, *resty.Response, error) {
path := "/dna/intent/api/v1/endpoint-analytics/dictionaries"
Expand Down Expand Up @@ -849,6 +849,7 @@ func (s *AIEndpointAnalyticsService) CreateAProfilingRule(requestAIEndpointAnaly

//ImportProfilingRulesInBulk Import profiling rules in bulk - 70bf-885f-408a-9c74
/* This API imports the given list of profiling rules. For each record, 1) If 'ruleType' for a record is not 'Custom Rule', then it is rejected. 2) If 'ruleId' is provided in the input record,

2a) Record with same 'ruleId' exists in the system, then it is replaced with new data.
2b) Record with same 'ruleId' does not exist, then it is inserted in the database.
3) If 'ruleId' is not provided in the input record, then new 'ruleId' is generated by the system, and record is inserted.
Expand Down Expand Up @@ -1014,7 +1015,8 @@ func (s *AIEndpointAnalyticsService) DeleteAnEndpoint(epID string) (*resty.Respo

if response.IsError() {
if response.StatusCode() == http.StatusUnauthorized {
return s.DeleteAnEndpoint(epID)
return s.DeleteAnEndpoint(
epID)
}
return response, fmt.Errorf("error with operation DeleteAnEndpoint")
}
Expand Down Expand Up @@ -1050,7 +1052,8 @@ func (s *AIEndpointAnalyticsService) RevokeAncPolicy(epID string) (*resty.Respon

if response.IsError() {
if response.StatusCode() == http.StatusUnauthorized {
return s.RevokeAncPolicy(epID)
return s.RevokeAncPolicy(
epID)
}
return response, fmt.Errorf("error with operation RevokeAncPolicy")
}
Expand Down Expand Up @@ -1086,7 +1089,8 @@ func (s *AIEndpointAnalyticsService) DeleteAnExistingProfilingRule(ruleID string

if response.IsError() {
if response.StatusCode() == http.StatusUnauthorized {
return s.DeleteAnExistingProfilingRule(ruleID)
return s.DeleteAnExistingProfilingRule(
ruleID)
}
return response, fmt.Errorf("error with operation DeleteAnExistingProfilingRule")
}
Expand Down
21 changes: 16 additions & 5 deletions sdk/api_client.go
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ const DNAC_DEBUG = "DNAC_DEBUG"
const DNAC_SSL_VERIFY = "DNAC_SSL_VERIFY"
const DNAC_WAIT_TIME = "DNAC_WAIT_TIME"

var VERSION = "2.3.7.9"
var VERSION = "3.1.3.0"
var DNAC_USER_STRING = "DNAC_USER_STRING"
var USER_AGENT = "go-cisco-dnacentersdk/" + VERSION

Expand All @@ -39,7 +39,7 @@ func (f *FileDownload) SaveDownload(path string) error {
return ioutil.WriteFile(fpath, f.FileData, 0664)
}

// Client manages communication with the Cisco Catalyst Center API
// Client manages communication with the Cisco DNA Center API
type Client struct {
common service // Reuse a single struct instead of allocating one for each service on the heap.

Expand All @@ -49,6 +49,7 @@ type Client struct {
ApplicationPolicy *ApplicationPolicyService
Applications *ApplicationsService
AuthenticationManagement *AuthenticationManagementService
Backup *BackupService
CiscoIMC *CiscoIMCService
CiscoTrustedCertificates *CiscoTrustedCertificatesService
Clients *ClientsService
Expand All @@ -61,20 +62,23 @@ type Client struct {
Devices *DevicesService
DisasterRecovery *DisasterRecoveryService
Discovery *DiscoveryService
EoX *EoXService
Eox *EoxService
EventManagement *EventManagementService
FabricWireless *FabricWirelessService
File *FileService
HealthAndPerformance *HealthAndPerformanceService
Itsm *ItsmService
ItsmIntegration *ItsmIntegrationService
IndustrialConfiguration *IndustrialConfigurationService
Issues *IssuesService
KnowYourNetwork *KnowYourNetworkService
LanAutomation *LanAutomationService
Licenses *LicensesService
NetworkSettings *NetworkSettingsService
PathTrace *PathTraceService
Platform *PlatformService
Reports *ReportsService
Restore *RestoreService
Sda *SdaService
SecurityAdvisories *SecurityAdvisoriesService
Sensors *SensorsService
Expand All @@ -87,6 +91,7 @@ type Client struct {
Topology *TopologyService
UserandRoles *UserandRolesService
Users *UsersService
Wired *WiredService
Wireless *WirelessService
CustomCall *CustomCallService
}
Expand All @@ -100,7 +105,7 @@ func (s *Client) SetAuthToken(accessToken string) {
s.common.client.SetHeader("X-Auth-Token", accessToken)
}

// Error indicates an error from the invocation of a Cisco Catalyst Center API.
// Error indicates an error from the invocation of a Cisco DNA Center API.
var Error map[string]interface{}

// NewClient creates a new API client. Requires a userAgent string describing your application.
Expand Down Expand Up @@ -277,6 +282,8 @@ func NewClientNoAuth() (*Client, error) {
c.ApplicationPolicy = (*ApplicationPolicyService)(&c.common)
c.Applications = (*ApplicationsService)(&c.common)
c.AuthenticationManagement = (*AuthenticationManagementService)(&c.common)
c.Backup = (*BackupService)(&c.common)
c.CiscoIMC = (*CiscoIMCService)(&c.common)
c.CiscoTrustedCertificates = (*CiscoTrustedCertificatesService)(&c.common)
c.Clients = (*ClientsService)(&c.common)
c.CommandRunner = (*CommandRunnerService)(&c.common)
Expand All @@ -288,20 +295,23 @@ func NewClientNoAuth() (*Client, error) {
c.Devices = (*DevicesService)(&c.common)
c.DisasterRecovery = (*DisasterRecoveryService)(&c.common)
c.Discovery = (*DiscoveryService)(&c.common)
c.EoX = (*EoXService)(&c.common)
c.Eox = (*EoxService)(&c.common)
c.EventManagement = (*EventManagementService)(&c.common)
c.FabricWireless = (*FabricWirelessService)(&c.common)
c.File = (*FileService)(&c.common)
c.HealthAndPerformance = (*HealthAndPerformanceService)(&c.common)
c.Itsm = (*ItsmService)(&c.common)
c.ItsmIntegration = (*ItsmIntegrationService)(&c.common)
c.IndustrialConfiguration = (*IndustrialConfigurationService)(&c.common)
c.Issues = (*IssuesService)(&c.common)
c.KnowYourNetwork = (*KnowYourNetworkService)(&c.common)
c.LanAutomation = (*LanAutomationService)(&c.common)
c.Licenses = (*LicensesService)(&c.common)
c.NetworkSettings = (*NetworkSettingsService)(&c.common)
c.PathTrace = (*PathTraceService)(&c.common)
c.Platform = (*PlatformService)(&c.common)
c.Reports = (*ReportsService)(&c.common)
c.Restore = (*RestoreService)(&c.common)
c.Sda = (*SdaService)(&c.common)
c.SecurityAdvisories = (*SecurityAdvisoriesService)(&c.common)
c.Sensors = (*SensorsService)(&c.common)
Expand All @@ -314,6 +324,7 @@ func NewClientNoAuth() (*Client, error) {
c.Topology = (*TopologyService)(&c.common)
c.UserandRoles = (*UserandRolesService)(&c.common)
c.Users = (*UsersService)(&c.common)
c.Wired = (*WiredService)(&c.common)
c.Wireless = (*WirelessService)(&c.common)
c.CustomCall = (*CustomCallService)(&c.common)

Expand Down
Loading