Nexus Dashboard /nexus-dashboard/ Docs small-icon icon-nd Nexus Dashboard /docs/nexus-dashboard/latest/ small-icon icon-ndi Insights /docs/nexus-dashboard-insights/latest/ small-icon icon-ndo Orchestrator /docs/nexus-dashboard-orchestrator/latest/ small-icon icon-ndfc Fabric Controller /docs/nexus-dashboard-fabric-controller/latest/ Resources Nexus Dashboard Ansible Collection https://galaxy.ansible.com/cisco/nd _blank Orchestrator Ansible Collection https://galaxy.ansible.com/cisco/mso _blank Fabric Controller Ansible Collection https://galaxy.ansible.com/cisco/dcnm _blank App Center https://dcappcenter.cisco.com/ _blank
Deploy, Build, and Automate
Nexus Dashboard provides a programmatic interface for visibility, site onboarding, and automation of networking configurations across Cisco Application Centric Infrastructure (ACI) and NX-OS fabrics, all using a single platform with a unified API.
What can you do with the Nexus Dashboard and Services API?
Nexus Dashboard Foundational
Nexus Dashboard
Cisco Nexus Dashboard transforms hybrid data center operations by providing a single pane of glass from which you can operate and manage your infrastructure. The intuitive Cisco Nexus Dashboard platform provides services such as Cisco Nexus Dashboard Insights, Cisco Nexus Dashboard Orchestrator, Cisco Nexus Dashboard Fabric Controller, and a single operational view of your geographically dispersed multicloud environments. The platform enables the acceleration of NetOps and DevOps capabilities while scaling into the cloud. And it aligns seamlessly with third-party ecosystem tools from HashiCorp Terraform, ServiceNow, and Splunk, with other integrations to come.​
Getting started
1
Log in using a Python or the cURL command to retrieve the authentication token.
Before you can send any requests to perform specific operations on the Nexus Dashboard cluster or services, you must login by POSTing a JSON payload containing a username, password, and login domain for a user already configured in your Nexus Dashboard to obtain an authorization token that you can use in subsequent API calls.
Use Python requests to query the ND Authentication API and print the JSON response using the following code example:
import requests
  from requests.packages.urllib3.exceptions import InsecureRequestWarning
  requests.packages.urllib3.disable_warnings(InsecureRequestWarning)

  url = 'https://[nd-node-ip]/login'
  payload = {
      "userName": "admin",
      "userPasswd": "Cisco123!",
      "domain": "DefaultAuth"
  }

  # Use verify=False if you are sure the target system is the system you expect and it has a self-signed certificate.
  response = requests.post(url=url, json=payload, verify=False)

  print(response.json())
Use the cURL command to query the ND Authentication API and print the JSON response using the following command line example:
curl -k --request POST 'https://[nd-node-ip]/login' \
    --data-raw '{"userName": "admin","userPasswd":"Cisco123!","domain":"DefaultAuth"}'
2
Extract the authentication token from the response payload.
The standard login response payload contains the authentication token as well as the user's login information and RBAC privileges. You will need to use only the authentication token for the subsequent calls.
{
    "jwttoken": "eyJhbGciOiJSUzI1NiIsImtpZCI6InliZTVvZjMzODFqcXphczZsZnZ5Y3c0MmlsOXZ3Ym9hIiwidHlwIjoiSldUIn0.eyJhdnBhaXIiOiJzaGVsbDpkb21haW5zPWFsbC9hZG1pbi8iLCJjbHVzdGVyIjoiNjQ2NTc2NjMtNmM3NS03Mzc0LTY1NzItMzEyZDMzMzIyZDMzIiwiZXhwIjoxNjQ0MzQzMjkzLCJpYXQiOjE2NDQzNDIwOTMsImlkIjoiNDhkMTA1YmRmYmM0OWE1ZmNmMzlhMTBiOTYxMzg2ZTYxZGZlNDAwODVjYjAzMTVkODE4Yjc2MWM1NzM1ZGFmYSIsImlzcyI6Im5kIiwiaXNzLWhvc3QiOiIxMC4zMC4xMS4zMiIsInJiYWMiOlt7ImRvbWFpbiI6ImFsbCIsInJvbGVzUiI6MTY3NzcyMTYsInJvbGVzVyI6MSwicm9sZXMiOltbImFkbWluIiwiV3JpdGVQcml2Il0sWyJhcHAtdXNlciIsIlJlYWRQcml2Il1dfV0sInNlc3Npb25pZCI6IkxIbUVVWW0zUjI3ZFNtVGRKOTdIN0lZQiIsInVzZXJmbGFncyI6MCwidXNlcmlkIjoyNTAwMiwidXNlcm5hbWUiOiJhZG1pbiIsInVzZXJ0eXBlIjoibG9jYWwifQ.JBC2b_tbE-ULqv7oQBY9I7tMI47IYDHr0loVtCD3Kd3V2TX6TGSI0W7UHtB27NxuKgVuUDa3s9CHpBlMuLe9u-RU8z6mmJAPofGmRcy33-kDq7DnFEQjcq2m41V3CPmYSYP7BrcGWi2evImGrSErkZAFWsIIcfqLJ20x8emczFFRr_Pvep0jkLtQCE6nrX1954EUvZl4Mu0WD_uQ25OdgdpRzsc1jnf2E4oWcrqoKiIah4Ai4wuVPi-NXhU5Fj8WpeX4MTjlXnQB3WKE5-3e-MyVQU_TgIAzqMs6h_dlJ9jyrhBDunXgigG1ztUY98dM39qQ6CImZVel9M3-sUrzSg",
    "username": "admin",
    "usertype": "local",
    "rbac": "[{\"domain\":\"all\",\"rolesR\":16777216,\"rolesW\":1,\"roles\":[[\"admin\",\"WritePriv\"],[\"app-user\",\"ReadPriv\"]]}]",
    "statusCode": 200,
    "token": "eyJhbGciOiJSUzI1NiIsImtpZCI6InliZTVvZjMzODFqcXphczZsZnZ5Y3c0MmlsOXZ3Ym9hIiwidHlwIjoiSldUIn0.eyJhdnBhaXIiOiJzaGVsbDpkb21haW5zPWFsbC9hZG1pbi8iLCJjbHVzdGVyIjoiNjQ2NTc2NjMtNmM3NS03Mzc0LTY1NzItMzEyZDMzMzIyZDMzIiwiZXhwIjoxNjQ0MzQzMjkzLCJpYXQiOjE2NDQzNDIwOTMsImlkIjoiNDhkMTA1YmRmYmM0OWE1ZmNmMzlhMTBiOTYxMzg2ZTYxZGZlNDAwODVjYjAzMTVkODE4Yjc2MWM1NzM1ZGFmYSIsImlzcyI6Im5kIiwiaXNzLWhvc3QiOiIxMC4zMC4xMS4zMiIsInJiYWMiOlt7ImRvbWFpbiI6ImFsbCIsInJvbGVzUiI6MTY3NzcyMTYsInJvbGVzVyI6MSwicm9sZXMiOltbImFkbWluIiwiV3JpdGVQcml2Il0sWyJhcHAtdXNlciIsIlJlYWRQcml2Il1dfV0sInNlc3Npb25pZCI6IkxIbUVVWW0zUjI3ZFNtVGRKOTdIN0lZQiIsInVzZXJmbGFncyI6MCwidXNlcmlkIjoyNTAwMiwidXNlcm5hbWUiOiJhZG1pbiIsInVzZXJ0eXBlIjoibG9jYWwifQ.JBC2b_tbE-ULqv7oQBY9I7tMI47IYDHr0loVtCD3Kd3V2TX6TGSI0W7UHtB27NxuKgVuUDa3s9CHpBlMuLe9u-RU8z6mmJAPofGmRcy33-kDq7DnFEQjcq2m41V3CPmYSYP7BrcGWi2evImGrSErkZAFWsIIcfqLJ20x8emczFFRr_Pvep0jkLtQCE6nrX1954EUvZl4Mu0WD_uQ25OdgdpRzsc1jnf2E4oWcrqoKiIah4Ai4wuVPi-NXhU5Fj8WpeX4MTjlXnQB3WKE5-3e-MyVQU_TgIAzqMs6h_dlJ9jyrhBDunXgigG1ztUY98dM39qQ6CImZVel9M3-sUrzSg"
  }
Optionally, you can extract the token into a variable to simplify future calls, for example:
token = response.json().get("token")
3
Use the authentication token with service-specific calls.
You can learn more about using the authentication token with service-specific calls from the following link.
Visibility & Analytics
Nexus Dashboard Insights
Cisco Nexus Dashboard Insights incorporates a set of advanced alerting, baselining, correlation, and forecasting algorithms to provide deep insights into the behavior of the network by utilizing telemetry data obtained from networking and compute components. Cisco Nexus Dashboard Insights automates troubleshooting and helps rapid root-causing and early remediation. Visibility services were traditionally provided by Nexus Insights (NI) and Nexus Assurance Engine (NAE), both of which were consolidated into Nexus Dashboard Insights (NDI) starting at version 6.0.
Getting started
1
In this Python 3 example, query the Nexus Dashboard Insights advisories.
url = 'https://[nd-node-ip]/sedgeapi/v1/cisco-nir/api/api/telemetry/advisories/details.json'
  # token = "[nd-auth-token]"
  headers = {'Authorization': 'Bearer ' + token}

  # Use verify=False if you are sure the target system is the system you expect and it has a self-signed certificate.
  response = requests.get(url=url, headers=headers, verify=False)

  advisories = response.json()
  print(advisories)
Same example using the cURL command:
curl -k --request GET 'https://[nd-node-ip]/sedgeapi/v1/cisco-nir/api/api/telemetry/advisories/details.json' \
    -H "Authorization: Bearer [nd-auth-token]"
