---
title: "Read Hive organic attribution over at most 90 days from the connected Google Analytics 4 property, joined to accessible tracked links. Saved fallback is identified during outages; missing setup and unavailable metrics remain explicit instead of returning zeros."
method: POST
path: "/api/v1/tools/read_attribution"
---

# Read Hive organic attribution over at most 90 days from the connected Google Analytics 4 property, joined to accessible tracked links. Saved fallback is identified during outages; missing setup and unavailable metrics remain explicit instead of returning zeros.

`POST /api/v1/tools/read_attribution`

## Request

- Base URL: `https://hivepublish.com`
- URL: `https://hivepublish.com/api/v1/tools/read_attribution`
- Auth: HTTP bearer

## Request body

- object
  - `days` integer: How many days back to read, when from and to are not given.
  - `from` string: Inclusive ISO start date, for example 2026-09-01.
  - `to` string: Inclusive ISO end date.
  - `timeZone` string: IANA time zone the day boundaries are cut on. Defaults to UTC.

## Response `200`

Tool result

- ToolResult
  - `data` unknown, required
  - `meta` object, required
    - `tool` string
    - `workspaceId` string, uuid

## Other responses

- `400`: Invalid input
- `401`: Missing or invalid credential
- `403`: Missing workspace scope, role permission, or plan entitlement
- `409`: Idempotency conflict, replay, or request still in progress
- `429`: Rate limit exceeded

---

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