Skip to main content

Class XperiflowWebAppURLBuilder

Builds fully-qualified URLs for Xperiflow Dash web applications.

Construct with a OneStream.Shared.Common.SessionInfo to resolve the base URL automatically, or with an explicit base URL string for testing. Every method returns a complete, ready-to-use URL — callers never need to resolve the base URL separately.

Example:

var webApps = new XperiflowWebAppURLBuilder(si);
var activityCenter = webApps.GetAIActivityCenterUrl(lookbackPeriod: "24h");
var predSummary = webApps.GetPredictionSummaryUrl("1", "37",
pageNames: new[] { "Forecast", "Feature Impact", "Beeswarm" },
buildinfoIds: new[] { 23 },
analysisGranularity: "daily");

Namespace: Workspace.XBR.Xperiflow.Core.URL

Assembly: Xperiflow.dll

Declaration
public class XperiflowWebAppURLBuilder

Properties

BaseUrl

The resolved Xperiflow base URL (trailing slash guaranteed).

Declaration
public string BaseUrl { get; }

Methods

GetAIActivityCenterUrl(string, bool?)

Builds the URL for the AI Activity Center page.

Declaration
public string GetAIActivityCenterUrl(string lookbackPeriod = null, bool? includeRoutineExecution = null)
Returns

System.String

The fully-qualified Dash app URL.

Parameters
TypeNameDescription
System.StringlookbackPeriodTime window filter (e.g. "1h", "8h", "24h", "7d", "all", "custom"). Defaults to "8h" server-side.
System.Nullable<System.Boolean>includeRoutineExecutionWhen true, includes routine execution entries.

GetAIServicesLogUrl(string, bool?, bool?)

Builds the URL for the AI Services Log page.

Declaration
public string GetAIServicesLogUrl(string lookbackPeriod = null, bool? includeRoutineExecution = null, bool? accessible = null)
Returns

System.String

The fully-qualified Dash app URL.

Parameters
TypeNameDescription
System.StringlookbackPeriodTime window filter (e.g. "Last 1 Hour", "Last 8 Hours", "Last 30 Days"). Defaults to "Last 8 Hours" server-side.
System.Nullable<System.Boolean>includeRoutineExecutionWhen true, includes routine execution entries.
System.Nullable<System.Boolean>accessibleWhen true, enables accessibility mode.

GetRoutineActivityCenterUrl(string, string)

Builds the URL for the Routine Activity Center page.

Declaration
public string GetRoutineActivityCenterUrl(string lookbackPeriod = null, string routineInstanceIds = null)
Returns

System.String

The fully-qualified Dash app URL.

Parameters
TypeNameDescription
System.StringlookbackPeriodTime window filter (e.g. "1h", "8h", "24h", "7d"). Defaults to "8h" server-side.
System.StringroutineInstanceIdsComma-separated routine instance IDs to pre-load.

GetMonitorPageUrl(string, bool?)

Builds the URL for the Monitor Page (target flagging/filtering legacy view).

Declaration
public string GetMonitorPageUrl(string projectId, bool? accessible = null)
Returns

System.String

The fully-qualified Dash app URL.

Parameters
TypeNameDescription
System.StringprojectIdThe project identifier.
System.Nullable<System.Boolean>accessibleWhen true, enables accessibility mode.

GetMonitorRuleConfigUrl(string)

Builds the URL for the Monitor Rule Configuration page.

Declaration
public string GetMonitorRuleConfigUrl(string projectId)
Returns

System.String

The fully-qualified Dash app URL.

Parameters
TypeNameDescription
System.StringprojectIdThe project identifier.

GetJobTrackerUrl(string, bool?)

Builds the URL for the Job Tracker page.

Declaration
public string GetJobTrackerUrl(string jobId, bool? accessible = null)
Returns

System.String

The fully-qualified Dash app URL.

Parameters
TypeNameDescription
System.StringjobIdThe job identifier.
System.Nullable<System.Boolean>accessibleWhen true, enables accessibility mode.

GetProjectJobTrackerUrl(string, bool?)

Builds the URL for the Project Job Tracker page.

Declaration
public string GetProjectJobTrackerUrl(string projectId, bool? accessible = null)
Returns

System.String

The fully-qualified Dash app URL.