2
The advisories response payload contains a list of advisories with details of each advisory.
{
    "totalItemsCount": 2,
    "totalResultsCount": 2,
    "offset": 0,
    "entries": [{
            "category": "Field Notice",
            "startTs": "2022-02-23T01:07:38.038Z",
            "endTs": "2022-05-12T00:35:18.000Z",
            "activeTs": "2022-05-12T00:35:18.000Z",
            "fabricName": "prod-fabric",
            "entityName": "FN64210",
            "resourceType": "Field Notice",
            "resourceName": "Field Notice",
            "recommendation": true,
            "impact": false,
            "vendor": "CISCO_ACI",
            "severity": "critical",
            "acknowledged": false,
            "ackTs": null,
            "cleared": false,
            "clearTs": null,
            "masterClearTs": null,
            "expired": false,
            "alertType": "advisory",
            "title": "Field Notice: FN - 64210 - APIC-L2/M2 Server Network Mode Set Incorrectly - Configuration Change Recommended",
            "targetIndex": "[cisco_nir-anomalydb-2022.05.11]",
            "customData": {},
            "epochStartTs": 1645578458038,
            "epochEndTs": 1652315718000,
            "epochActiveTs": 1652315718000,
            "mnemonicTitle": "FIELD_NOTICE",
            "mnemonicNum": 100126,
            "mnemonicDescription": "Field Notice",
            "entityNameList": [{
                "objectType": "leaf",
                "objectValue": [
                    "apic1",
                    "apic3",
                    "apic2"
                ]
            }],
            "offline": false,
            "verificationStatus": "NEW",
            "assignee": "",
            "tags": [],
            "comment": "",
            "manualAck": null,
            "autoAck": false,
            "hashKey": 1725968813882696,
            "checkCodes": [],
            "multiFabricAlert": false,
            "nodeNames": [
                "apic3",
                "apic2",
                "apic1"
            ],
            "advisoryId": "FN64210_prod-fabric",
            "advisoryType": "advisory",
            "streamingAdvisory": true,
            "advisoryReason": "cisco has recently identified a defect in the cisco application centric infrastructure (aci) that could potentially affect customers who run these cisco application policy infrastructure controller (apic) appliances:\nserver - apic-cluster-l2\nserver - apic-cluster-m2\nserver - apic-l2\nserver - apic-m2\nserver - apic-server-l2\nserver - apic-server-m2\nthe apic-l2/m2 server cisco integrated management controller (cimc) network mode was set to shared_lom_ext mode instead of dedicated mode. apic servers have a default requirement to set the network mode to dedicated mode,or it can be reconfigured to shared_lom mode which is also supported. shared_lom_ext mode is incorrect and this setting causes some issues in the network connectivity and discovery does not function. for more information, visit https://www.cisco.com/c/en/us/support/docs/field-notices/642/fn64210.html",
            "advisoryStr": "Cisco has recently identified a defect in the Cisco Application Centric Infrastructure (ACI) that could potentially affect customers who run these Cisco Application Policy Infrastructure Controller (APIC) appliances:\nServer - APIC-Cluster-L2\nServer - APIC-Cluster-M2\nServer - APIC-L2\nServer - APIC-M2\nServer - APIC-Server-L2\nServer - APIC-Server-M2\nThe APIC-L2/M2 server Cisco Integrated Management Controller (CIMC) network mode was set to Shared_Lom_ext mode instead of Dedicated mode. APIC servers have a default requirement to set the network mode to Dedicated mode,or it can be reconfigured to Shared_Lom mode which is also supported. Shared_Lom_ext mode is incorrect and this setting causes some issues in the network connectivity and discovery does not function. For more information, visit https://www.cisco.com/c/en/us/support/docs/field-notices/642/fn64210.html",
            "advisoryScore": 100
        },
        {
            "category": "HWEOL",
            "startTs": "2022-02-23T01:07:36.917Z",
            "endTs": "2022-05-12T00:35:18.000Z",
            "activeTs": "2022-05-12T00:35:18.000Z",
            "fabricName": "prod-fabric",
            "entityName": "EOL12963",
            "resourceType": "HWEOL",
            "resourceName": "HWEOL",
            "recommendation": true,
            "impact": false,
            "vendor": "CISCO_ACI",
            "severity": "critical",
            "acknowledged": false,
            "ackTs": null,
            "cleared": false,
            "clearTs": null,
            "masterClearTs": null,
            "expired": false,
            "alertType": "advisory",
            "title": "End-of-Sale and End-of-Life Announcement for the Cisco Application Policy Infrastructure Controller (APIC-L2 and APIC-M2)",
            "targetIndex": "[cisco_nir-anomalydb-2022.05.11]",
            "customData": {},
            "epochStartTs": 1645578456917,
            "epochEndTs": 1652315718000,
            "epochActiveTs": 1652315718000,
            "mnemonicTitle": "HWEOL",
            "mnemonicNum": 100124,
            "mnemonicDescription": "HWEOL",
            "entityNameList": [{
                "objectType": "leaf",
                "objectValue": [
                    "apic3",
                    "apic2",
                    "apic1"
                ]
            }],
            "offline": false,
            "verificationStatus": "NEW",
            "assignee": "",
            "tags": [],
            "comment": "",
            "manualAck": null,
            "autoAck": false,
            "hashKey": 8256065134102963,
            "checkCodes": [],
            "multiFabricAlert": false,
            "nodeNames": [
                "apic2",
                "apic1",
                "apic3"
            ],
            "advisoryId": "EOL12963_prod-fabric",
            "advisoryType": "advisory",
            "streamingAdvisory": true,
            "advisoryReason": "cisco announces the end-of-sale and end-of life-dates for the cisco application policy infrastructure controller (apic-l2 and apic-m2). the last day to order the affected product(s) is june 20,2019. for more information, visit https://www.cisco.com/c/en/us/products/collateral/cloud-systems-management/application-policy-infrastructure-controller-apic/eos-eol-notice-c51-742143.html",
            "advisoryStr": "Cisco announces the end-of-sale and end-of life-dates for the Cisco Application Policy Infrastructure Controller (APIC-L2 and APIC-M2). The last day to order the affected product(s) is June 20,2019. For more information, visit https://www.cisco.com/c/en/us/products/collateral/cloud-systems-management/application-policy-infrastructure-controller-apic/eos-eol-notice-c51-742143.html",
            "advisoryScore": 100
        }
    ]
  }
