MallaDocs

Construye un endpoint de backend

Guarda datos en una tabla nativa y exponlos con un flujo de trabajo de servidor, un webhook y un cron.

Guía de usuario
Avanzado30 min

Vas a construir: Una tabla de comentarios con una API pública para leer y agregar filas, un webhook que recibe comentarios de otra herramienta, un informe diario y una página que muestra los comentarios

Lee primero: Recorrido por el editorPágina interactiva con flujos de trabajo

En este tutorial construyes un pequeño backend sin salir del editor. Guardas comentarios en una tabla nativa, los expones con endpoints HTTP, los recibes de otras herramientas con un webhook y te envías un resumen diario de forma programada. Al final, una página de tu sitio muestra los comentarios a través del endpoint.

Construye un endpoint de backendEl video llegará pronto. Los pasos escritos a continuación cubren todo.
Construye un endpoint de backend· 10 min

Crea la tabla

  1. Agrega una tabla

    Abre el espacio de trabajo Tables desde la parte inferior de la barra lateral izquierda. Presiona New junto a Tables, escribe feedback y presiona ↵. La tabla se abre en su pestaña Schema con una columna de texto, title.

  2. Agrega las columnas

    Presiona Add column dos veces. Llama a la primera columna message y deja el tipo Text. Llama a la segunda rating y pon su tipo en Number. Marca Required en title y rating.

    Cada fila también recibe id, createdAt y updatedAt, así que no los agregas.

  3. Agrega una regla de escritura

    En Row rules, escribe row.rating >= 1 && row.rating <= 5 en Write. Ahora los visitantes y los flujos de trabajo solo pueden guardar calificaciones del 1 al 5. Deja Read vacío para que todos puedan leer. Presiona Save schema.

  4. Agrega una fila a mano

    Cambia a la pestaña Rows y presiona Add row. Completa un título, un mensaje y una calificación, y luego presiona Add row en el panel. Las ediciones en el editor se saltan las reglas de fila, porque el sitio es tuyo.

Punto de control

La tabla feedback muestra una fila en la pestaña Rows, y el encabezado de la tabla muestra la etiqueta Rules.

Lee filas con un endpoint

  1. Crea un flujo de trabajo de servidor

    Abre el espacio de trabajo Logic y cambia el selector de arriba de Client a Server. Presiona + (Add server workflow) y elige HTTP endpoint. Llama al flujo de trabajo List feedback.

  2. Configura el disparador

    En Trigger, pon Method en GET, Path en /feedback y Who can call it en Public. La pista debajo de los campos muestra la dirección: /api/feedback en tu sitio.

  3. Consulta la tabla

    Presiona Add step y elige Query table en Tables. Escribe feedback en Table; los flujos de trabajo encuentran una tabla por su nombre o por su id. Pon Limit en 20. La tarjeta del paso muestra su id, s1.

  4. Devuelve las filas

    Presiona Add step y elige Return en Server. Pon Value en steps.s1.rows. El valor de Return se convierte en la respuesta del endpoint.

  5. Pruébalo

    Presiona Test run. El panel de ejecución muestra en directo cada paso con su resultado y su duración; el paso Return muestra tu fila. Cada ejecución se guarda en Runs.

Agrega filas con un endpoint

  1. Crea un endpoint POST

    Agrega otro flujo de trabajo HTTP endpoint llamado Add feedback. Pon Method en POST, Path en /feedback y Who can call it en Public. Un GET y un POST pueden compartir una ruta.

  2. Inserta la fila

    Agrega un paso Insert row con Table feedback y Values { title: input.title, message: input.message, rating: input.rating }. El cuerpo JSON de la solicitud llega como input.

  3. Devuelve la fila nueva

    Agrega un paso Return con Value steps.s1, la fila insertada con su id.

  4. Prueba con una entrada de ejemplo

    En Test input, escribe { "title": "Fast support", "message": "Answered in an hour", "rating": 5 } y presiona Test run. Luego cambia la calificación a 9 y vuelve a ejecutarlo: la regla de escritura rechaza la fila y la ejecución falla.

Punto de control

La pestaña Rows de la tabla feedback muestra la fila de la ejecución de prueba, y el historial de ejecuciones muestra una ejecución exitosa y una fallida.

Recibe un webhook

  1. Crea el webhook

    Agrega un flujo de trabajo de servidor y elige Webhook. Llámalo Feedback webhook y pon Path en /webhooks/feedback. Un webhook siempre responde a POST.

  2. Guarda el payload

    Agrega un paso Insert row con Table feedback y los mismos Values que antes. El payload del webhook llega como input.

Envía un informe diario

  1. Crea una programación

    Agrega un flujo de trabajo de servidor y elige Schedule. Llámalo Daily report y presiona el preset Every day at 09:00. Las programaciones usan UTC, y la pista debajo del campo te describe la programación con palabras.

  2. Encuentra las calificaciones bajas

    Agrega un paso Query table con Table feedback y Filter [{ column: 'rating', op: 'lte', value: 2 }].

  3. Envíate un email

    Agrega un paso Send email. Pon To en 'you@example.com', Subject en Daily feedback y Text en la expresión steps.s1.rows.length + ' ratings of 2 or less'. Presiona Test run para recibir el email ahora.

Publica y llama al endpoint

  1. Publica en staging

    Los flujos de trabajo de servidor se guardan mientras editas, pero solo entran en funcionamiento cuando publicas. Presiona Publish en la barra de herramientas, deja Staging seleccionado y confirma. A partir de ahora la programación se ejecuta todos los días en staging.

  2. Llámalo desde una terminal

    Ejecuta curl https://<your-staging-address>/api/feedback. La respuesta es un JSON con el id de la ejecución, su estado y las filas en result.

Muestra los comentarios en una página

  1. Conecta la API de tu sitio

    Abre el espacio de trabajo Data, presiona + (Add integration) junto a Integrations y elige REST API. Pon la URL base en tu dirección de staging y presiona Create integration.

  2. Crea una consulta

    Presiona + (Add query) junto a Queries y llámala feedback. Elige tu integración y la operación Request. En Input, pon la ruta en /api/feedback. Pon Response path en result, deja When it runs en Client y presiona Run.

  3. Muestra las filas

    Inserta una Collection list en la página. En la sección Collection list, pon Source en Expression e Items en queries.feedback.data. Dentro del ítem, enlaza un texto a item.title y otro a item.message.

Listo

La página muestra los comentarios de tu tabla, leídos a través de tu propio endpoint. Las filas nuevas del endpoint POST o del webhook aparecen en la siguiente carga.

Lo que aprendiste

  • Una tabla nativa tiene un esquema, un explorador de datos y reglas de fila que se aplican a los visitantes y a los flujos de trabajo.
  • Un flujo de trabajo de servidor empieza desde un endpoint HTTP, un webhook o una programación, y Return define la respuesta.
  • Test run ejecuta el borrador con una entrada de ejemplo y muestra cada paso; al publicar, los flujos de trabajo entran en funcionamiento.

Sigue con los próximos tutoriales o lee las guías en las que se basa este: