---
title: "Lista transações do workspace da chave"
method: GET
path: "/api/v1/transactions"
tags: ["Transações"]
---

# Lista transações do workspace da chave

`GET /api/v1/transactions`

## Request

- Base URL: `https://snabber.com.br`
- URL: `https://snabber.com.br/api/v1/transactions`
- Auth: HTTP bearer

Retorna transações financeiras (receitas e despesas) do workspace vinculado à chave de API, com filtros por data, categoria, conta e tipo. Paginação por cursor. Cada transação traz `category` (a categoria dela, que pode ser uma subcategoria) e `category_parent` (a categoria pai, ou null). Por padrão omite as categorias que não são entrada/saída real de dinheiro — as marcadas como fora dos totais (`totals_mode` diferente de 'include' em `/api/v1/categories`, ex.: 'Ignorado', 'Pagamento de Cartão de Crédito', 'Investimentos', e as subcategorias delas) — use `include_ignorable_categories=true` para trazê-las.

## Query parameters

- `workspace_id` integer
- `from` string, date
- `to` string, date
- `category` string
- `include_subcategories` boolean
- `account` string
- `type` 'income' | 'expense'
- `limit` integer
- `cursor` string
- `include_ignorable_categories` boolean

## Response `200`

Lista de transações

- TransactionList
  - `data` Transaction[]
    - `id` integer
    - `date` string, date
    - `time` string, nullable
    - `description` string, nullable
    - `amount` number, nullable
    - `currency_code` string
    - `type` 'income' | 'expense'
    - `category` string
    - `category_parent` string, nullable: Categoria pai de `category`, quando `category` é uma subcategoria; null quando é raiz.
    - `account` string
    - `comment` string, nullable
    - `paid` boolean
    - `payment_date` string, date, nullable: Data estimada de pagamento da fatura para transações de cartão de crédito (null nas demais contas). É cálculo nosso a partir do dia de fechamento/vencimento cadastrado no cartão — não vem da instituição. Ver `bill_id` para a ordem de confiabilidade ao associar uma transação a uma fatura
    - `installment_number` integer, nullable: Número desta parcela numa compra parcelada no cartão (o "3" de "3/10"), como informado pela instituição. null quando a transação não é parcelada ou a instituição não informou
    - `total_installments` integer, nullable: Total de parcelas da compra (o "10" de "3/10"). `amount` é o valor só desta parcela, não da compra inteira. null quando a transação não é parcelada ou a instituição não informou
    - `bill_id` string, nullable: Fatura à qual a instituição atribuiu esta transação. Casa com `id` de /v1/credit-card-bills. Identificador opaco: não presuma formato. Como associar uma transação a uma fatura, em ordem de confiabilidade: 1) `bill_id` — quando presente, é vínculo confirmado pela instituição, que só o emite depois que a fatura fecha. Use sempre que houver. 2) `bill_forecast_date` — quando `bill_id` é null, casa com `closing_month` da fatura. É a previsão da instituição enquanto o ciclo está aberto e pode mudar até fechar. 3) `payment_date` — quando os dois acima são null, é o que resta para situar a transação num ciclo (contra `cycle_month` da fatura), mas é estimativa nossa, sem confirmação da instituição. Não trate uma fatura reconstruída só por `payment_date` como obrigação confirmada. Os dois primeiros são sempre null em cartão cadastrado manualmente, que não tem fatura da instituição
    - `bill_forecast_date` string, nullable: Mês de fechamento ("YYYY-MM") previsto pela instituição enquanto a fatura está aberta. Casa com `closing_month` da fatura. Ver `bill_id`
    - `source` string: 'open_finance' quando veio do banco pelo Open Finance; senão a origem gravada: 'manual', 'snabby' (IA do app), 'telegram', 'api'
    - `synced` boolean: true quando veio do Open Finance — pode ser reescrita ou voltar no próximo sync se for excluída
    - `partner_initials` string, nullable: Iniciais do membro do workspace que lançou/sincronizou a transação; null quando é do próprio dono. Por privacidade o nome completo não é exposto
    - `created_at` string, date-time
    - `updated_at` string, date-time
  - `pagination` Pagination
    - `limit` integer
    - `has_more` boolean
    - `next_cursor` string, nullable
  - `meta` object
    - `workspace_id` integer

## Other responses

- `400`: Parâmetro inválido
- `401`: Chave de API ausente, inválida, revogada ou expirada
- `403`: Plano do usuário não tem acesso à API (downgrade para free)
- `429`: Limite de requisições excedido

---

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