As a user I would like to have one HTTP resource tell me which RESTful services are currently available in DDF.

Description

It is currently a little less than clear as to which RESTful endpoints are available in a running deployment of DDF and what payload/parameters/headers they accept (and produce). As a developer I would like to have a single point of reference (in an HTTP sense) of available RESTful endpoints so I can test/extend/develop/use them in a deployed instance of DDF.

Create an API gateway for simple, one-stop listing of all available RESTful APIs available in the running environment. The gateway will allow bundles to register their RESTful services. When queried, basic HTTP /GET, it will provide a listing of currently-running bundles along with their URIs. The bundles should expose HTTP /GET resources listing available RESTful endpoints along with their accepted headers/parameters/payloads and sample output.

In practice this should be as simple as implementing an interface for the RESTful bundles which (on HTTP /GET) returns the API of it’s “home” bundle along with accept/produce headers/parameters/payload, etc.

While this will not really make it an actual API gateway in (https://medium.com/netflix-techblog/optimizing-the-netflix-api-5c9ac715cf19) <-- this sense it could certainly be a place to start.

We could also use software like Swagger which allows us to define a "swagger definition" and then we can export that definition to various viewing types such as HTML. An example swagger definition and export type is attached.

Environment

None

Status

Assignee

Unassigned

Reporter

Leo Sakhvoruk

Labels

None

Priority

Major
Configure