publ betaReference (MCP guide)
Open publ console

publ Reference

channel_statistics_get

Reads the channel Statistics (beta) dashboard exactly as the console shows it. One call reads one scene: view user (filters all_users, anonymous, logged_in, purchasers) or revenue (all_products, membership, content, commerce, ticket, papp_pass, points), optionally only some of its cards; view table reads one daily table page (50, 100, 500 or 1000 rows); view comparison_segments lists the finalized segments for comparison. Dates are Asia/Seoul days from today minus 365 days to yesterday (default: the last 15 days ending yesterday). Up to 2 comparison segments. Currency (KRW or USD) only when the channel has an alternate currency.

Inputs

Field Required here Contract
view No one of: user, revenue, table, comparison_segments (by kind); default {"kind":"user","filter":"all_users"}
view.filter No When view.kind is user: all_users, anonymous, logged_in, purchasers; default all_users
view.cards No When view.kind is user: array; items: string; min length 1; max length 200; min items 1; max items 30
view.startDate No When view.kind is user: string; pattern ^\d{4}-\d{2}-\d{2}$
view.endDate No When view.kind is user: string; pattern ^\d{4}-\d{2}-\d{2}$
view.currency No When view.kind is user: KRW, USD
view.compareSegments No When view.kind is user: array; max items 2
view.compareSegments[].savedSegmentId Yes When view.kind is user and view.compareSegments[] is alternative 1: string; pattern ^[A-Za-z0-9_-]{1,128}$; distinctId of a finalized saved segment from view comparison_segments.
view.compareSegments[].conditions Yes When view.kind is user and view.compareSegments[] is alternative 2: object; A temporary comparison segment built from finalized conditions (segment_options / segment_entities), as the dashboard "New comparison segment" modal does. It is not saved.
view.compareSegments[].conditions.include Yes When view.kind is user and view.compareSegments[] is alternative 2: array; min items 1; max items 20
view.compareSegments[].conditions.include[].anyOf Yes When view.kind is user and view.compareSegments[] is alternative 2: array; min items 1; max items 25
view.compareSegments[].conditions.include[].anyOf[].classificationCode Yes When view.kind is user and view.compareSegments[] is alternative 2: string; min length 1; max length 256
view.compareSegments[].conditions.include[].anyOf[].value No When view.kind is user and view.compareSegments[] is alternative 2: string; max length 10000
view.compareSegments[].conditions.include[].anyOf[].targetEntityIds No When view.kind is user and view.compareSegments[] is alternative 2: array; items: string; pattern ^[A-Za-z0-9_-]{1,128}$; max items 100
view.compareSegments[].conditions.exclude No When view.kind is user and view.compareSegments[] is alternative 2: array; min items 1; max items 20 or null
view.filter No When view.kind is revenue: all_products, membership, content, commerce, ticket, papp_pass, points; default all_products
view.cards No When view.kind is revenue: array; items: string; min length 1; max length 200; min items 1; max items 30
view.startDate No When view.kind is revenue: string; pattern ^\d{4}-\d{2}-\d{2}$
view.endDate No When view.kind is revenue: string; pattern ^\d{4}-\d{2}-\d{2}$
view.currency No When view.kind is revenue: KRW, USD
view.compareSegments No When view.kind is revenue: array; max items 2
view.compareSegments[].savedSegmentId Yes When view.kind is revenue and view.compareSegments[] is alternative 1: string; pattern ^[A-Za-z0-9_-]{1,128}$; distinctId of a finalized saved segment from view comparison_segments.
view.compareSegments[].conditions Yes When view.kind is revenue and view.compareSegments[] is alternative 2: object; A temporary comparison segment built from finalized conditions (segment_options / segment_entities), as the dashboard "New comparison segment" modal does. It is not saved.
view.compareSegments[].conditions.include Yes When view.kind is revenue and view.compareSegments[] is alternative 2: array; min items 1; max items 20
view.compareSegments[].conditions.include[].anyOf Yes When view.kind is revenue and view.compareSegments[] is alternative 2: array; min items 1; max items 25
view.compareSegments[].conditions.include[].anyOf[].classificationCode Yes When view.kind is revenue and view.compareSegments[] is alternative 2: string; min length 1; max length 256
view.compareSegments[].conditions.include[].anyOf[].value No When view.kind is revenue and view.compareSegments[] is alternative 2: string; max length 10000
view.compareSegments[].conditions.include[].anyOf[].targetEntityIds No When view.kind is revenue and view.compareSegments[] is alternative 2: array; items: string; pattern ^[A-Za-z0-9_-]{1,128}$; max items 100
view.compareSegments[].conditions.exclude No When view.kind is revenue and view.compareSegments[] is alternative 2: array; min items 1; max items 20 or null
view.scene Yes When view.kind is table: user, revenue; The scene that holds the table card.
view.filter No When view.kind is table: all_users, anonymous, logged_in, purchasers, all_products, membership, content, commerce, ticket, papp_pass, points
view.card Yes When view.kind is table: string; min length 1; max length 200; A table card: dailyVisitors, dailyMembers, dailyNewMembers, dailyPurchasers, salesAndRefundTrend or paymentAndRefundCountTrend (or its manifest key).
view.segmentSlot No When view.kind is table: base, compare1, compare2; default base
view.page No When view.kind is table: integer; maximum 100000; greater than 0; default 1
view.limit No When view.kind is table: 50 or 100 or 500 or 1000; default 50
view.startDate No When view.kind is table: string; pattern ^\d{4}-\d{2}-\d{2}$
view.endDate No When view.kind is table: string; pattern ^\d{4}-\d{2}-\d{2}$
view.currency No When view.kind is table: KRW, USD
view.compareSegments No When view.kind is table: array; max items 2
view.compareSegments[].savedSegmentId Yes When view.kind is table and view.compareSegments[] is alternative 1: string; pattern ^[A-Za-z0-9_-]{1,128}$; distinctId of a finalized saved segment from view comparison_segments.
view.compareSegments[].conditions Yes When view.kind is table and view.compareSegments[] is alternative 2: object; A temporary comparison segment built from finalized conditions (segment_options / segment_entities), as the dashboard "New comparison segment" modal does. It is not saved.
view.compareSegments[].conditions.include Yes When view.kind is table and view.compareSegments[] is alternative 2: array; min items 1; max items 20
view.compareSegments[].conditions.include[].anyOf Yes When view.kind is table and view.compareSegments[] is alternative 2: array; min items 1; max items 25
view.compareSegments[].conditions.include[].anyOf[].classificationCode Yes When view.kind is table and view.compareSegments[] is alternative 2: string; min length 1; max length 256
view.compareSegments[].conditions.include[].anyOf[].value No When view.kind is table and view.compareSegments[] is alternative 2: string; max length 10000
view.compareSegments[].conditions.include[].anyOf[].targetEntityIds No When view.kind is table and view.compareSegments[] is alternative 2: array; items: string; pattern ^[A-Za-z0-9_-]{1,128}$; max items 100
view.compareSegments[].conditions.exclude No When view.kind is table and view.compareSegments[] is alternative 2: array; min items 1; max items 20 or null
view.page No When view.kind is comparison_segments: integer; maximum 100000; greater than 0; default 1
view.limit No When view.kind is comparison_segments: 15 or 30 or 50 or 100; default 15
view.search No When view.kind is comparison_segments: string; max length 500
view.distinctId No When view.kind is comparison_segments: string; pattern ^[A-Za-z0-9_-]{1,128}$