type) e uma ou mais ações (actions[]) a serem executadas quando as condições associadas forem satisfeitas. Os tipos de evento disponíveis cobrem o salvamento de dados (save-phase-fields, save-opinion, save-approval, save-card-responsible, save-card-label), a criação ou movimentação de card (create-card, move-card), a execução de motores (execute-credit-engine, execute-decision-engine) e a finalização de processos assíncronos (finalized-document, finalized-auto-document, finalized-query-agrisk, finalized-auto-query-agrisk).actions[] tem seu próprio tipo (set-labels, move-card, sse-event, start-conversation ou set-assignee) e sua própria lista de condições (conditions[]). Dentro de conditions[], cada bloco funciona em lógica OU entre si; dentro de um bloco, o array rule[] funciona em lógica E. O array conditions deve sempre ser enviado explicitamente, mesmo vazio ([]), quando a ação deve ser executada de forma incondicional.move-card, o parâmetro que indica a fase de destino é params.phaseId. Não existe um parâmetro targetPhaseId, e o parâmetro mode não é aceito nesta ação — o envio de qualquer um dos dois é rejeitado pela API.set-labels, cada item de params.labels[] precisa ter uma color idêntica a uma das opções já cadastradas em labelOptions do flow; cores fora dessa lista não são aceitas.type na mesma fase, mas quando ambos disparam para o mesmo evento o resultado é não determinístico — no caso de set-labels, por exemplo, prevalece a última escrita. Recomendamos sempre listar os gatilhos já existentes na fase (GET /v1/triggers/phases/{phaseId}) antes de criar um novo, e atualizar o gatilho existente em vez de duplicá-lo.curl --location '/v1/triggers' \
--header 'Content-Type: application/json' \
--data '{
"flowId": "string",
"phaseId": "string",
"type": "create-card",
"actions": [
{
"type": "set-labels",
"conditions": [
{
"rule": [
{
"path": "string",
"reference": "string",
"condition": "string",
"target": null
}
]
}
],
"params": {
"mode": "overwrite",
"labels": [
{
"label": "string",
"color": "string"
}
],
"phaseId": "string",
"message": "string",
"assignee": {
"userId": "string",
"userName": "string",
"userEmail": "string"
}
}
}
]
}'{
"id": "string",
"flowId": "string",
"phaseId": "string",
"type": "string",
"actions": [
{}
]
}