---
title: "Publisher X402 Earnings"
method: GET
path: "/v1/publisher/{tenant_slug}/x402-earnings"
---

# Publisher X402 Earnings

`GET /v1/publisher/{tenant_slug}/x402-earnings`

## Request

- Base URL: `https://api.storyflo.com` (the document declares no server; this is the origin it was published from)
- URL: `https://api.storyflo.com/v1/publisher/{tenant_slug}/x402-earnings`
- Auth: none declared

Aggregated x402 micropayment earnings for the publisher's articles.

Returns the publisher's 70% share across the lookback window plus
a per-article breakdown so the dashboard can show top earners.
Amounts are in USDC base units (6dp) — divide by 1_000_000 for the
decimal display.

Two labeled buckets so briefing revenue is visible without double
counting:
  - article receipts (``get_article`` / ``get_audio`` — X402Payment
    rows with an ``article_id``) → ``total_publisher_share_base``;
  - briefing/digest attribution (weighted ``publisher_payable``
    LedgerEntry legs with ``source LIKE 'briefing_%'`` — multi-
    publisher briefings can't live on the single-publisher receipt
    column) → ``briefing_earnings_micros``.

## Path parameters

- `tenant_slug` string, required

## Query parameters

- `days` integer

## Headers

- `x-storyflo-publisher-token` string, nullable

## Response `200`

Successful Response

- object

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/storyflo/apis/storyflo-inference-router.md) · [All operations](https://skmtc.dev/storyflo/apis/storyflo-inference-router/llms.txt) · [OpenAPI document](https://skmtc.dev/storyflo/apis/storyflo-inference-router/revisions/c3a1a735ac7a?raw)
