Get All Subscriptions

This API endpoint retrieves all subscriptions associated with the authenticated user. Each subscription includes its current plan, status flags (active, trial, payment failed, etc.), associated add-ons, and payment details. Use the returned subscription_id when calling other endpoints such as Get Subscription Proration Details or Update Payment Method.

This endpoint is typically the first call in any billing flow — fetch the subscription list to get the active subscription_id, then pass it downstream to proration, cancellation, or payment method update endpoints.

Common use cases:
  • Subscription dashboard — Display the user's current plan, billing cycle, and payment status in your app's billing settings page.
  • Payment failure handling — Check payment_failed: true to show an in-app banner prompting the user to update their payment method before access is revoked.
  • Trial expiry flows — Detect in_trial: true and can_be_canceled: false together to know a user is in a free trial that cannot yet be cancelled.
  • Reactivation eligibility — Use can_be_reactivated: true to show a reactivation prompt to churned users who are still within the recovery window.
  • Add-on visibility — Read the add_ons array to display which feature extensions are active on the current subscription.

Authorization: Bearer YOUR_TOKEN


Expected Behavior:


  • On success, the system returns a list of all subscriptions under data.subscriptions along with a total count in meta.count.
  • Status flags such as active, in_trial, payment_failed, and payment_pending reflect the current state of each subscription and can be used to drive UI behavior.
  • The add_ons field will be null if no add-ons are attached to the subscription.
  • A user may have multiple subscriptions in the array — always filter by active: true to identify the current live subscription.
  • If the request fails, an appropriate error message will be returned.
curl -X GET "https://api.pinghome.io/payment-query/v1/subscriptions" \
-H 'Authorization: Bearer YOUR_TOKEN'
ResponseThis section is used to view the possible HTTP response codes returned by the API. These codes indicate the status of a request, such as 201 (Created), 401 (Unauthorized), 409 (Conflict), or 422 (Unprocessable Entity).