Namespace: microsoft.graph
Crie uma ou mais propriedades estendidas de vários valores em uma instância nova ou existente de um recurso.
Há suporte para as seguintes fontes de dados:
Os seguintes recursos do grupo:
Confira Visão geral de propriedades estendidas para saber mais sobre quando usar extensões abertas ou propriedades estendidas e sobre como especificar propriedades estendidas.
Essa API está disponível nas seguintes implantações de nuvem nacional.
| Serviço global |
Governo dos EUA L4 |
US Government L5 (DOD) |
China operada pela 21Vianet |
| ✅ |
✅ |
✅ |
✅ |
Permissões
Dependendo do recurso no qual você está criando a propriedade estendida e do tipo de permissão (delegada ou aplicativo) solicitado, a permissão especificada na tabela a seguir é a mínima necessária para chamar essa API. Para saber mais, incluindo como escolher permissões, confira Permissões.
| Recurso com suporte |
Delegada (conta corporativa ou de estudante) |
Delegada (conta pessoal da Microsoft) |
Application |
|
calendar |
Calendars.ReadWrite |
Calendars.ReadWrite |
Calendars.ReadWrite |
|
contato |
Contacts.ReadWrite |
Contacts.ReadWrite |
Contacts.ReadWrite |
|
contactFolder |
Contacts.ReadWrite |
Contacts.ReadWrite |
Contacts.ReadWrite |
|
evento |
Calendars.ReadWrite |
Calendars.ReadWrite |
Calendars.ReadWrite |
| grupo calendar |
Group.ReadWrite.All |
Sem suporte |
Sem suporte |
| grupo event |
Group.ReadWrite.All |
Sem suporte |
Sem suporte |
| grupo post |
Group.ReadWrite.All |
Sem suporte |
Sem suporte |
|
pasta de caixa de correio |
MailboxFolder.Read |
Sem suporte. |
MailboxFolder.Read.All |
|
mailFolder |
Mail.ReadWrite |
Mail.ReadWrite |
Mail.ReadWrite |
|
mensagem |
Mail.ReadWrite |
Mail.ReadWrite |
Mail.ReadWrite |
Solicitação HTTP
Você pode criar propriedades estendidas em uma instância de recurso nova ou existente.
Para criar uma ou mais propriedades estendidas em uma nova instância de recurso, use a mesma solicitação REST válida para a criação da instância e inclua as propriedades da nova instância de recurso e a propriedade estendida no corpo da solicitação.
Alguns recursos dão suporte à criação de mais de uma maneira. Para obter mais informações sobre como criar essas instâncias de recurso, consulte os artigos correspondentes para criar uma mensagem, mailFolder, evento, calendário, contato, contactFolder, mailboxFolder, evento de grupo e postagem de grupo.
Veja a seguir a sintaxe das solicitações.
POST /me/messages
POST /users/{id|userPrincipalName}/messages
POST /me/mailFolders/{id}/messages
POST /me/mailFolders
POST /users/{id|userPrincipalName}/mailFolders
POST /me/events
POST /users/{id|userPrincipalName}/events
POST /me/calendars
POST /users/{id|userPrincipalName}/calendars
POST /me/contacts
POST /users/{id|userPrincipalName}/contacts
POST /me/contactFolders
POST /users/{id|userPrincipalName}/contactFolders
POST /admin/exchange/mailboxes/{mailboxId}/folders
POST /groups/{id}/events
POST /groups/{id}/threads/{id}/posts/{id}/reply
POST /groups/{id}/conversations/{id}/threads/{id}/posts/{id}/reply
POST /groups/{id}/threads/{id}/reply
POST /groups/{id}/conversations/{id}/threads/{id}/reply
POST /groups/{id}/threads
POST /groups/{id}/conversations
Observação
Chamar o ponto de extremidade /me exige um usuário conectado e, portanto, uma permissão delegada. Não há suporte para permissões de aplicativo ao usar o /me ponto de extremidade.
Para criar uma ou mais propriedades estendidas em uma instância de recurso existente, especifique essa instância na solicitação e inclua a propriedade estendida no corpo da solicitação.
Observação Você não pode criar uma propriedade estendida em uma postagem de grupo existente.
PATCH /me/messages/{id}
PATCH /users/{id|userPrincipalName}/messages/{id}
PATCH /me/mailFolders/{id}/messages/{id}
PATCH /me/mailFolders/{id}
PATCH /users/{id|userPrincipalName}/mailFolders/{id}
PATCH /me/events/{id}
PATCH /users/{id|userPrincipalName}/events/{id}
PATCH /me/calendars/{id}
PATCH /users/{id|userPrincipalName}/calendars/{id}
PATCH /me/contacts/{id}
PATCH /users/{id|userPrincipalName}/contacts/{id}
PATCH /me/contactFolders/{id}
PATCH /users/{id|userPrincipalName}/contactFolders/{id}
PATCH /admin/exchange/mailboxes/{mailboxId}/folders/{mailboxFolderId}
PATCH /groups/{id}/events/{id}
Observação
Chamar o ponto de extremidade /me exige um usuário conectado e, portanto, uma permissão delegada. Não há suporte para permissões de aplicativo ao usar o /me ponto de extremidade.
| Nome |
Valor |
| Autorização |
{token} de portador. Obrigatório. Saiba mais sobre autenticação e autorização. |
| Content-Type |
application/json |
Corpo da solicitação
Forneça um corpo JSON de cada objeto singleValueLegacyExtendedProperty na propriedade da coleção singleValueExtendedProperties da instância do recurso.
| Propriedade |
Tipo |
Descrição |
| singleValueExtendedProperties |
Coleção singleValueLegacyExtendedProperty |
Uma matriz de uma ou mais propriedades estendidas de valor único. |
| id |
String |
Para cada propriedade na coleção singleValueExtendedProperties, especifique isso para identificar a propriedade. Deve seguir um dos formatos com suporte. Para saber mais, confira Visão geral das propriedades estendidas do Outlook. Obrigatório. |
| valor |
string |
Para cada propriedade na coleção singleValueExtendedProperties, especifique o valor da propriedade. Obrigatório. |
Ao criar uma propriedade estendida em uma nova instância de recurso, além da nova coleção singleValueExtendedProperties, forneça uma representação JSON dessa instância de recurso (ou seja, message, mailFolder, event, etc.)
Resposta
Código da resposta
Uma operação bem-sucedida na criação de uma propriedade estendida em uma nova instância de recurso retorna 201 Created, exceto em uma nova postagem de grupo. Dependendo do método usado, a operação pode retornar 200 OK ou 202 Accepted.
Em uma instância de recurso existente, uma operação de criação bem-sucedida retorna 200 OK.
Corpo da resposta
Ao criar uma propriedade estendida, a resposta inclui apenas a instância nova ou existente, mas não a nova propriedade estendida. Para ver a propriedade estendida recém-criada, obtenha a instância expandida com a propriedade estendida.
Ao criar uma propriedade estendida em uma novapostagem de grupo respondendo a um tópico ou postagem, a resposta inclui apenas um código de resposta, mas não a nova postagem nem a propriedade estendida.
Exemplos
Exemplo 1: Criar um novo evento e uma propriedade estendida de valor único
Solicitação
O primeiro exemplo cria um novo evento e uma propriedade de valor único estendida na mesma operação POST. Além das propriedades que você normalmente incluiria para um novo evento, o corpo da solicitação inclui a coleção singleValueExtendedProperties, que contém uma propriedade estendida de valor único e as seguintes informações sobre a propriedade:
-
id especifica o tipo de propriedade como
String, o GUID e a propriedade nomeada Fun.
-
value especifica
Food como o valor da propriedade Fun.
POST https://graph.microsoft.com/v1.0/me/events
Content-Type: application/json
{
"subject": "Celebrate Thanksgiving",
"body": {
"contentType": "HTML",
"content": "Let's get together!"
},
"start": {
"dateTime": "2015-11-26T18:00:00",
"timeZone": "Pacific Standard Time"
},
"end": {
"dateTime": "2015-11-26T23:00:00",
"timeZone": "Pacific Standard Time"
},
"attendees": [
{
"emailAddress": {
"address": "Terrie@contoso.com",
"name": "Terrie Barrera"
},
"type": "Required"
}
],
"singleValueExtendedProperties": [
{
"id":"String {66f5a359-4659-4830-9070-00040ec6ac6e} Name Fun",
"value":"Food"
}
]
}
// Code snippets are only available for the latest version. Current version is 5.x
// Dependencies
using Microsoft.Graph.Models;
var requestBody = new Event
{
Subject = "Celebrate Thanksgiving",
Body = new ItemBody
{
ContentType = BodyType.Html,
Content = "Let's get together!",
},
Start = new DateTimeTimeZone
{
DateTime = "2015-11-26T18:00:00",
TimeZone = "Pacific Standard Time",
},
End = new DateTimeTimeZone
{
DateTime = "2015-11-26T23:00:00",
TimeZone = "Pacific Standard Time",
},
Attendees = new List<Attendee>
{
new Attendee
{
EmailAddress = new EmailAddress
{
Address = "Terrie@contoso.com",
Name = "Terrie Barrera",
},
Type = AttendeeType.Required,
},
},
SingleValueExtendedProperties = new List<SingleValueLegacyExtendedProperty>
{
new SingleValueLegacyExtendedProperty
{
Id = "String {66f5a359-4659-4830-9070-00040ec6ac6e} Name Fun",
Value = "Food",
},
},
};
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=csharp
var result = await graphClient.Me.Events.PostAsync(requestBody);
Para obter detalhes sobre como adicionar o SDK ao seu projeto e criar uma instância authProvider, consulte a documentação do SDK.
// Code snippets are only available for the latest major version. Current major version is $v1.*
// Dependencies
import (
"context"
msgraphsdk "github.com/microsoftgraph/msgraph-sdk-go"
graphmodels "github.com/microsoftgraph/msgraph-sdk-go/models"
//other-imports
)
requestBody := graphmodels.NewEvent()
subject := "Celebrate Thanksgiving"
requestBody.SetSubject(&subject)
body := graphmodels.NewItemBody()
contentType := graphmodels.HTML_BODYTYPE
body.SetContentType(&contentType)
content := "Let's get together!"
body.SetContent(&content)
requestBody.SetBody(body)
start := graphmodels.NewDateTimeTimeZone()
dateTime := "2015-11-26T18:00:00"
start.SetDateTime(&dateTime)
timeZone := "Pacific Standard Time"
start.SetTimeZone(&timeZone)
requestBody.SetStart(start)
end := graphmodels.NewDateTimeTimeZone()
dateTime := "2015-11-26T23:00:00"
end.SetDateTime(&dateTime)
timeZone := "Pacific Standard Time"
end.SetTimeZone(&timeZone)
requestBody.SetEnd(end)
attendee := graphmodels.NewAttendee()
emailAddress := graphmodels.NewEmailAddress()
address := "Terrie@contoso.com"
emailAddress.SetAddress(&address)
name := "Terrie Barrera"
emailAddress.SetName(&name)
attendee.SetEmailAddress(emailAddress)
type := graphmodels.REQUIRED_ATTENDEETYPE
attendee.SetType(&type)
attendees := []graphmodels.Attendeeable {
attendee,
}
requestBody.SetAttendees(attendees)
singleValueLegacyExtendedProperty := graphmodels.NewSingleValueLegacyExtendedProperty()
id := "String {66f5a359-4659-4830-9070-00040ec6ac6e} Name Fun"
singleValueLegacyExtendedProperty.SetId(&id)
value := "Food"
singleValueLegacyExtendedProperty.SetValue(&value)
singleValueExtendedProperties := []graphmodels.SingleValueLegacyExtendedPropertyable {
singleValueLegacyExtendedProperty,
}
requestBody.SetSingleValueExtendedProperties(singleValueExtendedProperties)
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=go
events, err := graphClient.Me().Events().Post(context.Background(), requestBody, nil)
Para obter detalhes sobre como adicionar o SDK ao seu projeto e criar uma instância authProvider, consulte a documentação do SDK.
// Code snippets are only available for the latest version. Current version is 6.x
GraphServiceClient graphClient = new GraphServiceClient(requestAdapter);
Event event = new Event();
event.setSubject("Celebrate Thanksgiving");
ItemBody body = new ItemBody();
body.setContentType(BodyType.Html);
body.setContent("Let's get together!");
event.setBody(body);
DateTimeTimeZone start = new DateTimeTimeZone();
start.setDateTime("2015-11-26T18:00:00");
start.setTimeZone("Pacific Standard Time");
event.setStart(start);
DateTimeTimeZone end = new DateTimeTimeZone();
end.setDateTime("2015-11-26T23:00:00");
end.setTimeZone("Pacific Standard Time");
event.setEnd(end);
LinkedList<Attendee> attendees = new LinkedList<Attendee>();
Attendee attendee = new Attendee();
EmailAddress emailAddress = new EmailAddress();
emailAddress.setAddress("Terrie@contoso.com");
emailAddress.setName("Terrie Barrera");
attendee.setEmailAddress(emailAddress);
attendee.setType(AttendeeType.Required);
attendees.add(attendee);
event.setAttendees(attendees);
LinkedList<SingleValueLegacyExtendedProperty> singleValueExtendedProperties = new LinkedList<SingleValueLegacyExtendedProperty>();
SingleValueLegacyExtendedProperty singleValueLegacyExtendedProperty = new SingleValueLegacyExtendedProperty();
singleValueLegacyExtendedProperty.setId("String {66f5a359-4659-4830-9070-00040ec6ac6e} Name Fun");
singleValueLegacyExtendedProperty.setValue("Food");
singleValueExtendedProperties.add(singleValueLegacyExtendedProperty);
event.setSingleValueExtendedProperties(singleValueExtendedProperties);
Event result = graphClient.me().events().post(event);
Para obter detalhes sobre como adicionar o SDK ao seu projeto e criar uma instância authProvider, consulte a documentação do SDK.
const options = {
authProvider,
};
const client = Client.init(options);
const event = {
subject: 'Celebrate Thanksgiving',
body: {
contentType: 'HTML',
content: 'Let\'s get together!'
},
start: {
dateTime: '2015-11-26T18:00:00',
timeZone: 'Pacific Standard Time'
},
end: {
dateTime: '2015-11-26T23:00:00',
timeZone: 'Pacific Standard Time'
},
attendees: [
{
emailAddress: {
address: 'Terrie@contoso.com',
name: 'Terrie Barrera'
},
type: 'Required'
}
],
singleValueExtendedProperties: [
{
id: 'String {66f5a359-4659-4830-9070-00040ec6ac6e} Name Fun',
value: 'Food'
}
]
};
await client.api('/me/events')
.post(event);
Para obter detalhes sobre como adicionar o SDK ao seu projeto e criar uma instância authProvider, consulte a documentação do SDK.
<?php
use Microsoft\Graph\GraphServiceClient;
use Microsoft\Graph\Generated\Models\Event;
use Microsoft\Graph\Generated\Models\ItemBody;
use Microsoft\Graph\Generated\Models\BodyType;
use Microsoft\Graph\Generated\Models\DateTimeTimeZone;
use Microsoft\Graph\Generated\Models\Attendee;
use Microsoft\Graph\Generated\Models\EmailAddress;
use Microsoft\Graph\Generated\Models\AttendeeType;
use Microsoft\Graph\Generated\Models\SingleValueLegacyExtendedProperty;
$graphServiceClient = new GraphServiceClient($tokenRequestContext, $scopes);
$requestBody = new Event();
$requestBody->setSubject('Celebrate Thanksgiving');
$body = new ItemBody();
$body->setContentType(new BodyType('hTML'));
$body->setContent('Let\'s get together!');
$requestBody->setBody($body);
$start = new DateTimeTimeZone();
$start->setDateTime('2015-11-26T18:00:00');
$start->setTimeZone('Pacific Standard Time');
$requestBody->setStart($start);
$end = new DateTimeTimeZone();
$end->setDateTime('2015-11-26T23:00:00');
$end->setTimeZone('Pacific Standard Time');
$requestBody->setEnd($end);
$attendeesAttendee1 = new Attendee();
$attendeesAttendee1EmailAddress = new EmailAddress();
$attendeesAttendee1EmailAddress->setAddress('Terrie@contoso.com');
$attendeesAttendee1EmailAddress->setName('Terrie Barrera');
$attendeesAttendee1->setEmailAddress($attendeesAttendee1EmailAddress);
$attendeesAttendee1->setType(new AttendeeType('required'));
$attendeesArray []= $attendeesAttendee1;
$requestBody->setAttendees($attendeesArray);
$singleValueExtendedPropertiesSingleValueLegacyExtendedProperty1 = new SingleValueLegacyExtendedProperty();
$singleValueExtendedPropertiesSingleValueLegacyExtendedProperty1->setId('String {66f5a359-4659-4830-9070-00040ec6ac6e} Name Fun');
$singleValueExtendedPropertiesSingleValueLegacyExtendedProperty1->setValue('Food');
$singleValueExtendedPropertiesArray []= $singleValueExtendedPropertiesSingleValueLegacyExtendedProperty1;
$requestBody->setSingleValueExtendedProperties($singleValueExtendedPropertiesArray);
$result = $graphServiceClient->me()->events()->post($requestBody)->wait();
Para obter detalhes sobre como adicionar o SDK ao seu projeto e criar uma instância authProvider, consulte a documentação do SDK.
Import-Module Microsoft.Graph.Calendar
$params = @{
subject = "Celebrate Thanksgiving"
body = @{
contentType = "HTML"
content = "Let's get together!"
}
start = @{
dateTime = "2015-11-26T18:00:00"
timeZone = "Pacific Standard Time"
}
end = @{
dateTime = "2015-11-26T23:00:00"
timeZone = "Pacific Standard Time"
}
attendees = @(
@{
emailAddress = @{
address = "Terrie@contoso.com"
name = "Terrie Barrera"
}
type = "Required"
}
)
singleValueExtendedProperties = @(
@{
id = "String {66f5a359-4659-4830-9070-00040ec6ac6e} Name Fun"
value = "Food"
}
)
}
# A UPN can also be used as -UserId.
New-MgUserEvent -UserId $userId -BodyParameter $params
Para obter detalhes sobre como adicionar o SDK ao seu projeto e criar uma instância authProvider, consulte a documentação do SDK.
# Code snippets are only available for the latest version. Current version is 1.x
from msgraph import GraphServiceClient
from msgraph.generated.models.event import Event
from msgraph.generated.models.item_body import ItemBody
from msgraph.generated.models.body_type import BodyType
from msgraph.generated.models.date_time_time_zone import DateTimeTimeZone
from msgraph.generated.models.attendee import Attendee
from msgraph.generated.models.email_address import EmailAddress
from msgraph.generated.models.attendee_type import AttendeeType
from msgraph.generated.models.single_value_legacy_extended_property import SingleValueLegacyExtendedProperty
# To initialize your graph_client, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=python
request_body = Event(
subject = "Celebrate Thanksgiving",
body = ItemBody(
content_type = BodyType.Html,
content = "Let's get together!",
),
start = DateTimeTimeZone(
date_time = "2015-11-26T18:00:00",
time_zone = "Pacific Standard Time",
),
end = DateTimeTimeZone(
date_time = "2015-11-26T23:00:00",
time_zone = "Pacific Standard Time",
),
attendees = [
Attendee(
email_address = EmailAddress(
address = "Terrie@contoso.com",
name = "Terrie Barrera",
),
type = AttendeeType.Required,
),
],
single_value_extended_properties = [
SingleValueLegacyExtendedProperty(
id = "String {66f5a359-4659-4830-9070-00040ec6ac6e} Name Fun",
value = "Food",
),
],
)
result = await graph_client.me.events.post(request_body)
Para obter detalhes sobre como adicionar o SDK ao seu projeto e criar uma instância authProvider, consulte a documentação do SDK.
Resposta
Uma resposta bem-sucedida é indicada por um código de resposta HTTP 201 Created e inclui o novo evento em seu corpo, semelhante à resposta da criação de apenas um evento. A resposta não inclui nenhuma propriedade estendida recém-criada.
Para ver a propriedade estendida recém-criada, obtenha o evento expandido com a propriedade estendida.
HTTP/1.1 201 Created
Content-Type: application/json
{
"@odata.context": "https://graph.microsoft.com/v1.0/$metadata#users('c71-86a-a0-92-906ba')/events/$entity",
"@odata.etag": "W/\"oBeN/g==\"",
"id": "AAMkADI4Yzc5AABVNeEhAAA=",
"createdDateTime": "2023-06-26T15:46:00.9307807Z",
"lastModifiedDateTime": "2023-06-26T15:46:02.0775731Z",
"changeKey": "oBEEg==",
"categories": [],
"transactionId": null,
"originalStartTimeZone": "Pacific Standard Time",
"originalEndTimeZone": "Pacific Standard Time",
"iCalUId": "04049ACBF84A7AC7CB34D",
"reminderMinutesBeforeStart": 15,
"isReminderOn": true,
"hasAttachments": false,
"subject": "Celebrate Thanksgiving",
"bodyPreview": "Let's get together!",
"importance": "normal",
"sensitivity": "normal",
"isAllDay": false,
"isCancelled": false,
"isOrganizer": true,
"responseRequested": true,
"seriesMasterId": null,
"showAs": "busy",
"type": "singleInstance",
"webLink": "https://outlook.office365.com/owa/?itemid=AAMkAA%3D&exvsurl=1&path=/calendar/item",
"onlineMeetingUrl": null,
"isOnlineMeeting": false,
"onlineMeetingProvider": "unknown",
"allowNewTimeProposals": true,
"occurrenceId": null,
"isDraft": false,
"hideAttendees": false,
"responseStatus": {
"response": "organizer",
"time": "0001-01-01T00:00:00Z"
},
"body": {
"contentType": "html",
"content": "<html><head><meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\"></head><body>Let's get together!</body></html>"
},
"start": {
"dateTime": "2015-11-26T18:00:00.0000000",
"timeZone": "Pacific Standard Time"
},
"end": {
"dateTime": "2015-11-26T23:00:00.0000000",
"timeZone": "Pacific Standard Time"
},
"location": {
"displayName": "",
"locationType": "default",
"uniqueIdType": "unknown",
"address": {},
"coordinates": {}
},
"locations": [],
"recurrence": null,
"attendees": [
{
"type": "required",
"status": {
"response": "none",
"time": "0001-01-01T00:00:00Z"
},
"emailAddress": {
"name": "Terrie Barrera",
"address": "Terrie@contoso.com"
}
}
],
"organizer": {
"emailAddress": {
"name": "MOD Administrator",
"address": "admin@contoso.com"
}
},
"onlineMeeting": null
}
Exemplo 2: Criar uma propriedade estendida de valor único para uma mensagem
Solicitação
O segundo exemplo cria uma propriedade estendido de valor único para a mensagem especificada existente. A propriedade estendida é o único elemento na matriz singleValueExtendedProperties. O corpo da solicitação inclui o seguinte para essa propriedade estendida:
-
id especifica o tipo de propriedade como
String, o GUID e a propriedade nomeada Color.
-
value especifica
Green como o valor da propriedade Color.
PATCH https://graph.microsoft.com/v1.0/me/messages/AAMkAGE1M2_bs88AACHsLqWAAA=
Content-Type: application/json
{
"singleValueExtendedProperties": [
{
"id":"String {66f5a359-4659-4830-9070-00047ec6ac6e} Name Color",
"value":"Green"
}
]
}
// Code snippets are only available for the latest version. Current version is 5.x
// Dependencies
using Microsoft.Graph.Models;
var requestBody = new Message
{
SingleValueExtendedProperties = new List<SingleValueLegacyExtendedProperty>
{
new SingleValueLegacyExtendedProperty
{
Id = "String {66f5a359-4659-4830-9070-00047ec6ac6e} Name Color",
Value = "Green",
},
},
};
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=csharp
var result = await graphClient.Me.Messages["{message-id}"].PatchAsync(requestBody);
Para obter detalhes sobre como adicionar o SDK ao seu projeto e criar uma instância authProvider, consulte a documentação do SDK.
// Code snippets are only available for the latest major version. Current major version is $v1.*
// Dependencies
import (
"context"
msgraphsdk "github.com/microsoftgraph/msgraph-sdk-go"
graphmodels "github.com/microsoftgraph/msgraph-sdk-go/models"
//other-imports
)
requestBody := graphmodels.NewMessage()
singleValueLegacyExtendedProperty := graphmodels.NewSingleValueLegacyExtendedProperty()
id := "String {66f5a359-4659-4830-9070-00047ec6ac6e} Name Color"
singleValueLegacyExtendedProperty.SetId(&id)
value := "Green"
singleValueLegacyExtendedProperty.SetValue(&value)
singleValueExtendedProperties := []graphmodels.SingleValueLegacyExtendedPropertyable {
singleValueLegacyExtendedProperty,
}
requestBody.SetSingleValueExtendedProperties(singleValueExtendedProperties)
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=go
messages, err := graphClient.Me().Messages().ByMessageId("message-id").Patch(context.Background(), requestBody, nil)
Para obter detalhes sobre como adicionar o SDK ao seu projeto e criar uma instância authProvider, consulte a documentação do SDK.
// Code snippets are only available for the latest version. Current version is 6.x
GraphServiceClient graphClient = new GraphServiceClient(requestAdapter);
Message message = new Message();
LinkedList<SingleValueLegacyExtendedProperty> singleValueExtendedProperties = new LinkedList<SingleValueLegacyExtendedProperty>();
SingleValueLegacyExtendedProperty singleValueLegacyExtendedProperty = new SingleValueLegacyExtendedProperty();
singleValueLegacyExtendedProperty.setId("String {66f5a359-4659-4830-9070-00047ec6ac6e} Name Color");
singleValueLegacyExtendedProperty.setValue("Green");
singleValueExtendedProperties.add(singleValueLegacyExtendedProperty);
message.setSingleValueExtendedProperties(singleValueExtendedProperties);
Message result = graphClient.me().messages().byMessageId("{message-id}").patch(message);
Para obter detalhes sobre como adicionar o SDK ao seu projeto e criar uma instância authProvider, consulte a documentação do SDK.
const options = {
authProvider,
};
const client = Client.init(options);
const message = {
singleValueExtendedProperties: [
{
id: 'String {66f5a359-4659-4830-9070-00047ec6ac6e} Name Color',
value: 'Green'
}
]
};
await client.api('/me/messages/AAMkAGE1M2_bs88AACHsLqWAAA=')
.update(message);
Para obter detalhes sobre como adicionar o SDK ao seu projeto e criar uma instância authProvider, consulte a documentação do SDK.
<?php
use Microsoft\Graph\GraphServiceClient;
use Microsoft\Graph\Generated\Models\Message;
use Microsoft\Graph\Generated\Models\SingleValueLegacyExtendedProperty;
$graphServiceClient = new GraphServiceClient($tokenRequestContext, $scopes);
$requestBody = new Message();
$singleValueExtendedPropertiesSingleValueLegacyExtendedProperty1 = new SingleValueLegacyExtendedProperty();
$singleValueExtendedPropertiesSingleValueLegacyExtendedProperty1->setId('String {66f5a359-4659-4830-9070-00047ec6ac6e} Name Color');
$singleValueExtendedPropertiesSingleValueLegacyExtendedProperty1->setValue('Green');
$singleValueExtendedPropertiesArray []= $singleValueExtendedPropertiesSingleValueLegacyExtendedProperty1;
$requestBody->setSingleValueExtendedProperties($singleValueExtendedPropertiesArray);
$result = $graphServiceClient->me()->messages()->byMessageId('message-id')->patch($requestBody)->wait();
Para obter detalhes sobre como adicionar o SDK ao seu projeto e criar uma instância authProvider, consulte a documentação do SDK.
Import-Module Microsoft.Graph.Mail
$params = @{
singleValueExtendedProperties = @(
@{
id = "String {66f5a359-4659-4830-9070-00047ec6ac6e} Name Color"
value = "Green"
}
)
}
# A UPN can also be used as -UserId.
Update-MgUserMessage -UserId $userId -MessageId $messageId -BodyParameter $params
Para obter detalhes sobre como adicionar o SDK ao seu projeto e criar uma instância authProvider, consulte a documentação do SDK.
# Code snippets are only available for the latest version. Current version is 1.x
from msgraph import GraphServiceClient
from msgraph.generated.models.message import Message
from msgraph.generated.models.single_value_legacy_extended_property import SingleValueLegacyExtendedProperty
# To initialize your graph_client, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=python
request_body = Message(
single_value_extended_properties = [
SingleValueLegacyExtendedProperty(
id = "String {66f5a359-4659-4830-9070-00047ec6ac6e} Name Color",
value = "Green",
),
],
)
result = await graph_client.me.messages.by_message_id('message-id').patch(request_body)
Para obter detalhes sobre como adicionar o SDK ao seu projeto e criar uma instância authProvider, consulte a documentação do SDK.
Resposta
Uma resposta bem-sucedida é indicada por um código de resposta HTTP 200 OK e inclui a mensagem especificada em seu corpo, semelhante à resposta da atualização de uma mensagem. A resposta não inclui a propriedade estendida recém-criada.
Para ver a propriedade estendida recém-criada, obtenha a mensagem expandida com a propriedade estendida.
HTTP/1.1 200 OK
Content-type: application/json
{
"@odata.context": "https://graph.microsoft.com/v1.0/$metadata#users('3cc-ad3-4b9-9a-54')/messages/$entity",
"@odata.etag": "W/\"CQAAABTiMty\"",
"id": "AAMkADQzZ1NzItKbS4P8E6VEAAA3LwToAAA=",
"createdDateTime": "2023-05-12T15:55:56Z",
"lastModifiedDateTime": "2023-06-23T17:45:43Z",
"changeKey": "CQAAAAABTiMty",
"categories": [],
"receivedDateTime": "2023-05-12T15:55:57Z",
"sentDateTime": "2023-05-12T15:55:48Z",
"hasAttachments": false,
"internetMessageId": "<odspmicro-PlannerDueDate-06c7f00e-6b5f793846-DispatchToRecipients-PreprocessPayload-r0-SendEmail@59C185B>",
"subject": "You have upcoming tasks due",
"bodyPreview": "Hi Alex. You have 2 tasks due. You have upcoming tasksSubmit your expensesIn the plan Event Plan 5/19/2023Due in 7 daysSubmit your expensesIn the plan Event Plan 5/19/2023Due in 7 daysView tasks in Microsoft To ",
"importance": "normal",
"parentFolderId": "AQMkc0BAIptLg-wTpUQAAAIBDAAAAA==",
"conversationId": "AAQkADQzZmJLgzlRSFD0=",
"conversationIndex": "AQHIUPQ==",
"isDeliveryReceiptRequested": null,
"isReadReceiptRequested": false,
"isRead": false,
"isDraft": false,
"webLink": "https://outlook.office365.com/owa/?ItemID=AAP8E6vsurl=1&viewmodel=ReadMessageItem",
"inferenceClassification": "focused",
"body": {
"contentType": "html",
"content": "<html aria-hidden=\"true\" role=\"presentation\" height=\"1\" width=\"1\"></html>"
},
"sender": {
"emailAddress": {
"name": "Microsoft on behalf of your organization",
"address": "noreply@planner.office365.com"
}
},
"from": {
"emailAddress": {
"name": "Microsoft on behalf of your organization",
"address": "noreply@planner.office365.com"
}
},
"toRecipients": [
{
"emailAddress": {
"name": "Alex Wilber",
"address": "AlexW@contoso.com"
}
}
],
"ccRecipients": [],
"bccRecipients": [],
"replyTo": [],
"flag": {
"flagStatus": "notFlagged"
}
}