Microsoft Planner
Overview
Microsoft Planner is a cloud project and task management tool. Planview Hub's Microsoft Planner connector synchronizes Task artifacts between Planner and other tools in your software delivery toolchain.
Project Managers may standardize Planner for day-to-day task scheduling while other teams — development, testing, requirements, ITSM — work on different tools. Without integration, this creates friction: status updates and scheduling changes don't flow automatically between the PMO's plan and the tools where the work happens.
By using Planview Hub to integrate Microsoft Planner with other software delivery tools, Project Managers and the rest of the project team get the benefit of information flowing automatically across the whole team. For example, if Project Managers use Planner and developers use Atlassian Jira:
● Project Managers schedule work and assign tasks using Planner
● Tasks are automatically mirrored in Jira as stories or sub-tasks
● Jira updates flow back to Planner wherever the connector supports writing that field (see Supported Field Types)
Key Features and Benefits
● Improved visibility into project status by connecting the development team's work with the Project Managers' and PMO's view
● Synchronizes Task artifacts across the lifecycle, allowing information to flow freely between Planner and other tools
● Enables centralized planning and control, improving cross-tool reporting without manual processes or spreadsheets
Connector Setup Details
This section describes the basic steps needed to prepare your Microsoft Planner (Dataverse) environment for use with Hub.
Minimal User Permissions
We recommend creating a dedicated service account within your Microsoft 365 tenant, used only for the Hub integration. This ensures the correct permissions are granted and allows traceability of changes made by the synchronization.
● A Planner and Project Plan 3, or Planner and Project Plan 5, license assigned directly to the service account
○ Note: Planner Plan 1 does not include the premium capabilities this connector depends on.
● The "Project Manager" Dataverse security role (or an equivalent custom role with Project Schedule Service privileges), assigned by a Dataverse administrator in the target environment — the auto-assigned "Basic User" role is not sufficient
● The account is exempt from Multi-Factor Authentication (or covered by a Conditional Access exemption) — neither authentication method below supports MFA-protected accounts
Connecting to the Microsoft Planner Repository
This connector supports two authentication methods against Azure Active Directory / Dataverse. Both are live, user-facing options — pick whichever fits how your organization manages app credentials.
Microsoft Service Principal with Certificate (ROPC)
Hub signs the required token internally from an uploaded certificate — no manual JWT generation is needed.
Required Fields:
● Location/URL
○ Example Format: https://yourorg.crm.dynamics.com
● Username
○ Example Format: service-account@yourorg.com
● Password
● Tenant ID: This is the Directory (tenant) ID found in the App Registration Overview.
● Client ID: This is the Application (client) ID found in the App Registration Overview.
● Scope: This is the Dataverse resource identifier with the .default suffix.
○ Example Format: https://yourorg.crm.dynamics.com/.default
Optional Fields:
● Proxy Settings: For networks requiring an outbound proxy.
● Throttling Settings: This field indicates the number of API calls that can be made per minute.
○ Note: This field should only be set under the guidance of Planview Customer Care, as the ideal value is highly dependent on each customer's unique environment.

Microsoft Azure Active Directory OAuth2 via Certificate (ROPC)
This method requires you to generate and sign your own JWT ("Client Assertion") outside of Hub, then paste it in.
Required Fields:
● Location/URL
○ Example Format: https://yourorg.crm.dynamics.com
● Username
○ Example Format: service-account@yourorg.com
● Password
● Client ID: This is the Application (client) ID found in the App Registration Overview.
● Scope: This is the Dataverse resource identifier with the .default suffix.
● Token Location: This is the full Azure AD token endpoint URL.
○ Example Format: https://login.microsoftonline.com/<tenant-id>/oauth2/v2.0/token
● Client Assertion: This is the entire encoded JWT token, created and signed with your registered certificate. Hub does not generate or renew this for you.

Setting Up Azure Active Directory Authentication
1. Register an application for Hub in Azure Active Directory.

2. Grant the application the delegated permission user impersonation for Dataverse (API permissions → Add a permission → Dynamics CRM / Dataverse → Delegated permissions).
3. Generate a Public/Private X.509 certificate key pair.
4. Upload the public certificate to the app registration (Certificates & secrets → Certificates).
Note: The screenshot below is taken from a SharePoint app registration, shown here only to illustrate the Certificates & secrets screen — this screen is identical for every Azure AD app registration, regardless of which repository (Planner/Dataverse or otherwise) the registration is created for.

5. Ask your Dataverse administrator to assign the "Project Manager" security role to the service account in the target Dataverse environment (Power Platform Admin Center → Environments → select environment → Users + permissions → Users → select user → Manage Security Roles).
6. Generate a new JWT token.
You can find additional information on the structure of the JWT token here and a tutorial on generating the JWT on Linux using Node here.
Note: You may need a Linux/Windows PC for this process.
7. Save the token to use in Hub.
8. Fill in the Repository Connection fields in Hub as follows:
Username: The Hub user’s username
Password: The Hub user’s password
Token Location: This is the Directory (tenant) ID from the App Registration Overview section
Example Format: https://login.microsoftonline.com/<tenant-id>/oauth2/v2.0/token
Client ID: This is the Application (client) ID from the App Registration Overview section
Scope: This is the base URL (i.e., the project URL without “/sites/pwa”)
Example Format: https://mycompany.api.crm.dynamics.com/.default
Client Assertion: This is the entire encoded JWT token
Note: - Image shown below is only for illustration purpose