Parameters
TypeNameDescription
System.StringprojectIdThe project identifier.
System.Nullable<System.Boolean>accessibleWhen true, enables accessibility mode.

GetJobProgressBarUrl(string, bool?)

Builds the URL for the Job Progress Bar page (by job ID).

Declaration
public string GetJobProgressBarUrl(string jobId, bool? accessible = null)
Returns

System.String

The fully-qualified Dash app URL.

Parameters
TypeNameDescription
System.StringjobIdThe job identifier.
System.Nullable<System.Boolean>accessibleWhen true, enables accessibility mode.

GetProjectJobProgressBarUrl(string, bool?)

Builds the URL for the Project Job Progress Bar page.

Declaration
public string GetProjectJobProgressBarUrl(string projectId, bool? accessible = null)
Returns

System.String

The fully-qualified Dash app URL.

Parameters
TypeNameDescription
System.StringprojectIdThe project identifier.
System.Nullable<System.Boolean>accessibleWhen true, enables accessibility mode.

GetPredictionSummaryUrl(string, string, string, bool?, int?, int?, IEnumerable<string>, string, string, string, IEnumerable<int>, string, string, string, string, string, string, bool?, string, string, string, string, string, bool?, string, string, bool?)

Builds the URL for the Prediction Summary page (single target view).

Declaration
public string GetPredictionSummaryUrl(string projectId, string xperimentbuildId, string projectStage = null, bool? showTargetsPane = null, int? recordsPerPage = null, int? rowHeight = null, IEnumerable<string> pageNames = null, string selectedPageName = null, string evaluationMetric = null, string mergeType = null, IEnumerable<int> buildinfoIds = null, string xperimentKernelId = null, string selectedXperimentKernelId = null, string analysisGranularity = null, string featureGrouping = null, string forecastVersion = null, string modelStage = null, bool? includeGenAi = null, string modelTypes = null, string filterArenaTableBy = null, string sortArenaTableBy = null, string startDate = null, string endDate = null, bool? includeTrainData = null, string displayStartDate = null, string displayEndDate = null, bool? accessible = null)
Remarks

Example:

Returns

System.String

The fully-qualified Dash app URL.

Parameters
TypeNameDescription
System.StringprojectIdThe project identifier (path segment).
System.StringxperimentbuildIdThe xperiment build / target identifier (path segment).
System.StringprojectStageProject stage (e.g. "pipeline").
System.Nullable<System.Boolean>showTargetsPaneWhether the targets pane is visible on initial load.
System.Nullable<System.Int32>recordsPerPageTargets pane table records per page.
System.Nullable<System.Int32>rowHeightTargets pane table row height in pixels.
System.Collections.Generic.IEnumerable<System.String>pageNamesPage names to display. Each entry emits a separate page_names query parameter
(e.g. &page_names=Forecast&page_names=Beeswarm), matching the repeated-key
format the Dash app expects.
System.StringselectedPageNameThe page to display by default.
System.StringevaluationMetricEvaluation metric (e.g. "Mean Squared Error").
System.StringmergeTypeMerge type (e.g. "By Rank").
System.Collections.Generic.IEnumerable<System.Int32>buildinfoIdsBuildinfo identifiers. Each entry emits a separate buildinfo_ids query parameter
(e.g. &buildinfo_ids=1&buildinfo_ids=2), matching the repeated-key
format the Dash app expects. For pipeline stage, pass a single-element collection.
System.StringxperimentKernelIdXperiment kernel ID; excludes model arena table when set.
System.StringselectedXperimentKernelIdXperiment kernel ID; model arena table is still shown.
System.StringanalysisGranularityAnalysis granularity level (e.g. "daily", "monthly").
System.StringfeatureGroupingFeature grouping strategy (e.g. "Default").
System.StringforecastVersionForecast version name.
System.StringmodelStageModel stage (e.g. "model_selection").
System.Nullable<System.Boolean>includeGenAiWhether to include the Gen AI component.
System.StringmodelTypesModel type restriction filter (e.g. "only ML").
System.StringfilterArenaTableByJSON string for arena table filtering.
System.StringsortArenaTableByJSON string for arena table sorting.
System.StringstartDateStart date filter (ISO format, e.g. "2020-01-01").
System.StringendDateEnd date filter (ISO format).
System.Nullable<System.Boolean>includeTrainDataWhether to include training data in forecast vs. actuals.
System.StringdisplayStartDateDisplay/axis start date (ISO format).
System.StringdisplayEndDateDisplay/axis end date (ISO format).
System.Nullable<System.Boolean>accessibleWhen true, enables accessibility mode.

GetPredictionSummaryTargetsUrl(string, string, string, bool?, int?, int?, IEnumerable<string>, string, string, string, IEnumerable<int>, string, string, string, string, string, string, bool?, string, string, string, string, string, bool?, string, string, bool?)

Builds the URL for the Prediction Summary targets wrapper page (unified multi-target view). Accepts the same query parameters as Workspace.XBR.Xperiflow.Core.URL.XperiflowWebAppURLBuilder.GetPredictionSummaryUrl(System.String%2cSystem.String%2cSystem.String%2cSystem.Nullable%7bSystem.Boolean%7d%2cSystem.Nullable%7bSystem.Int32%7d%2cSystem.Nullable%7bSystem.Int32%7d%2cSystem.Collections.Generic.IEnumerable%7bSystem.String%7d%2cSystem.String%2cSystem.String%2cSystem.String%2cSystem.Collections.Generic.IEnumerable%7bSystem.Int32%7d%2cSystem.String%2cSystem.String%2cSystem.String%2cSystem.String%2cSystem.String%2cSystem.String%2cSystem.Nullable%7bSystem.Boolean%7d%2cSystem.String%2cSystem.String%2cSystem.String%2cSystem.String%2cSystem.String%2cSystem.Nullable%7bSystem.Boolean%7d%2cSystem.String%2cSystem.String%2cSystem.Nullable%7bSystem.Boolean%7d).

Declaration
public string GetPredictionSummaryTargetsUrl(string projectId, string projectStage = null, string xperimentbuildId = null, bool? showTargetsPane = null, int? recordsPerPage = null, int? rowHeight = null, IEnumerable<string> pageNames = null, string selectedPageName = null, string evaluationMetric = null, string mergeType = null, IEnumerable<int> buildinfoIds = null, string xperimentKernelId = null, string selectedXperimentKernelId = null, string analysisGranularity = null, string featureGrouping = null, string forecastVersion = null, string modelStage = null, bool? includeGenAi = null, string modelTypes = null, string filterArenaTableBy = null, string sortArenaTableBy = null, string startDate = null, string endDate = null, bool? includeTrainData = null, string displayStartDate = null, string displayEndDate = null, bool? accessible = null)
Returns

System.String

The fully-qualified Dash app URL.

Parameters
TypeNameDescription
System.StringprojectIdThe project identifier (path segment).
System.StringprojectStageProject stage (e.g. "pipeline").
System.StringxperimentbuildIdTarget build ID to pre-select in the unified view.
System.Nullable<System.Boolean>showTargetsPaneWhether the targets pane is visible on initial load.
System.Nullable<System.Int32>recordsPerPageTargets pane table records per page.
System.Nullable<System.Int32>rowHeightTargets pane table row height in pixels.
System.Collections.Generic.IEnumerable<System.String>pageNamesPage names to display. Each entry emits a separate page_names query parameter
(e.g. &page_names=Forecast&page_names=Beeswarm), matching the repeated-key
format the Dash app expects.
System.StringselectedPageNameThe page to display by default.
System.StringevaluationMetricEvaluation metric.
System.StringmergeTypeMerge type.
System.Collections.Generic.IEnumerable<System.Int32>buildinfoIdsBuildinfo identifiers. Each entry emits a separate buildinfo_ids query parameter
(e.g. &buildinfo_ids=1&buildinfo_ids=2), matching the repeated-key
format the Dash app expects. For pipeline stage, pass a single-element collection.
System.StringxperimentKernelIdXperiment kernel ID; excludes model arena table when set.
System.StringselectedXperimentKernelIdXperiment kernel ID; model arena table is still shown.
System.StringanalysisGranularityAnalysis granularity level.
System.StringfeatureGroupingFeature grouping strategy.
System.StringforecastVersionForecast version name.
System.StringmodelStageModel stage.
System.Nullable<System.Boolean>includeGenAiWhether to include the Gen AI component.
System.StringmodelTypesModel type restriction filter.
System.StringfilterArenaTableByJSON string for arena table filtering.
System.StringsortArenaTableByJSON string for arena table sorting.
System.StringstartDateStart date filter (ISO format).
System.StringendDateEnd date filter (ISO format).
System.Nullable<System.Boolean>includeTrainDataWhether to include training data.
System.StringdisplayStartDateDisplay/axis start date (ISO format).
System.StringdisplayEndDateDisplay/axis end date (ISO format).
System.Nullable<System.Boolean>accessibleWhen true, enables accessibility mode.

