yats.git

ref: 74176a18e31147a9af47cd6d51e6b5e31a1aaedb

openapi/swagger.yaml


  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
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
components:
    schemas:
        model.EventModel:
            properties:
                etime:
                    type: integer
                id_client:
                    type: string
                name:
                    type: string
            type: object
        model.EventSearchRequest:
            properties:
                from:
                    type: integer
                id_client:
                    type: string
                to:
                    type: integer
            type: object
        model.MetricModel:
            properties:
                id_client:
                    type: string
                mtime:
                    type: integer
                name:
                    type: string
                value:
                    type: string
            type: object
        model.MetricSearchRequest:
            properties:
                from:
                    type: integer
                id_client:
                    type: string
                name:
                    type: string
                to:
                    type: integer
            type: object
externalDocs:
    description: OpenAPI
    url: https://swagger.io/resources/open-api/
info:
    contact:
        name: API Support
        url: https://
    description: Yet Another Time Serie
    license:
        name: Affero GPL
        url: https://www.gnu.org/licenses/agpl-3.0.en.html#license-text
    termsOfService: https://kevwe.com/
    title: Yats Server
    version: "1.0"
openapi: 3.0.3
paths:
    /event:
        post:
            description: store events
            requestBody:
                content:
                    application/json:
                        schema:
                            $ref: '#/components/schemas/model.EventModel'
                description: Event body data
                required: true
                x-originalParamName: event1
            responses:
                "202":
                    content:
                        application/json:
                            schema:
                                type: string
                    description: Accepted
            summary: write event to db
            tags:
                - Events
    /event/get:
        post:
            description: retrieve events in the specified time window
            requestBody:
                content:
                    application/json:
                        schema:
                            $ref: '#/components/schemas/model.EventSearchRequest'
                description: Event query filters
                required: true
                x-originalParamName: event2
            responses:
                "200":
                    content:
                        application/json:
                            schema:
                                type: string
                    description: OK
            summary: Get the events From ... and To when present
            tags:
                - Events
    /event/get/{from}:
        get:
            description: retrieve events  from timestamp {from}
            parameters:
                - description: Starting from timestamp :from
                  in: path
                  name: from
                  required: true
                  schema:
                    type: string
            requestBody:
                content:
                    application/json:
                        schema:
                            $ref: '#/components/schemas/model.EventSearchRequest'
                description: Event query filters
                required: true
                x-originalParamName: event2
            responses:
                "200":
                    content:
                        application/json:
                            schema:
                                type: string
                    description: OK
            summary: Get the events from timestamp {from}
            tags:
                - Events
    /metric:
        post:
            description: store metric
            requestBody:
                content:
                    application/json:
                        schema:
                            $ref: '#/components/schemas/model.MetricModel'
                description: Metric request body
                required: true
                x-originalParamName: metric2
            responses:
                "202":
                    content:
                        application/json:
                            schema:
                                type: string
                    description: Accepted
            summary: write metric to db
            tags:
                - Metrics
    /metric/get:
        post:
            description: retrieve metric in the specified time window
            requestBody:
                content:
                    application/json:
                        schema:
                            $ref: '#/components/schemas/model.MetricSearchRequest'
                description: Metric query filters
                required: true
                x-originalParamName: metric1
            responses:
                "200":
                    content:
                        application/json:
                            schema:
                                type: string
                    description: OK
            summary: Get the metrics From ... and To when present
            tags:
                - Metrics
    /metric/get/{name}/{from}:
        get:
            description: retrieve metric in the specified time window
            parameters:
                - description: Metric Name :name
                  in: path
                  name: name
                  required: true
                  schema:
                    type: string
                - description: Starting from epoch :from
                  in: path
                  name: from
                  required: true
                  schema:
                    type: string
            responses:
                "200":
                    content:
                        application/json:
                            schema:
                                type: string
                    description: OK
            summary: Get the spcific metric {name} starting from the epoch {from}
            tags:
                - Metrics