Reference Guide

Table Of Contents
Public API:
1) Create token. This accepts username/password credentials and return back a unique token with
some expiration.
Service API:
1) Revoke token. This revokes a given token.
2) Validate token. This validates a given token and returns back the appropriate principal's
information.
Authentication services have been split into these two APIs to limit sensitive services (Service API) to
only authorized clients.
REST API
Internal applications do not make use of the HP VAN SDN Controller’s REST API, they extend it by
defining their own RESTful Web Services. Internal applications make use of the business services
(Java APIs) published by the controller. For external applications consult the RESTful API
documentation (or Rsdoc) as described at Rsdoc Live Reference on page 17 .
Representational State Transfer (REST) defines a set of architectural principles by which Web
services are designed focusing on a system's resources, including how resource states are
addressed and transferred over HTTP by a wide range of clients written in different languages
[20].
Concrete implementation of a REST Web service follows four basic design principles:
Use HTTP methods explicitly.
Be stateless.
Expose directory structure-like URIs.
Transfer XML, JavaScript Object Notation (JSON), or both.
One of the key characteristics of a RESTful Web service is the explicit use of HTTP. HTTP GET, for
instance, is defined as a data-producing method that's intended to be used by a client application
to retrieve a resource, to fetch data from a Web server, or to execute a query with the expectation
that the Web server will look for and respond with a set of matching resources [20].
REST asks developers to use HTTP methods explicitly and in a way that's consistent with the
protocol definition. This basic REST design principle establishes a one-to-one mapping between
create, read, update, and delete (CRUD) operations and HTTP methods. According to this
mapping:
To create a resource on the server, use POST.
To retrieve a resource, use GET.
To change the state of a resource or to update it, use PUT.
To remove or delete a resource, use DELETE.
See [1] for guidelines to design REST APIs or RESTful Web Services and Creating a REST API on
page 169 for an example.
15