GetForecastAnalysisUrl(string, string, string, string, string, string, string, string, bool?, bool?)

Builds the URL for the Forecast Analysis page.

Declaration
public string GetForecastAnalysisUrl(string projectId, string buildinfoId, string viewType = null, string predictionCallIds = null, string analysisGranularity = null, string actualsMode = null, string hierarchy = null, string dimensions = null, bool? metricOverlapEnabled = null, bool? accessible = null)
Remarks

Supports four view types: "all", "timeline-chart", "metrics", and "growth-rates". Each view renders a different subset of the analysis.

Returns

System.String

The fully-qualified Dash app URL.

Parameters
TypeNameDescription
System.StringprojectIdThe project identifier (path segment, required).
System.StringbuildinfoIdThe build info identifier (path segment, required).
System.StringviewTypeView type: "all", "timeline-chart", "metrics", or "growth-rates".
System.StringpredictionCallIdsComma-separated forecast version IDs to pre-select.
System.StringanalysisGranularityAnalysis granularity (e.g. "D", "W", "M", "Q", "Y").
System.StringactualsModeActuals mode: "PointInTime" or "Live".
System.StringhierarchyHierarchy name to pre-select.
System.StringdimensionsDimension filters (e.g. "Region:APAC,EMEA;Product:Widgets").
System.Nullable<System.Boolean>metricOverlapEnabledWhen true, auto-computes overlap on first render.
System.Nullable<System.Boolean>accessibleWhen true, enables accessibility mode.

GetProjectConfigurationUrl(string, string, bool?)

Builds the URL for the Project Configuration page.

Declaration
public string GetProjectConfigurationUrl(string projectId, string buildinfoId, bool? accessible = null)
Returns

System.String

The fully-qualified Dash app URL.

Parameters
TypeNameDescription
System.StringprojectIdThe project identifier.
System.StringbuildinfoIdThe build info identifier.
System.Nullable<System.Boolean>accessibleWhen true, enables accessibility mode.

GetSourceDataFeaturesUrl(string, string, string)

Builds the URL for the Source Data Features page.

Declaration
public string GetSourceDataFeaturesUrl(string projectId, string buildinfoId, string appName)
Returns

System.String

The fully-qualified Dash app URL.

Parameters
TypeNameDescription
System.StringprojectIdThe project identifier (path segment).
System.StringbuildinfoIdThe build info identifier (path segment).
System.StringappNameThe application name (required query parameter).

GetPipelineRunTrackerUrl(string, string, bool?)

Builds the URL for the Pipeline Run Tracker page.

Declaration
public string GetPipelineRunTrackerUrl(string projectId, string buildinfoId, bool? accessible = null)
Returns

System.String

The fully-qualified Dash app URL.

Parameters
TypeNameDescription
System.StringprojectIdThe project identifier.
System.StringbuildinfoIdThe build info identifier.
System.Nullable<System.Boolean>accessibleWhen true, enables accessibility mode.

GetPipelineFeaturesGeneralizationUrl(string, string, bool?)

Builds the URL for the Pipeline Features Generalization page.

Declaration
public string GetPipelineFeaturesGeneralizationUrl(string projectId, string buildinfoId, bool? accessible = null)
Returns

System.String

The fully-qualified Dash app URL.

Parameters
TypeNameDescription
System.StringprojectIdThe project identifier.
System.StringbuildinfoIdThe build info identifier.
System.Nullable<System.Boolean>accessibleWhen true, enables accessibility mode.

GetDataDatasetAggregateUrl(string, string, bool?)

Builds the URL for the Data Dataset Aggregate page.

Declaration
public string GetDataDatasetAggregateUrl(string projectId, string buildinfoId, bool? accessible = null)
Returns

