title: What permissions are needed to read the Azure AD users' calendar via Graph API
body: <p>I need to access the calendars of Azure AD users. I do it with the code below:</p>
  <pre><code>var scopes = new[] { &quot;https://graph.microsoft.com/.default&quot; };
  
  var tenantId = &quot;MY_TENANT_ID&quot;;
  var clientId = &quot;APP_ID&quot;;
  var clientSecret = &quot;APP_SECRET&quot;;
  
  
  var options = new TokenCredentialOptions
  {
      AuthorityHost = AzureAuthorityHosts.AzurePublicCloud
  };
  
  var clientSecretCredential = new ClientSecretCredential(
      tenantId, clientId, clientSecret, options);
  
  var graphClient = new GraphServiceClient(clientSecretCredential, scopes);
  
  var user = await graphClient.Users[&quot;USER_ID&quot;]
      .Calendar.Events
      .Request()
      .GetAsync();
  </code></pre>
  <p>As a result, I get the following error:</p>
  <pre><code>Status Code: Unauthorized
  
  Microsoft.Graph.ServiceException: Code: NoPermissionsInAccessToken
  
  Message: The token contains no permissions, or permissions can not be understood.
  </code></pre>
  <p>In <strong>Azure AD-&gt;App Registrations-&gt;API permissions</strong> I have got <strong>Calendars.Read</strong> permission, but don't have <strong>User.Read.All</strong> permission. So the question is can I get data from calendars without <strong>User.Read.All</strong> permission and if I can what am I doing wrong?</p>