Skip to content

Commit 2bb5e27

Browse files
authored
Merge branch 'master' into patch-1
2 parents 72bee8e + 6dee4a2 commit 2bb5e27

File tree

37 files changed

+1792
-1056
lines changed

37 files changed

+1792
-1056
lines changed

README.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,9 @@ You can also tweet / follow [@officedev](https://twitter.com/officedev) or [@off
1616

1717
## SharePoint Framework Releases
1818

19+
* **July 23, 2019**
20+
* **SPFx v1.9** - [See the release notes here](https://github.com/SharePoint/sp-dev-docs/wiki/SharePoint-Framework-v1.9-release-notes)
21+
1922
* **May 7, 2019**
2023
* **SPFx v1.8.2** - [See the release notes here](https://github.com/SharePoint/sp-dev-docs/wiki/SharePoint-Framework-v1.8.2-release-notes)
2124

docs/apis/export-amr-api.md

Lines changed: 252 additions & 0 deletions
Large diffs are not rendered by default.

docs/apis/migrate-webparts-with-migrationapi.md

Lines changed: 335 additions & 0 deletions
Large diffs are not rendered by default.

docs/apis/migration-api-encryption.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -79,3 +79,6 @@ Here is the JSON content in the queue message
7979
```
8080

8181
Once the messages are decrypted, they will be the same as the API without encryption.
82+
83+
>[!NOTE]
84+
>The **Migration** is not available for users of Office 365 operated by 21Vianet in China. It is also not available for users of Office 365 with the German cloud using the data trustee, *German Telekom*. However, it is supported for users in Germany whose data ___location is not in the German data center.

docs/apis/migration-api-overview.md

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,13 @@
11
---
2-
title: "SharePoint Online Migration API Overview"
2+
title: "SharePoint Online Import Migration API"
33
ms.author: jhendr
44
author: JoanneHendrickson
55
manager: pamgreen
6-
ms.date: 6/20/2018
7-
description: "This document is to give more in depth Information about how to use the SPO Migration API."
6+
search.appverid: MET150
7+
description: "This document is to give more in depth information about how to use the SPO Migration API."
88
localization_priority: Priority
99
---
10-
# SharePoint Online Migration API
10+
# SharePoint Import Migration API (CreationMigrationJob)
1111

1212
## API Documention
1313

@@ -16,6 +16,9 @@ The following API description is based upon use of the SharePoint Client Side Ob
1616
> [!NOTE]
1717
> You can find latest version of the SharePoint Online Client Side Object Model from [NuGet gallery](https://www.nuget.org/packages/Microsoft.SharePointOnline.CSOM/).
1818
19+
>[!NOTE]
20+
>The **SharePoint Migration Tool** is not available for users of Office 365 operated by 21Vianet in China. It is also not available for users of Office 365 with the German cloud using the data trustee, *German Telekom*. However, it is supported for users in Germany whose data ___location is not in the German data center.
21+
1922
## Methods
2023

2124
### CreateMigrationJob
@@ -1436,6 +1439,7 @@ There is no change from current published full 2013 [full 2013 package schema](h
14361439
There is no change from current published [full 2013 package schema](https://docs.microsoft.com/en-us/sharepoint/dev/schema/content-migration-schemas).
14371440

14381441

1439-
1442+
>[!NOTE]
1443+
>The **Migration API** is not available for users of Office 365 operated by 21Vianet in China. It is also not available for users of Office 365 with the German cloud using the data trustee, *German Telekom*. However, it is supported for users in Germany whose data ___location is not in the German data center.
14401444
14411445

docs/apis/migration-api-shared.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -70,3 +70,7 @@ However, if they are indicated in “Shared With” references but do not have a
7070
Using PRIME, content can be migrated by using SPFile/SPFolder objects with a document library followed by SPListItem objects that reference the imported File/Folder objects. During the ListItem import, the “Shared With” references data can be imported, and then the security can be applied afterward within the same migration package, by setting up scopes (ACLs) and role assignments (ACEs) for the content hierarchy as needed.
7171

7272
Permissions migration is performed using the DeploymentRoleAssignments object with RoleAssignment entries representing specific scopes and Assignment entries representing assignments of specific roles to specific principals. Since this code ends up breaking inheritance for content and applying the specified role assignments, it has the same limitations as using other object model approaches to setting permissions in SharePoint.
73+
74+
75+
>[!NOTE]
76+
>The **Migration API** is not available for users of Office 365 operated by 21Vianet in China. It is also not available for users of Office 365 with the German cloud using the data trustee, *German Telekom*. However, it is supported for users in Germany whose data ___location is not in the German data center.

docs/apis/migration-isv-guidance.md

Lines changed: 119 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,119 @@
1+
---
2+
title: "Migration guide for ISVs"
3+
ms.reviewer:
4+
ms.author: jhendr
5+
author: JoanneHendrickson
6+
manager: pamgreen
7+
audience: Dev
8+
ms.topic: article
9+
ms.prod: sharepoint-server-itpro
10+
localization_priority: Priority
11+
ms.collection:
12+
- IT_Sharepoint_Server_Top
13+
- SPMigration
14+
- M365-collaboration
15+
search.appverid: MET150
16+
ROBOTS: NOINDEX, NOFOLLOW
17+
ms.custom:
18+
ms.assetid:
19+
---
20+
# Migration guidance for ISVs
21+
22+
This document provides guidance for ISVs to deliver a fast and reliable migration experience to customers. It has the latest Microsoft migration practices and addresses common concerns or questions raised by ISV. The page will be updated on regular basis and the priority of the guidance is listed in the order of publication.
23+
24+
## Use app-based authentication
25+
There are different usage patterns between end user traffic and an application doing background activities such as migration. It is important to identify user traffic versus application traffic.
26+
27+
To provide a stable platform and more reliable service, Microsoft is requesting that ISVs transition from using a user-based authentication to app-based authentication to provide greater reliability to our end users and partners.
28+
29+
Migration is a background task application and should **not** be run in user mode. By transitioning to app-based authentication, you will benefit from the elastic capability of off-peak time to have more resources.
30+
31+
> [!Note]
32+
>Microsoft will soon begin enforcing the proper usage roles. Vendors who continue to run migration in user roles can expect to experience increasing throttling and poor performance.
33+
34+
To learn more on how to register an app ID and how to implement app-based authentication see:
35+
36+
- [How to register an app ID](https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fdocs.microsoft.com%2Fen-us%2Fazure%2Factive-directory%2Fdevelop%2Factive-directory-v2-registration-portal&data=04%7C01%7CWan.Wu%40microsoft.com%7C7c98484b20de4fc80fb308d6da3e3509%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C636936358039977299%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C-1&sdata=L%2BObRVyCBKPwvvY7MUUsWX%2B8yEIbzqaTkBjcmNjc1vk%3D&reserved=0)
37+
- [Microsoft Graph Auth guidance](https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fdocs.microsoft.com%2Fen-us%2Fgraph%2Fauth%2F&data=04%7C01%7CWan.Wu%40microsoft.com%7C7c98484b20de4fc80fb308d6da3e3509%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C636936358039977299%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C-1&sdata=ZrFqXsLT3BtT8ynnlLQH9w7JZIOw07zu2X3EYbBmfD4%3D&reserved=0): Includes an informative video, basics, how to register your app and getting access scenarios
38+
- [Don’t get throttled! SharePoint and OneDrive guide to staying below the limits](https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fmyignite.techcommunity.microsoft.com%2Fsessions%2F65661&data=04%7C01%7CWan.Wu%40microsoft.com%7C7c98484b20de4fc80fb308d6da3e3509%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C636936358039987303%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C-1&sdata=%2FVCt7P794Lwn0hvpaa4bQicVeqHIPuOM8Vg58nkL16A%3D&reserved=0)
39+
40+
### App-based authentication migration guidance
41+
42+
#### Permission settings
43+
Azure Active Directory (AAD) provides two type of permission : delegated permission and application permissions. For official AAD guidance please see:
44+
45+
- [Permissions and consent in the Azure Active Directory v1.0 endpoint](https://docs.microsoft.com/en-us/azure/active-directory/develop/v1-permissions-and-consent).
46+
47+
For Sharepoint and Onedrive migration scenarios, the guidance is to follow the AAD permission specification.
48+
49+
For migration tool that relies on end user signed in and presence, delegated permission is recommended.
50+
51+
For service-based migration tool that run without a signed-in user present such as app that runs as background service, application permission is recommended.
52+
53+
#### Number of App IDs
54+
55+
Questions have been raised by ISV on whether to have a single App ID covering all migration offering products or having multiple App ID per software offering. There is no specific guidance where the ISVs can identify all of their App IDs. Please contact Microsoft for any corner case scenarios.
56+
57+
>[!Note]
58+
> Please register all your migration app IDs with Microsoft to ensure that you receive adequate throughput for your migration jobs.
59+
60+
61+
## Use the Migration API
62+
For migration jobs, the first guidance is to use existing published migration APIs.
63+
64+
### Import API (CreateMigrationJob)
65+
66+
The *CreateMigrationJob* helps the ISVs to import to SharePoint and OneDrive faster and more reliably.
67+
68+
- [Create Migration Job (Import API)](https://docs.microsoft.com/en-us/sharepoint/dev/apis/migration-api-overview)
69+
70+
The lastest supported features are:
71+
72+
- Migrate web parts using the Migration API
73+
74+
75+
### Export API (Asynchronous Metadata Read)
76+
77+
A new migration API, Asynchronous Metadata Read API (Export API) is currently being made available to ISVs for testing. If you are interested, please contact Microsoft with your test tenant information.
78+
79+
- [Asynchronous Metadata Read (Export API)](https://docs.microsoft.com/en-us/sharepoint/dev/apis/export-amr-api)
80+
81+
The *AsynchronousMetadataRead* helps the ISVs export content from SharePoint and OneDrive. Once the new API becomes available, we recommend that you transition to the new API to avoid throttling.
82+
83+
## Switch to the Microsoft Graph API
84+
If a feature is not supported by the migration API, we recommend that you use the Graph API. If the Graph API does not support the needed migration feature, then use CSOM. However, using CSOM increases the likelihood of being throttled.
85+
86+
- [Graph Guidance: Best practices for discovering files and detecting changes at scale](https://docs.microsoft.com/en-us/onedrive/developer/rest-api/concepts/scan-guidance?view=odsp-graph-online)
87+
88+
### CSOM Guidance (fallback only)
89+
90+
The following provides guidance on specific CSOM implementation scenarios to help improve migration performance with Sharepoint and OneDrive.
91+
92+
#### Enumeration Query Ordering guidance
93+
There are two kinds of enumeration queries, assuming the client intends to read every item with no server-side filtering.
94+
95+
To query for every item in the list, recursively – in other words, the order does not depend on which folder(s) the items are contained in – the query should sort by ID.
96+
97+
<OrderBy Override="TRUE"><FieldRef name="ID"/></OrderBy>
98+
99+
To query for every item in a specific folder, the query should sort by the filename, **FileLeafRef**.
100+
101+
<OrderBy Override="TRUE"><FieldRef name="FileLeafRef"/></OrderBy>
102+
103+
104+
## For migrations over 100TB
105+
106+
For customers migrating greater than 100TB of data, please follow the instructions on how to create a support ticket to help the product team to prepare the backend for the customers.
107+
108+
[Best practices for improving SharePoint and OneDrive migration performance](https://docs.microsoft.com/en-us/sharepointmigration/sharepoint-online-and-onedrive-migration-speed).
109+
110+
## Escalation and throttling
111+
112+
The primary reason speed is impacted, and throttling occurs, is due to the load that gets generated by calling CSOM and REST APIs. As a result of this load, throttling rules fire that impact the speed, reliability and predictability of the migration. Throttling is used to protect the database and to ensure a good user experience for our customers.
113+
114+
To read the official throttling guidance, see:
115+
116+
- [Avoid getting throttled or blocked in SharePoint Online](https://myignite.techcommunity.microsoft.com/sessions/65661)
117+
118+
We continue to work to identify issues and improve the API. The asynchronous metadata read API is a direct result of ISV feedback. As an ISV/partner, we value your feedback. Please contact Microsoft if you have further questions.
119+

docs/community/community.md

Lines changed: 4 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -42,26 +42,11 @@ There are numerous community calls for SharePoint development, and you can choos
4242
>
4343
> **Do's & Dont's**: Interested in presenting during one of the community calls? Keep in mind these are community calls. The focus of these demos should be on learning and topics beneficial to the community. Please refrain from commercial activities such as selling or promoting products or services. Commercial activities in the community calls are not well received by the community and in certain instances may result in stopping the demo early. In your request to present, please be descriptive about what you intend to show to avoid any confusion. If you are not sure if what you want to present is appropriate, just ask in the submission.
4444
45-
| Community call | When | Description | Skype |
45+
| Community call | When | Description | Microsoft Teams Link |
4646
| ----------------------------------------------------------------------------------------------- | -------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------- |
47-
| [Monthly community call](https://aka.ms/sppnp-call) | Second Tuesday of each month at 8:00 AM PT / 3:00 PM GMT | Monthly community call covering the latest changes in SharePoint development-related topics within the last month, including news, UserVoice updates, and community contributions | [Direct Skype link to meeting](https://aka.ms/spdev-call-join) |
48-
| [Special interest group call for SharePoint Framework](https://aka.ms/spdev-spfx-call) | Bi-weekly on Thursdays at 7:00 AM PT / 2:00 PM GMT | SharePoint Engineering updates, SharePoint Framework, PnPJS, Office 365 CLI, and reusable SPFx controls | [Direct Skype link to meeting](https://aka.ms/spdev-spfx-call-join) |
49-
| [Special interest group call for general SharePoint development](https://aka.ms/spdev-sig-call) | Bi-weekly on Thursdays at 7:00 AM PT / 2:00 PM GMT | SharePoint Engineering updates, end-to-end solution designs, provisioning, PnP CSOM, and PnP PowerShell | [Direct Skype link to meeting](https://aka.ms/spdev-sig-call-join) |
50-
51-
## July 2019 Summer Camp Calls!
52-
53-
The official Microsoft-hosted community calls listed above are taking a break for the month of July 2019. The community has organized the following calls that you can join:
54-
55-
| Community call | When | Description | Skype |
56-
| ----------------------------------------------------------------------------------------------------- | ------------------------------------- | ---------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------- |
57-
| [JavaScript + SharePoint Framework Summer Camp Call 1](https://officedevblogs.wpengine.com/wp-content/uploads/2019/06/SharePointPnP-JSSPFxSummerCampCall1.ics) | July 3, 2019 7:00 AM PT / 2:00 PM GMT | SharePoint updates, SharePoint Framework, PnPJS, Office 365 CLI, reusable SPFx controls & community banter | [Direct Zoom link to meeting](https://zoom.us/j/539917661) |
58-
| [JavaScript + SharePoint Framework Summer Camp Call 2](https://officedevblogs.wpengine.com/wp-content/uploads/2019/06/SharePointPnP-JSSPFxSummerCampCall2.ics) | July 18, 2019 7:00 AM PT / 2:00 PM GMT | SharePoint updates, SharePoint Framework, PnPJS, Office 365 CLI, reusable SPFx controls & community banter | [Direct Zoom link to meeting](https://zoom.us/j/533493686) |
59-
60-
> [!NOTE]
61-
> Currently these are recurring invites until the end of June 2019. They will be renewed after that for the next 12 months.
62-
>
63-
> [!NOTE]
64-
> These calls will be changed to use Microsoft Teams immediately when it will support differences between attendees and presenters. Team broadcast is not also yet suitable as it does not support ad-hoc promotion of participants from an attendee to a presenter.
47+
| [Monthly community call](https://aka.ms/sppnp-call) | Second Tuesday of each month at 8:00 AM PT / 3:00 PM GMT | Monthly community call covering the latest changes in SharePoint development-related topics within the last month, including news, UserVoice updates, and community contributions | [Direct MS Teams link to meeting](https://aka.ms/spdev-call-join) |
48+
| [Special interest group call for SharePoint Framework](https://aka.ms/spdev-spfx-call) | Bi-weekly on Thursdays at 7:00 AM PT / 2:00 PM GMT | SharePoint Engineering updates, SharePoint Framework, PnPJS, Office 365 CLI, and reusable SPFx controls | [Direct MS Teams link to meeting](https://aka.ms/spdev-spfx-call-join) |
49+
| [Special interest group call for general SharePoint development](https://aka.ms/spdev-sig-call) | Bi-weekly on Thursdays at 7:00 AM PT / 2:00 PM GMT | SharePoint Engineering updates, end-to-end solution designs, provisioning, PnP CSOM, and PnP PowerShell | [Direct MS Teams link to meeting](https://aka.ms/spdev-sig-call-join) |
6550

6651
## What’s the supportability statement around PnP open-source components and solutions?
6752

0 commit comments

Comments
 (0)