Workflow

Criação e manipulação do workflow

Na criação de um workflow é definido todos os passos que serão realizados durante a aprovação/assinatura de um documento ou mais documentos.

O workflow seguirá respectivamente a sequência de envio dos steps definidos na chave “workflowSteps”.

Criar um workflow

POST https://api-v1.assine.online/v1/workflow

Montagem do workflow com quais arquivos queremos e quais pessoas queremos que assinem, definindo onde a assinatura ficará no documento.

Headers

Request Body

{
    "id": 1259,
    "autoRemind": 0,
    "dueDate": {
        "date": "2023-01-01 00:00:00.000000",
        "timezone_type": 3,
        "timezone": "UTC"
    },
    "name": null,
    "message": "",
    "priority": 0,
    "sla": 1,
    "status": 0,
    "_embedded": {
        "user": {
            "id": 474,
            "username": "siletic225@xhyemail.com",
            "password": "$2y$10$Vw9uEiHuza.CaPHvmqXmi..PXIKQe/uyuDCnqkJOYWNpagU3X6IWm",
            "status": "1",
            "name": "Jhon Doe",
            "email": "siletic225@xhyemail.com",
            "cellphone": "+5562991838359",
            "document": "12312312312",
            "country": "Brazil",
            "state": "GO",
            "city": "Goiânia",
            "address": "Av 136, Ed. New York Square 19/20",
            "zipCode": "74000000",
            "dateCreated": {
                "date": "2020-02-20 13:28:28.000000",
                "timezone_type": 3,
                "timezone": "UTC"
            },
            "dateLastUpdated": {
                "date": "2020-02-20 13:29:10.000000",
                "timezone_type": 3,
                "timezone": "UTC"
            },
            "_embedded": {
                "businessUnit": {
                    "id": 24,
                    "name": "Soluti Soluções em negocios inteligentes",
                    "document": "cnpj",
                    "status": null,
                    "country": "Brazil",
                    "state": "GO",
                    "city": "Goiânia",
                    "address": "Av 136, Ed. New York Square 19/20",
                    "zipCode": "74000000",
                    "_links": {
                        "self": {
                            "href": "https://api.assine.online/business-unit/24"
                        }
                    }
                }
            },
            "_links": {
                "self": {
                    "href": "https://api.assine.online/user/474"
                }
            }
        }
    },
    "_links": {
        "self": {
            "href": "https://api.assine.online/workflow/1259"
        }
    }
}

Os campos whatsappNumber e notifyWhatsapp dentro de files[].workflowSteps[].user somente são necessários se você tiver o recurso de envio por Whatsapp habilitado. Caso queira contratar, procure o time comercial.

Caso precise de mais detalhes sobre a criação do workflow, veja nossa documentação do quickstart.

Buscar um workflow

GET https://api-v1.assine.online/v1/workflow/:id

Busca informações sobre o workflow, seu status, quem já assinou ou ainda está pendente e etc.

Path Parameters

Headers

