Portant Docs

Workflows

Un Workflow representa las etapas de una automatización que, en su forma más simple, transforma datos de origen en documentos de salida.

Fields

FieldTypeEditableDescription
idStringfalseEl ID único del workflow. Se utiliza para hacer referencia al workflow en todas las solicitudes.
nameStringtrueEl nombre del workflow.
colorStringtrueEl color del icono del workflow en Portant Workflow como cadena hexadecimal, con el prefijo #.
iconStringtrueEl nombre del icono utilizado en Portant Workflow.
statusStringfalseEl estado actual del workflow. Uno de:
- "COMPLETE": el workflow puede ejecutarse.
- "INCOMPLETE": el workflow necesita más configuración antes de poder ejecutarse.
- "ARCHIVED": el workflow ya no está disponible.
autoCreateBooleanfalseCuando es true, el workflow escucha eventos del origen y crea una nueva automatización cada vez que llega uno.
ownerOwnerfalseEl propietario de este workflow.
teamTeamfalseEl equipo al que pertenece este workflow.
sourceSourcefalseEl origen de datos para este workflow.
documentsDocumentfalseLos documentos de plantilla para este workflow.
outgoingWebhook

Outgoing

Webhook

falseEl Webhook saliente de este workflow, utilizado para escuchar eventos de automatización.
createdByApiBooleanfalseEs true cuando el workflow fue creado a través de la API para desarrolladores.
createdAtStringfalseUna marca de tiempo ISO 8601 que indica cuándo se creó el workflow.
updatedAtStringfalseUna marca de tiempo ISO 8601 que indica cuándo se actualizó el workflow por última vez.

Example

```json
{
    "id": "wkf_kGQK9PBWDT1JCr",
    "name": "Invoice Workflow",
    "icon": "DocumentText",
    "color": "#cccccc",
    "status": "COMPLETE",
    "autoCreate": true,
    "owner": {
        "id": "usr_DsH4TGYXs4XPpB",
        "name": "Blake Lockley",
        "email": "blake@portant.co"
    },
    "team": null,
    "source": {
        "id": "src_NZHJYjlgrvklHb",
        "sourceType": "WEBHOOK",
        "sourceFields": [
            "Order Number",
            "LineItem.Name",
            "LineItem.Price",
        ],
        "webhookUrl": "https://webhooks.portant.co/50c7912b14c7acbe9df32521ec60a27c"
    },
    "documents": [
        {
            "id": "doc_5LGGqC5S78RNS0",
            "documentType": "GOOGLE_DOCS",
            "file": {
                "id": "1uNfBHAKhcgRsiftb7xRpTJRS0k9LY1iX1gUnTOE0zU4",
                "name": "Complete Workflow Please - [Template]",
                "url": "https://docs.google.com/document/d/1uNfBHAKhcgRsiftb7xRpTJRS0k9LY1iX1gUnTOE0zU4/edit?usp=drivesdk",
                "mimeType": "application/vnd.google-apps.document"
            },
            "outputName": "Document for {{First Name}}",
            "pdfPassword": "jeRe/\/\eyWaZH3re",
            "enablePdfPassword": true,
            "enablePdfPreventCopy": false,
            "previewUrl": "https://preview.portant.co/doc_5LGGqC5S78RNS0"
        }
    ],
    "outgoingWebhook": {
        "id": "owc_XY1Ys4gqrpX8cp",
        "webhookUrl": "https://webhook.site/d22c56ab-40ac-4f9a-93ef-02520235c0da"
    },
    "createdByApi": true,
    "createdAt": "2024-08-12T16:20:44.346666+10:00",
    "updatedAt": "2024-08-12T16:20:48.408357+10:00"
}
```

Endpoints

List all workflows

GET /workflows/

Devuelve todos los Workflows que son propiedad del usuario de la API o que están compartidos con su equipo.

Responses

Status Body
200 OK Array<Workflow>
403 Unauthorised Error

Create a workflow

POST /workflows/

Crea un nuevo workflow.

Request

Un objeto Workflow parcial en formato JSON. El único campo obligatorio es name.

{
    name: "A simple workflow"
}

También puede crear un workflow completo en un único POST incluyendo los subcomponentes opcionales y sus campos obligatorios.

Los campos con el sufijo ? son opcionales.

{
    name: "A complete Workflow from Scratch",
    color?: "#...",
    icon?: "...",
    source?: {
        "sourceFields": ["Field Name 1", "Field Name 2"]
    },
    document?: {
        fileId: "<google file id>"
    },
    outgoingWebhook?: {
        webhookUrl: "<webhook url for event listening>"
    }
}

Respuestas

Estado Cuerpo
201 Created Workflow
400 Bad Request Error
403 Unauthorised Error

Recuperar un workflow

GET /workflows/<wkf_id>/

Recupera un workflow específico por ID.

Respuestas

Estado Cuerpo
200 OK Workflow
403 Unauthorised Error
404 Not Found Error

Actualizar un workflow

PATCH /workflows/<wkf_id>/

Actualiza un workflow específico por ID.

Solicitud

Un objeto Workflow parcial en formato JSON. Los campos marcados con ? son opcionales.

{
    name?: "...",
    color?: "#...",
    icon?: "..."
 }

Respuesta

Estado Cuerpo
200 OK Workflow
400 Bad Request Error
403 Unauthorised Error
404 Not Found Error

Eliminar un workflow

DELETE /workflows/<wkf_id>/

Elimina un workflow específico por ID. El workflow no se elimina de forma permanente; su estado se establece en "ARCHIVED". Los workflows archivados pueden restaurarse poniéndose en contacto con el equipo de atención al cliente.

Respuesta

Estado Cuerpo
204 No Content
400 Bad Request Error
403 Unauthorised Error
404 Not Found Error