From 57950f5361550ab1f5ab403e790552e99e29f800 Mon Sep 17 00:00:00 2001 From: "bitdrift-proto-sync[bot]" <154373124+bitdrift-proto-sync[bot]@users.noreply.github.com> Date: Fri, 11 Sep 2026 18:14:53 +0000 Subject: [PATCH] Sync public API export @ edc8bce Automated sync of public API export. --- .../public/unary/charts/v1/chart_id.proto | 22 ++++++++++++++++++- .../unary/charts/v1/chart_metadata.proto | 9 +++++++- .../public/unary/dashboards/v1/api.proto | 14 ++++++++++++ 3 files changed, 43 insertions(+), 2 deletions(-) diff --git a/src/bitdrift/public/unary/charts/v1/chart_id.proto b/src/bitdrift/public/unary/charts/v1/chart_id.proto index 9fd36fe..8548dbe 100644 --- a/src/bitdrift/public/unary/charts/v1/chart_id.proto +++ b/src/bitdrift/public/unary/charts/v1/chart_id.proto @@ -101,6 +101,23 @@ message ChartIdentifier { .bitdrift.public.unary.charts.v1.ChartIdentifier.ActiveDevicesChart.ActiveDevicesChartType type = 1 [(validate.rules).enum = {defined_only: true}]; } + // Active entities are explicitly configured by SDKs and are not tied to an action ID. Use + // request-level platform filtering to narrow results. This chart returns line-chart data and + // resolves to a line chart in dashboard metadata. + message ActiveEntitiesChart { + enum ActiveEntitiesChartType { + // Includes three daily series: daily active entities (DAE) for that day, weekly active + // entities (WAE) for the trailing 7 days, and monthly active entities (MAE) for the trailing + // 30 days. + LONG_TERM = 0; + // Shows stickiness as DAE/MAE. + STICKINESS = 1; + } + + // The active-entities chart variant to query. + .bitdrift.public.unary.charts.v1.ChartIdentifier.ActiveEntitiesChart.ActiveEntitiesChartType type = 1 [(validate.rules).enum = {defined_only: true}]; + } + // Shows issue-stability metrics that are not tied to a specific action ID. Results are filtered // by platform and app ID. message IssueStabilityChart { @@ -129,7 +146,7 @@ message ChartIdentifier { // A workflow-backed sankey chart. .bitdrift.public.unary.charts.v1.ChartIdentifier.WorkflowSankeyChart sankey_chart = 5; - // An active-devices chart as found on the devices tab in Instant Insights. + // An active-devices chart as found on the activity tab in Instant Insights. .bitdrift.public.unary.charts.v1.ChartIdentifier.ActiveDevicesChart active_devices_chart = 6; // A workflow-backed funnel chart. @@ -140,6 +157,9 @@ message ChartIdentifier { // An issue-stability chart as found on the stability tab in Instant Insights. .bitdrift.public.unary.charts.v1.ChartIdentifier.IssueStabilityChart issue_stability_chart = 9; + + // An active-entities chart as found on the activity tab in Instant Insights. + .bitdrift.public.unary.charts.v1.ChartIdentifier.ActiveEntitiesChart active_entities_chart = 11; } } diff --git a/src/bitdrift/public/unary/charts/v1/chart_metadata.proto b/src/bitdrift/public/unary/charts/v1/chart_metadata.proto index eefdf81..107c01f 100644 --- a/src/bitdrift/public/unary/charts/v1/chart_metadata.proto +++ b/src/bitdrift/public/unary/charts/v1/chart_metadata.proto @@ -110,6 +110,12 @@ message ChartMetadata { // Configuration for exporting data to a connector. repeated .bitdrift.public.unary.charts.v1.ChartMetadata.MetricChartMetadata.TimeSeriesMetadata.ConnectorExportConfig connector_export_config = 6 [(validate.rules).repeated.max_items = 10]; + + // The ID that identifies this configured metric time series in resolved chart responses. + // This is generated by the server and matches TimeSeries.id, Table.time_series_id, and + // HistogramBarChartResponse.PerTimeSeries.time_series_id for the same configured series. + // Do not populate this field when creating or updating chart metadata. + string time_series_id = 7 [(validate.rules).string = {max_len: 255}]; } message TimeSeriesDisplayMode {} @@ -131,7 +137,8 @@ message ChartMetadata { // Metadata for each time series in the chart. The length of this list should match the number // of time series in the chart's query. If a time series does not have metadata, provide the - // default object and defaults will be used. + // default object and defaults will be used. In resolved chart responses, each entry includes + // its server-generated time_series_id. repeated .bitdrift.public.unary.charts.v1.ChartMetadata.MetricChartMetadata.TimeSeriesMetadata metadata = 4 [(validate.rules).repeated = {max_items: 100}]; } diff --git a/src/bitdrift/public/unary/dashboards/v1/api.proto b/src/bitdrift/public/unary/dashboards/v1/api.proto index 81efbbd..9f4063e 100644 --- a/src/bitdrift/public/unary/dashboards/v1/api.proto +++ b/src/bitdrift/public/unary/dashboards/v1/api.proto @@ -566,6 +566,13 @@ message Table { // The total count of cardinality overflows for this time series that occurred during the // query time period. .bitdrift.public.shared.workflows.v1.CardinalityOverflows cardinality_overflows = 6; + + // The ID that associates this table with its configured metric time series in the resolved + // chart metadata. + string time_series_id = 7 [(validate.rules).string = { + min_len: 1 + max_len: 255 + }]; } message TableValue { @@ -634,6 +641,13 @@ message HistogramBarChartResponse { // A set of buckets for every group by combination for this time series. If there are no group // by fields, there will be a single entry in this list. repeated .bitdrift.public.unary.dashboards.v1.HistogramBarChartResponse.PerGroupBy per_group_by = 4; + + // The ID that associates this data with its configured metric time series in the resolved + // chart metadata. + string time_series_id = 5 [(validate.rules).string = { + min_len: 1 + max_len: 255 + }]; } // Histogram data for each time series in the chart.