System.String

The fully-qualified Dash app URL.

Parameters
TypeNameDescription
System.StringprojectIdThe project identifier.
System.StringbuildinfoIdThe build info identifier.
System.Nullable<System.Boolean>accessibleWhen true, enables accessibility mode.

GetEventsViewUrl(string, string, bool?)

Builds the URL for the Events View dashboard page.

Declaration
public string GetEventsViewUrl(string projectId, string buildinfoId, bool? accessible = null)
Returns

System.String

The fully-qualified Dash app URL.

Parameters
TypeNameDescription
System.StringprojectIdThe project identifier.
System.StringbuildinfoIdThe build info identifier.
System.Nullable<System.Boolean>accessibleWhen true, enables accessibility mode.

GetComponentWorkflowUrl(string, bool?, bool?)

Builds the URL for the Component Workflow page.

Declaration
public string GetComponentWorkflowUrl(string workflowId, bool? hideWorkflowName = null, bool? accessible = null)
Returns

System.String

The fully-qualified Dash app URL.

Parameters
TypeNameDescription
System.StringworkflowIdThe workflow instance identifier.
System.Nullable<System.Boolean>hideWorkflowNameWhen true, hides the workflow name header.
System.Nullable<System.Boolean>accessibleWhen true, enables accessibility mode.

GetClusteringHomeUrl(string)

Builds the URL for the AI Clustering Analysis home page.

Declaration
public string GetClusteringHomeUrl(string appName = null)
Returns

System.String

The fully-qualified Dash app URL.

Parameters
TypeNameDescription
System.StringappNameThe host platform application name.

GetDriftAnalysisUrl(string, string, string)

Builds the URL for the Drift Analysis page.

Declaration
public string GetDriftAnalysisUrl(string utilizationManagerInstanceId, string driftRoutineInstanceId, string workflowName = null)
Returns

System.String

The fully-qualified Dash app URL.

Parameters
TypeNameDescription
System.StringutilizationManagerInstanceIdThe Utilization Project Manager routine instance ID.
System.StringdriftRoutineInstanceIdThe Drift Analysis routine instance ID.
System.StringworkflowNameDisplay name for the workflow.

GetPeerGroupAnalysisUrl(string, string, string)

Builds the URL for the Peer Group Analysis page.

Declaration
public string GetPeerGroupAnalysisUrl(string utilizationManagerInstanceId, string workflowRoutineInstanceId, string workflowName = null)
Returns

System.String

The fully-qualified Dash app URL.

Parameters
TypeNameDescription
System.StringutilizationManagerInstanceIdThe Utilization Project Manager routine instance ID.
System.StringworkflowRoutineInstanceIdThe workflow routine instance ID.
System.StringworkflowNameDisplay name for the workflow.

GetRankingAnalysisUrl(string)

Builds the URL for the Ranking Analysis page.

Declaration
public string GetRankingAnalysisUrl(string projectInstanceId)
Returns

System.String

The fully-qualified Dash app URL.

Parameters
TypeNameDescription
System.StringprojectInstanceIdThe project instance identifier.

GetPerformanceScoreUrl(string)

Builds the URL for the Performance Score page.

Declaration
public string GetPerformanceScoreUrl(string projectInstanceId)
Returns

System.String

The fully-qualified Dash app URL.

Parameters
TypeNameDescription
System.StringprojectInstanceIdThe project instance identifier.

GetRoutineArtifactUrl(string, string, string, bool?)

Builds the URL for the Routine Artifact page. This is the primary route for rendering any IArtifactWebApp.

Declaration
public string GetRoutineArtifactUrl(string routineInstanceId, string routineRunId, string artifactKey, bool? accessible = null)
Returns

System.String

The fully-qualified Dash app URL.

Parameters
TypeNameDescription
System.StringroutineInstanceIdThe routine instance identifier.
System.StringroutineRunIdThe routine run identifier.
System.StringartifactKeyThe artifact key to resolve the web app (required).
System.Nullable<System.Boolean>accessibleWhen true, enables accessibility mode.

GetProjectRoutineArtifactUrl(string, string, string, string, bool?)

Builds the URL for the Project Routine Artifact page (project-scoped variant).

Declaration
public string GetProjectRoutineArtifactUrl(string projectId, string routineInstanceId, string routineRunId, string artifactKey, bool? accessible = null)
Returns

