Actualizar openTypeExtension
Espacio de nombres: microsoft.graph
Importante
Las API de la versión /beta
de Microsoft Graph están sujetas a cambios. No se admite el uso de estas API en aplicaciones de producción. Para determinar si una API está disponible en la versión 1.0, use el selector de Versión.
Precaución
Las aplicaciones existentes que usan esta característica con baseTask o baseTaskList deben actualizarse, ya que el conjunto de API de tareas pendientes basado en estos recursos está en desuso a partir del 31 de mayo de 2022. Ese conjunto de API dejará de devolver datos el 31 de agosto de 2022. Use el conjunto de API basado en todoTask.
Actualice una extensión abierta (objeto openTypeExtension ) con las propiedades del cuerpo de la solicitud:
- Si una propiedad del cuerpo de la solicitud coincide con el nombre de una propiedad existente en la extensión, se actualizan los datos de la extensión.
- De lo contrario, esa propiedad y sus datos se agregan a la extensión.
Los datos de una extensión pueden ser de tipo primitivo o matrices de tipos primitivos.
Consulte la tabla de la sección Permisos para obtener la lista de recursos que admiten extensiones abiertas.
Esta API está disponible en las siguientes implementaciones nacionales de nube.
Servicio global | Gobierno de EE. UU. L4 | Us Government L5 (DOD) | China operada por 21Vianet |
---|---|---|---|
✅ | ✅ | ✅ | ✅ |
Permissions
Según el recurso en el que se creó la extensión y el tipo de permiso (delegado o aplicación) solicitado, el permiso especificado en la tabla siguiente es el mínimo privilegio necesario para llamar a esta API. Para más información, incluida la toma de precauciones antes de elegir permisos con más privilegios, busque los siguientes permisos en Permisos.
Recurso admitido | Delegado (cuenta profesional o educativa) | Delegado (cuenta de Microsoft personal) | Aplicación |
---|---|---|---|
baseTask (en desuso) | Tasks.ReadWrite | Tasks.ReadWrite | No compatible |
baseTasklist (en desuso) | Tasks.ReadWrite | Tasks.ReadWrite | No compatible |
dispositivo | Directory.AccessAsUser.All | No admitido | Device.ReadWrite.All |
evento | Calendars.ReadWrite | Calendars.ReadWrite | Calendars.ReadWrite |
grupo | Group.ReadWrite.All | No admitido | Group.ReadWrite.All |
evento de grupo | Group.ReadWrite.All | No admitido | No admitido |
publicación de grupo | Group.ReadWrite.All | No admitido | Group.ReadWrite.All |
mensaje | Mail.ReadWrite | Mail.ReadWrite | Mail.ReadWrite |
organization | Organization.ReadWrite.All | No se admite | Organization.ReadWrite.All |
contacto personal | Contacts.ReadWrite | Contacts.ReadWrite | Contacts.ReadWrite |
todoTask | Tasks.ReadWrite | Tasks.ReadWrite | No compatible |
todoTasklist | Tasks.ReadWrite | Tasks.ReadWrite | No compatible |
user | User.ReadWrite | User.ReadWrite | User.ReadWrite.All |
Solicitud HTTP
En la solicitud, identifique la instancia de recurso, utilice la propiedad de navegación extensiones de esa instancia para identificar y realizar un PATCH
en esa instancia de extensión.
PATCH /administrativeUnits/{administrativeUnitId}/extensions/{extensionId}
PATCH /devices/{deviceId}/extensions/{extensionId}
PATCH /users/{userId|userPrincipalName}/events/{eventId}/extensions/{extensionId}
PATCH /groups/{groupId}/extensions/{extensionId}
PATCH /groups/{groupId}/events/{eventId}/extensions/{extensionId}
PATCH /groups/{groupId}/threads/{threadId}/posts/{postId}/extensions/{extensionId}
PATCH /users/{userId|userPrincipalName}/messages/{messageId}/extensions/{extensionId}
PATCH /organization/{organizationId}/extensions/{extensionId}
PATCH /users/{userId|userPrincipalName}/contacts/{contactId}/extensions/{extensionId}
PATCH /users/{userId|userPrincipalName}/extensions/{extensionId}
PATCH /users/me/todo/lists/{listId}/tasks/{taskId}/extensions/{extensionId}
PATCH /users/me/todo/lists/{listId}/extensions/{extensionId}
PATCH /users/me/tasks/lists/{listId}/tasks/{taskId}/extensions/{extensionId}
PATCH /users/me/tasks/lists/{listId}/extensions/{extensionId}
Nota: La sintaxis anterior muestra algunas maneras comunes de identificar una instancia de recurso para actualizar una extensión en ella. El resto de la sintaxis que permite identificar estas instancias de recursos admite la actualización de extensiones abiertas en ellas de una manera similar.
Consulte la sección Cuerpo de la solicitud sobre cómo incluir en el cuerpo de petición cualquier dato personalizado para cambiar o agregar a esa extensión.
Encabezados de solicitud
Nombre | Valor |
---|---|
Authorization | {token} de portador. Obligatorio. Obtenga más información sobre la autenticación y la autorización. |
Content-Type | application/json |
Cuerpo de la solicitud
Proporcione un cuerpo JSON del objeto openTypeExtension con los siguientes pares nombre-valor necesarios y con cualquier dato personalizado que se cambiará o agregará a la extensión. Los datos de la carga JSON pueden ser de tipo primitivo o matrices de tipos primitivos.
Nombre | Valor |
---|---|
@odata.type | Microsoft.Graph.OpenTypeExtension |
extensionName | Cadena única |
Use esta operación para almacenar datos en la propiedad de extensión abierta, actualizar los datos almacenados o eliminar los datos existentes.
- Para actualizar cualquier propiedad del objeto de extensión abierta, debe especificar todas las propiedades en el cuerpo de la solicitud; De lo contrario, Microsoft Graph eliminará las propiedades no especificadas.
- Para eliminar datos de una propiedad en el objeto de extensión abierta, establezca su valor null
en .
- Para eliminar una propiedad del objeto de extensión abierta, no la pase en el cuerpo de la solicitud PATCH y Microsoft Graph la eliminará.
- Para eliminar datos de todas las propiedades del objeto de extensión abierta, pero mantener el objeto de extensión abierto, actualice los valores de las propiedades a null
.
Respuesta
Si se ejecuta correctamente, este método devuelve un código de respuesta 200 OK
y el objeto openTypeExtension actualizado.
Ejemplo
Solicitud 1
En el primer ejemplo, se muestra cómo actualizar una extensión en un mensaje. Inicialmente, la extensión se representa mediante la siguiente carga JSON:
{
"@odata.context": "https://graph.microsoft.com/beta/$metadata#Me/messages('AAMkAGE1M2IyNGNmLTI5MTktNDUyZi1iOTVl===')/extensions/$entity",
"@odata.type": "#microsoft.graph.openTypeExtension",
"@odata.id": "https://graph.microsoft.com/beta/users('ddfc984d-b826-40d7-b48b-57002df85e00@1717f226-49d1-4d0c-9d74-709fad6677b4')/messages('AAMkAGE1M2IyNGNmLTI5MTktNDUyZi1iOTVl===')/extensions
('Microsoft.OutlookServices.OpenTypeExtension.Com.Contoso.Referral')",
"extensionName": "Com.Contoso.Referral",
"id": "Microsoft.OutlookServices.OpenTypeExtension.Com.Contoso.Referral",
"companyName": "Wingtip Toys",
"dealValue": 500050,
"expirationDate": "2015-12-03T10:00:00Z"
}
Puede hacer referencia a la extensión por su nombre:
PATCH https://graph.microsoft.com/beta/me/messages/AAMkAGE1M2IyNGNmLTI5MTktNDUyZi1iOTVl===/extensions/Com.Contoso.Referral
O puede hacer referencia a la extensión por su nombre completo:
PATCH https://graph.microsoft.com/beta/me/messages/AAMkAGE1M2IyNGNmLTI5MTktNDUyZi1iOTVl===/extensions/Microsoft.OutlookServices.OpenTypeExtension.Com.Contoso.Referral
Puede usar cualquier solicitud de ejemplo y el cuerpo de la solicitud siguiente para actualizar la extensión anterior:
- Cambiar
companyName
deWingtip Toys
aWingtip Toys (USA)
- Cambiar
dealValue
de500050
a500100
- Agregar nuevos datos como la propiedad personalizada
updated
{
"@odata.type": "microsoft.graph.openTypeExtension",
"extensionName": "Com.Contoso.Referral",
"companyName": "Wingtip Toys (USA)",
"dealValue": "500100",
"expirationDate": "2015-12-03T10:00:00.000Z",
"updated": "2015-10-29T11:00:00.000Z"
}
Respuesta 1
Esta es la respuesta, que es la misma independientemente de la forma usada para hacer referencia a la extensión.
HTTP/1.1 200 OK
Content-type: application/json
{
"@odata.context": "https://graph.microsoft.com/beta/$metadata#Me/messages('AAMkAGE1M2IyNGNmLTI5MTktNDUyZi1iOTVl===')/extensions/$entity",
"@odata.type": "#microsoft.graph.openTypeExtension",
"@odata.id": "https://graph.microsoft.com/beta/users('ddfc984d-b826-40d7-b48b-57002df85e00@1717f226-49d1-4d0c-9d74-709fad6677b4')/messages('AAMkAGE1M2IyNGNmLTI5MTktNDUyZi1iOTVl===')/extensions
('Microsoft.OutlookServices.OpenTypeExtension.Com.Contoso.Referral')",
"id": "Microsoft.OutlookServices.OpenTypeExtension.Com.Contoso.Referral",
"extensionName": "Com.Contoso.Referral",
"companyName": "Wingtip Toys (USA)",
"dealValue": 500100,
"expirationDate": "2015-12-03T10:00:00Z",
"updated": "2015-10-29T11:00:00.000Z"
}
Solicitud 2
En el segundo ejemplo, se muestra cómo actualizar una extensión en una publicación de grupo. Inicialmente, la extensión se representa mediante la siguiente carga JSON, con un valor expirationDate
de 2015-07-03T13:04:00Z
:
{
"@odata.context": "https://graph.microsoft.com/beta/$metadata#groups('37df2ff0-0de0-4c33-8aee-75289364aef6')/threads('AAQkADJizZJpEWwqDHsEpV_KA%3D%3D')/posts('AAMkADJiUg96QZUkA-ICwMubAADDEd7UAAA%3D')/extensions/$entity",
"@odata.type": "#microsoft.graph.openTypeExtension",
"id": "Microsoft.OutlookServices.OpenTypeExtension.Com.Contoso.Estimate",
"extensionName": "Com.Contoso.Estimate",
"companyName": "Contoso",
"expirationDate": "2015-07-03T13:04:00Z",
"DealValue": 1010100,
"Strings@odata.type": "#Collection(String)",
"topPicks": [
"Employees only",
"Add spouse or guest",
"Add family"
]
}
En la siguiente solicitud y cuerpo de la solicitud, tiene que cambiar la propiedad expirationDate
por 2016-07-30T11:00:00Z
:
PATCH https://graph.microsoft.com/beta/groups/37df2ff0-0de0-4c33-8aee-75289364aef6/threads/AAQkADJizZJpEWwqDHsEpV_KA==/posts/AAMkADJiUg96QZUkA-ICwMubAADDEd7UAAA=/extensions/Microsoft.OutlookServices.OpenTypeExtension.Com.Contoso.Estimate
Content-type: application/json
{
"@odata.type": "#microsoft.outlookServices.openTypeExtension",
"extensionName": "Com.Contoso.Estimate",
"companyName": "Contoso",
"expirationDate": "2016-07-30T11:00:00.000Z",
"DealValue": 1010100,
"topPicks": [
"Employees only",
"Add spouse or guest",
"Add family"
]
}
Respuesta 2
Esta es la respuesta del segundo ejemplo que muestra la propiedad expirationDate
actualizada en la extensión.
HTTP/1.1 200 OK
Content-Type: application/json
{
"@odata.context": "https://graph.microsoft.com/beta/$metadata#groups('37df2ff0-0de0-4c33-8aee-75289364aef6')/threads('AAQkADJizZJpEWwqDHsEpV_KA%3D%3D')/posts('AAMkADJiUg96QZUkA-ICwMubAADDEd7UAAA%3D')/extensions/$entity",
"@odata.type": "#microsoft.graph.openTypeExtension",
"id": "Microsoft.OutlookServices.OpenTypeExtension.Com.Contoso.Estimate",
"extensionName": "Com.Contoso.Estimate",
"companyName": "Contoso",
"expirationDate": "2016-07-30T11:00:00Z",
"DealValue": 1010100,
"Strings@odata.type": "#Collection(String)",
"topPicks": [
"Employees only",
"Add spouse or guest",
"Add family"
]
}
Comentarios
https://aka.ms/ContentUserFeedback.
Próximamente: A lo largo de 2024 iremos eliminando gradualmente GitHub Issues como mecanismo de comentarios sobre el contenido y lo sustituiremos por un nuevo sistema de comentarios. Para más información, vea:Enviar y ver comentarios de