emqx/changes/ce/feat-12561.en.md

982 B

Implement HTTP APIs to get the list of client's inflight and mqueue messages.

To get the first chunk of data:

  • GET /clients/{clientid}/mqueue_messages?limit=100
  • GET /clients/{clientid}/inflight_messages?limit=100

Alternatively:

  • GET /clients/{clientid}/mqueue_messages?limit=100&after=none
  • GET /clients/{clientid}/inflight_messages?limit=100&after=none

To get the next chunk of data:

  • GET /clients/{clientid}/mqueue_messages?limit=100&after={last}
  • GET /clients/{clientid}/inflight_messages?limit=100&after={last}

Where {last} is a value (opaque string token) of "meta.last" field from the previous response.

If there is no more data, "last" = "end_of_data" is returned. If a subsequent request is attempted with "after=end_of_data", a "400 Bad Request" error response will be received.

Mqueue messages are ordered according to the queue (FIFO) order. Inflight messages are ordered by MQTT Packet Id, which may not represent the chronological messages order.