List events

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.

Obtener una lista de objetos de eventos del calendario predeterminado del usuario o de un calendario especificado. La lista contiene patrones de serie y reuniones de instancia única.

Para obtener instancias de evento de expansión, puede obtener la vista de calendario o bien obtener las instancias de un evento.

Hay dos posibles escenarios donde una aplicación puede obtener eventos en el calendario de otro usuario:

  • Si la aplicación tiene permisos de aplicación, o bien,
  • Si la aplicación tiene los correspondientes permisos delegados de un usuario y otro usuario ha compartido un calendario con ese usuario, o bien, le ha concedido acceso delegado a ese usuario. Vea detalles y un ejemplo.

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

Compatibilidad con varias zonas horarias

Para todas las operaciones GET que devuelven eventos, puede usar el encabezado Prefer: outlook.timezone para especificar la zona horaria de las horas de inicio y finalización del evento en la respuesta.

Por ejemplo, el siguiente encabezado Prefer: outlook.timezone establece las horas de inicio y finalización en la respuesta en la hora estándar del Este.

Prefer: outlook.timezone="Eastern Standard Time"

Si el evento se ha creado en una zona horaria diferente, las horas de inicio y finalización se ajustarán a la zona horaria especificada en ese encabezado Prefer. Consulte esta lista para ver los nombres de zona horaria admitidos. Si no se especifica el encabezado Prefer: outlook.timezone, se devuelven las horas de inicio y finalización en hora UTC.

Puede usar las propiedades OriginalStartTimeZone y OriginalEndTimeZone del recurso event para averiguar la zona horaria usada al crear el evento.

Permisos

Se requiere uno de los siguientes permisos para llamar a esta API. Para obtener más información, incluido cómo elegir permisos, vea Permisos.

Tipo de permiso Permisos (de menos a más privilegiados)
Delegado (cuenta profesional o educativa) Calendars.ReadBasic, Calendars.Read, Calendars.ReadWrite
Delegado (cuenta personal de Microsoft) Calendars.ReadBasic, Calendars.Read, Calendars.ReadWrite
Aplicación Calendars.ReadBasic, Calendars.Read, Calendars.ReadWrite

Solicitud HTTP

GET /me/events
GET /users/{id | userPrincipalName}/events

GET /me/calendar/events
GET /users/{id | userPrincipalName}/calendar/events

GET /me/calendars/{id}/events
GET /users/{id | userPrincipalName}/calendars/{id}/events

GET /me/calendarGroups/{id}/calendars/{id}/events
GET /users/{id | userPrincipalName}/calendarGroups/{id}/calendars/{id}/events

Parámetros de consulta opcionales

Este método admite los parámetros de consulta de OData a modo de ayuda para personalizar la respuesta.

Encabezados de solicitud

Nombre Tipo Descripción
Authorization string {token} de portador. Obligatorio.
Prefer: outlook.timezone string Se usa para especificar la zona horaria de las horas de inicio y final de la respuesta. Si no se especifican, estos valores de hora se devuelven en UTC. Opcional.
Prefer: outlook.body-content-type string Formato de la propiedad body que se devolverá. Los valores pueden ser "text" o "html". Se devuelve un encabezado Preference-Applied como confirmación si se especifica este encabezado Prefer. Si no se especifica el encabezado, la propiedad body se devuelve en formato HTML. Opcional.

Cuerpo de la solicitud

No proporcione un cuerpo de solicitud para este método.

Respuesta

Si se ejecuta correctamente, este método devuelve un código de respuesta 200 OK y la colección de objetos event en el cuerpo de la respuesta.

Ejemplo

Solicitud 1

El primer ejemplo obtiene todos los eventos del usuario. Especifica lo siguiente:

  • Un encabezado Prefer: outlook.timezone para obtener valores de fecha y hora devueltos en la hora estándar del Pacífico.
  • Parámetro de $select consulta para devolver propiedades específicas. Sin ningún parámetro $select, se devolverán todas las propiedades de evento.

La solicitud no especifica ningún encabezado Prefer: outlook.body-content-type para indicar un formato específico para el cuerpo del evento devuelto.

