Add freemium funnel to getUsageStats

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
Dean Wenstrand
2026-07-11 10:48:25 -07:00
parent 582c20170d
commit 5c0ff8c31b
3 changed files with 51 additions and 0 deletions

View File

@@ -2299,6 +2299,17 @@ export type FloatRangeFilter = {
lessThanInclusive?: Scalars["Boolean"]["input"]; lessThanInclusive?: Scalars["Boolean"]["input"];
}; };
export type FunnelStatsGql = {
__typename?: "FunnelStatsGQL";
activationActivated: Scalars["Int"]["output"];
activationCohort: Scalars["Int"]["output"];
newPaid7d: Scalars["Int"]["output"];
newPaid30d: Scalars["Int"]["output"];
payingUsers: Scalars["Int"]["output"];
retentionPrevActive: Scalars["Int"]["output"];
retentionReturned: Scalars["Int"]["output"];
};
export type GameTypeTagMetric = { export type GameTypeTagMetric = {
__typename?: "GameTypeTagMetric"; __typename?: "GameTypeTagMetric";
madeShots: Scalars["Int"]["output"]; madeShots: Scalars["Int"]["output"];
@@ -3967,6 +3978,7 @@ export type UsageStatsDailyGql = {
export type UsageStatsGql = { export type UsageStatsGql = {
__typename?: "UsageStatsGQL"; __typename?: "UsageStatsGQL";
daily: Array<UsageStatsDailyGql>; daily: Array<UsageStatsDailyGql>;
funnel: FunnelStatsGql;
processingLast24h: Array<ProcessingStatusCountGql>; processingLast24h: Array<ProcessingStatusCountGql>;
totalRuns: Scalars["Int"]["output"]; totalRuns: Scalars["Int"]["output"];
totalShots: Scalars["Int"]["output"]; totalShots: Scalars["Int"]["output"];
@@ -7447,6 +7459,16 @@ export type GetUsageStatsQuery = {
totalVideos: number; totalVideos: number;
totalShots: number; totalShots: number;
totalRuns: number; totalRuns: number;
funnel: {
__typename?: "FunnelStatsGQL";
activationCohort: number;
activationActivated: number;
payingUsers: number;
newPaid7d: number;
newPaid30d: number;
retentionPrevActive: number;
retentionReturned: number;
};
windows: Array<{ windows: Array<{
__typename?: "UsageStatsWindowGQL"; __typename?: "UsageStatsWindowGQL";
label: string; label: string;
@@ -15748,6 +15770,15 @@ export type DeleteTagsMutationOptions = Apollo.BaseMutationOptions<
export const GetUsageStatsDocument = gql` export const GetUsageStatsDocument = gql`
query getUsageStats($days: Int! = 30) { query getUsageStats($days: Int! = 30) {
getUsageStats(days: $days) { getUsageStats(days: $days) {
funnel {
activationCohort
activationActivated
payingUsers
newPaid7d
newPaid30d
retentionPrevActive
retentionReturned
}
totalUsers totalUsers
totalVideos totalVideos
totalShots totalShots

View File

@@ -1,5 +1,14 @@
query getUsageStats($days: Int! = 30) { query getUsageStats($days: Int! = 30) {
getUsageStats(days: $days) { getUsageStats(days: $days) {
funnel {
activationCohort
activationActivated
payingUsers
newPaid7d
newPaid30d
retentionPrevActive
retentionReturned
}
totalUsers totalUsers
totalVideos totalVideos
totalShots totalShots

View File

@@ -1170,6 +1170,7 @@ input CreatedAfter @oneOf {
} }
type UsageStatsGQL { type UsageStatsGQL {
funnel: FunnelStatsGQL!
totalUsers: Int! totalUsers: Int!
totalVideos: Int! totalVideos: Int!
totalShots: Int! totalShots: Int!
@@ -1179,6 +1180,16 @@ type UsageStatsGQL {
processingLast24h: [ProcessingStatusCountGQL!]! processingLast24h: [ProcessingStatusCountGQL!]!
} }
type FunnelStatsGQL {
activationCohort: Int!
activationActivated: Int!
payingUsers: Int!
newPaid7d: Int!
newPaid30d: Int!
retentionPrevActive: Int!
retentionReturned: Int!
}
type UsageStatsWindowGQL { type UsageStatsWindowGQL {
label: String! label: String!
newUsers: Int! newUsers: Int!