Como acessar calendários compartilhados da API REST do Office?
Esta pergunta foi feita várias vezes e de acordo com respostas comoesta parece que a API não suportava isso até recentemente, comoaqui que menciona que existem novos escopos que permitem acessar os calendários compartilhados. Mas ainda não funciona.
Eu testei isso em duas plataformas: Azure e Microsoft Graph
Aplicativo de anúncios do AzureMeu aplicativo no Azure AD tem todas as permissões necessárias:
Eu faço uma chamada para a API do Office v.1.0 como:
Autorizar URL:
https://login.microsoftonline.com/common/oauth2/authorize?client_id=%1$s&redirect_uri=%2$s&response_type=code
URL do token:https://login.microsoftonline.com/common/oauth2/token
URL de calendários:https://outlook.office.com/api/v1.0/Me/Calendars
Ele apenas fornece o calendário criado pelo usuário conectado / autorizador atual.
Como isso não funcionou, tentei com a versão 2 da API, mas obtive o seguinte:
Additional technical information:
Correlation ID: 7abf370a-d918-4514-bd74-cf5fc93fe3cf
Timestamp: 2016-10-31 09:32:06Z
AADSTS70001: Application 'f7571710-84e2-4444-8bfe-5eef92f4a46d' is not supported for this API version.
Então eu tentei com um aplicativo Microsoft Graph
Aplicativo Microsoft GraphMeu aplicativo aqui também contém todas as permissões necessárias.
Eu faço uma chamada para a API do escritório v2.0 como:
Autorizar URL:
https://login.microsoftonline.com/common/oauth2/v2.0/authorize?client_id=%1$s&redirect_uri=%2$s&response_type=code&scope=%3$s
Onde estão os escopos:
private static $scopes = array(
'https://outlook.office.com/calendars.read',
'https://outlook.office.com/calendars.readwrite',
'https://outlook.office.com/calendars.read.shared',
'https://outlook.office.com/calendars.readwrite.shared',
);
URL do token:https://login.microsoftonline.com/common/oauth2/v2.0/token
URL de calendários:https://outlook.office.com/api/v2.0/Me/Calendars
Mais uma vez não me fornece os calendários compartilhados.
Qualquer ajuda é apreciada.