ОБНОВЛЕНИЕ: теперь есть свойство Flag
на Message
на конечной точке /beta
. Это рекомендуемый способ сделать это. Я оставлю здесь остальную информацию для исторических целей и для помощи людям, пытающимся установить другие расширенные свойства.
Теперь вы можете получить/установить статус флага намного проще. Объект Message
теперь имеет свойство Flag
типа FollowupFlag
. (Если вы не видите его по этой ссылке, убедитесь, что вверху страницы выбрана версия beta
).
Вы можете пометить сообщение как помеченное, отправив PATCH
со следующей полезной нагрузкой:
{
"Flag": {
"FlagStatus": "Flagged"
}
}
СТАРЫЙ МЕТОД (с использованием расширенных свойств)
Примечание. Недавно мы внесли изменение, чтобы упростить формат расширенных свойств. Это изменение сейчас распространяется на серверы, поэтому я добавил в этот ответ новый формат. Я оставил старый формат на тот случай, если кто-то получит доступ к почтовым ящикам, к которым еще не было применено обновление. Если вы используете старый формат и получаете сообщение об ошибке:
"Could not find a property named 'PropertyRef' on type
'Microsoft.OutlookServices.SingleValueLegacyExtendedProperty'."
Вам нужно перейти на новый формат.
Что вам нужно сделать, так это включить параметр запроса $expand
, чтобы расширить коллекцию SingleValueExtendedProperties
, с подпараметром $filter
, чтобы указать свойство, которое вы хотите включить. В этом случае вам нужен PidTagFlagStatus. Попробуйте такой запрос:
Новый формат:
api/beta/me/messages?$select=Subject,SingleValueExtendedProperties&$expand=SingleValueExtendedProperties($filter=PropertyId eq 'Integer 0x1090')
Старый формат:
api/beta/me/messages?$select=Subject,SingleValueExtendedProperties&$expand=SingleValueExtendedProperties($filter=(PropertyRef eq '0x1090' and Type eq Microsoft.OutlookServices.MapiPropertyType'Integer'))
Сообщения, которые вообще не помечены, просто не вернут это свойство. Сообщения, которые делают это, будут выглядеть примерно так:
Новый формат:
{
"@odata.id": "https://outlook.office365.com/api/beta/Users('[email protected]')/Messages('AAMkAGQ4Yzc2NDkwLTYxYmItNDZmYS1iZjI1LTYyNmY4NTZkMjI1NgBGAAAAAADwPSus7EwaR6q1wNtgoqEMBwDpfBfj8UPUTqu4bEwGpnFMAAAAAAEgAADpfBfj8UPUTqu4bEwGpnFMAAAjCUJGAAA=')",
"@odata.etag": "W/\"CQAAABYAAADpfBfj8UPUTqu4bEwGpnFMAAAjCzND\"",
"Id": "AAMkAGQ4Yzc2NDkwLTYxYmItNDZmYS1iZjI1LTYyNmY4NTZkMjI1NgBGAAAAAADwPSus7EwaR6q1wNtgoqEMBwDpfBfj8UPUTqu4bEwGpnFMAAAAAAEgAADpfBfj8UPUTqu4bEwGpnFMAAAjCUJGAAA=",
"Subject": "Test Flag",
"[email protected]": "https://outlook.office365.com/api/beta/$metadata#Me/Messages('AAMkAGQ4Yzc2NDkwLTYxYmItNDZmYS1iZjI1LTYyNmY4NTZkMjI1NgBGAAAAAADwPSus7EwaR6q1wNtgoqEMBwDpfBfj8UPUTqu4bEwGpnFMAAAAAAEgAADpfBfj8UPUTqu4bEwGpnFMAAAjCUJGAAA%3D')/SingleValueExtendedProperties",
"SingleValueExtendedProperties": [
{
"PropertyId": "Integer 0x1090",
"Value": "2"
}
]
}
Старый формат:
{
"@odata.id": "https://outlook.office365.com/api/beta/Users('[email protected]')/Messages('AAMkAGQ4Yzc2NDkwLTYxYmItNDZmYS1iZjI1LTYyNmY4NTZkMjI1NgBGAAAAAADwPSus7EwaR6q1wNtgoqEMBwDpfBfj8UPUTqu4bEwGpnFMAAAAAAEgAADpfBfj8UPUTqu4bEwGpnFMAAAjCUJGAAA=')",
"@odata.etag": "W/\"CQAAABYAAADpfBfj8UPUTqu4bEwGpnFMAAAjCzND\"",
"Id": "AAMkAGQ4Yzc2NDkwLTYxYmItNDZmYS1iZjI1LTYyNmY4NTZkMjI1NgBGAAAAAADwPSus7EwaR6q1wNtgoqEMBwDpfBfj8UPUTqu4bEwGpnFMAAAAAAEgAADpfBfj8UPUTqu4bEwGpnFMAAAjCUJGAAA=",
"Subject": "Test Flag",
"[email protected]": "https://outlook.office365.com/api/beta/$metadata#Me/Messages('AAMkAGQ4Yzc2NDkwLTYxYmItNDZmYS1iZjI1LTYyNmY4NTZkMjI1NgBGAAAAAADwPSus7EwaR6q1wNtgoqEMBwDpfBfj8UPUTqu4bEwGpnFMAAAAAAEgAADpfBfj8UPUTqu4bEwGpnFMAAAjCUJGAAA%3D')/SingleValueExtendedProperties",
"SingleValueExtendedProperties": [
{
"PropertyRef": "0x1090",
"Type": "Integer",
"Value": "2"
}
]
}
Установить флаг так же просто, как отправить PATCH к сообщению с этим свойством в коллекции SingleValueExtendedProperties
:
Новый формат:
PATCH https://outlook.office365.com/api/beta/me/messages/{id}
{
"SingleValueExtendedProperties": [
{
"PropertyId": "Integer 0x1090",
"Value": "2"
}
]
}
Старый формат:
PATCH https://outlook.office365.com/api/beta/me/messages/{id}
{
"SingleValueExtendedProperties": [
{
"PropertyRef": "0x1090",
"Type": "Integer",
"Value": "2"
}
]
}
Наконец, согласно MS-OXOFLAG, значение 2 означает, что помечено для продолжения, а 1 означает, что пометка завершена.
person
Jason Johnston
schedule
22.07.2015