Software /
code /
prosody-modules
Annotate
mod_rest/openapi.yaml @ 4492:9d576af18611
mod_rest/openapi: Remove 202 response for ping (doesn't happen)
Could return an error, but that's a TODO for now
author | Kim Alvefur <zash@zash.se> |
---|---|
date | Thu, 04 Mar 2021 00:43:26 +0100 |
parent | 4487:f877a4d3770b |
child | 4493:89571a20196f |
rev | line source |
---|---|
4474
949db0714b5f
mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
1 --- |
949db0714b5f
mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
2 openapi: 3.0.1 |
949db0714b5f
mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
3 info: |
949db0714b5f
mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
4 title: mod_rest API |
949db0714b5f
mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
5 description: | |
949db0714b5f
mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
6 API for sending and receiving stanzas, in a REST-ish fashion or by |
949db0714b5f
mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
7 responding to webhooks. Multiple formats supported, including native XML |
949db0714b5f
mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
8 and a simplified JSON mapping. |
949db0714b5f
mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
9 version: 0.1.0 |
949db0714b5f
mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
10 license: |
949db0714b5f
mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
11 name: MIT |
949db0714b5f
mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
12 paths: |
949db0714b5f
mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
13 /rest: |
949db0714b5f
mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
14 post: |
949db0714b5f
mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
15 requestBody: |
4487
f877a4d3770b
mod_rest/openapi: Deduplicate things using references
Kim Alvefur <zash@zash.se>
parents:
4486
diff
changeset
|
16 $ref: '#/components/requestBodies/common' |
4474
949db0714b5f
mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
17 security: |
949db0714b5f
mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
18 - basic: [] |
949db0714b5f
mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
19 - token: [] |
949db0714b5f
mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
20 summary: Send stanzas and receive responses. Webhooks work the same way. |
949db0714b5f
mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
21 responses: |
949db0714b5f
mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
22 200: |
4487
f877a4d3770b
mod_rest/openapi: Deduplicate things using references
Kim Alvefur <zash@zash.se>
parents:
4486
diff
changeset
|
23 $ref: '#/components/responses/success' |
4474
949db0714b5f
mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
24 202: |
4487
f877a4d3770b
mod_rest/openapi: Deduplicate things using references
Kim Alvefur <zash@zash.se>
parents:
4486
diff
changeset
|
25 $ref: '#/components/responses/sent' |
f877a4d3770b
mod_rest/openapi: Deduplicate things using references
Kim Alvefur <zash@zash.se>
parents:
4486
diff
changeset
|
26 /rest/{kind}/{type}/{to}: |
f877a4d3770b
mod_rest/openapi: Deduplicate things using references
Kim Alvefur <zash@zash.se>
parents:
4486
diff
changeset
|
27 post: |
f877a4d3770b
mod_rest/openapi: Deduplicate things using references
Kim Alvefur <zash@zash.se>
parents:
4486
diff
changeset
|
28 security: |
f877a4d3770b
mod_rest/openapi: Deduplicate things using references
Kim Alvefur <zash@zash.se>
parents:
4486
diff
changeset
|
29 - basic: [] |
f877a4d3770b
mod_rest/openapi: Deduplicate things using references
Kim Alvefur <zash@zash.se>
parents:
4486
diff
changeset
|
30 - token: [] |
f877a4d3770b
mod_rest/openapi: Deduplicate things using references
Kim Alvefur <zash@zash.se>
parents:
4486
diff
changeset
|
31 summary: Even more RESTful mapping with certain components in the path. |
f877a4d3770b
mod_rest/openapi: Deduplicate things using references
Kim Alvefur <zash@zash.se>
parents:
4486
diff
changeset
|
32 parameters: |
f877a4d3770b
mod_rest/openapi: Deduplicate things using references
Kim Alvefur <zash@zash.se>
parents:
4486
diff
changeset
|
33 - $ref: '#/components/parameters/kind' |
f877a4d3770b
mod_rest/openapi: Deduplicate things using references
Kim Alvefur <zash@zash.se>
parents:
4486
diff
changeset
|
34 - $ref: '#/components/parameters/type' |
f877a4d3770b
mod_rest/openapi: Deduplicate things using references
Kim Alvefur <zash@zash.se>
parents:
4486
diff
changeset
|
35 - $ref: '#/components/parameters/to' |
f877a4d3770b
mod_rest/openapi: Deduplicate things using references
Kim Alvefur <zash@zash.se>
parents:
4486
diff
changeset
|
36 responses: |
f877a4d3770b
mod_rest/openapi: Deduplicate things using references
Kim Alvefur <zash@zash.se>
parents:
4486
diff
changeset
|
37 200: |
f877a4d3770b
mod_rest/openapi: Deduplicate things using references
Kim Alvefur <zash@zash.se>
parents:
4486
diff
changeset
|
38 $ref: '#/components/responses/success' |
4478
7ab0c423688a
mod_rest: Support GET for certain IQ queries
Kim Alvefur <zash@zash.se>
parents:
4477
diff
changeset
|
39 /rest/ping/{to}: |
7ab0c423688a
mod_rest: Support GET for certain IQ queries
Kim Alvefur <zash@zash.se>
parents:
4477
diff
changeset
|
40 get: |
7ab0c423688a
mod_rest: Support GET for certain IQ queries
Kim Alvefur <zash@zash.se>
parents:
4477
diff
changeset
|
41 security: |
7ab0c423688a
mod_rest: Support GET for certain IQ queries
Kim Alvefur <zash@zash.se>
parents:
4477
diff
changeset
|
42 - basic: [] |
7ab0c423688a
mod_rest: Support GET for certain IQ queries
Kim Alvefur <zash@zash.se>
parents:
4477
diff
changeset
|
43 - token: [] |
7ab0c423688a
mod_rest: Support GET for certain IQ queries
Kim Alvefur <zash@zash.se>
parents:
4477
diff
changeset
|
44 summary: Ping a local or remote server or other entity |
7ab0c423688a
mod_rest: Support GET for certain IQ queries
Kim Alvefur <zash@zash.se>
parents:
4477
diff
changeset
|
45 responses: |
7ab0c423688a
mod_rest: Support GET for certain IQ queries
Kim Alvefur <zash@zash.se>
parents:
4477
diff
changeset
|
46 200: |
4487
f877a4d3770b
mod_rest/openapi: Deduplicate things using references
Kim Alvefur <zash@zash.se>
parents:
4486
diff
changeset
|
47 $ref: '#/components/responses/success' |
4478
7ab0c423688a
mod_rest: Support GET for certain IQ queries
Kim Alvefur <zash@zash.se>
parents:
4477
diff
changeset
|
48 parameters: |
4487
f877a4d3770b
mod_rest/openapi: Deduplicate things using references
Kim Alvefur <zash@zash.se>
parents:
4486
diff
changeset
|
49 - $ref: '#/components/parameters/to' |
4478
7ab0c423688a
mod_rest: Support GET for certain IQ queries
Kim Alvefur <zash@zash.se>
parents:
4477
diff
changeset
|
50 /rest/disco/{to}: |
7ab0c423688a
mod_rest: Support GET for certain IQ queries
Kim Alvefur <zash@zash.se>
parents:
4477
diff
changeset
|
51 get: |
7ab0c423688a
mod_rest: Support GET for certain IQ queries
Kim Alvefur <zash@zash.se>
parents:
4477
diff
changeset
|
52 security: |
7ab0c423688a
mod_rest: Support GET for certain IQ queries
Kim Alvefur <zash@zash.se>
parents:
4477
diff
changeset
|
53 - basic: [] |
7ab0c423688a
mod_rest: Support GET for certain IQ queries
Kim Alvefur <zash@zash.se>
parents:
4477
diff
changeset
|
54 - token: [] |
7ab0c423688a
mod_rest: Support GET for certain IQ queries
Kim Alvefur <zash@zash.se>
parents:
4477
diff
changeset
|
55 summary: Query a remote entity for supported features |
7ab0c423688a
mod_rest: Support GET for certain IQ queries
Kim Alvefur <zash@zash.se>
parents:
4477
diff
changeset
|
56 responses: |
7ab0c423688a
mod_rest: Support GET for certain IQ queries
Kim Alvefur <zash@zash.se>
parents:
4477
diff
changeset
|
57 200: |
4487
f877a4d3770b
mod_rest/openapi: Deduplicate things using references
Kim Alvefur <zash@zash.se>
parents:
4486
diff
changeset
|
58 $ref: '#/components/responses/success' |
4478
7ab0c423688a
mod_rest: Support GET for certain IQ queries
Kim Alvefur <zash@zash.se>
parents:
4477
diff
changeset
|
59 parameters: |
4487
f877a4d3770b
mod_rest/openapi: Deduplicate things using references
Kim Alvefur <zash@zash.se>
parents:
4486
diff
changeset
|
60 - $ref: '#/components/parameters/to' |
4478
7ab0c423688a
mod_rest: Support GET for certain IQ queries
Kim Alvefur <zash@zash.se>
parents:
4477
diff
changeset
|
61 /rest/items/{to}: |
7ab0c423688a
mod_rest: Support GET for certain IQ queries
Kim Alvefur <zash@zash.se>
parents:
4477
diff
changeset
|
62 get: |
7ab0c423688a
mod_rest: Support GET for certain IQ queries
Kim Alvefur <zash@zash.se>
parents:
4477
diff
changeset
|
63 security: |
7ab0c423688a
mod_rest: Support GET for certain IQ queries
Kim Alvefur <zash@zash.se>
parents:
4477
diff
changeset
|
64 - basic: [] |
7ab0c423688a
mod_rest: Support GET for certain IQ queries
Kim Alvefur <zash@zash.se>
parents:
4477
diff
changeset
|
65 - token: [] |
7ab0c423688a
mod_rest: Support GET for certain IQ queries
Kim Alvefur <zash@zash.se>
parents:
4477
diff
changeset
|
66 summary: Query an entity for related services, chat rooms or other items |
7ab0c423688a
mod_rest: Support GET for certain IQ queries
Kim Alvefur <zash@zash.se>
parents:
4477
diff
changeset
|
67 responses: |
7ab0c423688a
mod_rest: Support GET for certain IQ queries
Kim Alvefur <zash@zash.se>
parents:
4477
diff
changeset
|
68 200: |
4487
f877a4d3770b
mod_rest/openapi: Deduplicate things using references
Kim Alvefur <zash@zash.se>
parents:
4486
diff
changeset
|
69 $ref: '#/components/responses/success' |
4478
7ab0c423688a
mod_rest: Support GET for certain IQ queries
Kim Alvefur <zash@zash.se>
parents:
4477
diff
changeset
|
70 parameters: |
4487
f877a4d3770b
mod_rest/openapi: Deduplicate things using references
Kim Alvefur <zash@zash.se>
parents:
4486
diff
changeset
|
71 - $ref: '#/components/parameters/to' |
4478
7ab0c423688a
mod_rest: Support GET for certain IQ queries
Kim Alvefur <zash@zash.se>
parents:
4477
diff
changeset
|
72 /rest/version/{to}: |
7ab0c423688a
mod_rest: Support GET for certain IQ queries
Kim Alvefur <zash@zash.se>
parents:
4477
diff
changeset
|
73 get: |
7ab0c423688a
mod_rest: Support GET for certain IQ queries
Kim Alvefur <zash@zash.se>
parents:
4477
diff
changeset
|
74 security: |
7ab0c423688a
mod_rest: Support GET for certain IQ queries
Kim Alvefur <zash@zash.se>
parents:
4477
diff
changeset
|
75 - basic: [] |
7ab0c423688a
mod_rest: Support GET for certain IQ queries
Kim Alvefur <zash@zash.se>
parents:
4477
diff
changeset
|
76 - token: [] |
4487
f877a4d3770b
mod_rest/openapi: Deduplicate things using references
Kim Alvefur <zash@zash.se>
parents:
4486
diff
changeset
|
77 summary: Ask what software version is used. |
4478
7ab0c423688a
mod_rest: Support GET for certain IQ queries
Kim Alvefur <zash@zash.se>
parents:
4477
diff
changeset
|
78 responses: |
7ab0c423688a
mod_rest: Support GET for certain IQ queries
Kim Alvefur <zash@zash.se>
parents:
4477
diff
changeset
|
79 200: |
4487
f877a4d3770b
mod_rest/openapi: Deduplicate things using references
Kim Alvefur <zash@zash.se>
parents:
4486
diff
changeset
|
80 $ref: '#/components/responses/success' |
4478
7ab0c423688a
mod_rest: Support GET for certain IQ queries
Kim Alvefur <zash@zash.se>
parents:
4477
diff
changeset
|
81 parameters: |
4487
f877a4d3770b
mod_rest/openapi: Deduplicate things using references
Kim Alvefur <zash@zash.se>
parents:
4486
diff
changeset
|
82 - $ref: '#/components/parameters/to' |
4474
949db0714b5f
mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
83 components: |
949db0714b5f
mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
84 schemas: |
949db0714b5f
mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
85 stanza: |
949db0714b5f
mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
86 properties: |
949db0714b5f
mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
87 delay: |
4476 | 88 $ref: '#/components/schemas/delay' |
4474
949db0714b5f
mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
89 state: |
4476 | 90 $ref: '#/components/schemas/state' |
91 type: | |
92 $ref: '#/components/schemas/type' | |
4474
949db0714b5f
mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
93 status: |
4476 | 94 $ref: '#/components/schemas/status' |
4474
949db0714b5f
mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
95 id: |
4476 | 96 $ref: '#/components/schemas/id' |
4474
949db0714b5f
mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
97 replace: |
4476 | 98 $ref: '#/components/schemas/replace' |
4474
949db0714b5f
mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
99 from: |
4476 | 100 $ref: '#/components/schemas/from' |
4474
949db0714b5f
mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
101 body: |
4476 | 102 $ref: '#/components/schemas/body' |
103 kind: | |
104 $ref: '#/components/schemas/kind' | |
4474
949db0714b5f
mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
105 show: |
4476 | 106 $ref: '#/components/schemas/show' |
4474
949db0714b5f
mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
107 stats: |
4476 | 108 $ref: '#/components/schemas/stats' |
4474
949db0714b5f
mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
109 priority: |
4476 | 110 $ref: '#/components/schemas/priority' |
111 nick: | |
112 $ref: '#/components/schemas/nick' | |
4474
949db0714b5f
mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
113 to: |
4476 | 114 $ref: '#/components/schemas/to' |
115 ping: | |
116 $ref: '#/components/schemas/ping' | |
117 subject: | |
118 $ref: '#/components/schemas/subject' | |
4474
949db0714b5f
mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
119 lang: |
4476 | 120 $ref: '#/components/schemas/lang' |
4474
949db0714b5f
mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
121 join: |
4476 | 122 $ref: '#/components/schemas/join' |
123 html: | |
124 $ref: '#/components/schemas/html' | |
4474
949db0714b5f
mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
125 dataform: |
4476 | 126 $ref: '#/components/schemas/dataform' |
4474
949db0714b5f
mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
127 version: |
4476 | 128 $ref: '#/components/schemas/version' |
4474
949db0714b5f
mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
129 payload: |
4476 | 130 $ref: '#/components/schemas/payload' |
4474
949db0714b5f
mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
131 disco: |
4476 | 132 $ref: '#/components/schemas/disco' |
4474
949db0714b5f
mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
133 oob_url: |
4476 | 134 $ref: '#/components/schemas/oob_url' |
135 items: | |
136 $ref: '#/components/schemas/items' | |
137 formdata: | |
138 $ref: '#/components/schemas/formdata' | |
139 thread: | |
140 $ref: '#/components/schemas/thread' | |
141 command: | |
142 $ref: '#/components/schemas/command' | |
4479
356b5ad521a5
mod_rest: Add schema for errors
Kim Alvefur <zash@zash.se>
parents:
4478
diff
changeset
|
143 error: |
356b5ad521a5
mod_rest: Add schema for errors
Kim Alvefur <zash@zash.se>
parents:
4478
diff
changeset
|
144 $ref: '#/components/schemas/error' |
4474
949db0714b5f
mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
145 type: object |
949db0714b5f
mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
146 example: |
949db0714b5f
mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
147 body: Hello |
949db0714b5f
mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
148 type: chat |
949db0714b5f
mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
149 kind: message |
4476 | 150 to: alice@example.com |
4474
949db0714b5f
mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
151 state: active |
4476 | 152 delay: |
153 type: string | |
154 description: Timestamp of when a stanza was delayed, in ISO 8601 / XEP-0082 | |
155 format. | |
156 state: | |
157 enum: | |
158 - active | |
159 - inactive | |
160 - gone | |
161 - composing | |
162 - paused | |
163 description: Chat state notifications, e.g. "is typing..." | |
164 type: string | |
165 example: composing | |
166 thread: | |
167 type: string | |
168 description: Message thread identifier | |
169 status: | |
170 type: string | |
171 description: Textual status message. | |
172 id: | |
173 type: string | |
174 description: Reasonably unique id. mod_rest generates one if left out. | |
175 replace: | |
176 type: string | |
177 description: ID of message being replaced (e.g. for corrections) | |
178 from: | |
179 description: the sender | |
180 type: string | |
181 example: bob@localhost.example | |
182 body: | |
183 description: Human-readable chat message | |
184 type: string | |
185 example: Hello, World! | |
186 command: | |
187 oneOf: | |
188 - type: string | |
189 - type: object | |
190 properties: | |
191 data: | |
4486
4f41678ba00d
mod_rest/openapi: Fix dataform references
Kim Alvefur <zash@zash.se>
parents:
4479
diff
changeset
|
192 $ref: '#/components/schemas/formdata' |
4476 | 193 action: |
194 type: string | |
195 note: | |
196 type: object | |
197 properties: | |
198 text: | |
199 type: string | |
200 type: | |
201 type: string | |
202 enum: | |
203 - info | |
204 - warn | |
205 - error | |
206 form: | |
4486
4f41678ba00d
mod_rest/openapi: Fix dataform references
Kim Alvefur <zash@zash.se>
parents:
4479
diff
changeset
|
207 $ref: '#/components/schemas/dataform' |
4476 | 208 sessionid: |
209 type: string | |
210 status: | |
211 type: string | |
212 node: | |
213 type: string | |
214 actions: | |
215 type: object | |
216 properties: | |
217 complete: | |
218 type: boolean | |
219 prev: | |
220 type: boolean | |
221 next: | |
222 type: boolean | |
223 execute: | |
224 type: string | |
225 description: Ad-hoc commands. | |
226 show: | |
227 description: indicator of availability, ie away or not | |
228 type: string | |
229 enum: | |
230 - away | |
231 - chat | |
232 - dnd | |
233 - xa | |
234 stats: | |
235 description: Statistics | |
236 type: array | |
237 items: | |
238 type: object | |
239 properties: | |
240 name: | |
241 type: string | |
242 unit: | |
243 type: string | |
244 value: | |
245 type: string | |
246 priority: | |
247 type: string | |
248 description: presence priority | |
249 kind: | |
250 description: Which kind of stanza | |
251 type: string | |
252 enum: | |
253 - message | |
254 - presence | |
255 - iq | |
256 to: | |
257 description: recipient | |
258 type: string | |
259 example: alice@example.com | |
260 type: | |
261 description: Stanza type | |
262 type: string | |
263 enum: | |
264 - chat | |
265 - normal | |
266 - headline | |
267 - groupchat | |
268 - get | |
269 - set | |
270 - result | |
271 - available | |
272 - unavailable | |
273 - subscribe | |
274 - subscribed | |
275 - unsubscribe | |
276 - unsubscribed | |
277 lang: | |
278 description: Language code | |
279 type: string | |
280 example: en | |
281 formdata: | |
282 additionalProperties: | |
283 oneOf: | |
284 - type: string | |
285 - type: array | |
286 items: | |
287 type: string | |
288 type: object | |
289 description: Simplified data form | |
290 join: | |
291 description: For joining Multi-User-Chats | |
292 type: boolean | |
293 enum: | |
294 - true | |
295 dataform: | |
296 properties: | |
297 title: | |
298 type: string | |
299 fields: | |
300 type: array | |
301 items: | |
302 type: object | |
303 properties: | |
304 value: | |
305 oneOf: | |
306 - type: string | |
307 - type: array | |
308 items: | |
309 type: string | |
310 type: | |
311 type: string | |
312 label: | |
313 type: string | |
314 desc: | |
315 type: string | |
316 required: | |
317 type: boolean | |
318 var: | |
319 type: string | |
320 type: | |
321 type: string | |
322 enum: | |
323 - form | |
324 - submit | |
325 - cancel | |
326 - result | |
327 instructions: | |
328 type: string | |
329 description: Data form | |
330 type: object | |
331 items: | |
332 oneOf: | |
333 - description: An items query or empty list | |
334 type: boolean | |
335 enum: | |
336 - true | |
337 - type: string | |
338 description: A query with a node, or an empty reply list with a node | |
339 - description: List of items referenced | |
340 type: array | |
341 items: | |
342 properties: | |
343 jid: | |
344 type: string | |
345 description: Address of item | |
346 node: | |
347 type: string | |
348 name: | |
349 type: string | |
350 description: Descriptive name | |
351 required: | |
352 - jid | |
353 type: object | |
354 description: List of references to other entities | |
355 version: | |
356 oneOf: | |
357 - type: boolean | |
358 - properties: | |
359 version: | |
360 type: string | |
361 name: | |
362 type: string | |
363 os: | |
364 type: string | |
365 required: | |
366 - name | |
367 - version | |
368 type: object | |
369 description: Software version query | |
370 payload: | |
371 required: | |
372 - datatype | |
373 - data | |
374 properties: | |
375 data: | |
376 type: object | |
377 datatype: | |
378 type: string | |
379 description: A piece of arbitrary JSON with a type field attached | |
380 type: object | |
381 disco: | |
382 oneOf: | |
383 - type: boolean | |
384 description: Either a query, or an empty response | |
385 - type: string | |
386 description: A query with a node, or an empty response with a node | |
387 - properties: | |
388 features: | |
389 description: List of URIs indicating supported features | |
390 type: array | |
391 items: | |
392 type: string | |
393 identities: | |
394 items: | |
395 type: object | |
396 properties: | |
397 name: | |
398 type: string | |
399 type: | |
400 type: string | |
401 category: | |
402 type: string | |
403 description: List of abstract identities or types that describe the | |
404 entity | |
405 type: array | |
406 example: | |
407 - name: Prosody | |
408 type: im | |
409 category: server | |
410 node: | |
411 type: string | |
412 extensions: | |
413 type: object | |
414 description: A full response | |
415 type: object | |
416 description: Discover supported features | |
417 oob_url: | |
418 type: string | |
419 description: URL of an attached media file. | |
420 html: | |
421 description: HTML version of 'body' | |
422 type: string | |
423 example: <body><p>Hello!</p></body> | |
424 subject: | |
425 description: Subject of message or group chat | |
426 type: string | |
427 example: Talking about stuff | |
428 ping: | |
429 description: A ping. | |
430 type: boolean | |
431 enum: | |
432 - true | |
433 nick: | |
434 type: string | |
435 description: Nickname of the sender | |
4479
356b5ad521a5
mod_rest: Add schema for errors
Kim Alvefur <zash@zash.se>
parents:
4478
diff
changeset
|
436 error: |
356b5ad521a5
mod_rest: Add schema for errors
Kim Alvefur <zash@zash.se>
parents:
4478
diff
changeset
|
437 type: object |
356b5ad521a5
mod_rest: Add schema for errors
Kim Alvefur <zash@zash.se>
parents:
4478
diff
changeset
|
438 description: Description of something gone wrong. See the Stanza Errors section in RFC 6120. |
356b5ad521a5
mod_rest: Add schema for errors
Kim Alvefur <zash@zash.se>
parents:
4478
diff
changeset
|
439 properties: |
356b5ad521a5
mod_rest: Add schema for errors
Kim Alvefur <zash@zash.se>
parents:
4478
diff
changeset
|
440 type: |
356b5ad521a5
mod_rest: Add schema for errors
Kim Alvefur <zash@zash.se>
parents:
4478
diff
changeset
|
441 description: General category of error |
356b5ad521a5
mod_rest: Add schema for errors
Kim Alvefur <zash@zash.se>
parents:
4478
diff
changeset
|
442 type: string |
356b5ad521a5
mod_rest: Add schema for errors
Kim Alvefur <zash@zash.se>
parents:
4478
diff
changeset
|
443 enum: |
356b5ad521a5
mod_rest: Add schema for errors
Kim Alvefur <zash@zash.se>
parents:
4478
diff
changeset
|
444 - auth |
356b5ad521a5
mod_rest: Add schema for errors
Kim Alvefur <zash@zash.se>
parents:
4478
diff
changeset
|
445 - cancel |
356b5ad521a5
mod_rest: Add schema for errors
Kim Alvefur <zash@zash.se>
parents:
4478
diff
changeset
|
446 - continue |
356b5ad521a5
mod_rest: Add schema for errors
Kim Alvefur <zash@zash.se>
parents:
4478
diff
changeset
|
447 - modify |
356b5ad521a5
mod_rest: Add schema for errors
Kim Alvefur <zash@zash.se>
parents:
4478
diff
changeset
|
448 - wait |
356b5ad521a5
mod_rest: Add schema for errors
Kim Alvefur <zash@zash.se>
parents:
4478
diff
changeset
|
449 condition: |
356b5ad521a5
mod_rest: Add schema for errors
Kim Alvefur <zash@zash.se>
parents:
4478
diff
changeset
|
450 description: Specific error condition. |
356b5ad521a5
mod_rest: Add schema for errors
Kim Alvefur <zash@zash.se>
parents:
4478
diff
changeset
|
451 type: string |
356b5ad521a5
mod_rest: Add schema for errors
Kim Alvefur <zash@zash.se>
parents:
4478
diff
changeset
|
452 # enum: [ full list available in RFC 6120 ] |
356b5ad521a5
mod_rest: Add schema for errors
Kim Alvefur <zash@zash.se>
parents:
4478
diff
changeset
|
453 code: |
356b5ad521a5
mod_rest: Add schema for errors
Kim Alvefur <zash@zash.se>
parents:
4478
diff
changeset
|
454 description: Legacy numeric error code. Similar to HTTP status codes. |
356b5ad521a5
mod_rest: Add schema for errors
Kim Alvefur <zash@zash.se>
parents:
4478
diff
changeset
|
455 type: integer |
356b5ad521a5
mod_rest: Add schema for errors
Kim Alvefur <zash@zash.se>
parents:
4478
diff
changeset
|
456 text: |
356b5ad521a5
mod_rest: Add schema for errors
Kim Alvefur <zash@zash.se>
parents:
4478
diff
changeset
|
457 description: Description of error intended for human eyes. |
356b5ad521a5
mod_rest: Add schema for errors
Kim Alvefur <zash@zash.se>
parents:
4478
diff
changeset
|
458 type: string |
4474
949db0714b5f
mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
459 securitySchemes: |
949db0714b5f
mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
460 token: |
949db0714b5f
mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
461 description: Tokens from mod_http_oauth2. |
949db0714b5f
mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
462 scheme: Bearer |
949db0714b5f
mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
463 type: http |
949db0714b5f
mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
464 basic: |
949db0714b5f
mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
465 description: Use JID as username. |
949db0714b5f
mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
466 scheme: Basic |
949db0714b5f
mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
467 type: http |
4487
f877a4d3770b
mod_rest/openapi: Deduplicate things using references
Kim Alvefur <zash@zash.se>
parents:
4486
diff
changeset
|
468 requestBodies: |
f877a4d3770b
mod_rest/openapi: Deduplicate things using references
Kim Alvefur <zash@zash.se>
parents:
4486
diff
changeset
|
469 common: |
f877a4d3770b
mod_rest/openapi: Deduplicate things using references
Kim Alvefur <zash@zash.se>
parents:
4486
diff
changeset
|
470 required: true |
f877a4d3770b
mod_rest/openapi: Deduplicate things using references
Kim Alvefur <zash@zash.se>
parents:
4486
diff
changeset
|
471 content: |
f877a4d3770b
mod_rest/openapi: Deduplicate things using references
Kim Alvefur <zash@zash.se>
parents:
4486
diff
changeset
|
472 application/x-www-form-urlencoded: |
f877a4d3770b
mod_rest/openapi: Deduplicate things using references
Kim Alvefur <zash@zash.se>
parents:
4486
diff
changeset
|
473 schema: |
f877a4d3770b
mod_rest/openapi: Deduplicate things using references
Kim Alvefur <zash@zash.se>
parents:
4486
diff
changeset
|
474 description: A subset of the JSON schema, only top level string fields. |
f877a4d3770b
mod_rest/openapi: Deduplicate things using references
Kim Alvefur <zash@zash.se>
parents:
4486
diff
changeset
|
475 application/xmpp+xml: |
f877a4d3770b
mod_rest/openapi: Deduplicate things using references
Kim Alvefur <zash@zash.se>
parents:
4486
diff
changeset
|
476 schema: |
f877a4d3770b
mod_rest/openapi: Deduplicate things using references
Kim Alvefur <zash@zash.se>
parents:
4486
diff
changeset
|
477 description: Single XMPP stanza in XML format. |
f877a4d3770b
mod_rest/openapi: Deduplicate things using references
Kim Alvefur <zash@zash.se>
parents:
4486
diff
changeset
|
478 application/json: |
f877a4d3770b
mod_rest/openapi: Deduplicate things using references
Kim Alvefur <zash@zash.se>
parents:
4486
diff
changeset
|
479 schema: |
f877a4d3770b
mod_rest/openapi: Deduplicate things using references
Kim Alvefur <zash@zash.se>
parents:
4486
diff
changeset
|
480 $ref: '#/components/schemas/stanza' |
f877a4d3770b
mod_rest/openapi: Deduplicate things using references
Kim Alvefur <zash@zash.se>
parents:
4486
diff
changeset
|
481 responses: |
f877a4d3770b
mod_rest/openapi: Deduplicate things using references
Kim Alvefur <zash@zash.se>
parents:
4486
diff
changeset
|
482 success: |
f877a4d3770b
mod_rest/openapi: Deduplicate things using references
Kim Alvefur <zash@zash.se>
parents:
4486
diff
changeset
|
483 description: The stanza was sent and returned a response. |
f877a4d3770b
mod_rest/openapi: Deduplicate things using references
Kim Alvefur <zash@zash.se>
parents:
4486
diff
changeset
|
484 content: |
f877a4d3770b
mod_rest/openapi: Deduplicate things using references
Kim Alvefur <zash@zash.se>
parents:
4486
diff
changeset
|
485 application/json: |
f877a4d3770b
mod_rest/openapi: Deduplicate things using references
Kim Alvefur <zash@zash.se>
parents:
4486
diff
changeset
|
486 schema: |
f877a4d3770b
mod_rest/openapi: Deduplicate things using references
Kim Alvefur <zash@zash.se>
parents:
4486
diff
changeset
|
487 $ref: '#/components/schemas/stanza' |
f877a4d3770b
mod_rest/openapi: Deduplicate things using references
Kim Alvefur <zash@zash.se>
parents:
4486
diff
changeset
|
488 application/xmpp+xml: |
f877a4d3770b
mod_rest/openapi: Deduplicate things using references
Kim Alvefur <zash@zash.se>
parents:
4486
diff
changeset
|
489 schema: |
f877a4d3770b
mod_rest/openapi: Deduplicate things using references
Kim Alvefur <zash@zash.se>
parents:
4486
diff
changeset
|
490 description: Single XMPP stanza in XML format. |
f877a4d3770b
mod_rest/openapi: Deduplicate things using references
Kim Alvefur <zash@zash.se>
parents:
4486
diff
changeset
|
491 example: <message><body>Hello</body></message> |
f877a4d3770b
mod_rest/openapi: Deduplicate things using references
Kim Alvefur <zash@zash.se>
parents:
4486
diff
changeset
|
492 application/x-www-form-urlencoded: |
f877a4d3770b
mod_rest/openapi: Deduplicate things using references
Kim Alvefur <zash@zash.se>
parents:
4486
diff
changeset
|
493 schema: |
f877a4d3770b
mod_rest/openapi: Deduplicate things using references
Kim Alvefur <zash@zash.se>
parents:
4486
diff
changeset
|
494 description: A subset of the JSON schema, only top level string fields. |
f877a4d3770b
mod_rest/openapi: Deduplicate things using references
Kim Alvefur <zash@zash.se>
parents:
4486
diff
changeset
|
495 example: body=Hello |
f877a4d3770b
mod_rest/openapi: Deduplicate things using references
Kim Alvefur <zash@zash.se>
parents:
4486
diff
changeset
|
496 text/plain: |
f877a4d3770b
mod_rest/openapi: Deduplicate things using references
Kim Alvefur <zash@zash.se>
parents:
4486
diff
changeset
|
497 schema: |
f877a4d3770b
mod_rest/openapi: Deduplicate things using references
Kim Alvefur <zash@zash.se>
parents:
4486
diff
changeset
|
498 description: Plain text response used as message body. |
f877a4d3770b
mod_rest/openapi: Deduplicate things using references
Kim Alvefur <zash@zash.se>
parents:
4486
diff
changeset
|
499 example: Hello |
f877a4d3770b
mod_rest/openapi: Deduplicate things using references
Kim Alvefur <zash@zash.se>
parents:
4486
diff
changeset
|
500 type: string |
f877a4d3770b
mod_rest/openapi: Deduplicate things using references
Kim Alvefur <zash@zash.se>
parents:
4486
diff
changeset
|
501 sent: |
f877a4d3770b
mod_rest/openapi: Deduplicate things using references
Kim Alvefur <zash@zash.se>
parents:
4486
diff
changeset
|
502 description: The stanza was sent without problem, and without response, |
f877a4d3770b
mod_rest/openapi: Deduplicate things using references
Kim Alvefur <zash@zash.se>
parents:
4486
diff
changeset
|
503 so an empty reply. |
f877a4d3770b
mod_rest/openapi: Deduplicate things using references
Kim Alvefur <zash@zash.se>
parents:
4486
diff
changeset
|
504 parameters: |
f877a4d3770b
mod_rest/openapi: Deduplicate things using references
Kim Alvefur <zash@zash.se>
parents:
4486
diff
changeset
|
505 to: |
f877a4d3770b
mod_rest/openapi: Deduplicate things using references
Kim Alvefur <zash@zash.se>
parents:
4486
diff
changeset
|
506 name: to |
f877a4d3770b
mod_rest/openapi: Deduplicate things using references
Kim Alvefur <zash@zash.se>
parents:
4486
diff
changeset
|
507 in: path |
f877a4d3770b
mod_rest/openapi: Deduplicate things using references
Kim Alvefur <zash@zash.se>
parents:
4486
diff
changeset
|
508 required: true |
f877a4d3770b
mod_rest/openapi: Deduplicate things using references
Kim Alvefur <zash@zash.se>
parents:
4486
diff
changeset
|
509 schema: |
f877a4d3770b
mod_rest/openapi: Deduplicate things using references
Kim Alvefur <zash@zash.se>
parents:
4486
diff
changeset
|
510 $ref: '#/components/schemas/to' |
f877a4d3770b
mod_rest/openapi: Deduplicate things using references
Kim Alvefur <zash@zash.se>
parents:
4486
diff
changeset
|
511 kind: |
f877a4d3770b
mod_rest/openapi: Deduplicate things using references
Kim Alvefur <zash@zash.se>
parents:
4486
diff
changeset
|
512 name: kind |
f877a4d3770b
mod_rest/openapi: Deduplicate things using references
Kim Alvefur <zash@zash.se>
parents:
4486
diff
changeset
|
513 in: path |
f877a4d3770b
mod_rest/openapi: Deduplicate things using references
Kim Alvefur <zash@zash.se>
parents:
4486
diff
changeset
|
514 required: true |
f877a4d3770b
mod_rest/openapi: Deduplicate things using references
Kim Alvefur <zash@zash.se>
parents:
4486
diff
changeset
|
515 schema: |
f877a4d3770b
mod_rest/openapi: Deduplicate things using references
Kim Alvefur <zash@zash.se>
parents:
4486
diff
changeset
|
516 $ref: '#/components/schemas/kind' |
f877a4d3770b
mod_rest/openapi: Deduplicate things using references
Kim Alvefur <zash@zash.se>
parents:
4486
diff
changeset
|
517 type: |
f877a4d3770b
mod_rest/openapi: Deduplicate things using references
Kim Alvefur <zash@zash.se>
parents:
4486
diff
changeset
|
518 name: type |
f877a4d3770b
mod_rest/openapi: Deduplicate things using references
Kim Alvefur <zash@zash.se>
parents:
4486
diff
changeset
|
519 in: path |
f877a4d3770b
mod_rest/openapi: Deduplicate things using references
Kim Alvefur <zash@zash.se>
parents:
4486
diff
changeset
|
520 required: true |
f877a4d3770b
mod_rest/openapi: Deduplicate things using references
Kim Alvefur <zash@zash.se>
parents:
4486
diff
changeset
|
521 schema: |
f877a4d3770b
mod_rest/openapi: Deduplicate things using references
Kim Alvefur <zash@zash.se>
parents:
4486
diff
changeset
|
522 $ref: '#/components/schemas/type' |
f877a4d3770b
mod_rest/openapi: Deduplicate things using references
Kim Alvefur <zash@zash.se>
parents:
4486
diff
changeset
|
523 |
4474
949db0714b5f
mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
524 ... |