3
That’s it, you can now extract the information needed from the advisories and save them into variables to be reused.
You can learn more about using the Insights API from the following link.
Policy & Connectivity Automation
Nexus Dashboard Orchestrator
Cisco Nexus Dashboard Orchestrator (NDO) provides consistent network and policy orchestration, scalability, and disaster recovery across multiple data centers through a single pane of glass while allowing the data center to go wherever the data is. NDO allows you to interconnect separate Cisco® Application Centric Infrastructure (Cisco ACI) sites, Cisco Cloud ACI sites, and Cisco Nexus Dashboard Fabric Controller (NDFC) sites, each managed by its own controller (APIC cluster, NDFC cluster, or Cloud APIC instances in a public cloud). Multi-Site Services were traditionally provided by the Cisco Multi-Site Orchestrator (MSO) which was rebranded after version 3.4 to the Nexus Dashboard Orchestrator (NDO).
Getting started
1
In this Python 3 example, query the Nexus Dashboard Orchestrator tenants.
url = 'https://[nd-node-ip]/api/v1/tenants'
  # token = "[nd-auth-token]"
  headers = {'Authorization': 'Bearer ' + token}

  # Use verify=False if you are sure the target system is the system you expect and it has a self-signed certificate.
  response = requests.get(url=url, headers=headers, verify=False)

  tenants = response.json()
  print(tenants)
Same example using the cURL command:
curl -k --request GET 'https://[nd-node-ip]/api/v1/tenants' \
    -H "Authorization: Bearer [nd-auth-token]"
2
The tenants response payload contains a list of tenant with details of each tenant.
{
    "tenants": [{
        "id": "0000ffff0000000000000010",
        "name": "common",
        "displayName": "common",
        "siteAssociations": [{
            "siteId": "620cbd2711395f0e2cb35a7d",
            "securityDomains": [],
            "cloudAccount": null,
            "azureAccount": null,
            "awsAccount": null,
            "gcpAccount": null,
            "gatewayRouter": null
        }, {
            "siteId": "620fd85611395f0e2cb35a80",
            "securityDomains": [],
            "cloudAccount": null,
            "azureAccount": null,
            "awsAccount": null,
            "gcpAccount": null,
            "gatewayRouter": null
        }],
        "userAssociations": [{
            "userId": "48d105bdfbc49a5fcf39a10b961386e61dfe40085cb0315d818b761c5735dafa"
        }],
        "description": "Common tenant for use with all other tenants",
        "_updateVersion": 0,
        "_versionDefaulted": false
    }, {
        "id": "0000ffff0000000000000012",
        "name": "dcnm-default-tn",
        "displayName": "dcnm-default-tn",
        "siteAssociations": [],
        "userAssociations": [{
            "userId": "48d105bdfbc49a5fcf39a10b961386e61dfe40085cb0315d818b761c5735dafa"
        }],
        "description": "Default tenant for DCNM sites",
        "_updateVersion": 0,
        "_versionDefaulted": false
    }, {
        "id": "0000ffff0000000000000011",
        "name": "infra",
        "displayName": "infra",
        "siteAssociations": [{
            "siteId": "620fd85611395f0e2cb35a80",
            "securityDomains": [],
            "cloudAccount": null,
            "azureAccount": null,
            "awsAccount": null,
            "gcpAccount": null,
            "gatewayRouter": null
        }],
        "userAssociations": [{
            "userId": "48d105bdfbc49a5fcf39a10b961386e61dfe40085cb0315d818b761c5735dafa"
        }],
        "description": "Infra tenant for use with all other tenants",
        "_updateVersion": 0,
        "_versionDefaulted": false
    }]
  }
