Usage¶
An API HTTP REST is implemented to manage the communication and the work of the Dynamic Policy Manager.
All URIs are relative to http://localhost:8080/api/v1.
Mainly the Dynamic Policy Manager use in the first version the method get for to return one or all policies created, and post to create a new policies.
API calls for the DPM¶
Several API endpoints are provided in this component, as shown in the following. For a full definition of the URL and the schema on this REST calls see the Annexes documentation.
HTTP Request | Description |
GET/policies/{id} | Get a policy id |
GET/policies/ | Return the list of policies created/updated |
POST/policies/ | Add new policy |
GET/policies/status | Read items |
POST/alertmanager/ | AlertManager Webhooks |
POST/registry/icos | ICOS Process App descriptor |
Endpoints¶
GET/registry/api/v1/policies/{id}¶
- Parameters: an authorization access token is requested as String
- Request body is provided from the following schema;
AttributeName | Type | Description |
id | Long | Unique identifier of the deployment |
GET /registry/api/v1/policies/¶
- Parameters: an authorization access token is requested as String.
- No schema is provided.
POST/registry/ap1/v1/policies/{policy}¶
- Parameters: an authorization access token is requested as String.
- Request body is provided from the following schema;
AttributeName | Type | Description |
subject | Subject[] | Provides a set of information about the type of application, name of the application, component and instance |
spec | Spec[] | Set of information about the template used |
action | Action[] | Set of information about the action to provided. [DEFAULT] is “webhook”. |
variables | Variables[] | [OPTIONAL] addtional properties. It can a string, an integer or a number. [DEFAULT] is {}. |
properties | Properties[] | [OPTIONAL] additional properties [DEFAULT] is {}. |
Subject[]
AttributeName | Type | Description |
type | const | Default is "app" Name of app |
appName | String | Name of app |
appComponent | String | Component of app |
appInstance | String | Instance of app |
Spec[]
AttributeName | Type | Description |
type description |
String | [DEFAULT] is empty “” |
type | Const | [DEFAULT] is “template” |
templateName | String | Name of template |
Http methods from the following RFCs are all observed:
- RFC 7231: Hypertext Transfer Protocol (HTTP/1.1), obsoletes 2616
- RFC 5789: PATCH Method for HTTP
Allowed values are : CONNECT, DELETE, GET, HEAD, OPTIONS, PATCH, POST,PUT, TRACE.
Variables[]
AttributeName | Type | Description |
#0 | String | [OPTIONAL] |
#1 | integer | [OPTIONAL] |
#2 | number | [OPTIONAL] |
Properties[]
AttributeName | Type | Description |
oneoff | boolean | boolean |
interval | String | Interval where the policy should be acts |
pendingInterval | String | Information about the interval status |
Reference¶
Designed and architecture refer to the deliverable D3.1 Meta-kernel Layer Module Developed (IT-1) provides about the implementation. API models and how to work refer to the deliverable D3.2 Metakernel Layer Module Develope (IT-2)