SharePoint Dev Platform
Welcome! This is your place to suggest ideas or vote for ideas for improving the SharePoint Dev Platform.
How to submit a new idea
- Check if it's already been suggested. If it has, vote for it.
- If it's new, submit it in 50 words or less.
- Gather support!
- If your idea receives over 100 votes in 90 days, we will respond.If not, we will close it.
Want to engage further? Please visit the SharePoint Community
Note: we have partnered with UserVoice, a third-party service and your use of the portal and your submission is subject to the UserVoice Terms of Service & Privacy Policy, including the license terms. Please do not send any novel or patentable ideas, copyrighted materials, samples or demos for which you do not want to grant a license to Microsoft.
-
SPWebConfigModification target for single web application, mention zone also in ApplyWebConfigModifications
SPWebApplication.Parent.ApplyWebConfigModifications()
SPWebApplication.Farm.Services.GetValue<SPWebService>().ApplyWebConfigModifications()In both these ApplyWebConfigModifications, The web.config modification refreshes all web.config files, it also does not differentiate zones. The last modified date changes for every web application web.config file, even if we targeted for a single web application. This seems default behaviour. Refreshing web.config entries recycles app pool and brings down other web applications which are not intended also.
Can we have options to specify zones or update to only specific web application. This is missing even in SharePoint 2016. Not available in SP2010 and SP2013 too.
SPWebConfigModification would be useful, when we add new servers to our Farm,…
9 votes -
Add SP.JS or PnP.JS version of Microsoft.SharePoint.Client.RecordsRepository.Records
Add SP.JS or PnP.JS wrapper around Microsoft.SharePoint.Client.RecordsRepository.Records to round out the CSOM call here: https://sharepoint.uservoice.com/forums/329220-sharepoint-dev-platform/suggestions/9069184-provide-the-ability-to-declare-undeclare-a-record
Currently there is no way to declare a record on modern views unless you dig into the complaince details dialog. Adding this will allow for SPFx extensions to expose this functionality.
8 votes -
Make webhooks for changes on the site metadata
Allow developers to start a webhooks subscribtion on changes to a site, for example: When a site is connected to a hub site, when a site is promoted as a hubsite, when the theme is changed, navigation is changed and such events.
8 votes -
Custom Access Request Form
There should be a way to register a webhook / set a alternative page for access request when a user is denied access to a site. We have an auto approval process that uses rules but there is no way to use it.
We were able to do it on premises
8 votes -
SharePoint Migration CreateSPAsyncReadJob Export Permissions
In the following article https://docs.microsoft.com/en-us/sharepoint/dev/apis/export-amr-api the CreateSPAsyncReadJob supports a number of items.
It states 'Permissions are expected to be covered in a subsequent version.' is expected to be covered in a subsequent version.
Is this feature on the roadmap? If it is, do you know when this will be released?
To get permissions subsequent calls need to be made to each item to get the permissions and build them locally
Would also be great to include permission changes in the StartChangeToken. At the moment if a permission is changed in a library the StartChangeToken does not flag this as a…
8 votes -
"FieldValues..." in REST API gives double-encoded field names
As reported by Shai Petel in github (https://github.com/SharePoint/sp-dev-docs/issues/1141), column names with non-ASCII characters or "special" characters (i.e. those that get encoded) are being double encoded by the REST API in the FieldValues... properties (this includes FieldValuesAsText, FieldValuesAsHtml, and FieldValuesForEdit).
For example, create a column called "Français" in a list with Title "Test" and call the following REST request: /api/web/lists/getbytitle('Test')/items?$expand=FieldValuesAsText,FieldValuesAsHtml,FieldValuesForEdit. in the response given the field's internal name is properly shown in the field values as "Franx00e7ais", but is shown as "Franx005fx00e7x005f_ais" in all of the "FieldValues..." properties.
This makes it very difficult…
8 votes -
/_api/web/tenantappcatalog/add endpoint should be return CorporateCatalogAppMetadata
/api/web/tenantappcatalog/add endpoints returns SP.File object, but it shoud be return Microsoft.SharePoint.Marketplace.CorporateCuratedGallery.CorporateCatalogAppMetadata (same as /api/web/tenantappcatalog/availableapps/getbyid).\
After I added a solution package, I can't deploy it because App ID is unknown. Certainly,I can get App ID by ListItemAllFIelds.UniqueId but I think it is very confusing.7 votes -
Provide a ChangeType for Data Governance label modifications in the Change Log
Currently any application of a Data Governance label to a List Item has only a SystemUpdate Change associated with it, even if the Label was applied manually by a user. When trying to detect a change in Label, this necessitates the inspection of every List Item following a SystemUpdate Change to see whether or not the _ComplianceTag field has changed.
Ideally, we would be able to make a ChangeQuery that did not include all SystemUpdates, but did include changes which involved the modification of a Data Governance Label.7 votes -
Support Microsoft Graph data connect
All Office 365 platforms, starting with SharePoint should be fully integrated with Microsoft Graph data connect and facilitate export of audits, metadata such as item created, deleted, viewed etc.
Related to:
7 votes -
Make Quick Edit Changeable Through CSOM APIs
Please make the advanced list property DisableGridEditing changeable through the CSOM/REST APIs.
6 votes -
List Product Id from /_api/web/tenantappcatalog/AvailableApps
Requirement, I have installed app in one site collection, and try to install the same app to another site collection to make a copy, but from the previous site collection, I can get the product Id, installed Id, but not the Id from the /api/web/tenantappcatalog/AvailableApps. is it possible to provide the original id and product id from this Rest API /api/web/tenantappcatalog/AvailableApps.
Thank you.
Long6 votes -
Bug In webAnalytics APT
I am trying to get daily and monthly hit count using below functions. It always returns 0 though TotalHit has value.
Microsoft.SharePoint.Client.Search.Analytics.AnalyticsItemData eachListItemAnalyticsData = UsageAnalyticsObj.GetAnalyticsItemData(1, oListItem);eachListItemAnalyticsData.GetHitCountForMonth(DateTime.Now)
eachListItemAnalyticsData.GetHitCountForDay(DateTime.Now)6 votes -
Allow Graph API to Query URIs with .aspx extensions
I'm trying to do a GET request against a sharepoint site when the URI has a .aspx extension. For example if I do 'GET https://graph.microsoft.com/v1.0/sites/hostname.sharepoint.com:/sites/blablabla/UK' this populates a response fine, but if I do 'GET https://graph.microsoft.com/v1.0/sites/hostname.sharepoint.com:/sites/blablabla/UKDTAppKZ/something.aspx' then I get a 404 error suggesting this site doesn't exist. Could we get some support for Graph API GET queries with sharepoint .aspx extensions?
6 votes -
Ability to configure CORS in SPSite
Make an admin page to configure CORS to allow other sites to make calls with creds, you could have url pattern matching too so that you could allow calls to just one page or list.
6 votes -
Single query to get max document ID when library has more than 5000 items
If document library has more than 5000 items it is not possible to execute one query to select maximum document ID (something like SELECT TOP 1 ID FROM XXX ORDER BY ID DESC). Only option is to loop in steps/pages of 5000 which can take a lot of loops due to possible large number of documents in document library or to find creative approach to increase ranges but still simple statement will perfect solution.
6 votes -
getFileByServerRelativeUrl with # in file name
Posted here per request at https://github.com/SharePoint/sp-dev-docs/issues/2630#issuecomment-425349455.
Expected or Desired Behavior
I'd be able to fetch file using getFileByServerRelativeUrl even if file name contains hash (#).Observed Behavior
https://tenant.sharepoint.com/sites/mysc/_api/web/getFileByServerRelativeUrl('%2Fsites%mysc%mydoclib%2Ffolder1%2Ffolder2%2Ffolder3%2F6Doc%23%3B%20Project%20Name.XLS')/$value returns SPException The file /sites/mysc/mydoclib/folder1/folder2/folder3/6Doc#; Project Name.XLS does not exist.Steps to Reproduce
I have file in /sites/mysc/mydoclib/folder1/folder2/folder3/6Doc#; Project Name.XLS. I need to get hold of the file (in order to copy it to another site collection), so in my SPFx web part I dolet file = sourceWeb.getFileByServerRelativeUrl(f.Path);
file.getBlob().then(blob => {
// deal with the file
});
where f.Path is encodeURIComponent'ed path of the file, so in the end it…6 votes -
Allow 3rd party native clients to call SP.Oauth.NativeClient Authenticate endpoint
Description:
Currently _api/SP.Oauth.NativeClient/Authenticate API endpoint is locked so that you can call this endpoint only if bearer token is granted by specifics MS azure apps.
This is only way to get SP authentication cookie by bearer token and it seems that every MS mobile apps use this method to acquire authentication cookie. Teams, mobile sharepoint app etc...When developing mobile apps you are now forced to do multiple authentications to open Sharepoint page or forced to store client credentials order to call vtibin/idcrl.svc/ which is another way to get SP authentication cookie programmatically.
Problem:
You can't create azure app…6 votes -
CustomActionGroup missing from CSOM
The UserCustomAction class is available in CSOM but i can't find an equivalent for CustomActionGroup. This is preventing my organization from adding a Custom Group to the Site Settings page. Without this functionality , we could be forced to inject our custom actions into an existing group.
6 votes -
Write to Web Property Bags
The ability to both read and write to the various property bags would be very helpful. Currently it's possible to read from a web property bag, but not to write. It'd be even better if the other property bags supported this.
6 votes -
Custom Theme SP2019
I am unable to apply custom themes from Theme Generator to SP2019 On-Premise. Please allow the ability to upload my custom theme JSON, or overwrite the Out of the Box themes to my organizational brand
5 votes
- Don't see your idea?