-
Notifications
You must be signed in to change notification settings - Fork 2
/
harvester.raml
156 lines (151 loc) · 4.34 KB
/
harvester.raml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
#%RAML 1.0
title: mod-erm-usage-harvester API
version: v1.3
baseUri: http://localhost/erm-usage-harvester
documentation:
- title: mod-erm-usage-harvester API
content: This documents the API calls that can be made to mod-erm-usage-harvester
types:
jobInfos: !include schemas/jobInfos.json
errors: !include raml-util/schemas/errors.schema
traits:
orderable: !include ./raml-util/traits/orderable.raml
pageable: !include ./raml-util/traits/pageable.raml
searchable: !include ./raml-util/traits/searchable.raml
language: !include ./raml-util/traits/language.raml
validate: !include ./raml-util/traits/validation.raml
resourceTypes:
collection: !include ./raml-util/rtypes/collection.raml
collection-item: !include ./raml-util/rtypes/item-collection.raml
/erm-usage-harvester:
/start:
get:
description: Start harvesting for tenant - process all defined usage data providers
responses:
200:
description: Start for tenant succeeded
body:
application/json:
400:
description: Bad request
body:
text/plain:
500:
description: Start for tenant failed
body:
application/json:
text/plain:
/{id}:
get:
description: Start harvesting for tenant - process a specific usage data provider only
responses:
200:
description: Start for provider succeeded
body:
application/json:
400:
description: Bad request
body:
text/plain:
500:
description: Start for provider failed
body:
application/json:
text/plain:
/impl:
get:
description: Get available service implementations
queryParameters:
aggregator:
description: Filter by 'isAggregator' property (true or false)
type: string
required: false
responses:
200:
description: List of available service implementations
body:
application/json:
400:
description: Bad request
body:
text/plain:
500:
description: Internal server error
body:
text/plain:
/jobs:
get:
description: Get harvesting jobs
is: [ searchable: { description: "CQL string", example: "type==provider" }, pageable ]
queryParameters:
timestamp:
description: Only return jobs created at or before this timestamp
example: 1641020400000
type: number
required: false
providerId:
description: Only return jobs with this providerId
example: "6697f576-78d4-4712-ae18-2612ccdcd66d"
type: string
required: false
responses:
200:
description: List of harvesting jobs
body:
application/json:
type: jobInfos
400:
description: Bad request
body:
text/plain:
500:
description: Internal server error
body:
text/plain:
/purgefinished:
post:
description: Purge finished harvesting jobs
queryParameters:
timestamp:
description: Only purge jobs having a timestamp less than or equal to this value
example: 1641020400000
type: number
responses:
204:
description: Success
400:
description: Bad request
body:
text/plain:
500:
description: Internal server error
body:
text/plain:
/purgestale:
post:
description: Purge stale jobs
responses:
204:
description: Success
400:
description: Bad request
body:
text/plain:
500:
description: Internal server error
body:
text/plain:
/cleanup:
post:
description: Perform cleanup tasks on harvesting jobs
responses:
204:
description: Success
400:
description: Bad request
body:
text/plain:
500:
description: Internal server error
body:
text/plain: