11-28-2023 08:19 AM
Hey everyone,
I wanted to share how to integrate ExtremeCloud IQ Site Engine with GraphQL. This integration can significantly enhance your network management capabilities and streamline data retrieval and manipulation. Here’s a step-by-step breakdown:
WARNING: Changes made via the NBI are not validated. Entering invalid information will affect your ExtremeCloud IQ - Site Engine server and may cause you to lose data. Only use the NBI if you are an expert user.
Accessing the GraphiQL Explorer in ExtremeCloud IQ - Site Engine:
The Server Utilities tab opens.
NOTE: Select NBI Schema (Text) or NBI Schema (JSON) to display the format you use when defining your queries and mutations in the NBI in plain text format or in JavaScript Object Notation, respectively.
This site contains schema information for queries and mutations available using the NBI in version 22.3 of ExtremeCloud IQ - Site Engine. For the most up-to-date schema information for your version of ExtremeCloud IQ - Site Engine, see the JSON file in your installation.
Using the NBI Explorer:
Selecting NBI Explorer in the Server Utilities tab opens the NBI Explorer in a new tab or window, depending on how your browser is configured.
NOTE: To access the NBI requires access to the Northbound API > Northbound Interface Authorization Group capability. To access the Policy and Access Control queries and mutations you also need access to the Northbound API > Policy Northbound Interface and Northbound API > Access Control Northbound Interface Authorization Group capabilities, respectively.
The NBI Explorer provides you with read-only access to queries and write access via mutations, allowing you to preview the data so you know what queries and mutations to use in your third-party applications. You can add NBI queries and mutations via python scripts or use NBI queries and mutations in https via REST calls.
For example, to retrieve the IP address and policy domain for a device, enter:
#Embedded Python Script
deviceIP = emc_vars[‘deviceIP’]
response = emc_api.query("ExtremeApi { Network { device(ip: deviceIP) { ip policyDomain}}}");
network = response['network'];
for device in network['devices']:
print " IP: ",device['ip']
print “ Policy Domain: “, device[‘policyDomain’]
For additional information about the queries and mutations available in the NBI Explorer:
To access the NBI using a third-party tool outside of ExtremeCloud IQ - Site Engine, the third-party client must be configured on the Administration > Client API Access tab.
For more details, check out the official guide here!
Integrating ExtremeCloud IQ Site Engine with GraphQL can revolutionize how you manage and interact with your network infrastructure. By leveraging the power of GraphQL's flexible querying capabilities, you can efficiently access and manipulate network data.
Feel free to ask any questions or share your experiences with this integration process. Let’s collaborate and optimize our network management workflows together!
Happy integrating!
11-29-2023 06:04 AM
Thank you.
the latest version of GraphQL documentation is here: https://documentation.extremenetworks.com/XIQ-SE_API/GraphQLschema/
The one shared in the original post is for version 23.4.10.
Sincerely yours