Guia de Referência da API de Migração do SharePoint

Este guia descreve o uso da API de Migração do SharePoint, que importa conteúdo para o SharePoint com base em arquivos de manifesto.

CSOM e REST

A API de migração dá suporte ao CSOM (Modelo de Objeto do Lado do Cliente) do SharePoint e ao REST.

Usar pacotes NuGet com CSOM

Para fazer referência ao CSOM (Modelo de Objeto do Lado do Cliente) do SharePoint em sua solução, use pacotes NuGet.

Gerencie dependências facilmente e garanta que sua solução esteja usando a versão mais recente da biblioteca CSOM com pacotes NuGet.

Obtenha a versão mais recente do pacote CSOM nas Bibliotecas de Modelos de Objeto do lado do cliente do SharePoint com a ID Microsoft.SharePointOnline.CSOM.

Consulte Conheça o serviço REST do SharePoint para obter instruções sobre a API REST.

Método CreateMigrationJob

Cria um novo trabalho de importação de migração com o pacote de importação especificado no azureContainerSourceUri parâmetro.

Sintaxe de CreateMigrationJob

public Guid CreateMigrationJobEncrypted(
Guid gWebId,
string azureContainerSourceUri,
string azureContainerManifestUri,
string azureQueueReportUri,
EncryptionOption AES256CBCKey
)
POST https://{site_url}/_api/site/CreateMigrationJobEncrypted
{
  "options": {
    "AES256CBCKey": "000000000000000000000000000000000000000000000000000000="
  },
  "gWebId": "00000000-0000-0000-0000-000000000000",
  "azureContainerSourceUri": "https://tenant.blob.core.windows.net:443/00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000=rw",
  "azureContainerManifestUri": "https://tenant.blob.core.windows.net:443/00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000=rw"
}

Parâmetros CreateMigrationJob

gWebID

Obrigatório.

Um valor de String que contém o identificador exclusivo da Web de destino direcionada para a importação do pacote. O próprio pacote de importação especifica informações adicionais e identificadores para a importação. Você pode encontrar programaticamente esse identificador consultando a Web de destino usando chamadas CSOM.

azureContainerSourceUri

Obrigatório.

Um valor de Cadeia de Caracteres que contém o URI válido, incluindo o token SAS, para acessar o Contêiner de Armazenamento de Blobs do Azure que contém os arquivos binários do tipo bloco.

Consulte Usar contêineres e Azure Filas Armazenamento de Blobs do Azure com a API de migração do SharePoint para obter instruções sobre como usar contêineres Armazenamento de Blobs do Azure na migração.

Ao usar contêineres de conteúdo não fornecidos por esse método, a API de Migração requer Readapenas permissões e List permissões. Certifique-se de que a hora de início do token SAS seja definida como ou antes do envio do trabalho. Além disso, ao definir o tempo de expiração, aguarde uma duração razoável para que o processo de importação seja concluído.

A API de migração não requer List permissão de contêineres provisionados com ProvisionMigrationContainers método.

azureContainerManifestUri

Obrigatório.

Um valor de cadeia de caracteres que contém o URI válido, incluindo o token SAS, para acessar o contêiner do Armazenamento de Blobs do Azure, que contém os blobs de blocos para o manifesto e outros pacotes que descrevem arquivos XML. A API de migração grava o log neste contêiner. Esse contêiner não pode ser o mesmo usado para o azureContainerSourceUri.

Consulte Usar contêineres e Azure Filas Armazenamento de Blobs do Azure com a API de migração do SharePoint para obter instruções sobre como usar contêineres Armazenamento de Blobs do Azure na migração.

Ao usar contêineres de conteúdo não fornecidos por esse método, a API de Migração requer Readapenas permissões e ListWrite . Certifique-se de que a hora de início do token SAS seja definida como ou antes do envio do trabalho. Além disso, ao definir o tempo de expiração, aguarde uma duração razoável para que o processo de importação seja concluído.

azureQueueReportUri

Opcional.

Um valor de cadeia de caracteres que contém a URL válida, incluindo o token SAS, para acessar a Fila do Azure fornecida pelo usuário para o progresso do trabalho de migração. Use null se não for necessário receber atualizações de status de importação.

Se esse valor não nullfor e o token SAS contiver as permissões corretas, a API de migração gravará as atualizações de status de importação na fila na URL fornecida.