3
That’s it, you can now extract the information needed from the tenants and save them into variables to be reused.
You can learn more about using the Nexus Dashboard Orchestrator API from the following link.
Fabric Management
Nexus Dashboard Fabric Controller
(formerly DCNM)
The Nexus Dashboard Fabric Controller (NDFC) is the comprehensive management and automation solution for all Cisco Nexus and Cisco Multilayer Distributed Switching (MDS) platforms powered by Cisco NX-OS. NDFC provides management, automation, control, monitoring, and integration for deployments spanning LAN, SAN, and IP Fabric For Media (IPFM) fabrics. Fabric Controller Services were traditionally provided by Data Center Network Manager which became Nexus Dashboard fabric Controller in version 11.x.

Getting Started
1
In this Python 3 example, query the Nexus Dashboard Fabric Controller fabrics:
url = 'https://[nd-node-ip]/appcenter/cisco/ndfc/api/v1/lan-fabric/rest/control/fabrics'
  # token = "[nd-auth-token]"
  headers = {'Authorization': 'Bearer ' + token}

  # Use verify=False if you are sure the target system is the system you expect and it has a self-signed certificate.
  response = requests.get(url=url, headers=headers, verify=False)

  fabrics = response.json()
  print(fabrics)
curl -k --request GET 'https://[nd-node-ip]/appcenter/cisco/ndfc/api/v1/lan-fabric/rest/control/fabrics' \
    -H "Authorization: Bearer [nd-auth-token]"