GET https://graph.microsoft.com/beta/me/events?$select=subject,body,bodyPreview,organizer,attendees,start,end,location
Prefer: outlook.timezone="Pacific Standard Time"
Respuesta 1

En el ejemplo siguiente se muestra la respuesta. Como no se especificó ningún encabezado Prefer: outlook.body-content-type, se devuelve la propiedad body en el formato HTML predeterminado.

HTTP/1.1 200 OK
Content-type: application/json
Preference-Applied: outlook.timezone="Pacific Standard Time"

{
    "@odata.context":"https://graph.microsoft.com/beta/$metadata#users('cd209b0b-3f83-4c35-82d2-d88a61820480')/events(subject,body,bodyPreview,organizer,attendees,start,end,location)",
    "value":[
        {
            "@odata.etag":"W/\"ZlnW4RIAV06KYYwlrfNZvQAAKGWwbw==\"",
            "id":"AAMkAGIAAAoZDOFAAA=",
            "subject":"Orientation ",
            "bodyPreview":"Dana, this is the time you selected for our orientation. Please bring the notes I sent you.",
            "body":{
                "contentType":"html",
                "content":"<html><head></head><body><p>Dana, this is the time you selected for our orientation. Please bring the notes I sent you.</p></body></html>"
            },
            "start":{
                "dateTime":"2017-04-21T10:00:00.0000000",
                "timeZone":"Pacific Standard Time"
            },
            "end":{
                "dateTime":"2017-04-21T12:00:00.0000000",
                "timeZone":"Pacific Standard Time"
            },
            "location": {
                "displayName": "Assembly Hall",
                "locationType": "default",
                "uniqueId": "Assembly Hall",
                "uniqueIdType": "private"
            },
            "locations": [
                {
                    "displayName": "Assembly Hall",
                    "locationType": "default",
                    "uniqueIdType": "unknown"
                }
            ],
            "attendees":[
                {
                    "type":"required",
                    "status":{
                        "response":"none",
                        "time":"0001-01-01T00:00:00Z"
                    },
                    "emailAddress":{
                        "name":"Samantha Booth",
                        "address":"samanthab@contoso.com"
                    }
                },
                {
                    "type":"required",
                    "status":{
                        "response":"none",
                        "time":"0001-01-01T00:00:00Z"
                    },
                    "emailAddress":{
                        "name":"Dana Swope",
                        "address":"danas@contoso.com"
                    }
                }
            ],
            "organizer":{
                "emailAddress":{
                    "name":"Samantha Booth",
                    "address":"samanthab@contoso.com"
                }
            }
        }
    ]
}
Solicitud 2

El segundo ejemplo muestra cómo usar un encabezado Prefer: outlook.body-content-type="text" para obtener la propiedad body del mensaje especificado en formato de texto.

La solicitud también usa un parámetro de consulta $select para devolver propiedades específicas. Sin ningún parámetro $select, se devolverán todas las propiedades de evento.

GET https://graph.microsoft.com/beta/me/events?$select=subject,body,bodyPreview
Prefer: outlook.body-content-type="text"
Respuesta 2

En el ejemplo siguiente se muestra la respuesta. Se devuelve la propiedad body en formato de texto.

HTTP/1.1 200 OK
Content-type: application/json
Preference-Applied: outlook.body-content-type="text"

{
    "@odata.context":"https://graph.microsoft.com/beta/$metadata#users('cd209b0b-3f83-4c35-82d2-d88a61820480')/events(subject,body,bodyPreview)",
    "value":[
        {
            "@odata.etag":"W/\"ZlnW4RIAV06KYYwlrfNZvQAAKGWwbw==\"",
            "id":"AAMkAGIAAAoZDOFAAA=",
            "subject":"Orientation ",
            "bodyPreview":"Dana, this is the time you selected for our orientation. Please bring the notes I sent you.",
            "body":{
                "contentType":"text",
                "content":"Dana, this is the time you selected for our orientation. Please bring the notes I sent you.\r\n"
            }
        }
    ]
}