Enumerar suscripciones
Espacio de nombres: microsoft.graph
Recuperar las propiedades y relaciones de suscripciones de webhook, según el identificador de la aplicación, el usuario y la función del usuario con un espacio empresarial.
El contenido de la respuesta depende del contexto en el que la aplicación está llamando; para obtener más información, consulte los escenarios en la sección Permisos.
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 |
---|---|---|---|
✅ | ✅ | ✅ | ✅ |
Permisos
Esta API admite los siguientes ámbitos de permisos; para obtener más información, incluido cómo elegir permisos, vea Permisos.
Recurso admitido | Delegado (cuenta profesional o educativa) | Delegado (cuenta de Microsoft personal) | Aplicación |
---|---|---|---|
callRecord (/communications/callRecords) | No compatible | No compatible | CallRecords.Read.All |
callRecording communications/onlineMeetings/getAllRecordings Todas las grabaciones de una organización. |
No admitida. | No admitida. | OnlineMeetingRecording.Read.All |
callRecording communications/onlineMeetings/{onlineMeetingId}/recordings Todas las grabaciones de una reunión específica. |
OnlineMeetingRecording.Read.All | No admitida. | OnlineMeetingRecording.Read.All |
callRecording users/{userId}/onlineMeetings/getAllRecordings Grabación de llamadas que está disponible en una reunión organizada por un usuario específico. |
OnlineMeetingRecording.Read.All | No admitida. | OnlineMeetingRecording.Read.All |
callTranscript communications/onlineMeetings/getAllTranscripts Todas las transcripciones de una organización. |
No admitida. | No admitida. | OnlineMeetingTranscript.Read.All |
callTranscript communications/onlineMeetings/{onlineMeetingId}/transcripts Todas las transcripciones de una reunión específica. |
OnlineMeetingTranscript.Read.All | No admitida. | OnlineMeetingTranscript.Read.All |
callTranscript users/{userId}/onlineMeetings/getAllTranscripts Transcripción de llamadas que está disponible en una reunión organizada por un usuario específico. |
OnlineMeetingTranscript.Read.All | No admitida. | OnlineMeetingTranscript.Read.All |
channel (/teams/getAllChannels: todos los canales de una organización) | No compatible | No compatible | Channel.ReadBasic.All, ChannelSettings.Read.All |
channel (/teams/{id}/channels) | Channel.ReadBasic.All, ChannelSettings.Read.All, Subscription.Read.All | No compatible | Channel.ReadBasic.All, ChannelSettings.Read.All |
chat (/chats: todos los chats de una organización) | No compatible | No compatible | Chat.ReadBasic.All, Chat.Read.All, Chat.ReadWrite.All |
chat (/chats/{id}) | Chat.ReadBasic, Chat.Read, Chat.ReadWrite, Subscription.Read.All | No compatible | ChatSettings.Read.Chat*, ChatSettings.ReadWrite.Chat*, Chat.Manage.Chat*, Chat.ReadBasic.All, Chat.Read.All, Chat.ReadWrite.All |
chat /appCatalogs/teamsApps/{id}/installedToChats Todos los chats de una organización donde está instalada una aplicación de Teams determinada. |
No compatible | No se admite | Chat.ReadBasic.WhereInstalled, Chat.Read.WhereInstalled, Chat.ReadWrite.WhereInstalled |
chatMessage (/teams/{id}/channels/{id}/messages) | ChannelMessage.Read.All, Group.Read.All, Group.ReadWrite.All, Subscription.Read.All | No admitido | ChannelMessage.Read.Group*, ChannelMessage.Read.All |
chatMessage (/teams/getAllMessages: todos los mensajes del canal en la organización) | No admitido | No admitido | ChannelMessage.Read.All |
chatMessage (/chats/{id}/messages) | Chat.Read, Chat.ReadWrite, Subscription.Read.All | No admitido | Chat.Read.All |
chatMessage (/chats/getAllMessages: todos los mensajes de chat en la organización) | No admitido | No admitido | Chat.Read.All |
chatMessage (/users/{id}/chats/getAllMessages: mensajes de chat para todos los chats de los que forma parte un usuario determinado) | Chat.Read, Chat.ReadWrite | No compatible | Chat.Read.All, Chat.ReadWrite.All |
chatMessage /appCatalogs/teamsApps/{id}/installedToChats/getAllMessages Mensajes de chat para todos los chats de una organización donde está instalada una aplicación de Teams determinada. |
No admitida. | No admitida. | Chat.Read.WhereInstalled, Chat.ReadWrite.WhereInstalled |
contact | Contacts.Read, Subscription.Read.All | Contacts.Read, Subscription.Read.All | Contacts.Read |
conversationMember (/teams/{id}/channels/getAllMembers) | No compatible | No compatible | ChannelMember.Read.All |
conversationMember (/chats/getAllMembers) | No compatible | No compatible | ChatMember.Read.All, ChatMember.ReadWrite.All, Chat.ReadBasic.All, Chat.Read.All, Chat.ReadWrite.All. |
conversationMember (/chats/{id}/members) | ChatMember.Read, ChatMember.ReadWrite, Chat.ReadBasic, Chat.Read, Chat.ReadWrite, Subscription.Read.All | No compatible | ChatMember.Read.Chat*, Chat.Manage.Chat*, ChatMember.Read.All, ChatMember.ReadWrite.All, Chat.ReadBasic.All, Chat.Read.All, Chat.ReadWrite.All |
conversationMember /appCatalogs/teamsApps/{id}/installedToChats/getAllMembers Miembros de chat para todos los chats de una organización en la que está instalada una aplicación de Teams determinada. |
No compatible | No compatible | ChatMember.Read.WhereInstalled, ChatMember.ReadWrite.WhereInstalled, Chat.ReadBasic.WhereInstalled, Chat.Read.WhereInstalled, Chat.ReadWrite.WhereInstalled |
conversationMember (/teams/{id}/members) | TeamMember.Read.All, Subscription.Read.All | No compatible | TeamMember.Read.All |
driveItem (OneDrive personal del usuario) | No admitido | Files.ReadWrite, Subscription.Read.All | No admitido |
driveItem (OneDrive para el trabajo o la escuela) | Files.ReadWrite.All, Subscription.Read.All | No admitido | Files.ReadWrite.All |
evento | Calendars.Read, Subscription.Read.All | Calendars.Read, Subscription.Read.All | Calendars.Read |
grupo | Group.Read.All, Subscription.Read.All | No admitido | Group.Read.All |
conversación de grupo | Group.Read.All, Subscription.Read.All | No compatible | No se admite |
lista | Sites.ReadWrite.All, Subscription.Read.All | No se admite | Sites.ReadWrite.All |
message | Mail.ReadBasic, Mail.Read, Subscription.Read.All | Mail.ReadBasic, Mail.Read, Subscription.Read.All | Mail.Read |
offerShiftRequest (/teams/{id}/schedule/offerShiftRequests) Cambios en cualquier solicitud de turno de oferta en un equipo. |
Schedule.Read.All, Schedule.ReadWrite.All | No admitida. | Schedule.Read.All, Schedule.ReadWrite.All |
openShiftChangeRequest (/teams/{id}/schedule/openShiftChangeRequests) Cambios en cualquier solicitud de turno abierta en un equipo. |
Schedule.Read.All, Schedule.ReadWrite.All | No admitida. | Schedule.Read.All, Schedule.ReadWrite.All |
presencia | Presence.Read.All, Subscription.Read.All | No compatible | No compatible |
printer | No admitido | No admitido | Printer.Read.All, Printer.ReadWrite.All |
printTaskDefinition | No admitido | No admitido | PrintTaskDefinition.ReadWrite.All |
alerta de seguridad | SecurityEvents.ReadWrite.All, Subscription.Read.All | No admitido | SecurityEvents.ReadWrite.All |
shift (/teams/{id}/schedule/shifts) Cambios en cualquier turno de un equipo. |
Schedule.Read.All, Schedule.ReadWrite.All | No admitida. | Schedule.Read.All, Schedule.ReadWrite.All |
swapShiftsChangeRequest (/teams/{id}/schedule/swapShiftsChangeRequests) Cambios en cualquier solicitud de cambio de turno en un equipo. |
Schedule.Read.All, Schedule.ReadWrite.All | No admitida. | Schedule.Read.All, Schedule.ReadWrite.All |
team (/teams: todos los equipos de una organización) | No compatible | No compatible | Team.ReadBasic.All, TeamSettings.Read.All |
team (/teams/{id}) | Team.ReadBasic.All, TeamSettings.Read.All, Subscription.Read.All | No compatible | Team.ReadBasic.All, TeamSettings.Read.All |
timeOffRequest (/teams/{id}/schedule/timeOffRequests) Cambios en cualquier solicitud de tiempo de descuento en un equipo. |
Schedule.Read.All, Schedule.ReadWrite.All | No admitida. | Schedule.Read.All, Schedule.ReadWrite.All |
todoTask | Tasks.ReadWrite, Subscription.Read.All | Tasks.ReadWrite, Subscription.Read.All | No compatible |
user | User.Read.All, Subscription.Read.All | User.Read.All | User.Read.All |
Nota: Los permisos marcados con * usan un consentimiento específico del recurso.
Los resultados de la respuesta se basan en el contexto de la aplicación que realiza la llamada. En las secciones siguientes se describen los escenarios comunes.
Escenarios básicos
Normalmente, una aplicación desea recuperar las suscripciones que creó originalmente para el usuario que ha iniciado sesión actualmente, o para todos los usuarios en el directorio (cuenta profesional o educativa). Estos escenarios no requieren permisos especiales más allá de los que la aplicación usó originalmente para crear sus suscripciones.
Contexto de la aplicación que realiza la llamada | La respuesta contiene |
---|---|
La aplicación llama en nombre del usuario que haya iniciado sesión (permiso delegado). -y- La aplicación tiene los permisos originales necesarios para crear la suscripción. Nota: esto se aplica a las cuentas personales de Microsoft y profesionales o educativas. |
Suscripciones creadas por esta aplicación solo para el usuario que haya iniciado sesión. |
La aplicación llama en nombre propio (permiso de aplicación). -y- La aplicación tiene los permisos originales necesarios para crear la suscripción. Nota: Esto solo se aplica a cuentas profesionales o educativas. |
Suscripciones creadas por esta aplicación para ella misma o para todos los usuarios en el directorio. |
Escenarios avanzados
En algunos casos, una aplicación quiere recuperar suscripciones creadas por otras aplicaciones. Por ejemplo, un usuario quiere ver todas las suscripciones creadas por cualquier aplicación en su nombre. O bien, es posible que un administrador global quiera ver todas las suscripciones de todas las aplicaciones de su directorio. Para estos escenarios, se requiere un permiso delegado Subscription.Read.All.
Contexto de la aplicación que realiza la llamada | La respuesta contiene |
---|---|
La aplicación llama en nombre del usuario que haya iniciado sesión (permiso delegado).
El usuario no es un administrador. -y- Las aplicaciones tienen el permiso Subscription.Read.All Nota: esto se aplica a las cuentas personales de Microsoft y profesionales o educativas. |
Suscripciones creadas por cualquier aplicación solo para el usuario que haya iniciado sesión. |
La aplicación llama en nombre del usuario que haya iniciado sesión (permiso delegado).
El usuario es un administrador global. -y- Las aplicaciones tienen el permiso Subscription.Read.All Nota: esto se aplica solo para cuentas profesionales o educativas. |
Suscripciones creadas por cualquier aplicación para cualquier usuario que haya iniciado sesión en el directorio. |
Solicitud HTTP
GET /subscriptions
Parámetros de consulta opcionales
Este método no admite los parámetros de consulta de OData para ayudar a personalizar la respuesta.
Encabezados de solicitud
Nombre | Tipo | Descripción |
---|---|---|
Authorization | string | {token} de portador. Obligatorio. Obtenga más información sobre la autenticación y la autorización. |
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 una lista de objetos subscription en el cuerpo de la respuesta.
Ejemplo
Solicitud
GET https://graph.microsoft.com/v1.0/subscriptions
Respuesta
En el ejemplo siguiente se muestra la respuesta.
Nota: La respuesta que se muestra aquí puede acortarse para mejorar la legibilidad.
HTTP/1.1 200 OK
Content-type: application/json
{
"@odata.context": "https://graph.microsoft.com/v1.0/$metadata#subscriptions",
"value": [
{
"id": "0fc0d6db-0073-42e5-a186-853da75fb308",
"resource": "Users",
"applicationId": "24d3b144-21ae-4080-943f-7067b395b913",
"changeType": "updated,deleted",
"clientState": null,
"notificationUrl": "https://webhookappexample.azurewebsites.net/api/notifications",
"lifecycleNotificationUrl":"https://webhook.azurewebsites.net/api/send/lifecycleNotifications",
"expirationDateTime": "2018-03-12T05:00:00Z",
"creatorId": "8ee44408-0679-472c-bc2a-692812af3437",
"latestSupportedTlsVersion": "v1_2",
"encryptionCertificate": "",
"encryptionCertificateId": "",
"includeResourceData": false,
"notificationContentType": "application/json"
}
]
}
Nota: el valor de la propiedad
clientState
no se devuelve por motivos de seguridad.
Cuando una solicitud devuelve varias páginas de datos, la respuesta incluye una propiedad @odata.nextLink
para ayudarle a administrar los resultados. Para obtener más información, vea Paginación de los datos de Microsoft Graph en su aplicación.