Compartilhar a fila de notificações entre vários trabalhos de migração. A API de migração identifica cada trabalho com valores de ID de trabalho exclusivos na fila de notificação.

Consulte o Azure para obter instruções sobre como usar a Fila do Azure na migração. Verifique os eventos de migração na Fila do Azure para tipos de eventos.

Requer Addapenas permissões e ReadUpdate . Se o token SAS tiver outras permissões, o trabalho de migração não poderá adicionar eventos à fila.

Valor de retorno CreateMigrationJob

ID do Trabalho

Um valor GUID que contém a ID do Trabalho, o identificador exclusivo do trabalho de migração. O método retornará um null valor, se não conseguir criar o trabalho. Use a ID do Trabalho para consultar o status dos trabalhos de migração com GetMigrationJobStatus o método.

Exemplo

Guid MigrationJobId = TargetSite.CreateMigrationJob(
TargetWebId,
azureContainerSourceUri,
azureContainerManifestUri,
azureQueueReportUri);

Método CreateMigrationJobEncrypted

Cria um novo trabalho de importação de migração com um pacote PRIME criptografado.

Verifique as instruções de criptografia no Azure para o Contêiner de Armazenamento de Blobs do Azure e a criptografia da Fila do Azure usada.

Sintaxe de CreateMigrationJobEncrypted

public Guid CreateMigrationJobEncrypted(
Guid gWebId,
string azureContainerSourceUri,
string azureContainerManifestUri,
string azureQueueReportUri,
EncryptionOption AES256CBCKey
)
POST https://{site_url}/_api/site/CreateMigrationJobEncrypted
{
  "options": {
    "AES256CBCKey": "000000000000000000000000000000000000000000000000000000="
  },
  "gWebId": "00000000-0000-0000-0000-000000000000",
  "azureContainerSourceUri": "https://tenant.blob.core.windows.net:443/00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000=rw",
  "azureContainerManifestUri": "https://tenant.blob.core.windows.net:443/00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000=rw"
}

Parâmetros CreateMigrationJobEncrypted

gWebID, azureContainerSourceUri, azureContainerManifestUrie azureQueueReportUri os parâmetros têm os mesmos requisitos do método CreateMigrationJob .

Forneça o EncryptionOption parâmetro conforme as instruções abaixo.

EncryptionOption

Obrigatório.

Um EncryptionOption objeto que contém o AES256CBCKey usado para descriptografar a saída.

A API de migração criptografa a saída com a chave AES256CBCKey fornecida.

Consulte [EncryptionOption](https://learn.microsoft.com/en-us/dotnet/api/microsoft.sharepoint.client.encryptionoption) a classe para obter detalhes.

Valor de retorno CreateMigrationJobEncrypted

Consulte Valor retornado no CreateMigrationJob método.

Método GetMigrationJobStatus

Importante

Use a API GetMigrationJobProgress para recuperar o status do trabalho de migração. A preterição da API GetMigrationJobStatus está planejada para o segundo semestre de 2026. Até lá, ele permanecerá disponível para recuperação de status.

Recupera o status de processamento para um trabalho de migração designado.

A API de migração remove os trabalhos de migração concluídos da fila de trabalhos do timer. Verifique a fila de notificação e/ou as saídas de log para obter resultados de importação.

Sintaxe de GetMigrationJobStatus

[ClientNS.ClientCallableMethod]
public SPMigrationJobState GetMigrationJobStatus(Guid MigrationJobId)

Parâmetros GetMigrationJobStatus

ID

Obrigatório.

Um valor Guid, que contém a ID do trabalho de migração, é retornado de CreateMigrationJob.

Valor de retorno GetMigrationJobStatus

Um SPMigrationJobState objeto que contém o status do trabalho de migração.

Exemplo de GetMigrationJobStatus

SPMigrationJobState CurrentJobState = TargetSite.GetMigrationJobStatus(MigrationJobId);

Enumeração SPMigrationJobState

Contém membros que representam o status dos trabalhos de migração na fila de importação.

Membros de SPMigrationJobState

Nenhum

Valor: 0

A fila não contém o trabalho de migração com a ID do trabalho. As possíveis razões são:

  • A API de migração concluiu o trabalho e o removeu da fila.
  • A ID do trabalho é inválida.

Na fila

Valor: 2

A fila contém o trabalho de migração. A API de migração não está processando o trabalho.

Processamento

Valor: 4

A fila contém o trabalho de migração. A API de migração está processando o trabalho.