Skip to content
Sharmarke Aden edited this page May 18, 2014 · 14 revisions

Goals

  1. Change POST request that don't have payload to GET requests.
  2. Utilize Server-Side-Events for blocking operations and use JSON data for event data.
  3. Standardize error response and return a JSON object that encapsulates error messages.
  4. Avoid using "/json" in request URL and instead rely on "Accept" header.
  5. Return appropriate Content-Type header information.
  6. Use "camelCase" or "PascalCase" for JSON property names but not both.
  7. For PascalCase, two letter property names should not be capitalized (Change "ID" to "Id", and "OS" to "Os"). Doing so would make the JSON easier to process.
  8. Stream content type should be specific. If returning octet-stream that's a gzip file then use "application/gzip) (RFC 6713)
  9. Break the Remote API documentation page into smaller pages.
  10. Add JSON schema definitions for JSON objects.
  11. Add HATEOAS support?

Containers Endpoint

Request URI
List Containers /containers
Create Container /containers
Delete Container /containers/{id}
Inspect Container /containers/{id}
List Running Processes /containers/{id}/top
Inspect Filesystem Changes /containers/{id}/changes
Get Logs /containers/{id}/logs
Export Container /containers/{id}/export
Start Container /containers/{id}/start
Stop Container /containers/{id}/stop
Restart Container /containers/{id}/restart
Kill Container /containers/{id}/kill
Attach to Container /containers/{id}/attach
Wait for Container to Stop /containers/{id}/wait
Copy Files/Folders containers/{id}/copy

Images Endpoint

Request URI
List Images /images
Create Image /images
Delete Image /images/{name}
Inspect Image /images/{name}
Get History /images/{name}/history
Insert File /images/{name}/insert
Push Image /images/{name}/push
Tag Image /images/{name}/tag
Search Images /images/search
Get Images /images/{name}/get
Load Images /images/load

Clone this wiki locally