En el artículo anterior, vimos como personalizar las preguntas de nuestros formularios. En esta ocasión, mostraré un listado de las llamadas HHTP Request que podemos realizar a la API de Microsoft Forms. Este listado incluirá las llamadas más frecuentes que podríamos necesitar.
La estructura de estas llamadas está orientada a formularios que pertenecen a un grupo y no a un usuario en concreto.
A continuación muestro una imagen para saber que nuestros formularios está dentro de un gupo o equipo.
Usando Power Automate
Podemos realizar estas llamadas usando Power Automate. Para ello, debemos de usar el conector >»><<HTTP with Microsoft Entra ID (preauthorized)>> y la acción >»><<Invoke an HTTP request>>
A continuación te muestro la configuración de la conexión y acción en Power Automate.
Crear nueva conexión para trabajar con la API de Microsoft Forms
Base Resource URL: https://forms.office.com
Microsoft Entra ID Resource URI (Application ID URI): https://forms.office.com
Ejemplo de uso de acción
Method: Get
URL: /formapi/api/{Tenant ID}/groups{Group ID}/forms({Form ID}')/questions
Parámetros
- TenantID: Es el id de nuestro tenant
- GroupID: Es el id del grupo donde se están guardando los formularios
Obtener los formularios
URL: https://forms.office.com/formapi/api/{tenantID}/groups/{groupID}/forms
Method: GET
Clonar un formulario
URL: https://forms.office.com/formapi/api/{tenantID}/groups/{groupID}/light/forms('{formID}')/CopyToUser
Body: {
"newOwnerId": "{groupID}",
"newTenantId": "{tenantID}",
"isNewOwnerGroup": true,
"patchProperties": {
"title": "{NewFormTitle}",
"formsProRTTitle": "{NewFormTitle}"
}
}
Method: POST
Borrar un formulario
URL: https://forms.office.com/formapi/api/{tenantID}/groups/{groupID}/forms('{formID}')
Body: {
"softDeleted": 0,
"collectionId": "string"
}
Method: PATCH
Obtener un formulario por su ID
URL: https://forms.office.com/formapi/api/{tenantID}/groups/{groupID}/forms('{formID}')
Method: GET
Crear link de informe de respuestas
URL: https://forms.office.com/formapi/api/{tenantID}/groups/{groupID}/forms('{formID}')/permissionTokens
Body: {
"name": "AnalyzerToken",
"type": "AnalyzerToken"
}
Method: POST
Obtener link de informe de respuestas
URL: https://forms.office.com/formapi/api/{tenantID}/groups/{groupID}/forms('{formID}')/permissionTokens
Method: GET
Eliminar link de informe de respuestas
URL: https://forms.office.com/formapi/api/{tenantID}/groups/{groupID}/forms('{formID}')/permissionTokens('{permissionTokenID}')
Body: {}
Method: DELETE
Eliminar todas las respuestas
URL: https://forms.office.com/formapi/api/{tenantID}/groups/{groupID}/forms('{formID}')/responses
Body: {}
Method: DELETE
Obtener respuestas
URL: https://forms.office.com/formapi/api/{tenantID}/groups/{groupID}/forms('{formID}')/responses
Method: GET
Obtener recuento de respuestas
URL: https://forms.office.com/formapi/api/{tenantID}/groups/{groupID}/light/forms('{formID}')/responses
Query: ?$select=rowCount,id
Method: GET
Obtener preguntas
URL: https://forms.office.com/formapi/api/{tenantID}/groups/{groupID}/forms('{formID}')/questions
Method: GET
Conclusión
Espero que este listado os sirva para los proyectos en los que estén trabajando y facilite la integración de Microsoft Forms con vuestros sistemas.
¡Hast la próxima!