Workflows

Listar workflows

Devuelve los workflows de la cuenta con cómo se inicia cada uno y, para los manuales, el formulario de ejecución: los campos que POST /api/v1/workflows/{workflowId}/runs exige en payload, leídos de la versión publicada.

GET
/api/v1/workflows

Ejemplos de petición

curl https://app.filmo.io/api/v1/workflows \
  --header "Authorization: Bearer $FILMO_API_KEY"
{
  "data": [
    {
      "id": "workflow_9f3a2b",
      "name": "Example workflow",
      "isActive": true,
      "archivedAt": "2026-09-01T08:00:00.000Z",
      "trigger": {
        "type": "manual",
        "event": "Example event",
        "entity": "Example entity",
        "form": [
          {
            "name": "Example form",
            "label": "Main",
            "type": {
              "example": "example"
            }
          }
        ]
      },
      "currentVersion": {
        "version": 1,
        "createdAt": "2026-09-01T08:00:00.000Z"
      },
      "createdAt": "2026-09-01T08:00:00.000Z",
      "updatedAt": "2026-09-01T08:00:00.000Z"
    }
  ],
  "pagination": {
    "nextCursor": "eyJvIjoyMH0",
    "hasMore": true,
    "total": 1
  }
}

Generado a partir del esquema

No emite ninguna definición. Solo administradores. Ordenados por nombre.

Autorizaciones

Clave de API como Bearer, con el permiso de abajo. workflows:read

Parámetros de consulta

limitintegerpredeterminado:50

Tamaño de página (1-500). Por defecto es 50.

Límites: mín. 1, máx. 500

cursorstring

Cursor opaco de la página que se devuelve. Pasa el valor de pagination.nextCursor de la respuesta anterior; trátalo como opaco.

Límites: longitud máx. 200

createdOnstring

La fecha de creación del recurso cae en esta fecha. Una fecha sin hora (YYYY-MM-DD, interpretada en la zona horaria del negocio) o un instante ISO 8601 con desplazamiento.

Límites: patrón ^\d{4}-\d{2}-\d{2}(T\d{2}:\d{2}:\d{2}(\.\d+)?(Z|[+-]\d{2}(:?\d{2})?))?$

createdAfterstring

La fecha de creación del recurso es posterior a esta fecha. Una fecha sin hora (YYYY-MM-DD, interpretada en la zona horaria del negocio) o un instante ISO 8601 con desplazamiento.

Límites: patrón ^\d{4}-\d{2}-\d{2}(T\d{2}:\d{2}:\d{2}(\.\d+)?(Z|[+-]\d{2}(:?\d{2})?))?$

createdBeforestring

La fecha de creación del recurso es anterior a esta fecha. Una fecha sin hora (YYYY-MM-DD, interpretada en la zona horaria del negocio) o un instante ISO 8601 con desplazamiento.

Límites: patrón ^\d{4}-\d{2}-\d{2}(T\d{2}:\d{2}:\d{2}(\.\d+)?(Z|[+-]\d{2}(:?\d{2})?))?$

createdFromstring

La fecha de creación del recurso es igual o posterior a esta fecha. Una fecha sin hora (YYYY-MM-DD, interpretada en la zona horaria del negocio) o un instante ISO 8601 con desplazamiento.

Límites: patrón ^\d{4}-\d{2}-\d{2}(T\d{2}:\d{2}:\d{2}(\.\d+)?(Z|[+-]\d{2}(:?\d{2})?))?$

createdTostring

La fecha de creación del recurso es igual o anterior a esta fecha. Una fecha sin hora (YYYY-MM-DD, interpretada en la zona horaria del negocio) o un instante ISO 8601 con desplazamiento.

Límites: patrón ^\d{4}-\d{2}-\d{2}(T\d{2}:\d{2}:\d{2}(\.\d+)?(Z|[+-]\d{2}(:?\d{2})?))?$

updatedOnstring

La fecha de última actualización del recurso cae en esta fecha. Una fecha sin hora (YYYY-MM-DD, interpretada en la zona horaria del negocio) o un instante ISO 8601 con desplazamiento.

Límites: patrón ^\d{4}-\d{2}-\d{2}(T\d{2}:\d{2}:\d{2}(\.\d+)?(Z|[+-]\d{2}(:?\d{2})?))?$

updatedAfterstring

La fecha de última actualización del recurso es posterior a esta fecha. Una fecha sin hora (YYYY-MM-DD, interpretada en la zona horaria del negocio) o un instante ISO 8601 con desplazamiento.

Límites: patrón ^\d{4}-\d{2}-\d{2}(T\d{2}:\d{2}:\d{2}(\.\d+)?(Z|[+-]\d{2}(:?\d{2})?))?$

updatedBeforestring

La fecha de última actualización del recurso es anterior a esta fecha. Una fecha sin hora (YYYY-MM-DD, interpretada en la zona horaria del negocio) o un instante ISO 8601 con desplazamiento.

Límites: patrón ^\d{4}-\d{2}-\d{2}(T\d{2}:\d{2}:\d{2}(\.\d+)?(Z|[+-]\d{2}(:?\d{2})?))?$

updatedFromstring

La fecha de última actualización del recurso es igual o posterior a esta fecha. Una fecha sin hora (YYYY-MM-DD, interpretada en la zona horaria del negocio) o un instante ISO 8601 con desplazamiento.

Límites: patrón ^\d{4}-\d{2}-\d{2}(T\d{2}:\d{2}:\d{2}(\.\d+)?(Z|[+-]\d{2}(:?\d{2})?))?$

updatedTostring

La fecha de última actualización del recurso es igual o anterior a esta fecha. Una fecha sin hora (YYYY-MM-DD, interpretada en la zona horaria del negocio) o un instante ISO 8601 con desplazamiento.

Límites: patrón ^\d{4}-\d{2}-\d{2}(T\d{2}:\d{2}:\d{2}(\.\d+)?(Z|[+-]\d{2}(:?\d{2})?))?$

sortstring

Orden: hasta 3 campos separados por comas, cada uno con un "-" inicial para descendente (p. ej. "-updatedAt,name"). Campos ordenables: name, isActive, triggerType, createdAt, updatedAt. Por defecto, "name". Los empates se resuelven por id, así que el orden es estable entre páginas, y un cursor queda ligado al orden con el que se emitió.

Límites: longitud máx. 200

isActiveboolean

Filtra según si el workflow está activo (true) o en pausa (false).

triggerTypestring

Filtra por cómo se inicia el workflow: manual, schedule, webhook, event, signal o entity.

Opciones disponibles: manual, schedule, webhook, event, signal, entity

triggerTypesstring[]

Filtra por triggerType, como lista: repite el parámetro o separa los valores con comas. Acepta hasta 50 valores y devuelve lo que coincida con cualquiera de ellos.

Opciones disponibles: manual, schedule, webhook, event, signal, entity

Límites: mín. 1 elementos, máx. 50 elementos

includeTotalbooleanpredeterminado:false

Ponlo en true para incluir pagination.total, el número de resultados que coinciden con los filtros en todas las páginas. Desactivado por defecto.

Respuesta

application/json

Respuesta correcta.

Esquema de la respuesta: WorkflowDto

Sobre: WorkflowList. meta.warnings solo aparece cuando la operación está obsoleta.

Cabeceras: X-Request-Id · RateLimit-Limit · RateLimit-Remaining · RateLimit-Reset

dataobject[]

Mostrar atributos hijos
data.idstring

Identificador único del workflow.

data.namestring

Nombre del workflow.

data.isActiveboolean

true cuando el workflow está activo; false cuando está en pausa.

data.archivedAtstring<date-time> | null

Fecha en que se archivó en ISO 8601 UTC; null si no está archivado.

data.triggerobject

Cómo se inicia el workflow y, si es manual, qué pide.

Mostrar atributos hijos
data.trigger.typestring | null

Cómo se inicia el workflow: manual (una persona o la API lo ejecuta), schedule (cron), webhook (una petición entrante), event (ocurre algo en Filmo), signal (otro workflow) o entity (se ejecuta desde la página de un registro). Null si no tiene versión publicada.

Opciones disponibles: manual, schedule, webhook, event, signal, entity

data.trigger.eventstring | null

Para los triggers event, el evento de Filmo que escucha; null en caso contrario.

data.trigger.entitystring | null

Para los triggers entity, el tipo de entidad sobre el que se ejecuta; null en caso contrario.

data.trigger.formobject[]

Para los triggers manual, el formulario de ejecución: todos los campos listados son OBLIGATORIOS en payload al llamar a POST /api/v1/workflows/{workflowId}/runs. Vacío cuando el workflow no pide nada.

Mostrar atributos hijos
data.trigger.form.namestring

Clave del campo en payload al ejecutar el workflow.

data.trigger.form.labelstring

Texto que ve la persona que lo ejecuta.

data.trigger.form.typeobject<string, any>

Tipo declarado del valor, en el lenguaje de tipos de los workflows: {"type":"string"}, {"type":"number"}, {"type":"boolean"}, {"type":"date","mode":"date"|"datetime"}, {"type":"enum","options":[{"value","label"}]}, {"type":"shape","shape":[{"key","label","value":<type>}]}, {"type":"list","item":<type>}, {"type":"record","value":<type>} o {"type":"tuple","tuple":[<type>]}. El valor enviado en payload se valida contra él.

data.currentVersionobject | null

La versión publicada, que es la que se ejecuta y de la que se lee el formulario de ejecución; null cuando el workflow nunca se ha guardado.

Mostrar atributos hijos
data.currentVersion.versioninteger

Número de la versión publicada.

data.currentVersion.createdAtstring<date-time>

Cuándo se publicó, en ISO 8601 UTC.

data.createdAtstring<date-time>

Fecha de creación en ISO 8601 UTC.

data.updatedAtstring<date-time>

Fecha de la última modificación en ISO 8601 UTC.

paginationobject

Metadatos de paginación por cursor opaco.

Mostrar atributos hijos
pagination.nextCursorstring | null

Cursor opaco de la página siguiente; null cuando no hay más resultados. Pásalo como cursor en la siguiente petición.

pagination.hasMoreboolean

Si existen más resultados después de esta página.

pagination.totalinteger

Número de resultados que coinciden con los filtros en todas las páginas. Solo aparece cuando la petición establece includeTotal=true.

Límites: mín. 0

metaobject

Información adicional sobre la respuesta.

Mostrar atributos hijos
meta.warningsobject[]

Avisos del ciclo de vida; solo aparecen cuando la operación está obsoleta.

Mostrar atributos hijos
meta.warnings.codestring

Código de aviso estable.

Opciones disponibles: deprecated

meta.warnings.messagestring

Para personas: qué está obsoleto, hasta cuándo y qué usar.

meta.warnings.sunsetstring

Día (YYYY-MM-DD) en que la operación deja de estar disponible.

meta.warnings.replacementstring | null

operationId de la operación que hay que usar en su lugar, o null si no hay ninguna.

Errores

EstadoCódigosSignificado
400validation_errorConsulta o cuerpo mal formados. errors[] enumera cada campo erróneo con su código estable.

401, 403, 429, 500 los puede devolver cualquier operación. Errores

Obsolescencia

Esta operación no está obsoleta. Las obsolescencias se anuncian con la cabecera Deprecation y una fecha de retirada. Política de versiones

  • Plataforma

    Workflow

    Automatización de la cuenta.