Ejercicio: Implementar un desencadenador de webhook

Completado

En este ejercicio, agregará un desencadenador de webhook al conector personalizado de una API de facturación de Contoso existente.

Importante

Utilice un entorno de prueba con Microsoft Dataverse aprovisionado. Si no dispone de ninguno, puede suscribirse al plan de la comunidad.

Nota

Para completar este ejercicio, descargue el siguiente archivo en su equipo local: Desencadenadores de Contoso Invoicing. Seleccione el botón de descarga en la parte central derecha de la pantalla.

Tarea 1: Importar una solución con el conector personalizado

En esta tarea, importará una solución no administrada que contiene un conector personalizado prediseñado para la API de Contoso Invoicing.

  1. Vaya a Power Apps Maker Portal y asegúrese de que se encuentra en el entorno correcto.

  2. Seleccione Soluciones > Importar solución.

  3. Seleccione Examinar.

  4. Seleccione la solución ContosoInvoicingTriggers_1_0_0_0.zip y luego elija Abrir.

  5. Seleccione Siguiente.

  6. Seleccione Importar y espere a que se complete la importación. Una vez que se complete la importación, debería recibir un mensaje para indicar que se ha realizado correctamente.

  7. Seleccione Publicar todas las personalizaciones y espere a que se complete la publicación.

  8. Seleccione la solución Desencadenadores de Contoso Invoicing que importó para abrirla. Debería ver el componente de conector personalizado Desencadenadores de Contoso Invoicing.

    Captura de pantalla de Desencadenadores de facturación de Contoso resaltado

  9. En una nueva pestaña, vaya a Facturación de Contoso.

  10. Seleccione el vínculo de la Clave de API.

    Captura de pantalla del vínculo de la Clave de API resaltado

  11. Copie la Clave de API y guárdela en un bloc de notas. La usará varias veces en este ejercicio.

  12. Regrese al portal del creador de Power Apps y asegúrese de que se encuentra en el entorno.

  13. Seleccione Soluciones y elija abrir la solución Desencadenadores de facturación de Contoso.

  14. Elija abrir el conector personalizado Desencadenadores de facturación de Contoso.

  15. Seleccione Editar.

    Captura de pantalla de una flecha que apunta al botón para editar el conector

  16. Introduzca contosoinvoicing.azurewebsites.net como Host.

  17. Seleccione Actualizar conector.

  18. Seleccione Probar > + Nueva conexión.

    Captura de pantalla de una flecha que apunta al botón para agregar una nueva conexión

  19. Pegue la Clave de API y seleccione Crear conexión.

    Captura de pantalla del botón Crear conexión

  20. Seleccione Actualizar. La conexión que creó debería seleccionarse automáticamente.

  21. Desplácese hacia abajo, hasta la sección Operaciones, seleccione ListInvoices y luego elija Probar operación.

    Captura de pantalla de una flecha que apunta al botón Probar operación

    Debería ver una lista de facturas en la sección Cuerpo.

    Captura de pantalla de una lista de facturas en la sección Cuerpo

  22. No se vaya de esta página.

Tarea 2: Agregar un desencadenador de webhook

Para agregar un desencadenador de webhook, siga estos pasos:

  1. Seleccione Definición.

    Captura de pantalla de la pestaña Definición seleccionada

  2. Desplácese hacia abajo hasta la sección Desencadenadores y seleccione + Nuevo desencadenador.

  3. Indique los siguientes valores:

    • Resumen: Cuando se crea la factura

    • Descripción: Cuando se crea la factura

    • Id. de operación: InvoiceCreated

    • Tipo de desencadenador: Webhook

    Captura de pantalla de los nuevos valores de desencadenador de Resumen, Descripción, Id. de operación y Tipo de activación

  4. Vaya a la sección Solicitud y seleccione + Importar desde ejemplo.

    Captura de pantalla de una flecha que apunta al botón Importar desde ejemplo

  5. Proporcione los valores siguientes y después seleccione Importar. Con otras API, obtendría el ejemplo de la documentación de API.

    • Verbo: POST

    • URL - https://contosoinvoicing.azurewebsites.net/NewInvoiceNotification/

      Nota

      Incluya la barra diagonal final en la dirección URL.

    • Cuerpo

        {
        "targetUrl":"https://webhook.site"
        }
      

    Captura de pantalla de las propiedades de muestra de solicitud

  6. Desplácese hasta Configuración del disparador y luego seleccione targetUrl como Parámetro de URL de devolución de llamada. Esta selección permite que el conector personalizado rellene targetUrl en tiempo de ejecución.

    Captura de pantalla de la ventana de confirmación del desencadenador

  7. Desplácese hasta la sección Solicitud, seleccione Cuerpo y luego seleccione Editar.

    Captura de pantalla de una flecha que apunta al botón para editar el cuerpo

  8. Seleccione targetUrl y después seleccione Editar.

    Captura de pantalla de una flecha que apunta al botón para editar la URL de destino

  9. Seleccione en Es obligatorio y seleccione interna para Visibilidad.

    Captura de pantalla de los campos de propiedades de URL de destino

  10. Seleccione el botón Atrás.

    Captura de pantalla de una flecha que apunta al botón Atrás

  11. Seleccione el botón Atrás de nuevo.

  12. Desplácese hacia abajo hasta la sección Respuesta de webhook, introduzca Factura para la Descripción y luego seleccione + Importar desde ejemplo. La respuesta de webhook define lo que se enviará al flujo cuando se produzca el evento desencadenante.

    Captura de pantalla de una flecha que apunta al botón para importar la respuesta de ejemplo

  13. Pegue el siguiente ejemplo de JSON en el campo Cuerpo y luego seleccione Importar.

     {
     "invoiceId": "1933",
     "date": "2021-01-26T04:02:52.1490835+00:00",
     "amount": 5000,
     "accountId": "1001",
     "accountName": "Wing Tips",
     "status": "Invoiced",
     "typeId": 1,
     "purchaseOrderId": "3002",
     "tags": "New Account;Special Pricing"
     }
    

    Captura de pantalla de los detalles de las propiedades de importación de la respuesta

  14. Seleccione Actualizar conector.

    Nota

    Si recibe un mensaje de error que indica que "todas las rutas deben comenzar con '/'", abra Swagger, busque la línea que contiene '':{} y elimínela.

  15. Seleccione Cerrar.

