API reference / Customers
Compare groups of customers
How a group of customers does against all customers, over some days: who pays, who began and got value, who came back after the first key action, how they answered the survey, and what their feedback is about. With segment, the group is a saved segment. With by, it also splits the customers into groups by a plan, a status, where they came from, or a trait, and ranks the groups by the survey. A share shows only with 5 customers or more behind it.
/api/v1/customer-analysisOther ways to call it
troopy customers analysistroopy_get_customer_analysisQuery parameters
daysintegerThe days back from now: 30, 90, 180, 365
Default 90
segmentstringA saved segment, to compare with all customers
bystringWhat to split the customers by: plan, status, channel, source, country, or trait:<name> for a trait of identify
Response
200 · application/jsondata*object7 properties
days*integercurrency*string | nullThe currency of the money here: the one that most customers pay in
segment*object | null2 properties
id*stringA 24-character id
name*stringof*object | nullThe customers of the segment. Null without a segment
12 properties
customers*integerThe customers in the group now
paying*integerHow many of them pay now
mrr*numberWhat they pay for a month now, in the units of the currency
atRisk*integerHow many of them are at risk now
newPaying*integerBecame a paying customer in the days
churned*integerLeft in the days
signups*integerBegan to use the product in the days
activated*integerHow many of those did a first key action
steady*integerHow many of those reached steady use
retention*objectWho used the product on days 1 to 7, 22 to 28 and 50 to 56 after the first key action. Each week reads the customers whose first key action was in the days before that week ended
3 properties
w1*object4 properties
of*integerThe customers whose days are over
kept*integerHow many of them used the product in those days
rate*number | nullkept of of, in percent. Null under 5 customers
level*enum<string>hidden: under 5 customers. directional: 5 to 9. ranked: 10 or more
hiddendirectionalranked
w4*object4 properties
of*integerThe customers whose days are over
kept*integerHow many of them used the product in those days
rate*number | nullkept of of, in percent. Null under 5 customers
level*enum<string>hidden: under 5 customers. directional: 5 to 9. ranked: 10 or more
hiddendirectionalranked
w8*object4 properties
of*integerThe customers whose days are over
kept*integerHow many of them used the product in those days
rate*number | nullkept of of, in percent. Null under 5 customers
level*enum<string>hidden: under 5 customers. directional: 5 to 9. ranked: 10 or more
hiddendirectionalranked
pmf*objectHow they answered the survey in the days
8 properties
answers*integerThe answers that count: each answer but no_longer_use
very*integerWould be very disappointed without the product
somewhat*integerWould be somewhat disappointed
not*integerWould not be disappointed
gone*integerNo longer use the product. These are not in the score
love*number | nullThe share that would be very disappointed, in percent. Null under 5 answers
low*number | nullThe low end of the 95% range of that share, in percent. Null under 10 answers
level*enum<string>hidden: under 5 answers, so no share. directional: 5 to 9 answers. ranked: 10 or more
hiddendirectionalranked
themes*array<object>What their accepted feedback of the days is about, 5 themes at most
2 properties
theme*stringcount*integerall*objectEvery customer of the workspace
12 properties
customers*integerThe customers in the group now
paying*integerHow many of them pay now
mrr*numberWhat they pay for a month now, in the units of the currency
atRisk*integerHow many of them are at risk now
newPaying*integerBecame a paying customer in the days
churned*integerLeft in the days
signups*integerBegan to use the product in the days
activated*integerHow many of those did a first key action
steady*integerHow many of those reached steady use
retention*objectWho used the product on days 1 to 7, 22 to 28 and 50 to 56 after the first key action. Each week reads the customers whose first key action was in the days before that week ended
3 properties
w1*object4 properties
of*integerThe customers whose days are over
kept*integerHow many of them used the product in those days
rate*number | nullkept of of, in percent. Null under 5 customers
level*enum<string>hidden: under 5 customers. directional: 5 to 9. ranked: 10 or more
hiddendirectionalranked
w4*object4 properties
of*integerThe customers whose days are over
kept*integerHow many of them used the product in those days
rate*number | nullkept of of, in percent. Null under 5 customers
level*enum<string>hidden: under 5 customers. directional: 5 to 9. ranked: 10 or more
hiddendirectionalranked
w8*object4 properties
of*integerThe customers whose days are over
kept*integerHow many of them used the product in those days
rate*number | nullkept of of, in percent. Null under 5 customers
level*enum<string>hidden: under 5 customers. directional: 5 to 9. ranked: 10 or more
hiddendirectionalranked
pmf*objectHow they answered the survey in the days
8 properties
answers*integerThe answers that count: each answer but no_longer_use
very*integerWould be very disappointed without the product
somewhat*integerWould be somewhat disappointed
not*integerWould not be disappointed
gone*integerNo longer use the product. These are not in the score
love*number | nullThe share that would be very disappointed, in percent. Null under 5 answers
low*number | nullThe low end of the 95% range of that share, in percent. Null under 10 answers
level*enum<string>hidden: under 5 answers, so no share. directional: 5 to 9 answers. ranked: 10 or more
hiddendirectionalranked
themes*array<object>What their accepted feedback of the days is about, 5 themes at most
2 properties
theme*stringcount*integerby*string | nullWhat the groups split the customers by
groups*array<object>With by: each group of the customers, the one that the survey ranks highest first
7 properties
value*string | nullThe value that the group shares. Null: Troopy does not know it for these customers
customers*integerpaying*integermrr*numbersignups*integeractivated*integerpmf*object8 properties
answers*integerThe answers that count: each answer but no_longer_use
very*integerWould be very disappointed without the product
somewhat*integerWould be somewhat disappointed
not*integerWould not be disappointed
gone*integerNo longer use the product. These are not in the score
love*number | nullThe share that would be very disappointed, in percent. Null under 5 answers
low*number | nullThe low end of the 95% range of that share, in percent. Null under 10 answers
level*enum<string>hidden: under 5 answers, so no share. directional: 5 to 9 answers. ranked: 10 or more
hiddendirectionalranked