OpenExtensions:查找和检索具有给定扩展名的事件

OpenExtensions: Find and retrieve Events with a given extension

我希望将事件写入与我系统中的对象相对应的用户日历。我还希望能够更新 and/or 删除那些在更新用户日历的进程运行之间发生变化的内容。

为此,我使用 Open Extensions 将附加数据写入我正在创建的日历事件。这工作得很好,我可以看到正在写入扩展数据。

我可以使用 $filter 来查询我已写入用户日历的事件:
/v1.0/me/events?$filter=Extensions/any(f: f/id eq '{id}')

效果很好,我看到了预期的结果。值得注意的是,此查询中的 id 与 Microsoft.OutlookServices.OpenTypeExtension.{extensionName} 的完全限定形式或仅使用 {extensionName}

的缩写形式都可以正常工作

但是我无法使用 $expanded 扩展将事件发送到 return。我试过 examples from the docs 但使用这个查询失败了:
/me/events?$filter=Extensions/any(f: f/id eq '{id}')&$expand=Extensions($filter=id eq '{id}')

像这样:

{
    "error": {
        "code": "BadRequest",
        "message": "Parsing Select and Expand failed.",
        "innerError": {
            "date": "2020-06-19T17:14:59",
            "request-id": "d1125156-05a6-499a-b9a4-6c66e5ce377d"
        }
    }
}

我需要扩展扩展数据来将日历事件关联回我系统中的对象,以便根据需要进行更新或删除。
有谁知道可能会发生什么或如何解决这个问题?

我通过另一个问题得到了答案:

问题是 $expand 表达式中的 = 符号需要进行 uriEncoded。正确的查询是:/me/events?$filter=Extensions/any(f: f/id eq '{id}')&$expand=Extensions($filter%3Did eq '{id}')