Tarea 3: Probar el desencadenador

  1. Vaya a Power Apps Maker Portal y asegúrese de que se encuentra en el entorno.

  2. Seleccione Soluciones y abra la solución Contoso invoicing triggers.

  3. Seleccione + Nuevo > Automatización > Flujo de nube > Instantáneo.

  4. Introduzca Crear factura como nombre y seleccione Desencadenar un flujo manualmente en Desencadenadores; luego, seleccione Crear.

    Captura de pantalla de una flecha que apunta al desencadenador Desencadenar un flujo manualmente

  5. Expanda el desencadenador y seleccione + Agregar una entrada.

  6. Seleccione Número como tipo de entrada.

    Captura de pantalla de una flecha que apunta al tipo de entrada Número

  7. Escriba Importe como nombre de la entrada y seleccione Nuevo paso.

    Captura de pantalla de una flecha que apunta al botón para agregar un nuevo paso de flujo

  8. Seleccione la pestaña Personalizado y, a continuación, seleccione el conector personalizado Contoso Invoicing.

    Captura de pantalla de una flecha que apunta al conector personalizado

  9. Seleccione la acción Agregar factura.

  10. Introduzca Conexión de Contoso en el campo Nombre de la conexión, pegue la Clave de API que copió en la Tarea 1: Importar una solución con el conector personalizado y luego seleccione Crear. Debe utilizar la misma clave de API en ambos flujos o su flujo de activación no se ejecutará.

    Captura de pantalla del botón para crear la conexión

  11. Seleccione el campo importe y elija Importe en el panel Contenido dinámico.

    Captura de pantalla de la salida del campo Importe del paso anterior

  12. Seleccione Guardar.

  13. Seleccione el botón <- atrás.

  14. Compruebe que todavía está en la solución Contoso Invoicing - Triggers.

  15. Seleccione + Nuevo > Automatización > Flujo de nube > Automatizado.

  16. Introduzca Notificación de factura para Nombre de flujo y seleccione Omitir.

  17. Seleccione la pestaña Personalizado y, a continuación, seleccione el conector personalizado Contoso invoicing.

    Captura de pantalla de una flecha que apunta al desencadenador del conector personalizado

  18. Seleccione el desencadenador Cuando se crea la factura.

  19. Seleccione + Nuevo paso.

  20. Busque redactar y luego seleccione la acción Redactar.

  21. Seleccione el campo Entradas y, a continuación, cuerpo en el panel Contenido dinámico.

    Captura de pantalla del campo Entradas y el cuerpo en el panel Contenido dinámico

  22. Seleccione Guardar.

  23. Seleccione Probar.

  24. Seleccione Manualmente > Probar. El flujo comenzará y deberá esperar las notificaciones.

  25. Abra una nueva ventana de explorador y vaya a https://make.powerapps.com/

  26. Asegúrese de que ha seleccionado el entorno correcto.

  27. Seleccione Soluciones y abra Contoso Invoicing - Triggers.

  28. Abra el flujo de nube Crear factura.

  29. Seleccione Editar.

  30. Seleccione Probar.

  31. Seleccione Manualmente > Probar.

  32. Seleccione Continuar.

  33. Introduzca 5500 como Importe y luego seleccione Ejecutar flujo.

  34. Seleccione Listo.

  35. Cambie al flujo Notificación de factura. El flujo debería ejecutarse correctamente.

  36. Seleccione la opción para expandir la acción Redactar.

    Captura de pantalla de una flecha que apunta a la acción Redactar

    Las Entradas y Salidas deben mostrar el importe que proporcionó en el flujo Crear factura.

    Captura de pantalla de las entradas y salidas de la acción Redactar