Endpoint
This is a GraphQL query sent over HTTP POST.
POST /growth-intelligence
Authentication
content-type: application/json
x-api-key: YOUR_API_KEY
Input
| Variable | Type | Required | Description |
input.id | String | Yes | The unique account identifier (same group_id used in Group and Track calls). |
GraphQL query
query GetAccountById($input: GetAccountByIdRequest!) {
getAccountById(input: $input) {
account {
name
id
domain
createdAt
acquisition {
abuseStatus
abuseRuleResult { passed ruleId ruleName description }
touchpointsToSignup
timeToSignupDays
initialUtmSource
initialUtmMedium
initialUtmCampaign
initialUtmTerm
initialUtmContent
}
activation {
journeyName
isDefault
status
activatedOn
ttv
timeSpent
completionPercentage
currentStep
championUser
lastUpdated
}
monetization {
plan
billingStatus
mrr
arr
nextDueDate
}
engagement {
isActive
lastActiveAt
dailyActiveUsers
weeklyActiveUsers
monthlyActiveUsers
stickinessWeekly
stickinessMonthly
}
firmographics {
name
domain
legalName
description
industry
industryGroup
sector
subIndustry
employeeCount
employeeCountRange
annualRevenue
marketCap
raised
founderYear
type
city
state
stateCode
country
countryCode
postalCode
streetAddress
streetName
streetNumber
location
timeZone
phone
phoneNumbers
emailAddresses
emailProvider
logo
linkedinHandle
twitterHandle
facebookHandle
crunchbaseHandle
domainAliases
tags
tech
techCategories
trafficRank
}
}
}
}
Example
cURL
curl --location 'https://api.app.thrivestack.ai/growth-intelligence' \
--header 'content-type: application/json' \
--header 'x-api-key: YOUR_API_KEY' \
--data '{
"operationName": "GetAccountById",
"variables": {
"input": {
"id": "ac8db7ba-5139-4911-ba6e-523fd9c4704b"
}
},
"query": "query GetAccountById($input: GetAccountByIdRequest!) { getAccountById(input: $input) { account { name id domain createdAt acquisition { touchpointsToSignup initialUtmSource } monetization { plan mrr arr } engagement { isActive dailyActiveUsers } firmographics { industry employeeCount city country } } } }"
}'
JavaScript
const response = await fetch("https://api.app.thrivestack.ai/growth-intelligence", {
method: "POST",
headers: {
"content-type": "application/json",
"x-api-key": "YOUR_API_KEY"
},
body: JSON.stringify({
operationName: "GetAccountById",
variables: { input: { id: "ac8db7ba-5139-4911-ba6e-523fd9c4704b" } },
query: `query GetAccountById($input: GetAccountByIdRequest!) {
getAccountById(input: $input) {
account {
name id domain createdAt
monetization { plan mrr arr }
engagement { isActive dailyActiveUsers }
firmographics { industry employeeCount city country }
}
}
}`
})
});
const data = await response.json();
console.log(data.data.getAccountById.account);
Response fields
Top-level account
| Field | Type | Description |
name | String | Account display name |
id | String | Unique account identifier |
domain | String | Primary domain |
createdAt | String | ISO 8601 account creation timestamp |
acquisition
| Field | Type | Description |
touchpointsToSignup | Int | Number of marketing touchpoints before signup |
timeToSignupDays | Int | Days from first touch to signup |
initialUtmSource | String | First-touch UTM source |
initialUtmMedium | String | First-touch UTM medium |
initialUtmCampaign | String | First-touch UTM campaign |
abuseStatus | String | Abuse detection status |
activation
| Field | Type | Description |
journeyName | String | Name of the activation journey |
status | String | Current activation status |
completionPercentage | Float | Journey completion percentage (0–100) |
ttv | Float | Time-to-value in days |
championUser | String | Most active user driving activation |
currentStep | String | The current onboarding step |
monetization
| Field | Type | Description |
plan | String | Current subscription plan |
billingStatus | String | Billing status (e.g., "active", "past_due") |
mrr | Float | Monthly Recurring Revenue (USD) |
arr | Float | Annual Recurring Revenue (USD) |
nextDueDate | String | Next billing date (ISO 8601) |
engagement
| Field | Type | Description |
isActive | Boolean | Whether the account is currently active |
lastActiveAt | String | Timestamp of last activity |
dailyActiveUsers | Int | DAU count |
weeklyActiveUsers | Int | WAU count |
monthlyActiveUsers | Int | MAU count |
stickinessWeekly | Float | DAU/WAU ratio |
stickinessMonthly | Float | DAU/MAU ratio |
firmographics
Enriched company data including industry, employeeCount, annualRevenue, city, country, tech, techCategories, social handles, and more. These fields are populated automatically when ThriveStack enriches the account domain.
Example response
{
"data": {
"getAccountById": {
"account": {
"name": "Acme Corporation",
"id": "ac8db7ba-5139-4911-ba6e-523fd9c4704b",
"domain": "acme.com",
"createdAt": "2024-01-15T10:30:00Z",
"acquisition": {
"touchpointsToSignup": 3,
"timeToSignupDays": 7,
"initialUtmSource": "google",
"initialUtmMedium": "cpc",
"initialUtmCampaign": "brand",
"abuseStatus": "clean"
},
"monetization": {
"plan": "pro",
"billingStatus": "active",
"mrr": 299.00,
"arr": 3588.00,
"nextDueDate": "2024-02-15T00:00:00Z"
},
"engagement": {
"isActive": true,
"lastActiveAt": "2024-01-15T09:00:00Z",
"dailyActiveUsers": 5,
"weeklyActiveUsers": 12,
"monthlyActiveUsers": 18,
"stickinessWeekly": 0.42,
"stickinessMonthly": 0.28
},
"firmographics": {
"industry": "SaaS",
"employeeCount": "250",
"city": "San Francisco",
"country": "United States"
}
}
}
}
}