StatusDashboard
Account

Get account

Retrieve the organization account for the authenticated user.

View Markdown

GET /app/account

Returns the organization record associated with the caller's account. All authenticated users can call this endpoint.


Request

See API Basics for required headers.

This endpoint takes no request body or query parameters.


Sample request

curl https://api.statusdashboard.com/app/account \
  -H "Authorization: Bearer bcf847abf5c6:def456"

Sample response

Status: 200 OK

{
  "org": {
    "orgId": "a1b2c3d4-0000-4000-8000-e5f6a7b8c9d0",
    "name": "Acme Corp",
    "status": "active",
    "tier": "trial",
    "createdAt": "2026-06-01T09:00:00.000Z",
    "enabledFeatures": {
      "api": true,
      "apiKeys": 2,
      "apiRateLimit": 60,
      "auditRetentionDays": 14,
      "components": 10,
      "customBranding": true,
      "customCode": true,
      "customDomain": true,
      "dashboards": 1,
      "emailEnabled": true,
      "emailMessages": 1000,
      "emailSubscribers": 50,
      "smsEnabled": true,
      "smsMessages": 50,
      "smsSubscribers": 5,
      "integrations": true,
      "ipAllowlist": true,
      "postmortem": true,
      "segments": true,
      "severities": true,
      "sso": true,
      "ssoProviders": 1,
      "users": 1,
      "webhookKeys": 2,
      "webhookRateLimit": 60,
      "whitelabel": true,
      "widget": true,
      "workflows": true
    },
    "subscriberCounts": {
      "email": 0,
      "sms": 0,
      "webhook": 0,
      "teams": 0,
      "gchat": 0
    },
    "trialEndsAt": "2026-07-01T09:05:00.000Z",
    "tosAcceptedAt": "2026-06-01T09:05:00.000Z",
    "tosVersion": "2026-01-01",
    "billingType": "stripe",
    "billingStatus": null,
    "billingInterval": null,
    "currentPeriodEnd": null,
    "cancelAtPeriodEnd": false,
    "cancelAt": null,
    "cardBrand": null,
    "cardLast4": null,
    "cardExpMonth": null,
    "cardExpYear": null
  }
}

Paid organizations on pro tiers include populated billing fields (billingStatus, billingInterval, currentPeriodEnd, card details) and may omit trialEndsAt. enabledFeatures reflects the org's current tier entitlements (e.g. smsEnabled and SMS quotas when SMS is on the plan).


Response fields

Top-level wrapper: { "org": { ... } }.

FieldTypeAlways presentDescription
orgIdstringYesOrganization UUID
namestringYesDisplay name
statusstringYesOrg lifecycle status (e.g. active, pending_onboarding, suspended)
tierstringYesBilling tier: trial, basic, team, or pro
createdAtstringYesISO 8601 creation timestamp
enabledFeaturesobjectYesPlan entitlements. May be {} when suspended. See Field notes
subscriberCountsobjectYesCurrent subscriber / endpoint usage by channel
subscriberCounts.emailnumberYesUnique email addresses org-wide (pending and verified)
subscriberCounts.smsnumberYesUnique E.164 SMS subscriber numbers org-wide
subscriberCounts.webhooknumberYesUnique outbound webhook endpoints org-wide
subscriberCounts.teamsnumberYesUnique Microsoft Teams endpoints org-wide
subscriberCounts.gchatnumberYesUnique Google Chat endpoints org-wide
trialEndsAtstringNoISO 8601 trial expiry. Omitted when not on trial
tosAcceptedAtstringNoISO 8601 ToS acceptance. Omitted when not accepted
tosVersionstringNoVersion string of accepted ToS. Omitted when not accepted
billingTypestringYes"stripe" (self-serve catalog), "custom" (admin-assigned Stripe price), or "manual" (invoiced). Defaults to "stripe". Custom price assignment is admin-only and not exposed on this endpoint.
billingStatusstring | nullYes"trialing", "active", "past_due", or "canceled". null until a paid subscription exists
billingIntervalstring | nullYes"monthly" or "yearly". null until subscribed
currentPeriodEndstring | nullYesISO 8601 next renewal. null until subscribed
cancelAtPeriodEndbooleanYestrue when cancellation is scheduled at period end. Defaults to false
cancelAtstring | nullYesISO 8601 scheduled cancellation. null when not set
cardBrandstring | nullYesCard network (e.g. "visa"). null until a card is on file
cardLast4string | nullYesLast four digits. null until a card is on file
cardExpMonthnumber | nullYesCard expiry month. null until a card is on file
cardExpYearnumber | nullYesCard expiry year. null until a card is on file

Field notes

enabledFeatures — Boolean capability features (api, segments, sso, widget, emailEnabled, smsEnabled, integrations, etc.) appear as true when enabled; they are absent when disabled. Numeric quota features (users, components, emailSubscribers, emailMessages, smsSubscribers, smsMessages, apiRateLimit, etc.) appear with their limit when present. Quota values enforce capacity only — boolean capabilities gate product access; numeric keys are limits.

auditRetentionDays — Always present on active organizations (minimum 1). Controls how many days audit events are retained before automatic expiry. Audit logging and GET /app/audit access are always on — this value is retention only, not an on/off feature gate.

subscriberCounts — Always returned with email, sms, webhook, teams, and gchat keys (default 0 for new orgs). Compare usage to:

  • subscriberCounts.email vs enabledFeatures.emailSubscribers
  • subscriberCounts.sms vs enabledFeatures.smsSubscribers
  • subscriberCounts.webhook / teams / gchat / slack vs organization endpoint capacity limits (admin-managed; not plan features)

Email and SMS counts are unique contacts org-wide (pending and verified). Integration counts are unique endpoint URLs per channel.

Monthly message usage (email, SMS, integrations) is not on this endpoint. Use Get overview (emailMessages, smsMessages, integrations.messages).

Billing fieldsbillingType is always present. All other billing and card fields are always present in the response but are null (or false for cancelAtPeriodEnd) until the org has an active paid Stripe subscription. Manual-billing accounts (billingType: "manual") do not use self-serve subscribe / change-plan / update-card flows. Custom-billing accounts (billingType: "custom") subscribe only to an admin-assigned price via the custom subscribe flow; catalog change-plan is not available.


Error responses

StatusWhen
404Organization not found

On this page

We use cookies

We use essential cookies to keep the site working, and optional analytics cookies to understand how it's used. Read our Privacy Policy.