Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
No Outlook, um proprietário de calendário pode compartilhar um calendário com outros usuários e deixá-los exibir ou modificar eventos nesse calendário. o calendário compartilhado pode ser um calendário personalizado ou o calendário principal do proprietário, criado por ele.. Os clientes também podem permitir que um representante aja em nome deles, para receber ou responder a solicitações de reunião ou então para criar ou alterar itens no calendário.
Programaticamente, o Microsoft Graph dá suporte à leitura e gravação de eventos em calendários que foram compartilhados por outros usuários, bem como à leitura dos calendários compartilhados e à atualização do nome do calendário para destinatários de compartilhamento. O suporte também se aplica a calendários que foram delegados. O restante deste artigo descreve a leitura de eventos em um calendário compartilhado ou delegado. Para obter eventos, consulteObter eventos do Outlook em um calendário compartilhado ou delegado.
Compartilhar destinatário: obtenha um calendário compartilhado ou seus eventos diretamente da caixa de correio do proprietário do calendário
Os três exemplos a seguir usam esse cenário: no Outlook, Alex compartilhou seu calendário principal com Sara e recebeu de Sara permissões de leitura. Se Sara entrar no aplicativo e oferecer permissões delegadas (Calendars.Read.Shared ou Calendars.ReadWrite.Shared), em nome de Sara, seu aplicativo poderá acessar o calendário principal e seus eventos diretamente da caixa de correio.
Os três exemplos especificam a identidade do proprietário (Alex ' ID de usuário ou nome de usuário do usuário) e o atalho calendar. Eles acessam o calendário e as IDs de eventos que correspondem somente à caixa de correio do proprietário. Especificar essas IDs de calendário e eventos na caixa de correio do destinatário do compartilhamento (ID de usuário ou nome principal do usuário de Megan) retornaria um erro. Para usar IDs de calendário e de evento que correspondem à caixa de correio do destinatário de compartilhamento, consulte Compartilhar destinatário: obtenha um calendário compartilhado e personalizado ou seus eventos na caixa de correio do destinatário de compartilhamento.
Observação
As permissões de compartilhamento (Calendars.Read.Shared ou Calendars.ReadWrite.Shared) permitem que você leia ou grave eventos em um calendário compartilhado ou delegado. Eles não têm suporte subscrever para alterar notificações em itens como pastas. Para configurar as assinaturas de notificação de alteração em eventos em um usuário compartilhado, representante ou qualquer outro usuário ou calendário de recursos no locatário, use a permissão de aplicativo Calendars.Read.
Sara: Obtenha o calendário principal compartilhado diretamente da caixa de correio de Alex
Conectado como Sara, obtenha o calendário principal que Alex compartilhou com Sara, diretamente da caixa de correio de Alex:
GET https://graph.microsoft.com/v1.0/users/{Alex-userId | Alex-userPrincipalName}/calendar
Na conclusão bem-sucedida, você obtém HTTP 200 OK e uma instância de calendário que representa o calendário principal compartilhado de Alex na caixa de correio de Alex.
Sara: Obtenha o calendário principal compartilhado diretamente a partir da caixa de correio de Alex
Conectado como Sara, seu aplicativo pode obter um evento específico no calendário principal que Alex compartilhou com Sara, diretamente da caixa de correio de Alex:
GET https://graph.microsoft.com/v1.0/users/{Alex-userId | Alex-userPrincipalName}/calendar/events/{id}
Após a conclusão bem-sucedida, você receberá HTTP 200 OK e a instância de evento identificada por {id} do calendário principal de Alex, diretamente da caixa de correio de Alex.
Sara: Obtenha todos os eventos no calendário principal compartilhado da caixa de correio de Alex
Conectado como Sara, obtenha todos os eventos no calendário principal que Alex compartilhou com Sara, diretamente da caixa de correio de Alex:
GET https://graph.microsoft.com/v1.0/users/{Alex-userId | Alex-userPrincipalName}/calendar/events
Após a conclusão bem-sucedida, você receberá HTTP 200 OK e uma coleção das instâncias de evento do calendário principal de Alex, diretamente da caixa de correio de Alex.
Os mesmos recursos GET se aplicam se a Alex tiver delegado o acesso a Sara ao calendário principal de Alex, ou se Alex tiver delegado a Sara a sua caixa de correio inteira.
Se Alex não compartilhou nem delegou seu calendário principal com Megan, especificar a ID de usuário ou o nome principal do usuário de Alex nas operações GET anteriores retornará um erro.
Compartilhar destinatário: obtenha um calendário compartilhado e personalizado ou seus eventos de compartilhar caixa de correio do destinatário
Se Alex compartilhou um calendário personalizado (por exemplo, um calendário chamado "festas de crianças") com Adele e Adele tiver fornecido permissões delegadas (Calendars.Read ou Calendars.ReadWrite), seu aplicativo poderá obter os eventos ou o calendário do calendário da cópia local do Alex ", na caixa de email de Adele, conforme descrito abaixo.
Conectado como Adele, use uma das seguintes solicitações para obter todos os calendários aos quais Adele tem acesso, incluindo o calendário personalizado compartilhado.
GET https://graph.microsoft.com/v1.0/me/calendars GET https://graph.microsoft.com/v1.0/users/{Adele-userId | Adele-userPrincipalName}/calendarsUma resposta bem-sucedida inclui o código de resposta HTTP 200 e o conjunto de calendários que Adele tem acesso, incluindo o calendário ("festas das crianças") com o nome do proprietário como "Alex Rodrigues" como o segundo calendário na resposta. Para um destinatário de compartilhamento, Adele, a propriedade canShare do calendário compartilhado é sempre falsa.
HTTP/1.1 200 OK Content-type: application/json { "@odata.context": "https://graph.microsoft.com/v1.0/$metadata#users('d3b9214b-dd8b-441d-b7dc-c446c9fa0e69')/calendars", "value": [ { "id": "AQMkADU5NAAAJMjAAAAA==", "name": "Calendar", "color": "auto", "changeKey": "NDznl+Uh50WkanaCOKHkaQAAAAACXQ==", "canShare": true, "canViewPrivateItems": true, "canEdit": true, "owner": { "name": "Adele Vance", "address": "AdeleV@contoso.com" } }, { "id": "AAMkADAABf0JlyAAA=", "name": "Kids parties", "color": "lightYellow", "changeKey": "NDznl+Uh50WkanaCOKHkaQAAYumJRQ==", "canShare": false, "canViewPrivateItems": false, "canEdit": false, "owner": { "name": "Alex Wilber", "address": "AlexW@contoso.com" } } ] }Conectado como Adele, obtenha o calendário compartilhado ou obtenha um ou mais eventos no calendário compartilhado usando a segunda ID de calendário na resposta da etapa 1. As IDs do calendário compartilhado e seu evento correspondem à cópia local do calendário de Alex na caixa de correio de Adele.
GET https://graph.microsoft.com/v1.0/me/calendars/AAMkADAABf0JlyAAA= GET https://graph.microsoft.com/v1.0/users/{Adele-userId | Adele-userPrincipalName}/calendars/AAMkADAABf0JlyAAA= GET https://graph.microsoft.com/v1.0/me/calendars/AAMkADAABf0JlyAAA=/events/{id} GET https://graph.microsoft.com/v1.0/users/{Adele-userId | Adele-userPrincipalName}/calendars/AAMkADAABf0JlyAAA=/events/{id} GET https://graph.microsoft.com/v1.0/me/calendars/AAMkADAABf0JlyAAA=/events GET https://graph.microsoft.com/v1.0/users/{Adele-userId | Adele-userPrincipalName}/calendars/AAMkADAABf0JlyAAA=/events
Após a conclusão bem-sucedida, você obtém HTTP 200 OK e o evento, os eventos ou o calendário solicitado que Alex compartilhou com Adele.