{
    "id": 1240,
    "autoRemind": 0,
    "dueDate": {
        "date": "2023-01-01 00:00:00.000000",
        "timezone_type": 3,
        "timezone": "UTC"
    },
    "name": null,
    "message": "Uma mensagem de identificação",
    "priority": 0,
    "sla": 1,
    "status": 6,
    "dateCreated": {
        "date": "2020-02-26 13:10:01.000000",
        "timezone_type": 3,
        "timezone": "UTC"
    },
    "dateStatus": {
        "date": "2020-02-26 13:12:04.000000",
        "timezone_type": 3,
        "timezone": "UTC"
    },
    "dateFineshed": null,
    "_embedded": {
        "documents": [
            {
                "id": 1333,
                "name": "Um documento de exemplo",
                "status": 1,
                "dueDate": null,
                "specialFields": [],
                "workflowSteps": [
                    {
                        "id": 1459,
                        "action": 0,
                        "signatureType": 0,
                        "status": 4,
                        "extraMetadata": null,
                        "dateStatus": {
                            "date": "2020-02-26 13:11:18.000000",
                            "timezone_type": 3,
                            "timezone": "UTC"
                        },
                        "latitude": "-1.0",
                        "longitude": "-1.0",
                        "reason": ".",
                        "fields": [
                            {
                                "type": 8,
                                "x": 51,
                                "y": 29,
                                "height": 46,
                                "width": 200,
                                "page": 1,
                                "value": "",
                                "name": ""
                            }
                        ],
                        "_embedded": {
                            "user": {
                                "id": 483,
                                "name": "João Carlos Santos",
                                "email": "joaocarlossantos@mailimail.com"
                            }
                        }
                    }                    
                ],
                "_embedded": {
                    "folder": {
                        "id": 174,
                        "name": "default",
                        "path": "default"
                    },
                    "originalFile": {
                        "id": 5575,
                        "checksum": "6703901978dcb3dbf2d9915e1d3e066cfe712b0a",
                        "_links": {
                            "download": {
                                "href": "https://api.assine.online/file?q=e2dvb2RfbG9va317ImRhdGEiOnsidXVpZCI6IjVhOGQyMjcyLTU0MGMtMTFlYS04ZjgyLTAyNDJhYzE0MDAwNyJ9LCJobWFjIjoiMjI0YmJkNTkyMGYyNTRhOTg3MGYxMWZhMTY4YTE4Yzc3YzY2NTgzZWNiYWY4MThhYTc5MTg5ZGRjMWJmZDYzMyIsIm5vbmNlIjoiNjc4NzE1ODI4Mjc1NjUifQ=="
                            }
                        }
                    },
                    "file": {
                        "id": 5586,
                        "checksum": "d02813a2f4e1356dcb818a7edb6d4f0b3452a8a2",
                        "_links": {
                            "download": {
                                "href": "https://api.assine.online/file?q=e2dvb2RfbG9va317ImRhdGEiOnsidXVpZCI6Ijc5Y2QzZWJhLTU4OTktMTFlYS1iMWEwLTAyNDJhYzE0MDAwNyJ9LCJobWFjIjoiYzBmMDVmMGE0YmYwNDQyNDgyOTUyNmRmZTIxMDBmMTI5ODhmY2E3MTAxMjY0NGZkNjJiZDc2Mzc0NDRiYWQ3ZSIsIm5vbmNlIjoiNjQ0MTE1ODI4Mjc1NjUifQ=="
                            }
                        }
                    }
                }
            }
        ]
    },
    "_links": {
        "self": {
            "href": "https://api.assine.online/workflow/1240"
        }
    }
}

Possíveis status do workflow:

  • 0: Rascunho, ou seja, ainda não iniciou-se.

  • 1: Circulando, ou seja, o fluxo se iniciou e está aguardando que as pessoas assinem.

  • 2: Cancelado, ou seja, a pessoa que criou o fluxo cancelou.

  • 3: Expirado, ou seja, o fluxo passou da data de vencimento definida.

  • 4: Processando, ou seja, o documento está sendo processado com o cálculo de criptografia da assinatura.

  • 5: Rejeitado, ou seja, algum dos assinantes rejeitou assinar este workflow.

  • 6: Completado, ou seja, todos os assinantes efetuaram a assinatura e o documento está totalmente assinado.

Possíveis status do step do workflow, ou seja, status do assinante se foi aprovado ou não (Propriedade: _embedded.documents[].workflowSteps[].status):

  • 0: Não iniciado, ou seja, o fluxo ainda não se iniciou e a pessoa ainda não recebeu o email pedindo a assinatura.

  • 1: Aguardando assinatura, ou seja, aguardando que o assinante peça para assinar.

  • 2: Na fila de processamento, ou seja, está na fila para processar a assinatura.

  • 3: Processando, ou seja, está no processo de gerar as chaves e cálculos para realizar a assinatura.

  • 4: Aprovado, ou seja, já foi processado e o usuário aprovou que o documento possa ser assinado, podendo avançar para o próximo passo que no nosso caso, o próximo passo é pedir a assinatura de Maria.

  • 5: Rejeitado, ou seja, o assinante rejeitou assinar o documento, abortando todo o fluxo.

É possível encontrar os links temporários para download do documento em sua versão original na chave “originalFile” e sua versão assinada/preenchida atual em “file”.

Listar workflows

GET https://api-v1.assine.online/v1/workflow

Lista todos os workflow criados

Query Parameters

Headers

{
    "_links": {
        "self": {
            "href": "https://api.assine.online/workflow?page=1"
        },
        "first": {
            "href": "https://api.assine.online/workflow"
        },
        "last": {
            "href": "https://api.assine.online/workflow?page=1"
        }
    },
    "_embedded": {
        "workflow": [
            {
                "id": 1232,
                "autoRemind": 0,
                "dueDate": {
                    "date": "2023-01-01 00:00:00.000000",
                    "timezone_type": 3,
                    "timezone": "UTC"
                },
                "name": null,
                "message": "Uma mensagem de identificação",
                "priority": 0,
                "sla": 1,
                "status": 1,
                "dateCreated": {
                    "date": "2020-02-20 18:11:10.000000",
                    "timezone_type": 3,
                    "timezone": "UTC"
                },
                "dateStatus": {
                    "date": "2020-02-20 18:49:41.000000",
                    "timezone_type": 3,
                    "timezone": "UTC"
                },
                "dateFinished": null,
                "_embedded": {
                    "user": {
                        "id": 474,
                        "name": "Jhon Doe",
                        "email": "siletic225@xhyemail.com",
                        "_links": {
                            "self": {
                                "href": "https://api.assine.online/user/474"
                            }
                        }
                    }
                },
                "_links": {
                    "self": {
                        "href": "https://api.assine.online/workflow/1232"
                    }
                }
            },
            ...
        ]
    },
    "page_count": 1,
    "page_size": 25,
    "total_items": 20,
    "page": 1
}

