I'm using office 365 mail Microsoft Graph API , trying to create new message following the Doc:
https://developer.microsoft.com/en-us/graph/docs/api-reference/beta/api/user_post_messages
POST https://graph.microsoft.com/beta/me/messages
Content-type: application/json
{
"subject":"Did you see last night's game?",
"importance":"Low",
"body":{
"contentType":"HTML",
"content":"They were <b>awesome</b>!"
},
"toRecipients":[
{
"emailAddress":{
"address":"[email protected]"
}
}
]
}
{ OUTPUT:
"@odata.context":"https://graph.microsoft.com/beta/$metadata#users('ad787b4f-1fda-4523-8e48-ffedb7f4635f')/messages/$entity",
"@odata.etag":"W/\"CQAAABYAAAAmXr9SsE/UR4PcnTZcg7qWAAAFS12t\"",
"id":"AAMkAGRWAAAFSmKXAAA=",
"createdDateTime":"2017-12-23T07:29:57Z",
"lastModifiedDateTime":"2017-12-23T07:29:58Z",
"changeKey":"CQAAABYAAAAmXr9SsE/UR4PcnTZcg7qWAAAFS12t",
"categories":[
],
"receivedDateTime":"2017-12-23T07:29:58Z",
"sentDateTime":"2017-12-23T07:29:58Z",
"hasAttachments":false,
"internetMessageId":"<[email protected]>",
"subject":"Did you see last night's game?",
"bodyPreview":"They were awesome!",
"importance":"low",
"parentFolderId":"AAMkAGRWAAAAAAEPAAA=",
"conversationId":"AAQkAGRVYAsRJrRdc_mWNaxU=",
"conversationIndex":"AQHTe7/VAniOJVgCxEmtF1z6ZY1rFQ==",
"isDeliveryReceiptRequested":false,
"isReadReceiptRequested":false,
"isRead":true,
"isDraft":true,
"webLink":"https://outlook.office365.com/owa/?ItemID=AAMkAGRWAAAFSmKXAAA%3D&exvsurl=1&viewmodel=ReadMessageItem",
"inferenceClassification":"focused",
"unsubscribeData":[
],
The output that I'm seeing is Draft message created in by inbox.
I tried to post with "isDraft":false , but the result unfortunately the same :(
Basically my purpose is "Restore" the original inbox messages , it means create them in Inbox without sending....I Did it with EWS , now trying to convert into graph api
So, Is Any option to create mail not as Draft ?
P.S: like in EWS https://msdn.microsoft.com/en-us/library/ms527503(v=exchg.10).aspx
Thanks a lot
The final solution as @David mentioned is via Extended properties:
acording to:
https://developer.microsoft.com/en-us/graph/docs/api-reference/beta/api/singlevaluelegacyextendedproperty_post_singlevalueextendedproperties
and :
https://msdn.microsoft.com/en-us/office/office365/api/extended-properties-rest-operations
https://msdn.microsoft.com/en-us/library/ee218129(v=exchg.80).aspx
"singleValueExtendedProperties": [
{
"id":"Integer 0x0E07",
"value":"4"
}
]
}
Yes. You have to set the message flags at creation time via property tag 0x0E07 (integer). From the EWS book with some mods - "According to MSDN, the MSGFLAG_UNSENT message flag is read-write ONLY before the message is first saved (http://msdn2.microsoft.com/en-us/library/ms527629.aspx). After that, the flag is read only. What this means is that if you are going to modify the message flags for a message, you must do it when you first call CreateItem (or the REST equivalent). You cannot clear this flag on an existing message."
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With