Skip to content
Splashify Pro
Docs

Subscription

The subscription command mirrors Settings → Subscriptions — the active plan, add-ons, and the list of plans available for upgrade.

Read-only by design. No upgrade, no payment, no coupon validation. To change a plan, use the web app.

Quick start

bash
splashify subscription                      # consolidated view
splashify subscription status               # current plan + add-ons
splashify subscription plans                # available plans you can upgrade to
splashify subscription addons               # add-ons on the current plan

Command reference

Subscription gate at connect

splashify connect calls /api/v1/app/developer/cli-eligibility after the token is validated. The endpoint refuses with reason: "subscription_expired" when:

  • The user has no active paid plan (plan_status != "active" or the plan has expired), AND
  • The trial has ended (trial_ends_at is in the past or missing).

In that case the CLI prints:

text
your trial has ended and there is no active paid plan on this account.

  The splashify CLI requires an active subscription (paid plan OR
  unexpired trial).

  Upgrade your plan:  https://app.splashifypro.com/settings/subscriptions

  Run "splashify subscription" once a plan is active to confirm,
  then re-run "splashify connect".

Free-trial users continue to work normally — the gate only fires when both trial and paid plan are unavailable.

Per-feature upgrade prompts

If a backend endpoint refuses a CLI command because the user's plan is below the tier required for that feature, the response is:

json
{
  "success":      false,
  "error":        "plan_required",
  "required_plan":"GROWTH",
  "current_plan": "STARTER",
  "feature":      "broadcasts.create",
  "upgrade_url":  "https://app.splashifypro.com/settings/subscriptions"
}

The CLI auto-detects this shape on any HTTP 402/403 and prints:

text
error: this feature requires a higher plan (you are on STARTER, needed: GROWTH)
  Feature: broadcasts.create
  Upgrade your plan:  https://app.splashifypro.com/settings/subscriptions

The CLI never invents tier rules — the backend stays the source of truth. Adding a new tier gate only requires the backend to return this shape; the CLI displays it correctly without a new release.

Common patterns

bash
# Just the current plan name + expiry
splashify subscription status | \
  jq '{plan: .user.plan_name, status: .user.plan_status, expires: .user.plan_expires_at}'

# Is the IP allowlist add-on active?
splashify subscription addons | \
  jq '.addons[] | select(.feature == "allowed_ips") | .is_active'

# Pretty list of upgrade options
splashify subscription plans | \
  jq -r '.plans[] | "\(.name)\t\(.base_price) \(.currency)/\(.billing_cycle)"'