Integrating OnePlan Data with Cascade
Sync Projects & Portfolio Data from OnePlan into Cascade
This guide explains how to securely connect OnePlan to Cascade to automatically sync OnePlan Projects, Portfolio data, and KPIs into Cascade Objectives, Actions, Measures, and Metrics.
Automatically pull data from OnePlan (projects, work items, KPIs) and push updates into Cascade (Objectives/Actions and/or Measures/Metrics) on a schedule.
Integration Methods
We typically recommend two approaches depending on the type of data you need:
Method 1 – OnePlan OData Reporting Feed (Recommended for KPI + reporting datasets)
Use this when you want a stable reporting dataset (great for metrics/time-series and Power BI-style tables).
- OnePlan provides a Reporting OData URL plus an Authentication Key
- Authentication is done using Basic Auth (Username = Key Name, Password = Key Value)
- You can pull from standard tables in the OData feed
Method 2 – OnePlan REST API (Recommended for project/task sync and richer objects)
Use this when you need more “application-style” data like:
- specific Plans (projects), tasks, status reports, custom fields
- “lookup” style queries by field
- (optional) writing back to OnePlan later (if ever needed)
1) Authentication Setup
Authentication Key (Recommended for Production)
This is the best “production-friendly” approach for OnePlan because it’s:
- non-user-scoped (no individual user password/PAT management)
- easy to rotate/revoke
- already the standard for Microsoft’s OnePlan connector model
The link below provides more details on how to setup an authentication key in OnePlan
https://support.oneplan.ai/hc/en-us/articles/4910183233549-Set-up-OnePlan-OData-Reporting
Customer steps (OnePlan Admin)
- In OnePlan, open Configuration (gear icon).
- Go to Integrations.
- Under Authentication Keys, click Add Key.
- Give the key a clear name (ex: Cascade Integration).
- Copy the Key Value (shown once) and store it securely.
What the customer provides to Cascade
- OnePlan Region / Base URL (ex: my.oneplan.ai, eu.oneplan.ai, au.oneplan.ai, ca.oneplan.ai)
- Authentication Key Name
- Authentication Key Value
- Confirmation of what OnePlan data should be in-scope (which plans/areas and fields)
2) Identify What Data to Sync
Method 1 – using OData
Customer steps
- Go to Admin → Integrations
- Copy the Reporting OData URL (example format shown in OnePlan docs)
- Decide which OData tables/fields you want to expose to Cascade
OnePlan’s OData Table Dictionary (shows available tables and highlights stable tables)
https://support.oneplan.ai/hc/en-us/articles/14628842405773-OData-Table-Dictionary
What the customer provides
- OData feed URL
- Which table(s) and fields represent the KPIs/projects you want to sync
Method 2 – using REST API
Customer steps
- Identify the Plan Types / Plans and the details in the plan you want Cascade to pull (projects/programs/etc.)
3) Pulling Data from OnePlan
Method 1 – OData Feed
- Cascade calls the customer’s OData feed URL
- Uses Basic Authentication
- Username = Authentication Key Name
- Password = Authentication Key Value
- Reads rows from the chosen table(s)
- Transforms rows into Cascade updates
Method 2 – REST API (project/task data)
- Cascade calls OnePlan REST endpoints under the customer’s region host (ex: https://my.oneplan.ai/...)
- Authenticates using the OnePlan Authentication Key
- Pulls plans/tasks via relevant endpoints
- Transforms results into Cascade Objectives and/or Success Criteria (Measures/Actions)
The link below provides a list of API calls that can be made to the REST API and the call depends on the type of data that is being pulled.
4) Mapping OnePlan Data to Cascade
KPI → Cascade Metrics (time-series)
Recommended normalized output from OnePlan to Cascade
- metric_key → Cascade Metric
- metric_date + metric_value → Data Point Upsert
Projects / Work Items → Cascade Objectives & Actions
Common mapping pattern:
- OnePlan Plan (project) → Cascade Objective
- OnePlan Task / Work item → Cascade Action
- OnePlan status/health/fields → Cascade custom fields (or status/progress rules)
Best practice: store the source system ID (OnePlan PlanId / TaskId) in Cascade (or vice versa) to keep mapping stable if names change.
5) Common Troubleshooting
Auth / access issues
- Key Value wasn’t copied at creation time (keys are masked after you leave the page)
- Wrong region host (ex: using my vs ca/eu)
Data issues
- KPI fields not numeric (Cascade Metrics require numeric values)
- Schema changes (use stable OData tables where possible)
Rate limits
- If using connector-style patterns, be mindful of throttling (example shown for OnePlan connector: 100 calls per 60 seconds per connection).