2
The fabrics response payload contains a list of fabrics with details of each fabric.
[{
    "id": 1,
    "fabricId": "FABRIC-1",
    "fabricName": "MyLANFabric",
    "fabricType": "External",
    "fabricTypeFriendly": "External",
    "fabricTechnology": "LANClassic",
    "fabricTechnologyFriendly": "LAN Classic",
    "provisionMode": "DCNMTopDown",
    "deviceType": "n9k",
    "replicationMode": "IngressReplication",
    "operStatus": "HEALTHY",
    "templateName": "LAN_Classic",
    "nvPairs": {
        "DHCP_START": "",
        "FEATURE_PTP_INTERNAL": "false",
        "SNMP_SERVER_HOST_TRAP": "true",
        "ENABLE_NXAPI_HTTP": "false",
        "MPLS_LB_ID": "",
        "FEATURE_PTP": "false",
        "AAA_SERVER_CONF": "",
        "DHCP_START_INTERNAL": "",
        "SUBINTERFACE_RANGE": "2-511",
        "enableRealTimeBackup": "false",
        "DHCP_END": "",
        "MGMT_V6PREFIX_INTERNAL": "64",
        "MPLS_HANDOFF": "false",
        "PM_ENABLE_PREV": "false",
        "MGMT_V6PREFIX": "64",
        "scheduledTime": "",
        "enableScheduledBackup": "false",
        "NETFLOW_EXPORTER_LIST": "",
        "FABRIC_NAME": "test",
        "POWER_REDUNDANCY_MODE": "ps-redundant",
        "LOOPBACK0_IP_RANGE": "10.1.0.0/22",
        "PM_ENABLE": "false",
        "PTP_DOMAIN_ID": "",
        "ENABLE_AAA": "false",
        "DEPLOYMENT_FREEZE": "false",
        "DCI_SUBNET_TARGET_MASK": "30",
        "NETFLOW_MONITOR_LIST": "",
        "FF": "LANClassic",
        "FABRIC_TECHNOLOGY": "LANClassic",
        "BOOTSTRAP_CONF": "",
        "FABRIC_TYPE": "External",
        "FABRIC_FREEFORM": "",
        "NETFLOW_RECORD_LIST": "",
        "INBAND_MGMT_PREV": "false",
        "DHCP_END_INTERNAL": "",
        "MPLS_LOOPBACK_IP_RANGE": "",
        "BOOTSTRAP_ENABLE": "false",
        "DHCP_ENABLE": "false",
        "ENABLE_NETFLOW": "false",
        "BOOTSTRAP_MULTISUBNET_INTERNAL": "",
        "MGMT_PREFIX_INTERNAL": "",
        "DHCP_IPV6_ENABLE_INTERNAL": "",
        "MGMT_GW": "",
        "DCI_SUBNET_RANGE": "10.10.1.0/24",
        "MGMT_GW_INTERNAL": "",
        "ENABLE_NXAPI": "false",
        "MGMT_PREFIX": "",
        "BOOTSTRAP_MULTISUBNET": "",
        "IS_READ_ONLY": "false",
        "CDP_ENABLE": "false",
        "INBAND_MGMT": "false",
        "PTP_LB_ID": "",
        "DHCP_IPV6_ENABLE": "DHCPv4",
        "ENABLE_NETFLOW_PREV": "false",
        "AAA_REMOTE_IP_ENABLED": "false"
    },
    "createdOn": 1652287842100,
    "modifiedOn": 1652287842825
  }, {
    "id": 2,
    "fabricId": "FABRIC-2",
    "fabricName": "MyVXLANFabric",
    "fabricType": "Switch_Fabric",
    "fabricTypeFriendly": "Switch Fabric",
    "fabricTechnology": "VXLANFabric",
    "fabricTechnologyFriendly": "VXLAN Fabric",
    "provisionMode": "DCNMTopDown",
    "deviceType": "n9k",
    "replicationMode": "Multicast",
    "operStatus": "CRITICAL",
    "asn": "65004",
    "siteId": "65004",
    "templateName": "Easy_Fabric",
    "nvPairs": {
        "MSO_SITE_ID": "",
        "PHANTOM_RP_LB_ID1": "",
        "PHANTOM_RP_LB_ID2": "",
        "PHANTOM_RP_LB_ID3": "",
        "IBGP_PEER_TEMPLATE": "",
        "PHANTOM_RP_LB_ID4": "",
        "abstract_ospf": "base_ospf",
        "FEATURE_PTP": "false",
        "L3_PARTITION_ID_RANGE": "50000-59000",
        "DHCP_START_INTERNAL": "",
        "SSPINE_COUNT": "0",
        "ADVERTISE_PIP_BGP": "true",
        "FABRIC_VPC_QOS_POLICY_NAME": "spine_qos_for_fabric_vpc_peering",
        "BFD_PIM_ENABLE": "false",
        "DHCP_END": "",
        "UNDERLAY_IS_V6": "false",
        "FABRIC_VPC_DOMAIN_ID": "",
        "FABRIC_MTU_PREV": "9216",
        "BFD_ISIS_ENABLE": "false",
        "HD_TIME": "180",
        "OSPF_AUTH_ENABLE": "false",
        "LOOPBACK1_IPV6_RANGE": "",
        "ROUTER_ID_RANGE": "",
        "MSO_CONNECTIVITY_DEPLOYED": "",
        "ENABLE_MACSEC": "false",
        "DEAFULT_QUEUING_POLICY_OTHER": "queuing_policy_default_other",
        "MACSEC_REPORT_TIMER": "",
        "PREMSO_PARENT_FABRIC": "",
        "PTP_DOMAIN_ID": "",
        "USE_LINK_LOCAL": "false",
        "AUTO_SYMMETRIC_VRF_LITE": "false",
        "BGP_AS_PREV": "65004",
        "ENABLE_PBR": "false",
        "DCI_SUBNET_TARGET_MASK": "30",
        "VPC_PEER_LINK_PO": "500",
        "ISIS_AUTH_ENABLE": "false",
        "REPLICATION_MODE": "Multicast",
        "ANYCAST_RP_IP_RANGE": "10.254.254.0/24",
        "VPC_ENABLE_IPv6_ND_SYNC": "true",
        "abstract_isis_interface": "isis_interface",
        "TCAM_ALLOCATION": "true",
        "SERVICE_NETWORK_VLAN_RANGE": "3000-3199",
        "MACSEC_ALGORITHM": "",
        "ISIS_LEVEL": "level-2",
        "SUBNET_TARGET_MASK": "30",
        "abstract_anycast_rp": "anycast_rp",
        "ENABLE_NETFLOW": "false",
        "DEAFULT_QUEUING_POLICY_R_SERIES": "queuing_policy_default_r_series",
        "temp_vpc_peer_link": "int_vpc_peer_link_po",
        "BROWNFIELD_NETWORK_NAME_FORMAT": "Auto_Net_VNI$$VNI$$_VLAN$$VLAN_ID$$",
        "ENABLE_FABRIC_VPC_DOMAIN_ID": "false",
        "IBGP_PEER_TEMPLATE_LEAF": "",
        "DCI_SUBNET_RANGE": "10.33.0.0/16",
        "MGMT_GW_INTERNAL": "",
        "ENABLE_NXAPI": "true",
        "VRF_LITE_AUTOCONFIG": "Manual",
        "GRFIELD_DEBUG_FLAG": "Disable",
        "VRF_VLAN_RANGE": "2000-2299",
        "ISIS_AUTH_KEYCHAIN_NAME": "",
        "SSPINE_ADD_DEL_DEBUG_FLAG": "Disable",
        "abstract_bgp_neighbor": "evpn_bgp_rr_neighbor",
        "OSPF_AUTH_KEY_ID": "",
        "PIM_HELLO_AUTH_ENABLE": "false",
        "abstract_feature_leaf": "base_feature_leaf_upg",
        "BFD_AUTH_ENABLE": "false",
        "BGP_LB_ID": "0",
        "LOOPBACK1_IP_RANGE": "10.3.0.0/22",
        "AAA_SERVER_CONF": "",
        "VPC_PEER_KEEP_ALIVE_OPTION": "management",
        "enableRealTimeBackup": "",
        "V6_SUBNET_TARGET_MASK": "126",
        "STRICT_CC_MODE": "false",
        "VPC_PEER_LINK_VLAN": "3600",
        "abstract_trunk_host": "int_trunk_host",
        "BGP_AUTH_ENABLE": "false",
        "PM_ENABLE_PREV": "false",
        "RP_MODE": "asm",
        "enableScheduledBackup": "",
        "abstract_ospf_interface": "ospf_interface_11_1",
        "BFD_OSPF_ENABLE": "false",
        "MACSEC_FALLBACK_ALGORITHM": "",
        "LOOPBACK0_IP_RANGE": "10.2.0.0/22",
        "ENABLE_AAA": "false",
        "DEPLOYMENT_FREEZE": "false",
        "L2_HOST_INTF_MTU_PREV": "9216",
        "NETFLOW_MONITOR_LIST": "",
        "ENABLE_AGENT": "false",
        "NTP_SERVER_IP_LIST": "",
        "OVERLAY_MODE": "cli",
        "MACSEC_FALLBACK_KEY_STRING": "",
        "FF": "Easy_Fabric",
        "FABRIC_TYPE": "Switch_Fabric",
        "ISIS_OVERLOAD_ENABLE": "false",
        "NETFLOW_RECORD_LIST": "",
        "SPINE_COUNT": "2",
        "abstract_extra_config_bootstrap": "extra_config_bootstrap_11_1",
        "MPLS_LOOPBACK_IP_RANGE": "",
        "LINK_STATE_ROUTING_TAG_PREV": "UNDERLAY",
        "DHCP_ENABLE": "false",
        "BFD_AUTH_KEY_ID": "",
        "MSO_SITE_GROUP_NAME": "",
        "MGMT_PREFIX_INTERNAL": "",
        "DHCP_IPV6_ENABLE_INTERNAL": "",
        "BGP_AUTH_KEY_TYPE": "3",
        "SITE_ID": "65004",
        "temp_anycast_gateway": "anycast_gateway",
        "BRFIELD_DEBUG_FLAG": "Disable",
        "BGP_AS": "65004",
        "BOOTSTRAP_MULTISUBNET": "",
        "ISIS_P2P_ENABLE": "false",
        "ENABLE_NGOAM": "true",
        "CDP_ENABLE": "false",
        "PTP_LB_ID": "",
        "DHCP_IPV6_ENABLE": "DHCPv4",
        "MACSEC_KEY_STRING": "",
        "OSPF_AUTH_KEY": "",
        "ENABLE_FABRIC_VPC_DOMAIN_ID_PREV": "false",
        "EXTRA_CONF_LEAF": "",
        "vrf_extension_template": "Default_VRF_Extension_Universal",
        "DHCP_START": "",
        "ENABLE_TRM": "false",
        "FEATURE_PTP_INTERNAL": "false",
        "ENABLE_NXAPI_HTTP": "true",
        "abstract_isis": "base_isis_level2",
        "MPLS_LB_ID": "",
        "FABRIC_VPC_DOMAIN_ID_PREV": "",
        "ROUTE_MAP_SEQUENCE_NUMBER_RANGE": "1-65534",
        "NETWORK_VLAN_RANGE": "2300-2999",
        "STATIC_UNDERLAY_IP_ALLOC": "false",
        "MGMT_V6PREFIX_INTERNAL": "64",
        "MPLS_HANDOFF": "false",
        "scheduledTime": "",
        "ANYCAST_LB_ID": "",
        "MACSEC_CIPHER_SUITE": "",
        "MSO_CONTROLER_ID": "",
        "POWER_REDUNDANCY_MODE": "ps-redundant",
        "BFD_ENABLE": "false",
        "abstract_extra_config_leaf": "extra_config_leaf",
        "ANYCAST_GW_MAC": "0011.aabb.ccdd",
        "abstract_dhcp": "base_dhcp",
        "EXTRA_CONF_SPINE": "",
        "NTP_SERVER_VRF": "",
        "LINK_STATE_ROUTING_TAG": "UNDERLAY",
        "ISIS_OVERLOAD_ELAPSE_TIME": "",
        "RP_LB_ID": "254",
        "BOOTSTRAP_CONF": "",
        "LINK_STATE_ROUTING": "ospf",
        "ISIS_AUTH_KEY": "",
        "network_extension_template": "Default_Network_Extension_Universal",
        "DNS_SERVER_IP_LIST": "",
        "ENABLE_EVPN": "true",
        "abstract_multicast": "base_multicast_11_1",
        "VPC_DELAY_RESTORE_TIME": "60",
        "BFD_AUTH_KEY": "",
        "AGENT_INTF": "eth0",
        "FABRIC_MTU": "9216",
        "L3VNI_MCAST_GROUP": "",
        "VPC_DOMAIN_ID_RANGE": "1-1000",
        "BFD_IBGP_ENABLE": "false",
        "VPC_AUTO_RECOVERY_TIME": "360",
        "DNS_SERVER_VRF": "",
        "SYSLOG_SEV": "",
        "abstract_loopback_interface": "int_fabric_loopback_11_1",
        "SYSLOG_SERVER_VRF": "",
        "EXTRA_CONF_INTRA_LINKS": "",
        "SNMP_SERVER_HOST_TRAP": "true",
        "abstract_extra_config_spine": "extra_config_spine",
        "PIM_HELLO_AUTH_KEY": "",
        "temp_vpc_domain_mgmt": "vpc_domain_mgmt",
        "V6_SUBNET_RANGE": "",
        "SUBINTERFACE_RANGE": "2-511",
        "abstract_routed_host": "int_routed_host",
        "BGP_AUTH_KEY": "",
        "default_network": "Default_Network_Universal",
        "ISIS_AUTH_KEYCHAIN_KEY_ID": "",
        "MGMT_V6PREFIX": "64",
        "abstract_feature_spine": "base_feature_spine_upg",
        "ENABLE_DEFAULT_QUEUING_POLICY": "false",
        "ANYCAST_BGW_ADVERTISE_PIP": "false",
        "NETFLOW_EXPORTER_LIST": "",
        "abstract_vlan_interface": "int_fabric_vlan_11_1",
        "RP_COUNT": "2",
        "FABRIC_NAME": "fabric-cylon",
        "abstract_pim_interface": "pim_interface",
        "PM_ENABLE": "false",
        "LOOPBACK0_IPV6_RANGE": "",
        "dcnmUser": "admin",
        "NVE_LB_ID": "1",
        "OVERLAY_MODE_PREV": "cli",
        "VPC_DELAY_RESTORE": "150",
        "ENABLE_VPC_PEER_LINK_NATIVE_VLAN": "true",
        "L2_HOST_INTF_MTU": "9216",
        "abstract_route_map": "route_map",
        "abstract_vpc_domain": "base_vpc_domain_11_1",
        "ACTIVE_MIGRATION": "false",
        "COPP_POLICY": "strict",
        "DHCP_END_INTERNAL": "",
        "BOOTSTRAP_ENABLE": "true",
        "default_vrf": "Default_VRF_Universal",
        "OSPF_AREA_ID": "0.0.0.0",
        "SYSLOG_SERVER_IP_LIST": "",
        "ENABLE_TENANT_DHCP": "true",
        "ANYCAST_RP_IP_RANGE_INTERNAL": "10.254.254.0/24",
        "RR_COUNT": "2",
        "BOOTSTRAP_MULTISUBNET_INTERNAL": "",
        "MGMT_GW": "",
        "MGMT_PREFIX": "",
        "abstract_bgp_rr": "evpn_bgp_rr",
        "abstract_bgp": "base_bgp",
        "ENABLE_NETFLOW_PREV": "false",
        "SUBNET_RANGE": "10.4.0.0/16",
        "DEAFULT_QUEUING_POLICY_CLOUDSCALE": "queuing_policy_default_8q_cloudscale",
        "MULTICAST_GROUP_SUBNET": "239.1.1.0/25",
        "FABRIC_INTERFACE_TYPE": "p2p",
        "FABRIC_VPC_QOS": "false",
        "AAA_REMOTE_IP_ENABLED": "false",
        "L2_SEGMENT_ID_RANGE": "30000-49000"
    },
    "vrfTemplate": "Default_VRF_Universal",
    "networkTemplate": "Default_Network_Universal",
    "vrfExtensionTemplate": "Default_VRF_Extension_Universal",
    "networkExtensionTemplate": "Default_Network_Extension_Universal",
    "modifiedOn": 1652308071149
  }]
3
That’s it, you can now extract the information needed from the fabrics and save them into variables to be reused.
You can learn more about using the Fabric Controller API from the following link.
Cisco Nexus Dashboard Integrations Easy to learn, simple to use, and constantly updated with powerful new capabilities.
Ansible Automation Start your automation journey with Ansible. These Ansible tutorials give you the flexibility to turn your laptops into an Ansible control station to automate basic tasks, or to use Ansible as an orchestration tool to rollout application updates while ensuring minimal downtime. Learn more Terraform Automation Apply Infrastructure as Code (IaC) methodologies to leverage the same agile practices that application developers use. Use Terraform with Cisco Intersight, Multi-Site Orchestrator, ACI, Cisco DNA Center, and Tetration to increase productivity while reducing risks for your organization. Learn more Infrastructure as Code Cisco helps you embrace DevOps, APIs, and Automation to manage networks efficiently, control risk, and optimize for growth and innovation. Learn more