24b90c7e7a1e37db0d6357955179165724f04abc
[policy/parent.git] / docs / pap / swagger / policy-audit-pap.json
1 {
2   "swagger": "2.0",
3   "info": {
4     "title": "The APIs listed here are used to fetch audit information for various actions taken on policies.",
5     "version": "v1"
6   },
7   "basePath": "/",
8   "tags": [
9     {
10       "name": "Policy Audit"
11     }
12   ],
13   "schemes": [
14     "http",
15     "https"
16   ],
17   "consumes": [
18     "application/json",
19     "application/yaml"
20   ],
21   "produces": [
22     "application/json",
23     "application/yaml"
24   ],
25   "paths": {
26     "/policy/pap/v1/policies/audit": {
27       "get": {
28         "tags": [
29           "Policy Audit"
30         ],
31         "summary": "Queries audit information for all the policies",
32         "description": "Queries audit information for all the policies, returning audit information for all the policies in the database",
33         "operationId": "getAllAuditRecords",
34         "produces": [
35           "application/json",
36           "application/yaml"
37         ],
38         "parameters": [
39           {
40             "name": "X-ONAP-RequestID",
41             "in": "header",
42             "description": "RequestID for http transaction",
43             "required": false,
44             "type": "string",
45             "format": "uuid"
46           },
47           {
48             "name": "recordCount",
49             "in": "query",
50             "description": "Record count between 1-100",
51             "required": false,
52             "type": "integer",
53             "format": "int32"
54           },
55           {
56             "name": "fromDate",
57             "in": "query",
58             "description": "From date in epoch timestamp",
59             "required": false,
60             "type": "integer",
61             "format": "int64"
62           },
63           {
64             "name": "toDate",
65             "in": "query",
66             "description": "To date in epoch timestamp",
67             "required": false,
68             "type": "integer",
69             "format": "int64"
70           }
71         ],
72         "responses": {
73           "200": {
74             "description": "successful operation",
75             "headers": {
76               "X-MinorVersion": {
77                 "type": "string",
78                 "description": "Used to request or communicate a MINOR version back from the client to the server, and from the server back to the client"
79               },
80               "X-PatchVersion": {
81                 "type": "string",
82                 "description": "Used only to communicate a PATCH version in a response for troubleshooting purposes only, and will not be provided by the client on request"
83               },
84               "X-LatestVersion": {
85                 "type": "string",
86                 "description": "Used only to communicate an API's latest version"
87               },
88               "X-ONAP-RequestID": {
89                 "type": "string",
90                 "format": "uuid",
91                 "description": "Used to track REST transactions for logging purpose"
92               }
93             },
94             "schema": {
95               "type": "array",
96               "items": {
97                 "$ref": "#/definitions/PolicyAudit"
98               }
99             }
100           },
101           "401": {
102             "description": "Authentication Error"
103           },
104           "403": {
105             "description": "Authorization Error"
106           },
107           "500": {
108             "description": "Internal Server Error"
109           }
110         },
111         "security": [
112           {
113             "basicAuth": []
114           }
115         ],
116         "x-interface info": {
117           "api-version": "1.0.0",
118           "last-mod-release": "Dublin"
119         }
120       }
121     },
122     "/policy/pap/v1/policies/audit/{pdpGroupName}": {
123       "get": {
124         "tags": [
125           "Policy Audit"
126         ],
127         "summary": "Queries audit information for all the policies in a PdpGroup",
128         "description": "Queries audit information for all the policies in a PdpGroup, returning audit information for all the policies belonging to the PdpGroup",
129         "operationId": "getAuditRecordsByGroup",
130         "produces": [
131           "application/json",
132           "application/yaml"
133         ],
134         "parameters": [
135           {
136             "name": "X-ONAP-RequestID",
137             "in": "header",
138             "description": "RequestID for http transaction",
139             "required": false,
140             "type": "string",
141             "format": "uuid"
142           },
143           {
144             "name": "recordCount",
145             "in": "query",
146             "description": "Record count between 1-100",
147             "required": false,
148             "type": "integer",
149             "format": "int32"
150           },
151           {
152             "name": "fromDate",
153             "in": "query",
154             "description": "From date in epoch timestamp",
155             "required": false,
156             "type": "integer",
157             "format": "int64"
158           },
159           {
160             "name": "toDate",
161             "in": "query",
162             "description": "To date in epoch timestamp",
163             "required": false,
164             "type": "integer",
165             "format": "int64"
166           },
167           {
168             "name": "pdpGroupName",
169             "in": "path",
170             "description": "PDP Group Name",
171             "required": true,
172             "type": "string"
173           }
174         ],
175         "responses": {
176           "200": {
177             "description": "successful operation",
178             "headers": {
179               "X-MinorVersion": {
180                 "type": "string",
181                 "description": "Used to request or communicate a MINOR version back from the client to the server, and from the server back to the client"
182               },
183               "X-PatchVersion": {
184                 "type": "string",
185                 "description": "Used only to communicate a PATCH version in a response for troubleshooting purposes only, and will not be provided by the client on request"
186               },
187               "X-LatestVersion": {
188                 "type": "string",
189                 "description": "Used only to communicate an API's latest version"
190               },
191               "X-ONAP-RequestID": {
192                 "type": "string",
193                 "format": "uuid",
194                 "description": "Used to track REST transactions for logging purpose"
195               }
196             },
197             "schema": {
198               "type": "array",
199               "items": {
200                 "$ref": "#/definitions/PolicyAudit"
201               }
202             }
203           },
204           "401": {
205             "description": "Authentication Error"
206           },
207           "403": {
208             "description": "Authorization Error"
209           },
210           "500": {
211             "description": "Internal Server Error"
212           }
213         },
214         "security": [
215           {
216             "basicAuth": []
217           }
218         ],
219         "x-interface info": {
220           "api-version": "1.0.0",
221           "last-mod-release": "Dublin"
222         }
223       }
224     },
225     "/policy/pap/v1/policies/audit/{policyName}/{policyVersion}": {
226       "get": {
227         "tags": [
228           "Policy Audit"
229         ],
230         "summary": "Queries audit information for a specific version of a policy",
231         "description": "Queries audit information for a specific version of a policy, returning audit information for the policy",
232         "operationId": "getAuditRecordsOfPolicy",
233         "produces": [
234           "application/json",
235           "application/yaml"
236         ],
237         "parameters": [
238           {
239             "name": "X-ONAP-RequestID",
240             "in": "header",
241             "description": "RequestID for http transaction",
242             "required": false,
243             "type": "string",
244             "format": "uuid"
245           },
246           {
247             "name": "recordCount",
248             "in": "query",
249             "description": "Record count between 1-100",
250             "required": false,
251             "type": "integer",
252             "format": "int32"
253           },
254           {
255             "name": "fromDate",
256             "in": "query",
257             "description": "From date in epoch timestamp",
258             "required": false,
259             "type": "integer",
260             "format": "int64"
261           },
262           {
263             "name": "toDate",
264             "in": "query",
265             "description": "To date in epoch timestamp",
266             "required": false,
267             "type": "integer",
268             "format": "int64"
269           },
270           {
271             "name": "policyName",
272             "in": "path",
273             "description": "Policy Name",
274             "required": true,
275             "type": "string"
276           },
277           {
278             "name": "policyVersion",
279             "in": "path",
280             "description": "Policy Version",
281             "required": true,
282             "type": "string"
283           }
284         ],
285         "responses": {
286           "200": {
287             "description": "successful operation",
288             "headers": {
289               "X-MinorVersion": {
290                 "type": "string",
291                 "description": "Used to request or communicate a MINOR version back from the client to the server, and from the server back to the client"
292               },
293               "X-PatchVersion": {
294                 "type": "string",
295                 "description": "Used only to communicate a PATCH version in a response for troubleshooting purposes only, and will not be provided by the client on request"
296               },
297               "X-LatestVersion": {
298                 "type": "string",
299                 "description": "Used only to communicate an API's latest version"
300               },
301               "X-ONAP-RequestID": {
302                 "type": "string",
303                 "format": "uuid",
304                 "description": "Used to track REST transactions for logging purpose"
305               }
306             },
307             "schema": {
308               "$ref": "#/definitions/PolicyAudit"
309             }
310           },
311           "401": {
312             "description": "Authentication Error"
313           },
314           "403": {
315             "description": "Authorization Error"
316           },
317           "500": {
318             "description": "Internal Server Error"
319           }
320         },
321         "security": [
322           {
323             "basicAuth": []
324           }
325         ],
326         "x-interface info": {
327           "api-version": "1.0.0",
328           "last-mod-release": "Dublin"
329         }
330       }
331     },
332     "/policy/pap/v1/policies/audit/{pdpGroupName}/{policyName}/{policyVersion}": {
333       "get": {
334         "tags": [
335           "Policy Audit"
336         ],
337         "summary": "Queries audit information for a specific version of a policy in a PdpGroup",
338         "description": "Queries audit information for a specific version of a policy in a PdpGroup, returning audit information for the policy belonging to the PdpGroup",
339         "operationId": "getAuditRecordsOfPolicy_1",
340         "produces": [
341           "application/json",
342           "application/yaml"
343         ],
344         "parameters": [
345           {
346             "name": "X-ONAP-RequestID",
347             "in": "header",
348             "description": "RequestID for http transaction",
349             "required": false,
350             "type": "string",
351             "format": "uuid"
352           },
353           {
354             "name": "recordCount",
355             "in": "query",
356             "description": "Record count between 1-100",
357             "required": false,
358             "type": "integer",
359             "format": "int32"
360           },
361           {
362             "name": "fromDate",
363             "in": "query",
364             "description": "From date in epoch timestamp",
365             "required": false,
366             "type": "integer",
367             "format": "int64"
368           },
369           {
370             "name": "toDate",
371             "in": "query",
372             "description": "To date in epoch timestamp",
373             "required": false,
374             "type": "integer",
375             "format": "int64"
376           },
377           {
378             "name": "pdpGroupName",
379             "in": "path",
380             "description": "PDP Group Name",
381             "required": true,
382             "type": "string"
383           },
384           {
385             "name": "policyName",
386             "in": "path",
387             "description": "Policy Name",
388             "required": true,
389             "type": "string"
390           },
391           {
392             "name": "policyVersion",
393             "in": "path",
394             "description": "Policy Version",
395             "required": true,
396             "type": "string"
397           }
398         ],
399         "responses": {
400           "200": {
401             "description": "successful operation",
402             "headers": {
403               "X-MinorVersion": {
404                 "type": "string",
405                 "description": "Used to request or communicate a MINOR version back from the client to the server, and from the server back to the client"
406               },
407               "X-PatchVersion": {
408                 "type": "string",
409                 "description": "Used only to communicate a PATCH version in a response for troubleshooting purposes only, and will not be provided by the client on request"
410               },
411               "X-LatestVersion": {
412                 "type": "string",
413                 "description": "Used only to communicate an API's latest version"
414               },
415               "X-ONAP-RequestID": {
416                 "type": "string",
417                 "format": "uuid",
418                 "description": "Used to track REST transactions for logging purpose"
419               }
420             },
421             "schema": {
422               "$ref": "#/definitions/PolicyAudit"
423             }
424           },
425           "401": {
426             "description": "Authentication Error"
427           },
428           "403": {
429             "description": "Authorization Error"
430           },
431           "500": {
432             "description": "Internal Server Error"
433           }
434         },
435         "security": [
436           {
437             "basicAuth": []
438           }
439         ],
440         "x-interface info": {
441           "api-version": "1.0.0",
442           "last-mod-release": "Dublin"
443         }
444       }
445     }
446   },
447   "securityDefinitions": {
448     "basicAuth": {
449       "description": "",
450       "type": "basic"
451     }
452   },
453   "definitions": {
454     "PolicyAudit": {
455       "type": "object",
456       "properties": {
457         "pdpGroup": {
458           "type": "string"
459         },
460         "pdpType": {
461           "type": "string"
462         },
463         "policy": {
464           "$ref": "#/definitions/ToscaConceptIdentifier"
465         },
466         "action": {
467           "type": "string"
468         },
469         "timestamp": {
470           "type": "string"
471         },
472         "user": {
473           "type": "string"
474         }
475       }
476     },
477     "ToscaConceptIdentifier": {
478       "type": "object",
479       "properties": {
480         "name": {
481           "type": "string"
482         },
483         "version": {
484           "type": "string"
485         }
486       }
487     }
488   }
489 }