# 3pm-backend route `pushLogs`

Paths are relative to the backend's origin (https://fleet.edgecr4ft.net, or your own 3pm-backend), not to this site. Index: https://3pm.edgecr4ft.net/docs/backend/api.md

---

tokens:
  claude: 282
  o200k: 185
# POST /api/buckets/{clusterId}/logs (pushLogs)

The agent's log batches (`3pm link`): gzip NDJSON records (`batch`, `src`, `tpl`, `cnt`, `line`, `dropped`), answered `{accepted, skipped, duplicate?, refused?}` (`refused`: new sources/templates past the node's catalog bound) — agent only, a page reads `events`.

- auth: an account — Authorization: Bearer 3pmu_<token>, or the dashboard's session cookie
- node: also open to a node's own bearer (3pma_…) when its row is granted fleet:list; that node's bucket only, and for the calls it placed itself
- answer: the agent's own request (`3pm link`), not for an LLM
