Annotate

mod_rest/openapi.yaml @ 4477:8df6cc648963

mod_rest: Add more REST-looking way to send stanzas Example: POST /rest/message/chat/juliet@example.net { body: "Hello" } Becomes equivalent to POST /rest { kind: "message", type: "chat", to: "juliet@example.net", body: "Hello" } Sending messages as plain/text also becomes more convenient. IQ stazas are still weird, but we'll do something special for those.
author Kim Alvefur <zash@zash.se>
date Sun, 28 Feb 2021 19:25:45 +0100
parent 4476:125279f4a5b8
child 4478:7ab0c423688a
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
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:
949db0714b5f mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff changeset
16 required: true
949db0714b5f mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff changeset
17 content:
949db0714b5f mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff changeset
18 application/x-www-form-urlencoded:
949db0714b5f mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff changeset
19 schema:
949db0714b5f mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff changeset
20 description: A subset of the JSON schema, only top level string fields.
949db0714b5f mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff changeset
21 application/xmpp+xml:
949db0714b5f mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff changeset
22 schema:
949db0714b5f mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff changeset
23 description: Single XMPP stanza in XML format.
949db0714b5f mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff changeset
24 application/json:
949db0714b5f mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff changeset
25 schema:
949db0714b5f mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff changeset
26 $ref: '#/components/schemas/stanza'
949db0714b5f mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff changeset
27 security:
949db0714b5f mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff changeset
28 - basic: []
949db0714b5f mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff changeset
29 - token: []
949db0714b5f mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff changeset
30 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
31 responses:
949db0714b5f mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff changeset
32 200:
949db0714b5f mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff changeset
33 content:
949db0714b5f mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff changeset
34 text/plain:
949db0714b5f mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff changeset
35 schema:
949db0714b5f mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff changeset
36 description: Plain text response used as message body.
949db0714b5f mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff changeset
37 example: Hello
949db0714b5f mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff changeset
38 type: string
949db0714b5f mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff changeset
39 application/x-www-form-urlencoded:
949db0714b5f mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff changeset
40 schema:
949db0714b5f mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff changeset
41 description: A subset of the JSON schema, only top level string fields.
949db0714b5f mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff changeset
42 example: body=Hello
949db0714b5f mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff changeset
43 application/xmpp+xml:
949db0714b5f mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff changeset
44 schema:
949db0714b5f mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff changeset
45 description: Single XMPP stanza in XML format.
949db0714b5f mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff changeset
46 example: <message><body>Hello</body></message>
949db0714b5f mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff changeset
47 application/json:
949db0714b5f mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff changeset
48 schema:
949db0714b5f mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff changeset
49 $ref: '#/components/schemas/stanza'
949db0714b5f mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff changeset
50 description: The stanza was sent and returned a response.
949db0714b5f mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff changeset
51 401:
949db0714b5f mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff changeset
52 description: No credentials or auth token were provided.
949db0714b5f mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff changeset
53 202:
949db0714b5f mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff changeset
54 description: The stanza was sent without problem, and without response,
949db0714b5f mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff changeset
55 so an empty reply.
949db0714b5f mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff changeset
56 403:
949db0714b5f mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff changeset
57 description: Provided credentials or token not accepted.
949db0714b5f mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff changeset
58 400:
949db0714b5f mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff changeset
59 description: There was a syntax problem in the payload.
949db0714b5f mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff changeset
60 422:
949db0714b5f mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff changeset
61 description: The was a problem with the format (but not the syntax) of the
949db0714b5f mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff changeset
62 payload.
949db0714b5f mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff changeset
63 415:
949db0714b5f mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff changeset
64 description: Unsupported mediatype.
4477
8df6cc648963 mod_rest: Add more REST-looking way to send stanzas
Kim Alvefur <zash@zash.se>
parents: 4476
diff changeset
65 /rest/{kind}/{type}/{to}:
8df6cc648963 mod_rest: Add more REST-looking way to send stanzas
Kim Alvefur <zash@zash.se>
parents: 4476
diff changeset
66 post:
8df6cc648963 mod_rest: Add more REST-looking way to send stanzas
Kim Alvefur <zash@zash.se>
parents: 4476
diff changeset
67 responses:
8df6cc648963 mod_rest: Add more REST-looking way to send stanzas
Kim Alvefur <zash@zash.se>
parents: 4476
diff changeset
68 200:
8df6cc648963 mod_rest: Add more REST-looking way to send stanzas
Kim Alvefur <zash@zash.se>
parents: 4476
diff changeset
69 description: Okay
8df6cc648963 mod_rest: Add more REST-looking way to send stanzas
Kim Alvefur <zash@zash.se>
parents: 4476
diff changeset
70 security:
8df6cc648963 mod_rest: Add more REST-looking way to send stanzas
Kim Alvefur <zash@zash.se>
parents: 4476
diff changeset
71 - basic: []
8df6cc648963 mod_rest: Add more REST-looking way to send stanzas
Kim Alvefur <zash@zash.se>
parents: 4476
diff changeset
72 - token: []
8df6cc648963 mod_rest: Add more REST-looking way to send stanzas
Kim Alvefur <zash@zash.se>
parents: 4476
diff changeset
73 summary: Even more RESTful mapping.
8df6cc648963 mod_rest: Add more REST-looking way to send stanzas
Kim Alvefur <zash@zash.se>
parents: 4476
diff changeset
74 parameters:
8df6cc648963 mod_rest: Add more REST-looking way to send stanzas
Kim Alvefur <zash@zash.se>
parents: 4476
diff changeset
75 - name: kind
8df6cc648963 mod_rest: Add more REST-looking way to send stanzas
Kim Alvefur <zash@zash.se>
parents: 4476
diff changeset
76 in: path
8df6cc648963 mod_rest: Add more REST-looking way to send stanzas
Kim Alvefur <zash@zash.se>
parents: 4476
diff changeset
77 required: true
8df6cc648963 mod_rest: Add more REST-looking way to send stanzas
Kim Alvefur <zash@zash.se>
parents: 4476
diff changeset
78 schema:
8df6cc648963 mod_rest: Add more REST-looking way to send stanzas
Kim Alvefur <zash@zash.se>
parents: 4476
diff changeset
79 $ref: '#/components/schemas/kind'
8df6cc648963 mod_rest: Add more REST-looking way to send stanzas
Kim Alvefur <zash@zash.se>
parents: 4476
diff changeset
80 - name: type
8df6cc648963 mod_rest: Add more REST-looking way to send stanzas
Kim Alvefur <zash@zash.se>
parents: 4476
diff changeset
81 in: path
8df6cc648963 mod_rest: Add more REST-looking way to send stanzas
Kim Alvefur <zash@zash.se>
parents: 4476
diff changeset
82 required: true
8df6cc648963 mod_rest: Add more REST-looking way to send stanzas
Kim Alvefur <zash@zash.se>
parents: 4476
diff changeset
83 schema:
8df6cc648963 mod_rest: Add more REST-looking way to send stanzas
Kim Alvefur <zash@zash.se>
parents: 4476
diff changeset
84 $ref: '#/components/schemas/type'
8df6cc648963 mod_rest: Add more REST-looking way to send stanzas
Kim Alvefur <zash@zash.se>
parents: 4476
diff changeset
85 - name: to
8df6cc648963 mod_rest: Add more REST-looking way to send stanzas
Kim Alvefur <zash@zash.se>
parents: 4476
diff changeset
86 in: path
8df6cc648963 mod_rest: Add more REST-looking way to send stanzas
Kim Alvefur <zash@zash.se>
parents: 4476
diff changeset
87 required: true
8df6cc648963 mod_rest: Add more REST-looking way to send stanzas
Kim Alvefur <zash@zash.se>
parents: 4476
diff changeset
88 schema:
8df6cc648963 mod_rest: Add more REST-looking way to send stanzas
Kim Alvefur <zash@zash.se>
parents: 4476
diff changeset
89 $ref: '#/components/schemas/to'
4474
949db0714b5f mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff changeset
90 components:
949db0714b5f mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff changeset
91 schemas:
949db0714b5f mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff changeset
92 stanza:
949db0714b5f mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff changeset
93 properties:
949db0714b5f mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff changeset
94 delay:
4476
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
95 $ref: '#/components/schemas/delay'
4474
949db0714b5f mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff changeset
96 state:
4476
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
97 $ref: '#/components/schemas/state'
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
98 type:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
99 $ref: '#/components/schemas/type'
4474
949db0714b5f mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff changeset
100 status:
4476
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
101 $ref: '#/components/schemas/status'
4474
949db0714b5f mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff changeset
102 id:
4476
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
103 $ref: '#/components/schemas/id'
4474
949db0714b5f mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff changeset
104 replace:
4476
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
105 $ref: '#/components/schemas/replace'
4474
949db0714b5f mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff changeset
106 from:
4476
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
107 $ref: '#/components/schemas/from'
4474
949db0714b5f mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff changeset
108 body:
4476
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
109 $ref: '#/components/schemas/body'
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
110 kind:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
111 $ref: '#/components/schemas/kind'
4474
949db0714b5f mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff changeset
112 show:
4476
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
113 $ref: '#/components/schemas/show'
4474
949db0714b5f mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff changeset
114 stats:
4476
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
115 $ref: '#/components/schemas/stats'
4474
949db0714b5f mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff changeset
116 priority:
4476
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
117 $ref: '#/components/schemas/priority'
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
118 nick:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
119 $ref: '#/components/schemas/nick'
4474
949db0714b5f mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff changeset
120 to:
4476
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
121 $ref: '#/components/schemas/to'
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
122 ping:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
123 $ref: '#/components/schemas/ping'
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
124 subject:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
125 $ref: '#/components/schemas/subject'
4474
949db0714b5f mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff changeset
126 lang:
4476
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
127 $ref: '#/components/schemas/lang'
4474
949db0714b5f mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff changeset
128 join:
4476
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
129 $ref: '#/components/schemas/join'
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
130 html:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
131 $ref: '#/components/schemas/html'
4474
949db0714b5f mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff changeset
132 dataform:
4476
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
133 $ref: '#/components/schemas/dataform'
4474
949db0714b5f mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff changeset
134 version:
4476
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
135 $ref: '#/components/schemas/version'
4474
949db0714b5f mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff changeset
136 payload:
4476
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
137 $ref: '#/components/schemas/payload'
4474
949db0714b5f mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff changeset
138 disco:
4476
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
139 $ref: '#/components/schemas/disco'
4474
949db0714b5f mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff changeset
140 oob_url:
4476
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
141 $ref: '#/components/schemas/oob_url'
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
142 items:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
143 $ref: '#/components/schemas/items'
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
144 formdata:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
145 $ref: '#/components/schemas/formdata'
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
146 thread:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
147 $ref: '#/components/schemas/thread'
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
148 command:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
149 $ref: '#/components/schemas/command'
4474
949db0714b5f mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff changeset
150 type: object
949db0714b5f mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff changeset
151 example:
949db0714b5f mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff changeset
152 body: Hello
949db0714b5f mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff changeset
153 type: chat
949db0714b5f mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff changeset
154 kind: message
4476
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
155 to: alice@example.com
4474
949db0714b5f mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff changeset
156 state: active
4476
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
157 delay:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
158 type: string
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
159 description: Timestamp of when a stanza was delayed, in ISO 8601 / XEP-0082
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
160 format.
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
161 state:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
162 enum:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
163 - active
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
164 - inactive
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
165 - gone
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
166 - composing
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
167 - paused
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
168 description: Chat state notifications, e.g. "is typing..."
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
169 type: string
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
170 example: composing
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
171 thread:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
172 type: string
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
173 description: Message thread identifier
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
174 status:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
175 type: string
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
176 description: Textual status message.
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
177 id:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
178 type: string
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
179 description: Reasonably unique id. mod_rest generates one if left out.
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
180 replace:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
181 type: string
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
182 description: ID of message being replaced (e.g. for corrections)
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
183 from:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
184 description: the sender
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
185 type: string
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
186 example: bob@localhost.example
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
187 body:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
188 description: Human-readable chat message
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
189 type: string
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
190 example: Hello, World!
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
191 command:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
192 oneOf:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
193 - type: string
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
194 - type: object
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
195 properties:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
196 data:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
197 $ref: '#/components/schemas/stanza/properties/formdata'
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
198 action:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
199 type: string
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
200 note:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
201 type: object
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
202 properties:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
203 text:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
204 type: string
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
205 type:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
206 type: string
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
207 enum:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
208 - info
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
209 - warn
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
210 - error
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
211 form:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
212 $ref: '#/components/schemas/stanza/properties/dataform'
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
213 sessionid:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
214 type: string
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
215 status:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
216 type: string
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
217 node:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
218 type: string
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
219 actions:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
220 type: object
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
221 properties:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
222 complete:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
223 type: boolean
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
224 prev:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
225 type: boolean
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
226 next:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
227 type: boolean
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
228 execute:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
229 type: string
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
230 description: Ad-hoc commands.
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
231 show:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
232 description: indicator of availability, ie away or not
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
233 type: string
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
234 enum:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
235 - away
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
236 - chat
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
237 - dnd
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
238 - xa
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
239 stats:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
240 description: Statistics
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
241 type: array
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
242 items:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
243 type: object
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
244 properties:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
245 name:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
246 type: string
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
247 unit:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
248 type: string
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
249 value:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
250 type: string
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
251 priority:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
252 type: string
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
253 description: presence priority
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
254 kind:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
255 description: Which kind of stanza
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
256 type: string
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
257 enum:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
258 - message
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
259 - presence
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
260 - iq
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
261 to:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
262 description: recipient
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
263 type: string
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
264 example: alice@example.com
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
265 type:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
266 description: Stanza type
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
267 type: string
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
268 enum:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
269 - chat
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
270 - normal
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
271 - headline
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
272 - groupchat
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
273 - get
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
274 - set
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
275 - result
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
276 - available
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
277 - unavailable
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
278 - subscribe
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
279 - subscribed
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
280 - unsubscribe
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
281 - unsubscribed
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
282 lang:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
283 description: Language code
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
284 type: string
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
285 example: en
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
286 formdata:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
287 additionalProperties:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
288 oneOf:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
289 - type: string
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
290 - type: array
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
291 items:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
292 type: string
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
293 type: object
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
294 description: Simplified data form
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
295 join:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
296 description: For joining Multi-User-Chats
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
297 type: boolean
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
298 enum:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
299 - true
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
300 dataform:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
301 properties:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
302 title:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
303 type: string
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
304 fields:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
305 type: array
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
306 items:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
307 type: object
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
308 properties:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
309 value:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
310 oneOf:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
311 - type: string
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
312 - type: array
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
313 items:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
314 type: string
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
315 type:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
316 type: string
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
317 label:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
318 type: string
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
319 desc:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
320 type: string
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
321 required:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
322 type: boolean
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
323 var:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
324 type: string
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
325 type:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
326 type: string
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
327 enum:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
328 - form
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
329 - submit
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
330 - cancel
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
331 - result
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
332 instructions:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
333 type: string
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
334 description: Data form
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
335 type: object
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
336 items:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
337 oneOf:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
338 - description: An items query or empty list
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
339 type: boolean
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
340 enum:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
341 - true
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
342 - type: string
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
343 description: A query with a node, or an empty reply list with a node
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
344 - description: List of items referenced
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
345 type: array
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
346 items:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
347 properties:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
348 jid:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
349 type: string
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
350 description: Address of item
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
351 node:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
352 type: string
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
353 name:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
354 type: string
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
355 description: Descriptive name
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
356 required:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
357 - jid
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
358 type: object
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
359 description: List of references to other entities
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
360 version:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
361 oneOf:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
362 - type: boolean
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
363 - properties:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
364 version:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
365 type: string
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
366 name:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
367 type: string
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
368 os:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
369 type: string
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
370 required:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
371 - name
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
372 - version
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
373 type: object
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
374 description: Software version query
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
375 payload:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
376 required:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
377 - datatype
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
378 - data
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
379 properties:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
380 data:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
381 type: object
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
382 datatype:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
383 type: string
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
384 description: A piece of arbitrary JSON with a type field attached
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
385 type: object
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
386 disco:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
387 oneOf:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
388 - type: boolean
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
389 description: Either a query, or an empty response
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
390 - type: string
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
391 description: A query with a node, or an empty response with a node
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
392 - properties:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
393 features:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
394 description: List of URIs indicating supported features
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
395 type: array
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
396 items:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
397 type: string
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
398 identities:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
399 items:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
400 type: object
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
401 properties:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
402 name:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
403 type: string
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
404 type:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
405 type: string
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
406 category:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
407 type: string
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
408 description: List of abstract identities or types that describe the
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
409 entity
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
410 type: array
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
411 example:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
412 - name: Prosody
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
413 type: im
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
414 category: server
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
415 node:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
416 type: string
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
417 extensions:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
418 type: object
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
419 description: A full response
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
420 type: object
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
421 description: Discover supported features
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
422 oob_url:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
423 type: string
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
424 description: URL of an attached media file.
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
425 html:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
426 description: HTML version of 'body'
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
427 type: string
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
428 example: <body><p>Hello!</p></body>
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
429 subject:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
430 description: Subject of message or group chat
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
431 type: string
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
432 example: Talking about stuff
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
433 ping:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
434 description: A ping.
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
435 type: boolean
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
436 enum:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
437 - true
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
438 nick:
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
439 type: string
125279f4a5b8 mod_rest: Restructure API spec
Kim Alvefur <zash@zash.se>
parents: 4474
diff changeset
440 description: Nickname of the sender
4474
949db0714b5f mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff changeset
441 securitySchemes:
949db0714b5f mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff changeset
442 token:
949db0714b5f mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff changeset
443 description: Tokens from mod_http_oauth2.
949db0714b5f mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff changeset
444 scheme: Bearer
949db0714b5f mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff changeset
445 type: http
949db0714b5f mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff changeset
446 basic:
949db0714b5f mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff changeset
447 description: Use JID as username.
949db0714b5f mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff changeset
448 scheme: Basic
949db0714b5f mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff changeset
449 type: http
949db0714b5f mod_rest: Add an OpenAPI specification
Kim Alvefur <zash@zash.se>
parents:
diff changeset
450 ...