Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
En este artículo se explica cómo acceder a los datos de ganancias a través de las API de ganancias en lugar de la interfaz de usuario del Centro de partners. Estas API proporcionan una manera programática de proporcionar la funcionalidad de la característica Exportar datos en el Centro de partners.
Importante
Azure Active Directory (Azure AD) Graph está en desuso a partir del 30 de junio de 2023. En el futuro, no estamos realizando más inversiones en Azure AD Graph. Las API de Graph de Azure AD no tienen ningún acuerdo de nivel de servicio ni compromiso de mantenimiento más allá de las correcciones relacionadas con la seguridad. Las inversiones en nuevas características y funcionalidades solo se realizarán en Microsoft Graph.
Retiraremos Azure AD Graph en pasos incrementales para que tenga tiempo suficiente para migrar las aplicaciones a las API de Microsoft Graph. En una fecha posterior que anunciaremos, bloquearemos la creación de aplicaciones nuevas mediante Azure AD Graph.
Para más información, consulte Importante: Retirada de Azure AD Graph y Desuso del módulo de PowerShell.
API disponibles
Consulta todas las API disponibles en Pagos de partners.
Prerrequisitos
- Tener una suscripción de trabajo en Azure Portal.
- Tener acceso a un explorador web.
- Puede realizar llamadas a la API REST, ya sea mediante programación o a través de software dedicado.
Registro de una aplicación con la plataforma de identidad de Microsoft
Siga las instrucciones para crear un registro de aplicaciones con la Plataforma de identidad de Microsoft.
Asigne a la aplicación los permisos delegados adecuados.
- En el registro de aplicaciones recién creado, vaya a Administrar → Permisos de API. Seleccione "Agregar un permiso".
- Seleccione la pestaña "API que usa mi organización", busque el AppId "4990cffe-04e8-4e8b-808a-1175604b879f" o por el nombre "Centro de desarrollo de Microsoft". En permisos, seleccione "user_impersonation". Seleccione "Agregar permisos".
-
Solución de problemas: si la búsqueda de la API del Centro de desarrollo no devuelve ningún resultado, es posible que tenga que crear las entidades de servicio necesarias para acceder manualmente a estas API. Se pueden crear con AzCLI:
Después, los permisos de API deben estar disponibles para seleccionar en el cuadro de diálogo de búsqueda.az ad sp create --id 4990cffe-04e8-4e8b-808a-1175604b879f
-
Solución de problemas: si la búsqueda de la API del Centro de desarrollo no devuelve ningún resultado, es posible que tenga que crear las entidades de servicio necesarias para acceder manualmente a estas API. Se pueden crear con AzCLI:
- Además, asegúrese de que la aplicación tiene un permiso "User.Read" en Microsoft Graph. Si no es así, agréguelo seleccionando Microsoft Graph en la pestaña API de Microsoft.
- Seleccione "Conceder consentimiento del administrador" para los tres permisos que obtuvo.
- Los permisos de la aplicación deben tener el siguiente aspecto (tenga en cuenta la marca verde junto a cada permiso):
- En el registro de aplicaciones recién creado, vaya a Administrar → Permisos de API. Seleccione "Agregar un permiso".
Configure un URI de redirección para la plataforma web.
Genere un secreto de cliente para usarlo al obtener tokens de acceso.
- Vaya a Administrar → certificados y secretos. Vaya a la pestaña "Secretos de cliente", seleccione "Nuevo secreto de cliente".
- Escriba el nombre y la duración deseados.
- Seleccione Agregar secreto.
- Anote el valor en otro lugar. Asegúrese de mantenerlo en una ubicación segura, por ejemplo, un almacén de claves. Este secreto se usa al solicitar AccessToken y RefreshToken.
- Vaya a Administrar → certificados y secretos. Vaya a la pestaña "Secretos de cliente", seleccione "Nuevo secreto de cliente".
Obtención del token de acceso: cuentas habilitadas para MFA
Las APIs de beneficios requieren que se proporcione AccessToken como token portador para la autorización en la solicitud, con el prefijo Bearer <access-token> en el encabezado de Autorización. Para obtener este token, inicie sesión con su cuenta; sin embargo, los tokens de acceso son de corta duración. El inicio de sesión en una cuenta habilitada para MFA para generar un token cada vez que necesite llamar a la API no es práctico para los flujos de trabajo que implican automatización.
Estos pasos le guiarán por el proceso para generar un RefreshToken. Tiene una duración más larga (aproximadamente 3 meses) y se puede usar para obtener AccessToken. Al almacenar un RefreshToken en una ubicación segura, puede usarlo para obtener mediante programación un AccessToken para llamar a la API de ganancias.
Nota: RefreshToken solo se puede usar una vez, después de lo cual se vuelve obsoleto. En la respuesta, se devuelve un nuevo RefreshToken junto con AccessToken. Asegúrese de reemplazar el valor anterior de RefreshToken en el almacenamiento seguro cada vez que use RefreshToken.
Obtenga AuthCode a través del explorador. Actualmente, este proceso debe realizarse mediante la interfaz de usuario de un explorador web y no se puede realizar mediante programación.
- Siga la plantilla aquí para compilar una dirección URL que se usa para recuperar AuthCode.
- Use el identificador de inquilino y el identificador de cliente para la aplicación creada.
- Establezca el ámbito en
https://api.partner.microsoft.com/.default. - Establezca la dirección URL de redireccionamiento en la dirección URL de redireccionamiento configurada anteriormente.
La plantilla de dirección URL es:
https://login.microsoftonline.com/<tenant-id>/oauth2/v2.0/authorize?client_id=<client-id>&response_type=code&redirect_uri=<redirect-uri>&scope=https%3A%2F%2Fapi.partner.microsoft.com%2F.default
- Vaya a la dirección URL compilada e inicie sesión con las credenciales de un usuario autorizado.
- Tras iniciar sesión correctamente, el explorador intenta abrir una dirección URL con el formato
<redirect-uri>/?code=<auth-code>&session_state=<state-id>#. Para el ejemplo de URI de redirección en un paso anterior, la dirección URL a la que se envía debe serhttps://localhost:3000/?code=<auth-code>?session_state=<state-id>#. Guarde el código de autenticación devuelto en algún lugar seguro.- Dado que normalmente no hay ninguna aplicación escuchando en localhost:3000, el navegador proporciona un mensaje de error "no se puede conectar". Este error se espera, ya que solo es necesario copiar manualmente el valor de AuthCode del parámetro de consulta URL mostrado anteriormente.
- En una solución prod, puede crear una aplicación que controle automáticamente esta parte del proceso de autenticación. Por ejemplo, podría ser un flujo de trabajo en el que el usuario va a una aplicación de una sola página (SPA). El usuario selecciona un botón de "inicio de sesión" que los lleva a la dirección URL construida anteriormente. Al iniciar sesión, la SPA extrae el valor de AuthCode y lo guarda en una bóveda. Después, la SPA usa AuthCode para obtener RefreshToken y AccessToken como se describe en los pasos siguientes.
- Siga la plantilla aquí para compilar una dirección URL que se usa para recuperar AuthCode.
Utilizar AuthCode para obtener RefreshToken y AccessToken inicial. Nota: RefreshToken expira cada 3 meses y necesita ser obtenido nuevamente y almacenado en algún almacén de claves.
- Compile una solicitud POST API siguiendo la plantilla proporcionada aquí.
- Use los mismos valores para el identificador de inquilino o cliente y la dirección URL de redirección.
- Establezca el ámbito en
https://api.partner.microsoft.com/.default offline_access. - Establezca el código a AuthCode obtenido en el paso anterior.
- Establezca client_secret en el secreto generado para la aplicación creada.
A continuación, la dirección URL debe estructurarse de la siguiente manera:
https://login.microsoftonline.com/<tenant-id>/oauth2/v2.0/token
- Compile una solicitud POST API siguiendo la plantilla proporcionada aquí.
Más adelante, puede usar RefreshToken para obtener el nuevo AccessToken.
- Compile una solicitud POST API siguiendo la plantilla proporcionada aquí.
- Use los mismos valores para el identificador de inquilino o cliente y la dirección URL de redirección.
- Establecer el ámbito en
https://api.partner.microsoft.com/.default - Establezca refresh_token al RefreshToken obtenido en el paso anterior.
- Establezca client_secret en el secreto generado para la aplicación creada.
- Compile una solicitud POST API siguiendo la plantilla proporcionada aquí.
Obtener token de acceso: cuentas que no son de MFA
- Obtenga AccessToken con la información del nuevo registro de la aplicación.
- Compile una solicitud POST API siguiendo la plantilla proporcionada aquí.
- Uso de los mismos valores para el identificador de inquilino o cliente
- Establecer el ámbito en
https://api.partner.microsoft.com/.default - Use el nombre de usuario y la contraseña de un usuario autorizado. La dirección URL debe estructurarse de la siguiente manera:
https://login.microsoftonline.com/<tenant-id>/oauth2/v2.0/token
- La solicitud devuelve AccessToken y un nuevo RefreshToken. Asegúrese de actualizar el valor almacenado de RefreshToken, ya que ya no puede usar el valor anterior.
- Compile una solicitud POST API siguiendo la plantilla proporcionada aquí.
Ganancias de llamadas (antes historial de transacciones)/Pagos
- Use el AccessToken obtenido anteriormente en el encabezado Authorization con el prefijo
Bearer <access-token>para crear nuevos informes de Ganancias (anteriormente TransactionHistory) o Pagos.

