senderkit messages queries the message log — the durable
record of every send and its status. The CLI exposes the list endpoint with
filters and cursor pagination, paired with --json for piping into jq,
spreadsheets, or downstream alerting.
senderkit messages list
List messages newest-first. With no flags, returns a recent page across all
channels and statuses.
Options
--limit <number>
Maximum messages to return (a positive integer). The server has its own
default and maximum — see the API Reference.
--cursor <string>
Pagination cursor. Use the
nextCursor from a previous response to fetch the
next page.--channel <email|sms|push|web-push>
Filter by channel.
--template <slug>
Filter by template slug, e.g.
welcome.--metadata <json>
Filter by the metadata you attached at send time, as a JSON
object — e.g.
'{"orderId":"ord_9"}'. Every key/value pair must match.Examples
Scripting with --json
--json emits the full SDK response — a data array and a nextCursor
string — which makes jq workflows clean:
senderkit messages get
Fetch a single message by its public ID.
--json for the full message object.
senderkit messages cancel
Cancel a still-pending message. Only scheduled or queued messages are
cancelable — once a message has moved past that (e.g. sent), the server
returns a 409 and the command fails.
Public message ID of a scheduled or queued message.
There’s no live tail (
messages tail) in the CLI. For real-time delivery
monitoring, use the SSE stream (GET /v1/messages?tail=1) described in the
API Reference; from the terminal, poll
messages list with a filter.Messages
The lifecycle and retention rules behind these records.
send
Fire a send, then query its status here.
Sending
Why a queued message hasn’t been delivered yet.
API Reference
The list endpoint, status enum, and live tail stream.