Criar uma propriedade estendida de valor único

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 de 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 nacionais de nuvem.

Serviço global Governo dos EUA L4 GOVERNO DOS EUA L5 (DOD) China operada pela 21Vianet

Permissões

Dependendo do recurso em que você está criando a propriedade estendida e o tipo de permissão (delegado ou aplicativo) solicitado, a permissão especificada na tabela a seguir é o mínimo necessário 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 Incompatível
grupo post Group.ReadWrite.All Sem suporte Incompatível
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, evento de grupo e postagem em 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 /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

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.

Nota 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 /groups/{id}/events/{id}

Cabeçalhos de solicitação

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 thread 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 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"
     }
  ]
}

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"
      }
    ]
}

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"
    }
}