Skip to main content
POST
Post one statement's matched writer shares to the ledger
This endpoint requires authentication. Include your Bearer token in the Authorization header.

Description

POST /publisher/statements//post-to-ledger Bridges the statement’s matched WRITER shares into the ledger as publishing_royalty earning_post transactions, one per writer TenantUser. Explicit action, never automatic on ingest — line matching may still be under review. Idempotent per (statement, writer): re-posting reports already-posted writers under skipped rather than double-posting. ?dryRun=true (also accepted as dryRun: true in the body) returns the identical payload shape with nothing written — data.dryRun is true, data.totals.transactions is 0, and every entry in posted[].transactionId is the literal string 'dry-run'. Use it to preview shares and spot unmapped writers before committing. Authorization: admin role + publisher addon.

Code Examples

Authorizations

Authorization
string
header
required

JWT Authorization header using the Bearer scheme. Format: "Bearer {token}"

Path Parameters

id
string<uuid>
required

PublisherStatement ID.

Query Parameters

dryRun
boolean

Preview only — identical response shape, nothing written.

Body

application/json
dryRun
boolean

Alternative to the ?dryRun=true query param.

Response

Nothing posted this call — either ?dryRun=true, or every writer was already posted/unpostable.

Standard server envelope used by the statement, reconciliation, sub-publishing, and analytics endpoints.

status
enum<string>
Available options:
success,
error
message
string
data
object