System.String

The fully-qualified Dash app URL.

Parameters
TypeNameDescription
System.StringprojectIdThe project identifier.
System.StringroutineInstanceIdThe routine instance identifier.
System.StringroutineRunIdThe routine run identifier.
System.StringartifactKeyThe artifact key to resolve the web app (required).
System.Nullable<System.Boolean>accessibleWhen true, enables accessibility mode.

GetArtifactAnalyzerUrl(string, string, IEnumerable<string>, bool?)

Builds the URL for the Artifact Analyzer page.

Declaration
public string GetArtifactAnalyzerUrl(string routineInstanceId, string routineRunId = null, IEnumerable<string> qualifiedKeys = null, bool? accessible = null)
Returns

System.String

The fully-qualified Dash app URL.

Parameters
TypeNameDescription
System.StringroutineInstanceIdThe routine instance identifier.
System.StringroutineRunIdFilter to a specific routine run.
System.Collections.Generic.IEnumerable<System.String>qualifiedKeysQualified artifact keys to display. Each entry emits a separate qualified_keys
query parameter (e.g. &qualified_keys=key1&qualified_keys=key2),
matching the repeated-key format the Dash app expects.
System.Nullable<System.Boolean>accessibleWhen true, enables accessibility mode.

GetRoutineDocumentationUrl(string)

Builds the URL for the Routine Documentation page.

Declaration
public string GetRoutineDocumentationUrl(string routineType)
Returns

System.String

The fully-qualified Dash app URL.

Parameters
TypeNameDescription
System.StringroutineTypeThe routine type name, or "global-docs" for all documentation.

GetFeaturePackageManagerUrl(string, bool?)

Builds the URL for the Feature Package Manager page.

Declaration
public string GetFeaturePackageManagerUrl(string page, bool? accessible = null)
Remarks

app_name is intentionally not a parameter here: Workspace.XBR.Xperiflow.Core.URL.XperiflowWebAppURLBuilder.BuildDashUrl(System.String%2cSystem.Collections.Generic.Dictionary%7bSystem.String%2cSystem.String%7d%2cSystem.Collections.Generic.List%7bSystem.Collections.Generic.KeyValuePair%7bSystem.String%2cSystem.String%7d%7d) already attaches it automatically from the session's OneStream.Shared.Common.SessionInfo.AppName for every URL this builder produces, so passing it explicitly here was redundant.

Returns

System.String

The fully-qualified Dash app URL.

Parameters
TypeNameDescription
System.StringpageThe page to display: "generators" or "packages" (required).
System.Nullable<System.Boolean>accessibleWhen true, enables accessibility mode.

GetHierarchicalColumnSetsUrl()

Builds the URL for the Hierarchical Column Sets page.

Declaration
public string GetHierarchicalColumnSetsUrl()
Returns

System.String

The fully-qualified Dash app URL.

GetCubeDatasourceManagerUrl(string, string)

Builds the URL for the Cube Datasource Manager page.

Declaration
public string GetCubeDatasourceManagerUrl(string projectId, string applicationName = null)
Returns

System.String

The fully-qualified Dash app URL.

Parameters
TypeNameDescription
System.StringprojectIdThe project identifier.
System.StringapplicationNameThe OneStream application name.

GetCubeWriteAdminUrl(string)

Builds the URL for the Cube Write Admin page.

Declaration
public string GetCubeWriteAdminUrl(string applicationName = null)
Returns

System.String

The fully-qualified Dash app URL.

Parameters
TypeNameDescription
System.StringapplicationNameThe OneStream application name.

GetPbmViewerUrl(string)

Builds the URL for the PBM Viewer page.

Declaration
public string GetPbmViewerUrl(string pbmClassName)
Returns

System.String

The fully-qualified Dash app URL.

Parameters
TypeNameDescription
System.StringpbmClassNameThe PBM class name to view.

Inherited Members

  • System.Object.Equals(System.Object)
  • System.Object.Equals(System.Object,System.Object)
  • System.Object.GetHashCode
  • System.Object.GetType
  • System.Object.MemberwiseClone
  • System.Object.ReferenceEquals(System.Object,System.Object)
  • System.Object.ToString

Was this page helpful?