Skip to content
Splashify Pro
Docs

Support tickets

The support command (aliases: tickets) and ticket (singular) mirror the /support and /support/<ticket_id> pages. From the terminal you can list every ticket on the account, drill into one with its full reply thread, file a new ticket with the same category + priority taxonomy as the page, post a reply, and close a ticket.

Backed by /api/v1/app/tickets/*. No subscription or balance preflight runs on these commands — support is free for every account regardless of plan state.

Quick start

bash
# File a ticket
splashify support create \
  --subject "Broadcast stuck at 80%" \
  --category bug \
  --priority high \
  --message "Broadcast 7a32… hasn't moved past 80% for an hour."

# Track it
splashify support                                # list
splashify ticket <ticket_id>                     # show + replies
splashify ticket <ticket_id> reply --message "Trying that now…"
splashify ticket <ticket_id> close

Command reference

splashify support — list

bash
splashify support                                # default: all open + recently closed
splashify support list                           # alias
splashify support list --status open
splashify support list --status closed
splashify support list --priority urgent
splashify support list --category bug

Filters are server-side. Response shape:

json
{
  "success": true,
  "tickets": [
    {
      "ticket_id":   "uuid",
      "subject":     "Broadcast stuck at 80%",
      "category":    "bug",            // bug | billing | feature_request | account | general
      "priority":    "high",           // low | medium | high | urgent
      "status":      "open",           // open | replied | closed
      "created_at":  "2026-05-20T14:00:00Z",
      "updated_at":  "2026-05-20T15:30:00Z"
    }
  ]
}

splashify ticket <ticket_id> — show a ticket + thread

bash
splashify ticket 7a32bce6-…

Returns the ticket row plus the full message thread (initial message + every reply, ordered oldest-first).

splashify support create — file a new ticket

bash
splashify support create \
  --subject "Wallet didn't refresh after recharge" \
  --category billing \
  --priority medium \
  --message "Recharged ₹5000 30 min ago, wallet still shows old balance."

Returns the new ticket_id. Support sees the ticket immediately; the reply SLA depends on your plan.

splashify ticket <id> reply — post a reply

bash
splashify ticket <ticket_id> reply --message "Trying that now…"
splashify ticket <ticket_id> reply --file ./reply.md       # body from a file

Returns the new reply row. The ticket's status flips to replied until support comes back.

splashify ticket <id> close — close

bash
splashify ticket <ticket_id> close

Marks the ticket closed. You can still view it; replies on a closed ticket re-open it (closed → open).

Common workflows

File a ticket from a shell script

bash
splashify support create \
  --subject "Auto-monitor: broadcast $BID stuck" \
  --category bug \
  --priority high \
  --message "Detected by daily monitor at $(date -u). $(splashify broadcast "$BID" | jq -c .)"

Watch every open ticket

bash
splashify support list --status open | \
  jq '.tickets[] | {ticket_id, subject, priority, updated_at}'

Triage by priority

bash
splashify support | \
  jq '.tickets | group_by(.priority) | map({priority: .[0].priority, count: length}) | sort_by(.priority)'

Auto-close stale tickets (no reply in 30+ days)

bash
CUTOFF=$(date -u -v-30d '+%Y-%m-%dT%H:%M:%SZ')        # macOS
# CUTOFF=$(date -u -d '30 days ago' '+%Y-%m-%dT%H:%M:%SZ')  # linux

splashify support list --status open | \
  jq -r --arg c "$CUTOFF" '.tickets[] | select(.updated_at < $c) | .ticket_id' | \
  xargs -I{} splashify ticket {} close

Reply with a Markdown file

bash
splashify ticket <id> reply --file ./long-reply.md

The backend accepts any text — Markdown renders correctly in the support dashboard.

Troubleshooting

"Invalid category" — must be one of the five canonical values (bug, billing, feature_request, account, general). The CLI validates client-side before the round-trip.

"Invalid priority" — must be low, medium, high, or urgent. emergency / critical are not accepted — use urgent for the highest tier.

Reply 404s with "Ticket not found" — the ticket_id doesn't belong to your account (or it was deleted by support after policy violations). Run splashify support to refresh.

close returns success but ticket reopens — that's by design: any new reply after close flips the status back to open. To "really close" a ticket, archive it from the app's support dashboard (no CLI equivalent — archive is admin-only).

See also