pasta de trabalho: createSession

Namespace: microsoft.graph

Crie uma nova sessão de pasta de trabalho.

As APIs do Excel podem ser chamadas em um destes dois modos:

  1. Sessão persistente – Todas as alterações feitas na pasta de trabalho são persistentes (salvas). Este é o modo normal de operação.
  2. Sessão não persistente – As alterações feitas pela API não são salvas na localização de origem. Em vez disso, o servidor back-end do Excel mantém uma cópia temporária do arquivo que reflete as alterações feitas durante essa sessão de API específica. Quando a sessão do Excel expirar, as alterações serão perdidas. Esse modo é útil para aplicativos que precisam fazer uma análise ou obter os resultados de um cálculo ou de uma imagem de gráfico, mas não afeta o estado do documento.

Para representar a sessão na API, use o cabeçalho workbook-session-id: {session-id}.

Observação: O cabeçalho de sessão não é obrigatório para uma API do Excel funcionar. No entanto, recomendamos que você use o cabeçalho de sessão para melhorar o desempenho. Se você não usar um cabeçalho de sessão, as alterações feitas durante a chamada da API serão mantidas como persistentes no arquivo.

Em alguns casos, a criação de uma nova sessão requer um tempo indeterminado para ser concluída. O Microsoft Graph também fornece um padrão de operações de execução prolongada. Esse padrão fornece uma maneira de pesquisar atualizações de status de criação, sem aguardar a conclusão da criação. Estes são os passos:

  1. Um Prefer: respond-async cabeçalho é adicionado à solicitação para indicar que se trata de uma operação de execução prolongada.
  2. A resposta retorna um Location cabeçalho para especificar a URL para sondagem do status da operação de criação. Você pode obter o status da operação acessando a URL especificada. O status será um dos seguintes: notStarted, running, succeeded, ou failed.
  3. Após a conclusão da operação, você poderá solicitar o status novamente e a resposta mostrará ou succeededfailed.

Essa API está disponível nas seguintes implantações de nuvem nacional.

Serviço global Governo dos EUA L4 US Government L5 (DOD) China operada pela 21Vianet

Tratamento de erros

Essa solicitação poderá, ocasionalmente, receber uma mensagem de erro HTTP 504. A resposta apropriada para esta mensagem de erro é repetir a solicitação.

Permissões

Escolha a(s) permissão(s) marcada(s) como menos privilegiada(s) para essa API. Use uma permissão ou permissões com privilégios mais altos somente se o aplicativo exigir. Para obter detalhes sobre permissões delegadas e de aplicativo, consulte Tipos de permissão. Para saber mais sobre essas permissões, consulte a referência de permissões.

Tipo de permissão Permissões menos privilegiadas Permissões com privilégios mais elevados
Delegado (conta corporativa ou de estudante) Files.ReadWrite Indisponível.
Delegado (conta pessoal da Microsoft) Sem suporte. Sem suporte.
Aplicativo Sem suporte. Sem suporte.

Solicitação HTTP

POST /me/drive/items/{id}/workbook/createSession
POST /me/drive/root:/{item-path}:/workbook/createSession

Cabeçalhos de solicitação

Nome Descrição
Autorização {token} de portador. Obrigatório. Saiba mais sobre autenticação e autorização.

Corpo da solicitação

No corpo da solicitação, forneça uma representação JSON do objeto workbookSessionInfo .

Resposta

Se for bem-sucedido, esse método retornará um código de 201 Created resposta e um objeto workbookSessionInfo no corpo da resposta. Para uma operação de execução prolongada, ele retorna um 202 Accepted código de resposta e um Location cabeçalho com um corpo vazio na resposta.

Exemplos

Exemplo 1: Criação de sessão com padrão de operação de execução prolongada

Solicitação

POST https://graph.microsoft.com/v1.0/me/drive/items/{drive-item-id}/workbook/createSession
Prefer: respond-async
Content-type: application/json

{
    "persistChanges": true
}

Resposta

Observação: o objeto de resposta mostrado aqui pode ser encurtado para legibilidade.

HTTP/1.1 202 Accepted
Location: https://graph.microsoft.com/v1.0/me/drive/items/{drive-item-id}/workbook/operations/{operation-id}
Content-type: application/json

{
}

Com a 202 Accepted resposta, consulte Trabalhar com APIs que levam muito tempo para serem concluídas para saber como recuperar o status da operação e obter o resultado da criação da sessão.

Exemplo 2: Criação de sessão básica

Solicitação

POST https://graph.microsoft.com/v1.0/me/drive/items/{id}/workbook/createSession
Content-type: application/json

{
  "persistChanges": true
}

Resposta

Observação: o objeto de resposta mostrado aqui pode ser encurtado para legibilidade.

HTTP/1.1 201 Created
Content-type: application/json

{
  "id": "id-value",
  "persistChanges": true
}