Automações e eventos
Cada comando das automações, das pessoas dentro delas e dos eventos que as fazem avançar, com exemplos práticos.
Como tudo se encaixa
Uma automação é um acionador e uma árvore de passos. Mantém um rascunho e uma versão ativa: update altera o rascunho e as definições, e publish fixa o rascunho e ativa a automação. Ler requer automations:read e alterar requer automations:write. publish, resume e send-test requerem também emails:send, porque fazem a automação enviar correio.
openemail automations create --name "Welcome series" --starter welcome-seriesopenemail automations update aut_5c1e9a7b3d2f48e6a0b4c7d1 --data @welcome.jsonopenemail automations publish aut_5c1e9a7b3d2f48e6a0b4c7d1openemail automations stats aut_5c1e9a7b3d2f48e6a0b4c7d1A definição é JSON, por isso escreva-a num ficheiro e passe-a com --data @file. openemail automations get <id> --json mostra a atual, e os seus problems listam o que ainda a impede de ser publicada.
Automações
| Comando | O que faz |
|---|---|
| openemail automations list | Uma página das automações, primeiro as alteradas mais recentemente. --status restringe a draft, live, paused ou archived |
| openemail automations create --name <value> | Criar um rascunho a partir de --starter, de uma definição em --data, ou vazio |
| openemail automations get <id> | Uma automação com o seu rascunho, a sua versão ativa, as suas definições e o que está errado no rascunho |
| openemail automations update <id> | Alterar o nome, as definições ou a definição do rascunho. --expected-updated-at recusa sobrepor uma alteração feita depois de a ter lido |
| openemail automations publish <id> | Fixar o rascunho como a versão seguinte e ativar a automação |
| openemail automations pause <id> | Parar uma automação ativa. Todos os que estão dentro ficam onde estão |
| openemail automations resume <id> | Reativar uma automação em pausa com a versão que estava a executar |
| openemail automations archive <id> | Encerrar de vez uma automação e manter o histórico. Todos os que estão dentro saem |
| openemail automations duplicate <id> | Copiar uma automação para um novo rascunho, sem as suas pessoas nem os seus números |
| openemail automations delete <id> | Eliminar uma automação e o seu histórico depois de confirmar. Um início de sessão no navegador pede também um código de verificação |
| openemail automations list-starters | Os pontos de partida de que uma nova automação pode arrancar |
Testes, versões e números
| Comando | O que faz |
|---|---|
| openemail automations send-test <id> --step-key <value> | Enviar um passo de email do rascunho para si, ou para --to, com valores de exemplo. Não inscreve ninguém |
| openemail automations list-versions <id> | Todas as versões publicadas, da mais recente para a mais antiga |
| openemail automations restore-version <id> <version> | Copiar uma versão anterior de volta para o rascunho. Publique para a pôr em execução |
| openemail automations stats <id> | Totais, uma linha por passo e um ponto por dia. --since define onde começa o período, que por omissão são os últimos 30 dias |
Pessoas dentro de uma automação
| Comando | O que faz |
|---|---|
| openemail automations list-enrollments <id> | As pessoas que entraram, da mais recente para a mais antiga, com o passo em que cada uma está. --status e --step-key restringem a lista, e --all lê todas as páginas |
| openemail automations get-enrollment <id> <enrollment-id> | O percurso de uma pessoa, com cada passo executado e o email que cada envio produziu |
| openemail automations enroll <id> --email <value> | Colocar um contacto no primeiro passo de uma automação ativa. --contact-id indica o contacto por id |
| openemail automations exit-enrollment <id> <enrollment-id> | Retirar alguém antes de terminar |
openemail automations list-enrollments aut_5c1e9a7b3d2f48e6a0b4c7d1 --status active --all --json | jq -r '.items[] | .contact.email + " " + (.stepKey // "")'Eventos
Um evento diz que um contacto fez algo no seu produto. Inicia todas as automações ativas cujo acionador o indica e faz avançar quem estava à espera dele. Enviar um requer contacts:write.
| Comando | O que faz |
|---|---|
| openemail events send --name <value> --email <value> | Registar um evento de um contacto. --create-contact adiciona o contacto quando ainda ninguém tem o endereço, e --idempotency-key torna segura uma repetição |
| openemail events send-batch <events> | Registar até 100 eventos a partir de um ficheiro JSON, e mostrar quais foram aceites e quais foram recusados |
| openemail events list-names | Os nomes de eventos que o espaço de trabalho enviou, para escolher um num acionador |
| openemail contacts list-events <email> | Os eventos de um contacto, do mais recente para o mais antigo. --name restringe a um evento |
openemail events send --data '{"name":"order.placed","email":"[email protected]","properties":{"orderId":"AC-4192"}}' --idempotency-key order:AC-4192:placedopenemail events send-batch @events.jsonopenemail contacts list-events [email protected] --name order.placedAs propriedades vão no corpo JSON, por isso envie um evento que as tenha com --data. Os eventos são guardados durante 90 dias.