---
title: "Listar automações"
method: GET
path: "/v1/automations"
tags: ["Automações"]
---

# Listar automações

`GET /v1/automations`

## Request

- Base URL: `https://api.ararahq.com`
- URL: `https://api.ararahq.com/v1/automations`
- Auth: HTTP bearer
- TypeScript: <https://skmtc.dev/ararahq/apis/ararahq-api/docs/v1/automations/get.ts> (a function with typed inputs; its response is checked against the schema)

Todas as automações da organização, sem paginação. Exige plano com
recuperação de receita. Permissão: `READ`.

## Response `200`

Automações

- Automation[]
  - `id` string, uuid, required
  - `name` string, required
  - `trigger` string, required
  - `triggerConfig` object, nullable
  - `active` boolean, required: `false` na criação. Mude em `PUT /v1/automations/{id}/active`.
  - `steps` AutomationStep[], required
    - `type` 'message' | 'wait' | 'condition' | 'tag' | 'question' | 'wait_payment', required: - `message`: envia um template (`templateId`, `variables` e, opcionalmente, `charge`) ou um texto na janela de 24h (`sessionText`, até 1.024 caracteres). Nunca os dois. - `wait`: `{ "minutes": N }`, de 1 a 43.200 (30 dias). - `condition`: `{ "tag": "..." }`. Segue só se o contato ainda não tem a etiqueta. - `tag`: `{ "tag": "..." }`. Aplica a etiqueta no contato. - `question`: pergunta com opções; ramifica em `branches`. - `wait_payment`: `{ "timeoutMinutes": N, "referenceId"?: "..." }`; ramifica em `paid` e `unpaid`.
    - `config` object, nullable: Configuração do passo. O formato depende de `type`.
    - `branches` object, nullable: Só em `question` e `wait_payment`. Chave do ramo para a lista de passos daquele ramo. Em `question`: o `id` de cada opção, mais `__timeout` e `__other`. Em `wait_payment`: `paid` e `unpaid`.
    - `id` string, uuid, nullable: ID do passo na resposta. Muda a cada `PUT`.
  - `costPerRunBrl` number, required: Custo estimado, em reais, de cada pessoa que entrar na automação.
  - `stats` object, nullable
    - `runsLast30Days` integer
    - `inFlight` integer
    - `completed` integer
    - `stopped` integer
  - `webhookUrl` string, nullable: URL que o seu sistema precisa chamar, quando o gatilho depende disso.
  - `hook` AutomationHook
    - `url` string, required: Link próprio da automação (`https://api.ararahq.com/hooks/a/ara_hook_...`).
    - `signatureEnabled` boolean, required
    - `hasSecret` boolean, required: Diz só se o segredo existe. O valor nunca volta em leitura.

## Other responses

- `401`: Chave inexistente, revogada, expirada, com prefixo errado (`ara_` sem `ara_live_`) ou vinda de IP fora da allowlist. O corpo é o JSON padrão do Spring, sem `error.code`.
- `403`: Dois casos, com corpos diferentes: - Autenticação: header `Authorization` ausente, Bearer que não começa com `ara_`, chave sem a permissão da rota ou rota que não aceita chave de API. Corpo no formato padrão do Spring, sem `error.code`. - Regra de negócio, no formato `{ "error": { ... } }`: `PLAN_FEATURE_LOCKED`, `PLAN_LIMIT_REACHED`, `ACCOUNT_NOT_ACTIVATED`, `NO_DEDICATED_NUMBER`, `ORGANIZATION_SUSPENDED`, `NUMBER_BLOCKED`, `FRAUD_SUSPECTED`, `RESOURCE_FORBIDDEN`, `VIEWER_READ_ONLY`.
- `429`: `RATE_LIMIT_EXCEEDED`: limite geral da API (1.200 leituras ou 3.000 escritas por minuto, por usuário da chave).

## Changes

- **2026-10-12** `d576cd28afc0`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/ararahq/apis/ararahq-api/changes/v1/automations/get.md)

---

[API](https://skmtc.dev/ararahq/apis/ararahq-api.md) - [All operations](https://skmtc.dev/ararahq/apis/ararahq-api/llms.txt) - [OpenAPI document](https://skmtc.dev/ararahq/apis/ararahq-api/revisions/d576cd28afc0?raw)
