Trucos de FileMaker data API para conectarte a una web
Usar FileMaker con la data API para sacarle mayor rendimiento precisa de ciertos conocimientos. En este artículo te desvelamos algunas rutas para que los servicios web puedan conectarse a las bases de datos alojadas en dicha herramienta.
Antes de darte más detalles queremos destacar tres puntos:
- El proceso de conexión a la base de datos se realiza a través de un token o clave de identificación que te permite crear, actualizar, eliminar registros o realizar búsquedas.
- La respuesta de la API de FileMaker se muestra en formato JSON, que es usado habitualmente en las interfaces de programación.
- Y por último, algo muy importante que debes tener en cuenta, es que las bases de datos sobre las que quieras acceder deben tener activada la opción de fmrest desde el apartado de seguridad en la aplicación donde esté alojada.
¿Cómo puedes conectar una base de datos con FileMaker data API?
Puedes ver la información detallada sobre todas las llamadas que puedes realizar mediante una URL con la siguiente estructura:
https://anfitrión/fmi/data/apidoc/
Dependiendo del lugar desde dónde accedas, el parámetro anfitrión puede cambiar. Veamos varios casos:
1 | Si accedes desde FileMaker Cloud, es el nombre del anfitrión de FileMaker Cloud. |
2 | Si accedes desde el equipo principal de FileMaker Server, se establece el anfitrión local. |
3 | Si accedes desde un equipo remoto de FileMaker Server, el anfitrión es la dirección IP o el nombre del anfitrión que ejecuta FileMaker Server. |
En el caso que accedas desde una instancia de FileMaker Server en Windows, puedes llegar a la documentación desde la carpeta siguiente:
- [Unidad]\Archivos de programa\FileMaker\FileMaker Server\Documentation\Data API Documentation
- [Unidad] en este caso es donde reside la implementación de FileMaker Server.
- Para el caso de macOS, los archivos se encuentran en: /Biblioteca/FileMaker Server/Documentation/Data API Documentation
Una vez que tienes la documentación, para saber todas las opciones disponibles y conocer cómo formar los requerimientos, te comentamos brevemente todos los componentes que necesita FileMaker para hacer la llamada:
Métodos HTTP para conectar FileMaker con tu web
POST: usado por ejemplo para crear un registro |
GET: usado por ejemplo para ejecutar un guion |
PATCH: usado para modificar un registro |
DELETE: usado para eliminar un registro |
Estos son algunos encabezados HTTP:
- Content-Type: application/json: donde toda la información es enviada o recibida en formato JSON.
- Content-Type: multipart/form-data: para enviar archivos.
La URL de llamada tiene la siguiente estructura: Anfitrión/fmi/data/vLatest/databases
Una vez que has establecido todos los componentes necesarios para hacer la llamada, veamos algunos ejemplos de las posibilidades:
Iniciar Sesión desde la API
Para poder acceder a todas las opciones, necesitas un token de acceso a la base de datos. Es válido hasta que se cierra la sesión o durante 15 minutos desde la última llamada. Si se cierra la sesión o pasen más de 15 minutos, deberás generar un nuevo token.
Para ello debes recurrir al Método POST y la URL tiene la siguiente estructura:
- Anfitrión: nombre del anfitrión donde está FM server
- BasedeDatos: nombre de la base de datos
Así: https://Anfitrion/fmi/data/vLatest/databases/BasedeDatos/sessions
En este caso hay que pasarle los parámetros: el nombre de la base de datos, el usuario y la contraseña para acceder al archivo. Tendría la siguiente estructura:
El token de acceso que te genera es el que usarás como identificación para el resto de las llamadas que realices.
Crear un registro
Para poder crear un registro en la base de datos, es necesario hacer una llamada a otra URL, la cual debe tener una serie de parámetros para que se pueda crear el registro correctamente. Está llamada se debe hacer con el método POST.
- Anfitrión: nombre del anfitrión donde está FM server
- BasedeDatos: nombre de la base de datos
- Presentación: nombre de la presentación a la que se va a conectar
Así: https://Anfitrion/fmi/data/vLatest/databases/NombreBBDD/layouts/Presentacion/records
En cuanto a los parámetros que le debes pasar, también se pasan en formato JSON. Deberás rellenar todos los campos que quieras añadir al nuevo registro.
Al hacer la llamada, y si no ha habido problema, el mensaje que devuelve sería el siguiente:
Editar un registro
Otra de las funcionalidades que permite la API de FileMaker es modificar un registro ya creado. En este caso vamos a editar uno que acabamos de crear.
El método que se usará en este caso es PATCH y la URL tendrá la siguiente estructura:
- Anfitrión: nombre del anfitrión donde está FM server
- BasedeDatos: nombre de la base de datos
- Presentación: nombre de la presentación a la que se va a conectar
- idRecord: identificación interna del registro
Sería así: https://server01.aifile.es/fmi/data/vLatest/databases/BasedeDatos/layouts/Presentacion/records/idRecord
Hay que pasarle como parámetro los campos que se van a actualizar. El formato de este parámetro será en JSON rellenando solo aquellos campos que van a cambiar de valor.
El resultado que muestra al realizar la llama es el siguiente:
Buscar registros en FileMaker con la API
La función de buscar registros es muy útil si quieres mostrar información por pantalla. Con esta llamada puedes ver todos los registros para después poder tratar esos datos como quieras.
El método que se va a usar es GET y la URL tendría la siguiente estructura.
- Anfitrión: nombre del anfitrión donde está FM server
- BasedeDatos: nombre de la base de datos
- Presentación: nombre de la presentación a la que se va a conectar
De esta manera: https://server01.aifile.es/fmi/data/vLatest/databases/PruebasAPI/layouts/Producto/records
Al hacer la llamada genera un JSON con todos los datos de la presentación para poder después trabajar con ellos.
Ejecutar Guiones
Por último, vemos que también desde la API de FileMaker le puedes ordenar que ejecute un guion.
El método que vamos a usar en este caso es un GET. La estructura es la siguiente:
- Anfitrión: nombre del anfitrión donde esta FM server
- BasedeDatos: nombre de la base de datos
- Presentación: nombre de la presentación a la que se va a conectar
- NombreGuion: Nnmbre del guion que va a ejecutar.
Así: https://Anfitrion/fmi/data/vLatest/databases/BasedeDatos/layouts/Presentacion/script/NombreGuion
En este caso lo que haces es establecer en el campo la API la fecha y hora de modificación con un texto y al campo cantidad le sumaremos 10 en cada producto. El guion tendría la siguiente estructura:
Al hacer la llamada devuelve el siguiente mensaje si todo está bien.
Si vas a la aplicación de FM compruebas que, efectivamente, ha establecido el valor al ejecutar la llamada.
FileMaker data API: resumen de opciones y conclusiones
Como has visto la data API de FileMaker tiene bastantes alternativas que puedes aplicar en diferentes situaciones:
-Puedes conectar tu página web con tu aplicación de FileMaker.
-Al ser una API, puedes conectar con cualquier lenguaje de programación.
-Podrías visualizar información o editarla desde plataformas en las que aún FileMaker no está presente, como es el caso de Android.
Todo esto te permite sacarle más partido a tus herramientas de trabajo y hacer que trabajen unidas para optimizar tu base de datos. Seguir las rutas que hemos expuesto te da la oportunidad de conectar FileMaker con PHP, Prestahop o tu página web y, por tanto, manejar toda la información desde un mismo software. O incluso integrarlo en plataformas como DHL.
¿Conocías estas funcionalidades?