How use the API Create Event Calendar Microsoft-GraphAPI - microsoft-graph-api

Seem that this API
https://learn.microsoft.com/en-us/graph/api/user-post-events?view=graph-rest-1.0&tabs=http
Is possibile to use with Application Token..
But When I use this POST format :
/users/{id | userPrincipalName}/calendars/{id}/events
I imagine that the first id= is of the user 365
And the second id= id of calendar of this user
example: https://graph.microsoft.com/v1.0/users/7abea3d2-9c59-4910-90c8-24a626a2ed0f/calendar/AAMkADRiNWMwZDIwLTNkNWMtNDlhZi04ODAxLTQyZjI0NGZjZjZiYgBGAAAAAADdzAdsxNzoS5NsTnjM9VXMBwDeKuBOt9H8SaQ6MfKsS4oyAAAAAAEGAADeKuBOt9H8SaQ6MfKsS4oyAAAAADKcAAA=/events
The result is this:
{
"error": {
"code": "BadRequest",
"message": "Resource not found for the segment 'AAMkADRiNWMwZDIwLTNkNWMtNDlhZi04ODAxLTQyZjI0NGZjZjZiYgBGAAAAAADdzAdsxNzoS5NsTnjM9VXMBwDeKuBOt9H8SaQ6MfKsS4oyAAAAAAEGAADeKuBOt9H8SaQ6MfKsS4oyAAAAADKcAAA='.",
"innerError": {
"request-id": "11055856-32b4-4485-bf28-23e380d9e4ed",
"date": "2020-05-27T13:22:23"
}
}
}
Have you any suggestion?

#Thank #Homungus comment... missing a s in calendar string and now work!

Related

Microsoft Graph API: identify users with provisioning errors

Using Microsoft's Graph API, I am trying to return users with provisioning errors. Using this URL:
https://graph.microsoft.com/v1.0/users?$select=onPremisesProvisioningErrors,displayName&$filter=onPremisesProvisioningErrors ne null
I get back the error:
{
"error": {
"code": "BadRequest",
"message": "Invalid filter clause",
"innerError": {
"date": "2022-10-04T17:37:29",
"request-id": "d62be5cf-4f5e-47da-93f1-1bb721bc9b14",
"client-request-id": "689377a9-469b-bfef-b7d5-d48e7938acec"
}
}
}
Is there a way to identify just those users with some sort of provisioning error?
I would use any operator to filter users with provisioning errors:
https://graph.microsoft.com/v1.0/users?$select=onPremisesProvisioningErrors,displayName&$filter=onPremisesProvisioningErrors/any()
But it returns the exception:
{
"error": {
"code": "Request_UnsupportedQuery",
"message": "Empty any query against property 'onPremisesProvisioningErrors' is not supported.",
"innerError": {
...
}
}
}
According to the documentation, onPremisesProvisioningError resource has property category with only one possible value PropertyConflict.
I suggest to use filter on that property category.
https://graph.microsoft.com/v1.0/users?$select=onPremisesProvisioningErrors,displayName&$filter=onPremisesProvisioningErrors/any(r:r/category eq 'PropertyConflict')
It's a little bit workaround but it should return users with provisioning errors.

Why am I getting an error while calling Http Request

I want to reach the list of participants of a spesific Teams meeting by using Postman. But I'm getting an error.
my Http Request:
https://graph.microsoft.com/v1.0/communications/calls/7531d31f-d10d-44de-802f-c569dbca451c/participants
{
"error": {
"code": "UnknownError",
"message": "",
"innerError": {
"date": "2020-10-26T16:50:16",
"request-id": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"client-request-id": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
}
}
}
The problem was about the tokens .I got the response by using app access token instead of user token, finally it worked.

recommended way to handle Microsoft graph Application is over its MailboxConcurrency limit

I am using GraphServiceClient to create/update events and got following error. is there better way/
mechanism to handle this kind of errors
{
"error": {
"code": "ApplicationThrottled",
"message": "Application is over its MailboxConcurrency limit.",
"innerError": {
"date": "2020-06-30T10:09:41",
"request-id": "8a293e9c-7510-4993-a1b3-f9e74ba6087c"
}
}
}

OneNote API returns 19999 error code for any request

I have the application for OneNote users. Some users have error 19999 for any OneNote API request.
Request/response examples:
GET https://graph.microsoft.com/v1.0/me/onenote/notebooks
{
"error": {
"code": "19999",
"message": "Something failed, the API cannot share any more information at the time of the request.",
"innerError": {
"request-id": "2e94b8fb-b43c-4dd6-bb2a-6979fa854718",
"date": "2019-06-10T03:21:15"
}
}
}
GET https://graph.microsoft.com/v1.0/me/onenote/pages
{
"error": {
"code": "19999",
"message": "Something failed, the API cannot share any more information at the time of the request.",
"innerError": {
"request-id": "d650669d-b48f-4d6e-bd18-e0805e79167c",
"date": "2019-06-10T03:27:53"
}
}
}
How can I resolve this issue?
Tenant does not have a SPO license. I will fix the error code to be more specific. Thanks!

Add parent site columnLink to a contentType

I have a subsite where I created a contentType. I want to a add columnLink from the parent site using:
POST https://graph.microsoft.com/v1.0/sites/{site-id}/contentTypes/{contentType-id}/columnLinks
Adding current site columns works as expected, however when adding columnLink from parent site, fails with such response:
{
"error": {
"code": "itemNotFound",
"message": "The referenced column does not exist",
"innerError": {
"request-id": "...,
"date": "2018-07-31T11:05:34"
}
}
}
The body that was sent:
{
"name": "Detail"
}
The endpoint works correctly for both id and name in request body. (For current site columnLinks)
According to your questions, I suppose you want to add a columnLink from parent site.
Based on my test, If we want to add a column to a contentType, we can get the column first by this API:
https://graph.microsoft.com/v1.0/sites/{site-id}/columns. This step is to ensure that the column exists. The part of response will be like this:
{
"name": "{column Name}",
"id": "{column Id}"
}
Then we add site columnLink to a contentType, we can use this column Name like this:
POST https://graph.microsoft.com/v1.0/sites/{site-id}/contentTypes/{contentType-id}/columnLinks
The body like this:
{
"name":"{column Name}"
}
or
{
"id": "{column Id}"
}

Resources