Iniciar um workflow

PATCH https://api-v1.assine.online/v1/workflow/:id

Quando o workflow é criado, o fluxo não se inicia automaticamente por padrão, ou seja, nenhum dos assinantes recebe o email com o pedido de assinatura, para isso precisamos inicializá-lo.

Path Parameters

Headers

Request Body

{
    "id": 1259,
    "autoRemind": 0,
    "dueDate": {
        "date": "2023-01-01 00:00:00.000000",
        "timezone_type": 3,
        "timezone": "UTC"
    },
    "name": null,
    "message": "",
    "priority": 0,
    "sla": 1,
    "status": 1,
    "_embedded": {
        "user": {
            "id": 474,
            "username": "siletic225@xhyemail.com",
            "status": "1",
            "name": "Jhon Doe",
            "email": "siletic225@xhyemail.com",
            "cellphone": "+5562991838359",
            "document": "12312312312",
            "country": "Brazil",
            "state": "GO",
            "city": "Goiânia",
            "address": "Av 136, Ed. New York Square 19/20",
            "zipCode": "74000000",
            "dateCreated": {
                "date": "2020-02-20 13:28:28.000000",
                "timezone_type": 3,
                "timezone": "UTC"
            },
            "dateLastUpdated": {
                "date": "2020-02-20 13:29:10.000000",
                "timezone_type": 3,
                "timezone": "UTC"
            },
            "_embedded": {
                "businessUnit": {
                    "id": 24,
                    "name": "Soluti Soluções em negocios inteligentes",
                    "document": "cnpj",
                    "status": null,
                    "country": "Brazil",
                    "state": "GO",
                    "city": "Goiânia",
                    "address": "Av 136, Ed. New York Square 19/20",
                    "zipCode": "74000000",
                    "_links": {
                        "self": {
                            "href": "https://api.assine.online/business-unit/24"
                        }
                    }
                }
            },
            "_links": {
                "self": {
                    "href": "https://api.assine.online/user/474"
                }
            }
        }
    },
    "_links": {
        "self": {
            "href": "https://api.assine.online/workflow/1259"
        }
    }
}

O corpo da requisição é literalmente:

{
    "status": 1
}

Cancelar workflow

PATCH https://api-v1.assine.online/v1/workflow/:id

Path Parameters

Headers

Request Body

{
    "id": 1259,
    "autoRemind": 0,
    "dueDate": {
        "date": "2023-01-01 00:00:00.000000",
        "timezone_type": 3,
        "timezone": "UTC"
    },
    "name": null,
    "message": "",
    "priority": 0,
    "sla": 1,
    "status": 2,
    "_embedded": {
        "user": {
            "id": 474,
            "username": "siletic225@xhyemail.com",
            "status": "1",
            "name": "Jhon Doe",
            "email": "siletic225@xhyemail.com",
            "cellphone": "+5562991838359",
            "document": "12312312312",
            "country": "Brazil",
            "state": "GO",
            "city": "Goiânia",
            "address": "Av 136, Ed. New York Square 19/20",
            "zipCode": "74000000",
            "dateCreated": {
                "date": "2020-02-20 13:28:28.000000",
                "timezone_type": 3,
                "timezone": "UTC"
            },
            "dateLastUpdated": {
                "date": "2020-02-20 13:29:10.000000",
                "timezone_type": 3,
                "timezone": "UTC"
            },
            "_embedded": {
                "businessUnit": {
                    "id": 24,
                    "name": "Soluti Soluções em negocios inteligentes",
                    "document": "cnpj",
                    "status": null,
                    "country": "Brazil",
                    "state": "GO",
                    "city": "Goiânia",
                    "address": "Av 136, Ed. New York Square 19/20",
                    "zipCode": "74000000",
                    "_links": {
                        "self": {
                            "href": "https://api-hom.assine.online/business-unit/24"
                        }
                    }
                }
            },
            "_links": {
                "self": {
                    "href": "https://api-hom.assine.online/user/474"
                }
            }
        }
    },
    "_links": {
        "self": {
            "href": "https://api-hom.assine.online/workflow/1259"
        }
    }
}

O corpo da requisição é literalmente:

{
    "status": 2
}

Last updated