MCPcopy
hub / github.com/PostHog/posthog / Filter

Class Filter

posthog/models/filters/filter.py:53–127  ·  view source on GitHub ↗

Filters allow us to describe what events to show/use in various places in the system, for example Trends or Funnels. This object isn't a table in the database. It gets stored against the specific models itself as JSON. This class just allows for stronger typing of this object.

Source from the content-addressed store, hash-verified

51
52
53class Filter(
54 PropertyMixin,
55 IntervalMixin,
56 SmoothingIntervalsMixin,
57 EntitiesMixin,
58 EntityIdMixin,
59 EntityTypeMixin,
60 EntityMathMixin,
61 EntityOrderMixin,
62 DisplayDerivedMixin,
63 SelectorMixin,
64 ShownAsMixin,
65 BreakdownMixin,
66 BreakdownValueMixin,
67 FilterTestAccountsMixin,
68 CompareMixin,
69 InsightMixin,
70 OffsetMixin,
71 LimitMixin,
72 DateMixin,
73 FormulaMixin,
74 FunnelWindowDaysMixin,
75 FunnelWindowMixin,
76 FunnelFromToStepsMixin,
77 FunnelPersonsStepMixin,
78 FunnelTrendsPersonsMixin,
79 FunnelPersonsStepBreakdownMixin,
80 FunnelLayoutMixin,
81 FunnelTypeMixin,
82 HistogramMixin,
83 GroupsAggregationMixin,
84 FunnelCorrelationMixin,
85 FunnelCorrelationActorsMixin,
86 SimplifyFilterMixin,
87 IncludeRecordingsMixin,
88 SearchMixin,
89 DistinctIdMixin,
90 EmailMixin,
91 BaseFilter,
92 ClientQueryIdMixin,
93):
94 """
95 Filters allow us to describe what events to show/use in various places in the system, for example Trends or Funnels.
96 This object isn't a table in the database. It gets stored against the specific models itself as JSON.
97 This class just allows for stronger typing of this object.
98 """
99
100 funnel_id: Optional[int] = None
101 _data: Dict
102
103 def __init__(
104 self, data: Optional[Dict[str, Any]] = None, request: Optional[request.Request] = None, **kwargs
105 ) -> None:
106
107 if request:
108 properties = {}
109 if request.GET.get(PROPERTIES):
110 try:

Calls

no outgoing calls

Used in the wild real call sites across dependent graphs

searching dependent graphs…