NX-API REST operates in a forgiving mode, meaning missing attributes are substituted with default values (if applicable) that are maintained in the internal data management engine (DME). The DME validates and rejects incorrect attributes. NX-API REST is also atomic; if multiple MOs are being configured simultaneously, the API has the ability to stop its operation in the event any of the targeted MOs cannot be configured. It will return the configuration to its previous state, stop the API operation, and return an error code.
NX-API REST is transactional and terminates on a single data model. Developers are relieved from the task of programming and interfacing with individual component configurations.
The API model includes the following programmatic entities:
- Classes are templates that define the properties and states of objects in the management information tree.
- Methods are actions that the API performs on one or more objects.
- Types are object properties that map values to the object state such as equipmentPresence.
A typical request comes into the DME and is placed in the transactor queue using a first in, first out (FIFO) scheduler. The transactor retrieves the request from the queue, interprets the request, and performs an authorization check. After the request is confirmed, the transactor updates the MIT. This complete set of steps is executed for every transaction the DME processes.