NVIDIA® NEO® API is based on the industry common Representational State Transfer (REST) convention. It exposes system resources using URIs and uses HTTP methods such as GET, PUT, POST and DELETE to manage and manipulate them.
About This Document
This document provides information on how to access, view, and update data in the NEO Repository using REST API.
Intended Audience
This document is intended for NEO customers: integrators, DevOps, developers.
Abbreviations
Abbreviation |
Description |
NEO |
NVIDIA NEO: Cloud Networking Orchestration and Management Software |
NEO-REST API |
Presents API usage examples that which are exposed to NVIDIA NEO users |
REST |
Representational State Transfer |
API |
Application Programming Interface |
OS |
Operating system (In this context, referring to the OS installed or currently active on a switch) |
Resource Definitions
Resource |
Description |
Access Credentials |
Access Credential objects (Username and Password) for all available protocols (SSH, HTTP, SNMP, and SNMPv3). |
Groups |
Used to logically group managed elements and assign credentials to groups of devices. Users can set specific Access Credentials for groups. They can also add systems as members of these groups. |
Systems |
The devices discovered by NVIDIA NEO. For supported systems, NVIDIA NEO provides details such as inventory, operating system, ports etc. |
Ports |
Discovered ports (of the systems). For supported systems, NVIDIA NEO provides details such as speed, technology, etc. |
Inventories |
Reported field replaceable units (FRUs) of the managed systems. |
Links |
Discovered links (between interconnected ports). |
Events |
System and NVIDIA NEO events generated by NVIDIA NEO. |
Jobs |
Represents running/created/pending/completed jobs in NVIDIA NEO. A job is created when a system's/ user's flow/ action is submitted for processing. |
Telemetry |
Stored statistical reports. |
Tasks |
Created tasks. Tasks allow to run an operation on devices or groups on demand, or schedule it to run at any desired time/interval. |
Templates |
Switch's configuration templates that are supported by NVIDIA NEO. |
Capabilities |
A class that describes abilities and/or potential for use. |
Logs |
NEO system logs that can be used for debugging purposes. |
Users |
NEO users and their attributes. |
Providers |
Connected NEO service modules, their details and status. |
Services |
Used to provision complex configurations on multiple devices, and upon completion, constantly monitors these configurations. |
Request Content Type
The request content type for most REST APIs is application/json. Particular instances where this is not the case are noted in the relevant section.
Status Codes
Name |
Description |
200 OK |
Successful operation. |
201 CREATED |
Request was fulfilled. |
202 ACCEPTED |
Request has been accepted for processing. |
204 NO CONTENT |
The server successfully processed the request and is not returning any content. In case of a request for deletion of content, this status code reflects that the process was successful. |
302 FOUND |
Redirected to login page. |
400 BAD REQUEST |
Empty or bad parameter. |
403 FORBIDDEN |
The request was valid, but the server is refusing action. |
404 NOT FOUND |
Request source not found. |
409 CONFLICT |
The request could not be processed because of a conflict. Usually, the desired content already exists or the same name already exists. |
415 UNSUPPORTED MEDIA TYPE |
Media type are not supported, usually in the case that the systems are not NVIDIA or Cumulus. |
500 INTERNAL SERVER ERROR |
A problem has occurred in the server while trying to access the data. |
503 SERVICE UNAVAILABLE |
The server temporarily cannot handle the request because the service you are looking for in currently unavailable. |