Commit Graph

25 Commits

Author SHA1 Message Date
Zaiming (Stone) Shi 46877e979b chore: update copyright-year 2024-02-23 08:21:06 +01:00
Zaiming (Stone) Shi f57f617ba3 refactor(schema): ensure roots/0 and namespace/0 for all schema modules 2024-02-16 11:35:32 +01:00
Kjell Winblad 3ffbb7decf fix: HTTP API /api/v5/publish schema
The schema for the /api/v5/publish HTTP API endpoint was incorrect.
For 400 (Bad Request) error it cannot return a list but the incorrect
schema declared that the response could include a list.

Fixes:
https://emqx.atlassian.net/browse/EMQX-10837
https://github.com/emqx/emqx/issues/11488
2023-08-22 15:21:20 +02:00
Stefan Strigler 678400bc0a fix: add summary to schemas where description has html 2023-03-23 16:40:43 +01:00
Erik Timan fb97096405 fix(mgmt_api): deprecate clientid field instead of removing it 2023-01-10 16:48:04 +01:00
Erik Timan 3319a8d28e fix(mgmt_api): remove possibility to set clientid in /publish API
To avoid security confusion, we remove the possibility to specify the
client ID in the request body for /publish and /publish/bulk.
2023-01-09 09:30:34 +01:00
Zaiming (Stone) Shi dbc10c2eed chore: update copyright year 2023 2023-01-02 09:22:27 +01:00
Stefan Strigler afcb33aa20 feat: support publish with properties 2022-11-23 17:04:35 +01:00
Zaiming (Stone) Shi d1332b72e7 feat(api/publish): return detailed publish results
Prior to this change, the publish API returns 200 in most of
the cases.
This change provides more insights to the publish result.

For single message publish endpoint (`publish/`):

HTTP error codes are:

200: Everything is OK
202: No subscriber for the topic
400: When mesage is invalid message.
     e.g. bad topic name or QoS out of range.
503: Failed to dispatch the message. e.g. during EMQX restart.

The response body is a JSON object with two fields
`message_id`, and `publish_result`.
The `message_id` is a globally unique ID for tracing.
`publish_result` is `"OK"` when the message is delivered
to at least one subscriber.
Otherwise `"no_subscriber"`.
`publish_result` may also be some other informative
message to hint the failure result, the content of which
may change in the future.

For `publish/bulk` endpoint:

200: When all message in the bulk are published OK
202: If at least one message in the bulk had `"no_subscriber"` result
400: When mesage is invalid message. e.g. bad topic name or
     QoS out of range.
503: When there is at least one message failed at dispatch.

The reply body is a list of JSON objects having the same layout
as for hte `publish` endpoint.
2022-10-20 20:03:27 +02:00
Ivan Dyachkov f2db35db39 chore: delete unused function clause 2022-10-14 10:46:11 +02:00
Zaiming (Stone) Shi c2f176c1e7 fix(api): publish API only returns message ID 2022-10-14 09:49:46 +02:00
zhongwencool cc63479e69 chore: update apps/emqx_management/src/emqx_mgmt_api_publish.erl
Co-authored-by: zhouzb <zhouzb@emqx.io>
2022-07-25 16:55:33 +08:00
zhongwencool 087a098d64 chore: update apps/emqx_management/src/emqx_mgmt_api_publish.erl
Co-authored-by: zhouzb <zhouzb@emqx.io>
2022-07-25 16:55:25 +08:00
Zhongwen Deng dd59c850e0 chore: make sure swagger's tags always titlecase 2022-07-25 16:09:17 +08:00
DDDHuang 6c9cad366b fix(api): client sub & unsub batch 2022-07-01 15:21:11 +08:00
DDDHuang 4f95f097f7 fix: publish api rename param from - clientid 2022-07-01 09:19:19 +08:00
Zhongwen Deng aa7807baeb chore: reformat mgmt code. 2022-04-19 14:02:39 +08:00
DDDHuang 7569aaff42 fix: publish api support hocon & params check 2022-04-07 15:23:04 +08:00
Zaiming (Stone) Shi 63167cea70 chore: update copyright 2022-01-05 20:55:00 +01:00
Turtle e0c05242a7 refactor(minirest-callback): refactor minirest callback function 2021-08-24 18:19:21 +08:00
Turtle 47378e0e96 refactor(schema-utils): refactor mgmt swagger schema utils 2021-08-24 10:53:06 +08:00
DDDHuang 8e2b1aed32 fix: publish api params 2021-08-02 17:20:15 +08:00
DDDHuang 2b12fa1c05 chore: api code format; fix: atom refname; update minirest version 2021-07-23 16:40:19 +08:00
DDDHuang 92ae5663a6 feat: update to openapi 3.0.0 2021-07-16 23:26:56 +08:00
DDDHuang 1bfa6ead42 refactor: publish api; add: batch schema util function 2021-07-15 19:25:26 +08:00