Forum Widgets
Latest Discussions
Rest API Error:"The parameter Members does not exist in method AddTenantTheme"
Using the following code. $colorPairs = @{ "themePrimary" = "#003538"; "themeLighterAlt" = "#cbe6e7"; "themeLighter" = "#a1cfd1"; "themeLight" = "#7cb8bb"; "themeTertiary" = "#5ba2a5"; "themeSecondary" = "#3f8c90"; "themeDarkAlt" = "#28767a"; "themeDark" = "#166064"; "themeDarker" = "#094b4e"; "neutralLighterAlt" = "#f8f8f8"; "neutralLighter" = "#f4f4f4"; "neutralLight" = "#eaeaea"; "neutralQuaternaryAlt" = "#dadada"; "neutralQuaternary" = "#d0d0d0"; "neutralTertiaryAlt" = "#c8c8c8"; "neutralTertiary" = "#98a9da"; "neutralSecondary" = "#4863b4"; "neutralPrimaryAlt" = "#113191"; "neutralPrimary" = "#002081"; "neutralDark" = "#001963"; "black" = "#001249"; "white" = "#ffffff"; } $content = @{ "name" = "MyCustomTheme" "themeJson" = $jsonBody } | ConvertTo-Json $apiUrl = "https://<<domain>>-admin.sharepoint.com/_api/thememanager/AddTenantTheme" Invoke-PnPSPRestMethod -Url $apiUrl -Method "Post" -Content $content Tried many different combinations but kept getting Invoke-PnPSPRestMethod: {"odata.error":{"code":"-1, Microsoft.SharePoint.Client.InvalidClientQueryException","message":{"lang":"en-US","value":"The parameter Members does not exist in method AddTenantTheme."}}} Wondering if somebody can run this code successfully and let me know what I am missing.AmarDhanJul 26, 2026Copper Contributor30Views0likes2CommentsCan PnP Provisioning preserve SharePoint List GUIDs across environments?
I am using PnP Framework 1.15.1 with the 2022/09 Provisioning Schema to provision SharePoint Online lists. After applying the provisioning template, I noticed that all newly created lists have different SPList.Id (GUID) values compared to the source site. My template contains standard pnp:ListInstance definitions, for example: <pnp:ListInstance Title="Event Types" TemplateType="100" Url="Lists/EventTypes" TemplateFeatureID="00bfea71-de22-43b2-a848-c05709900100"> ... </pnp:ListInstance> I checked the 2022/09 schema and I couldn't find any attribute to specify the list GUID. I also noticed that the provisioning engine registers ListIdToken using createdList.Id, which seems to happen after the list has already been created. My questions are: Is it expected that PnP Provisioning always creates new SharePoint List GUIDs? Is there any supported way to preserve the original SPList.Id during provisioning? Was this ever supported in previous versions of the PnP Provisioning schema or framework? Any official documentation or confirmation from the PnP team would be appreciated.rosamartinamilazzo25Jul 26, 2026Copper Contributor29Views1like2CommentsSharePoint Multi-geo: accessing a user's home-geo custom SharePoint properties from a different geo
Setup M365 tenant, multi-geo (NAM + EMEA). SharePoint custom user profile properties are synced only in the user’s home geo (their Preferred Data Location). SPFx webparts running on the NAM tenant, using PnP/SP or AadTokenProvider. Goal: when an EMEA user opens a NAM page, read their SharePoint custom properties from the EMEA tenant. Issue 1 — Can’t read profile properties from a different geo-tenant What I’m doing const sp = spfi(emeaTenantUrl).using(SPFx(webpartContext), SPFxToken(webpartContext)); const result = await sp.profiles.getPropertiesFor(basicInfo.data.LoginName); Error Access Denied: This application does not have the required permissions to access profile information. The core problem — token is missing my approved scopes Approved Scopes in webApiPermissionManagement (Office 365 SharePoint Online) in SharePoint Admin Center: Sites.Search.All, AllProfiles.Manage, User.Read, User.Read.All, Files.ReadWrite.All, TermStore.ReadWrite.All, Sites.ReadWrite.All, Sites.FullControl.All. Token issued for the SharePoint resource only contains: Files.ReadWrite.All, M365BillingPlatform.Read.All, Sites.FullControl.All, Sites.ReadWrite.All, TermStore.ReadWrite.All. So AllProfiles.Manage, User.Read.All, Sites.Search.All are not in the token and an unexpected M365BillingPlatform.Read.All is. Also tried calling the SharePoint REST API directly with a token from AadTokenProvider → same Access Denied. Questions Why is the issued token missing my approved scopes (and where is M365BillingPlatform.Read.All coming from)? Is there a supported way to read a user’s SharePoint profile custom properties from a different geo-tenant from an SPFx webpart? Approved Scopes in Admin center Issue 2 — Search query template {User.*} properties not resolving cross-geo What I’m doing A SharePoint Search query in the webpart uses a query template that pulls custom user properties dynamically: {|owstaxidmetadataalltagsinfo:{User.customProperty1}} OR {|owstaxidmetadataalltagsinfo:{User.customProperty2}} The SP object is created the same way as in Issue 1. What’s not working When an EMEA user loads the webpart on the NAM tenant, the {User.*} tokens don’t resolve — the query modification shows the static property name itself instead of the user’s values from EMEA. Question How do I get the query template to resolve {User.customProperty} using the user’s home-geo (EMEA) profile values?JavazTechJul 24, 2026Copper Contributor8Views0likes0CommentsClarification on SharePoint Macro Consent Flow and Permissions
Hi Team, We have a customer using SharePoint in a secure environment. While configuring the Prolaborate SharePoint Macro on their site, a consent popup is displayed during the approval process. Previously, our macro implementation used the Admin Consent flow. Based on the customer’s security and approval requirements, we have modified the consent to use the User Consent flow instead. The customer has requested additional clarification regarding the consent process. Specifically, they would like to understand: The exact API calls triggered for these two consents View your basic profile Maintain access to data you have given it access to The permissions being requested from Microsoft Graph or SharePoint Whether the application requests any tenant-wide or high-privilege permissions Whether minimal permissions such as Sites.Selected can be used instead of broader scopes Current concern: The customer feels the current permission request is too broad for approval within their secure environment (Banking customer). Reason: Their internal approval process requires clear visibility into the exact API and permission scopes being requested, as different permissions are reviewed and approved by different internal teams (for example, User.Read is managed by the Identity team). From our implementation side, we are using only custom APIs and are not directly calling Microsoft Graph APIs. This information will help us provide a clear response to the customer and support their internal approval process.DevTeamJul 11, 2026Copper Contributor76Views0likes1CommentView lists full screen
I have a huge list in SP online with many columns and the left side navigation takes up prime real estate. Initially, I wanted to be able to collapse or hide the left side navigation on this page only, but according to this post, that isn't currently possible. Is there any way to view the list in a full-screen view via the modern view, so only the list is being displayed, not the top ribbon, left navigation page, etc. ?katiem83Jul 02, 2026Copper Contributor5.3KViews2likes2CommentsNews post not showing up in feed
Have any of you seen random behavior where occasionally a new News Post doesn't show up in the News web part for a period of time? I'm assuming it's some sort of caching or CDN issue, but I will say that clearing cache doesn't resolve it. If and when the issue occurs, it appears to take about an hour or two before the article starts showing up in the feed, as expected. If anyone has seen this, do you have any workarounds or ways to kick start it, besides organizing that article to the top of the feed manually?homolworksApr 30, 2026Tin Contributor53Views0likes0CommentsNavigating SharePoint App Permissions After Azure ACS Retirement
With the retirement of Azure ACS (Access Control Services), the familiar SharePoint page (_layouts/15/appprincipals.aspx) used to view and manage app permissions is no longer available. Previously, developers could quickly inspect and revoke app permissions directly from this interface. Now, permission management has shifted to more modern approaches using Azure AD app registrations and SharePoint Online PowerShell. To review and remove permissions, developers should leverage tools like the Microsoft Graph API, Azure Portal (for Enterprise Applications and App Registrations), or SharePoint Online Management Shell (Get-SPOSite, Get-SPOAppPrincipal, and related cmdlets). This transition encourages better alignment with current security practices, centralized identity management, and improved governance across Microsoft 365 environments.aryan003Apr 17, 2026Copper Contributor71Views0likes0CommentsViva Learning – SharePoint content provider configured but content not appearing in Teams
Hi everyone, I’m configuring Viva Learning in Microsoft Teams and I’m trying to use SharePoint as a content provider to publish custom learning content (Word, PowerPoint, Excel, PDF, audio, video, and web links). What I’ve done so far: Created a dedicated SharePoint site. Waited about one hour before adding it as a SharePoint provider in Viva Learning. After the configuration, the “Learning App Content Repository” list was automatically created. In the document library, I uploaded: PDF files a web link I copied the folder URLs and added them to the Learning App Content Repository list. I also followed the official procedure to create and assign a Microsoft 365 Group, as described in this documentation: https://learn.microsoft.com/en-us/viva/learning/sharepoint-permissions The issue: Almost 24 hours have passed, but I still don’t see any content in Viva Learning (Teams). In the sync logs, I can see that synchronization jobs are running, but the content is either not appearing or only partially synchronized. At this point, I’m not sure: if I’m missing something in the SharePoint provider configuration, if the folder URLs are incorrect, or if there’s some additional requirement related to permissions or metadata. Has anyone experienced a similar issue or can suggest what I should check next? Thanks in advance!rosamartinamilazzo25Apr 17, 2026Copper Contributor230Views0likes4CommentsSPFx CDN URLs not consistently added to Trusted Script Sources (CSP)
Hi everyone, We’re currently investigating an issue related to SharePoint Online Content Security Policy (CSP) and Trusted Script Sources (TSS) for SPFx solutions. [SharePoint Online] [SPFx] [CSP] Scenario We deployed multiple SPFx .sppkg packages via App Catalog These solutions load scripts from an external CDN (cdnBasePath, with includeClientSideAssets: false) Expected Behavior As per documentation, CDN URLs used by SPFx solutions should be available/registered in Trusted Script Sources so that scripts can load under CSP enforcement Observed Behavior Only some CDN URLs (from certain packages) appear in Trusted Script Sources Others are missing, even though they are similarly configured and deployed Due to this, scripts from those missing sources are blocked by CSP, and the extension fails to load Additional Notes No use of eval() or inline scripts in our code Re-deploying packages sometimes resolves the issue (CDN URLs get registered afterward) Behavior appears inconsistent across environments Question Has anyone encountered a similar issue where: Trusted Script Sources were partially auto-populated from App Catalog deployments? CDN URLs from some SPFx packages were not registered automatically? Any insights on: Root cause Known limitations Best practices to ensure consistent registration would be really helpful. Thanks in advance!rishiupatilApr 10, 2026Copper Contributor143Views1like1CommentSharePoint ACS Retirement – Guidance Needed for Migration to Azure AD / Graph or Better if Available
We have an integration between Microsoft Dynamics 365 Business Central (AL) and SharePoint Online for uploading and accessing files in document libraries. Current Implementation App Registration & Permissions App created using: /_layouts/15/appregnew.aspx Permissions granted via: /_layouts/15/appinv.aspx → “Trust It” Current permission (overly broad): <AppPermissionRequests AllowAppOnlyPolicy="true"> <AppPermissionRequest Scope="http://sharepoint/content/sitecollection/tenant" Right="FullControl" /> </AppPermissionRequests> Authentication (ACS Token) We generate access tokens using: POST https://accounts.accesscontrol.windows.net/{tenant-id}/tokens/OAuth/2 SharePoint API Usage We are using SharePoint REST API: Upload file: POST https://<org>.sharepoint.com/sites/<site>/_api/web/GetFolderByServerRelativeUrl('/sites/<site>/Shared Documents')/Files/add(url='file.pdf',overwrite=true) Download / read files: GET https://<org>.sharepoint.com/sites/<site>/_api/web/GetFileByServerRelativeUrl('/sites/<site>/Shared Documents')/Files... Questions After April 2026, will existing ACS-based integrations completely stop working, or only new registrations will be blocked? What is the recommended modern approach for this scenario: Continue using SharePoint REST API with Azure AD token OR migrate fully to Microsoft Graph API If we switch to Azure AD authentication: Can we continue using existing _api/web/... endpoints? Or is Graph API mandatory? What is the best way to restrict access to a single SharePoint site (avoid tenant-wide permissions like FullControl)? For Business Central (AL), is there any recommended approach or pattern for: Generating Azure AD tokens (client credentials flow) Calling SharePoint / Graph APIs securely Any guidance, best practices, or migration examples would be highly appreciated. If possible pls share some Blogs or resource when this overall new process is explain so that i can can a hit and start the development.Solvedaryan003Apr 09, 2026Copper Contributor1.5KViews0likes5Comments
Tags
- developer1,257 Topics
- PnP653 Topics
- apis494 Topics
- Extensibility256 Topics
- Responsive129 Topics
- hybrid82 Topics
- SPFx70 Topics
- SharePoint Online64 Topics
- PowerShell23 Topics
- SharePoint Online Office 36515 Topics