Other Configuration Settings
Person Reconciliation
All person fields come from the Dataverse systemuser entity and are read-only — Hub can look up and reconcile against Planner users for assignment purposes but cannot create or update Dataverse user records.
For Person Reconciliation, the following fields are available.
|
Fields Used for HUB's Default Person Reconciliation Algorithm |
Field Names for Reconciliation Extension |
Label in Microsoft Planner |
|---|---|---|
|
ID |
systemuserid |
User |
|
Display Name |
fullname |
Full Name |
|
Username |
domainname |
User Name |
|
|
internalemailaddress |
Primary Email |
|
First Name |
firstname |
First Name |
|
Last Name |
lastname |
Last Name |
|
Azure AD Object ID |
azureactivedirectoryobjectid |
Azure AD Object ID |
Full Scan
Due to third party API limitations, changes to the following fields may not trigger change detection or cause a synchronization immediately. To ensure these updates synchronize, a high fidelity full scan must occur or another qualifying change must be made to the artifact:
● 'Assignees' Field
● 'Labels' Field
Learn more about how to configure change detection and full scan intervals in Planview Hub here.
Supported Features
Special Features Supported
You can learn more about special features in Planview Hub here.
|
Feature |
Custom Type Supported? |
Applicable Hub Versions |
Applicable Repository Versions |
|---|---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
State Transitions |
No |
Planview Hub: 26.4 and later |
Microsoft Planner |
Supported Artifact Types
Supported Work Items
|
Supported Artifact Type |
Applicable Hub Versions |
Applicable Repository Versions |
Unique URL? |
|---|---|---|---|
|
Task |
Planview Hub: 26.4 and later |
Microsoft Planner (Dataverse) |
|
Supported Containers
|
Containers that can synchronize between repositories |
Applicable Hub Versions |
Applicable Repository Versions |
Unique URL? |
|---|---|---|---|
|
N/A |
|
|
|
|
Containers used to define the boundary of a collection |
|
|
|
|
Projects |
Planview Hub: 26.4 and later |
Any supported repository version: |
N/A |
|
Containers used for artifact routing |
|
|
|
|
Projects |
Planview Hub: 26.4 and later |
Any supported repository version: |
N/A |
Supported Field Types
If one field of a given type is supported, others of that type should generally also work — repository-specific exceptions are noted below.
Note: Custom fields are supported for Text, Number, Date, and Choice types (up to 10 per project) — see Functional Limitations below for details.
|
Standard Field Type |
How Is the Field Type Referenced in the Repository? |
Sample Repository Fields Supported |
Particular Repository Fields NOT Supported |
|---|---|---|---|
|
|
String |
Summary/Name, Description |
|
|
|
Choice / Lookup |
Bucket, Priority, Sprint, Project Task Status (writable, not settable on create) |
|
|
|
Junction table |
Labels |
|
|
|
Boolean |
Is Milestone, Is Critical, Is Summary — all read-only |
|
|
|
Date / DateTime |
Created On, Modified On; Start, Start Date (+TZ-Agnostic), Finish, Due Date (+TZ-Agnostic) — all read-only |
|
|
|
Double / Decimal |
Effort, Effort Completed, Effort Remaining, Duration, Progress — all read-only |
|
|
|
Integer |
Outline Level (read-only), Display Sequence |
|
|
|
Lookup |
Created By, Modified By (standard createdby/modifiedby columns) |
|
|
|
Resource Assignment |
Assignees (bookable resource → team member → assignment) |
|
|
|
Lookup |
Parent Task (writable on update; cannot be cleared to no-parent), Predecessor/Successor (create/delete only) |
|
|
|
— |
|
Description is a plain-text field only — no HTML |
|
|
— |
|
Not applicable — no URL-type field on Task |
|
|
— |
|
Cost, Worklogs, WBS, Attachments, Comments, Checklists — not implemented |
Functional Limitations
|
Category |
Limitation |
Applicable Hub Versions |
Applicable Repository Versions |
|---|---|---|---|
|
Third-Party Functional Limitation |
Most Planner's own scheduling fields (Effort, Progress, Duration, and schedule dates) are read-only. |
Planview Hub: 26.4 and later |
Microsoft Planner |
|
Third-Party API Limitation |
Comments are not supported. |
Planview Hub: 26.4 and later |
Microsoft Planner |
|
Third-Party API Limitation |
Attachments are not supported. |
Planview Hub: 26.4 and later |
Microsoft Planner |
|
Third-Party API Limitation |
Checklists are not supported. |
Planview Hub: 26.4 and later |
Microsoft Planner |
|
Third-Party API Limitation |
Rich text is not supported |
Planview Hub: 26.4 and later |
Microsoft Planner |
|
Third-Party API Limitation |
Cost tracking is not available. |
Planview Hub: 26.4 and later |
Microsoft Planner |
|
Third-Party API Limitation |
No work-hours breakdown or worklogs are available. |
Planview Hub: 26.4 and later |
Microsoft Planner |
|
Third-Party Functional Limitation |
The Parent field can be changed on update but cannot be cleared back to no-parent once set. |
Planview Hub: 26.4 and later |
Microsoft Planner |
|
Configuration Requirement |
The service account must be exempt from Multi-Factor Authentication. |
Planview Hub: 26.4 and later |
Microsoft Planner |
|
Configuration Requirement |
The service account must hold a Planner and Project Plan 3 (or Plan 5) license and be assigned to the "Project Manager" Dataverse security role. |
Planview Hub: 26.4 and later |
Microsoft Planner |
|
Third-Party API Limitation |
Only two status fields exist (Active/Inactive and read-only Status Reason). No configurable workflow transitions. |
Planview Hub: 26.4 and later |
Microsoft Planner |
|
Feature Not Supported |
Query Language Search (QLS) is not supported. |
Planview Hub: 26.4 and later |
Microsoft Planner |



