【问题标题】:Schema Extensions Microsoft Graph API架构扩展 Microsoft Graph API
【发布时间】:2021-02-26 02:38:23
【问题描述】:

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。我在这里做错了什么?

【问题讨论】:

    标签: microsoft-graph-api


    【解决方案1】:

    关于

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

    默认情况下不返回架构扩展。使用 select parameter 返回模式扩展以及默认事件属性:

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

    【讨论】:

    • 感谢瓦迪姆!我现在可以看到了!看到其他帖子和文档,我将无法按该自定义字段进行过滤,对吧?
    • Javiar,过滤操作也是应该的,详情参考this article
    • 既然我的是事件,这适用吗?docs.microsoft.com/en-us/graph/known-issues#extensions "Outlook 实体类型(联系人、事件、消息或帖子)不支持对架构扩展属性进行过滤(使用 $filter 表达式)。 "
    【解决方案2】:

    尝试调用此端点:

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

    【讨论】:

    • 我明白了:"message": "The OData request is not supported.",
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-03-11
    • 2023-04-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多