Schema Extensions Microsoft Graph API



Env:开发者帐户,即使用沙箱和图形资源管理器。

我在更新通过schemaExtensions添加的自定义字段时遇到麻烦。步骤如下:

POST https://graph.microsoft.com/v1.0/schemaExtensions
{
"id": {schemaName},
"description": "Meta data",
"targetTypes": [
"Event"
],
"owner": {app_id},
"properties": [
{
"name": "Pid",
"type": "String"
}
]
}

我得到201响应:

{
"@odata.context": "https://graph.microsoft.com/v1.0/$metadata#schemaExtensions/$entity",
"id": "extiv30x2jc_{schemaName}",
"description": "Meta data",
"targetTypes": [
"Event"
],
"status": "InDevelopment",
"owner": {app_id},
"properties": [
{
"name": "Pid",
"type": "String"
}
]
}

然后按如下方式创建一个事件:

POST https://graph.microsoft.com/v1.0/me/events
{
"subject": "My event",
"start": {
"dateTime": "2021-02-25T22:45:11.110Z",
"timeZone": "UTC"
},
"end": {
"dateTime": "2021-02-25T22:45:11.110Z",
"timeZone": "UTC"
}
}

事件已成功创建,我注意到id事件的。然后我修补事件,因为不可能同时创建实例和更新自定义字段。

PATCH https://graph.microsoft.com/v1.0/me/events/{id}
{
"extiv30x2jc_{schemaName}": {
"Pid": "1"
}
}

我得到一个200的响应,如下所示:

{
"@odata.context": "https://graph.microsoft.com/v1.0/$metadata#users({graph_explorer_profile_id})/events/$entity"
}

要搜索事件以查看自定义字段是否已更新,我使用以下命令:

GET https://graph.microsoft.com/v1.0/me/events/{id}

但是找不到自定义字段Pid。我在这里做错了什么?

关于

但是我找不到自定义字段Pid。我在这里做错了什么?

默认情况下,模式扩展名不会被返回。使用select参数返回模式扩展和默认事件属性:

GET https://graph.microsoft.com/v1.0/me/events/{id}?$select=extiv30x2jc_{schemaName}

尝试调用此端点:

GET https://graph.microsoft.com/v1.0/me/events/{id}/extensions

最新更新