About
Any part of the official API can be reached through the main entry point. The entry point list all collection supported by the current driver. API entrypoint might also include information about 'features' supported by different collections.
Features
The Apache Deltacloud API defines the standard behavior and semantics for each of the resource types as a baseline for any API implementation. It is often desirable to enhance standard API behavior with specific features. The API also defines all features that can be supported by the API implementation - each of them has a fixed predefined meaning. For example, the feature user_name indicates that a user-specified name can be assigned to an instance when it is created.
Supported operations
Method |
URI |
Description |
---|---|---|
GET |
/api |
Retrieve the API entrypoint |
OPTIONS |
/api |
Return supported collection by the current driver in |
XML
<api driver="mock" version="1.0.4"> <link href="http://localhost:3001/api/instance_states" rel="instance_states"></link> <link href="http://localhost:3001/api/storage_volumes" rel="storage_volumes"></link> <link href="http://localhost:3001/api/metrics" rel="metrics"></link> <link href="http://localhost:3001/api/hardware_profiles" rel="hardware_profiles"></link> <link href="http://localhost:3001/api/instances" rel="instances"> <feature name="metrics"></feature> <feature name="realm_filter"></feature> <feature name="user_name"></feature> <feature name="user_data"></feature> <feature name="authentication_key"></feature> </link> <link href="http://localhost:3001/api/realms" rel="realms"></link> <link href="http://localhost:3001/api/storage_snapshots" rel="storage_snapshots"></link> <link href="http://localhost:3001/api/images" rel="images"></link> <link href="http://localhost:3001/api/addresses" rel="addresses"></link> <link href="http://localhost:3001/api/drivers" rel="drivers"></link> <link href="http://localhost:3001/api/buckets" rel="buckets"></link> <link href="http://localhost:3001/api/keys" rel="keys"></link> </api>
JSON
{"api":{"link":[{"href":"http://localhost:3001/api/instance_states","rel":"instance_states"},{"href":"http://localhost:3001/api/storage_volumes","rel":"storage_volumes"},{"href":"http://localhost:3001/api/metrics","rel":"metrics"},{"href":"http://localhost:3001/api/hardware_profiles","rel":"hardware_profiles"},{"feature":[{"name":"metrics"},{"name":"realm_filter"},{"name":"user_name"},{"name":"user_data"},{"name":"authentication_key"}],"href":"http://localhost:3001/api/instances","rel":"instances"},{"href":"http://localhost:3001/api/realms","rel":"realms"},{"href":"http://localhost:3001/api/storage_snapshots","rel":"storage_snapshots"},{"href":"http://localhost:3001/api/images","rel":"images"},{"href":"http://localhost:3001/api/addresses","rel":"addresses"},{"href":"http://localhost:3001/api/drivers","rel":"drivers"},{"href":"http://localhost:3001/api/buckets","rel":"buckets"},{"href":"http://localhost:3001/api/keys","rel":"keys"}],"driver":"mock","version":"1.0.4"}}
- The
rel
attribute define a relation to the collection (collection name) and thehref
attribute is an absolute URL to given collection. - Features are usually mapped to additional HTTP query parameters that can be used for the request.
TODO: Add param, http method, operation name