Software /
code /
prosody-modules
Comparison
mod_rest/README.markdown @ 5179:5be04d1b16fb
mod_rest: Remove confusing oauth2 tokens from examples
Users were somehow confused into thinking that you should use the JID as
username, rather than the username.
author | Kim Alvefur <zash@zash.se> |
---|---|
date | Tue, 28 Feb 2023 18:15:20 +0100 |
parent | 5159:51f7d72a56c2 |
child | 5931:d194d1012fd3 |
comparison
equal
deleted
inserted
replaced
5178:556bf57d6417 | 5179:5be04d1b16fb |
---|---|
36 modules_enabled = {"http_oauth2"} | 36 modules_enabled = {"http_oauth2"} |
37 ``` | 37 ``` |
38 | 38 |
39 ## OAuth2 | 39 ## OAuth2 |
40 | 40 |
41 [mod_http_oauth2] can be used to grant bearer tokens which are | 41 [mod_http_oauth2] can be used to grant bearer tokens which are accepted |
42 accepted by mod_rest. Tokens can be passed to `curl` like | 42 by mod_rest. Tokens can be passed to `curl` like `--oauth2-bearer |
43 `--oauth2-bearer dmVyeSBzZWNyZXQgdG9rZW4K` as in some examples below. | 43 dmVyeSBzZWNyZXQgdG9rZW4K` instead of using `--user`. |
44 | 44 |
45 ## Sending stanzas | 45 ## Sending stanzas |
46 | 46 |
47 The API endpoint becomes available at the path `/rest`, so the full URL | 47 The API endpoint becomes available at the path `/rest`, so the full URL |
48 will be something like `https://your-prosody.example:5281/rest`. | 48 will be something like `https://your-prosody.example:5281/rest`. |
60 | 60 |
61 or a JSON payload: | 61 or a JSON payload: |
62 | 62 |
63 ``` {.sh} | 63 ``` {.sh} |
64 curl https://prosody.example:5281/rest \ | 64 curl https://prosody.example:5281/rest \ |
65 --oauth2-bearer dmVyeSBzZWNyZXQgdG9rZW4K \ | 65 --user username \ |
66 -H 'Content-Type: application/json' \ | 66 -H 'Content-Type: application/json' \ |
67 --data-binary '{ | 67 --data-binary '{ |
68 "body" : "Hello!", | 68 "body" : "Hello!", |
69 "kind" : "message", | 69 "kind" : "message", |
70 "to" : "user@example.org", | 70 "to" : "user@example.org", |
79 New alternative format with the parameters `kind`, `type`, and `to` | 79 New alternative format with the parameters `kind`, `type`, and `to` |
80 embedded in the path: | 80 embedded in the path: |
81 | 81 |
82 ``` | 82 ``` |
83 curl https://prosody.example:5281/rest/message/chat/john@example.com \ | 83 curl https://prosody.example:5281/rest/message/chat/john@example.com \ |
84 --oauth2-bearer dmVyeSBzZWNyZXQgdG9rZW4K \ | 84 --user username \ |
85 -H 'Content-Type: text/plain' \ | 85 -H 'Content-Type: text/plain' \ |
86 --data-binary 'Hello John!' | 86 --data-binary 'Hello John!' |
87 ``` | 87 ``` |
88 | 88 |
89 ### Replies | 89 ### Replies |
91 A POST containing an `<iq>` stanza automatically wait for the reply, | 91 A POST containing an `<iq>` stanza automatically wait for the reply, |
92 long-polling style. | 92 long-polling style. |
93 | 93 |
94 ``` {.sh} | 94 ``` {.sh} |
95 curl https://prosody.example:5281/rest \ | 95 curl https://prosody.example:5281/rest \ |
96 --oauth2-bearer dmVyeSBzZWNyZXQgdG9rZW4K \ | 96 --user username \ |
97 -H 'Content-Type: application/xmpp+xml' \ | 97 -H 'Content-Type: application/xmpp+xml' \ |
98 --data-binary '<iq type="get" to="example.net"> | 98 --data-binary '<iq type="get" to="example.net"> |
99 <ping xmlns="urn:xmpp:ping"/> | 99 <ping xmlns="urn:xmpp:ping"/> |
100 </iq>' | 100 </iq>' |
101 ``` | 101 ``` |
109 | 109 |
110 A subset of IQ stanzas can be sent as simple GET requests | 110 A subset of IQ stanzas can be sent as simple GET requests |
111 | 111 |
112 ``` | 112 ``` |
113 curl https://prosody.example:5281/rest/version/example.com \ | 113 curl https://prosody.example:5281/rest/version/example.com \ |
114 --oauth2-bearer dmVyeSBzZWNyZXQgdG9rZW4K \ | 114 --user username \ |
115 -H 'Accept: application/json' | 115 -H 'Accept: application/json' |
116 ``` | 116 ``` |
117 | 117 |
118 The supported queries are | 118 The supported queries are |
119 | 119 |