Download OpenAPI specification:
The Publizon Reporting API provides a clear and consistent method for outbound customers (retailers and partners) to report back to Publizon on earnings, content consumption, and reader demography.
An API key and a set of credentials (email and password) must be used to authenticate. Use the auth api to get the short-lived token needed to call the reporting api endpoints.
This endpoint allows partners to upload structured data regarding the financial performance of content sold or consumed via their platform. It covers the flow of financial information back to Publizon.
required | Array of objects (RevenueTransaction) [ 1 .. 250 ] items |
{- "transactions": [
- {
- "customerId": "string",
- "productIdentifier": "string",
- "retailerTransactionId": "string",
- "saleDateTime": "2019-08-24T14:15:22Z",
- "quantity": {
- "value": 0,
- "type": "Units"
}, - "subscriptionType": "Unlimited",
- "unitAmount": 0,
- "totalAmount": 0,
- "currency": "DKK",
- "market": "AD"
}
]
}This endpoint allows publishers and sales channels to export transactional revenue data.
Response:
channel: The sales channel reporting the revenuecustomer_id: Optional customer identifier from the retailer system.product_indentifier: The primary identifier for the title, typically the ISBN-13.retailer_transaction_id: A unique string generated by the retailer to ensure each consumption event or sale is reported only once and can be audited.quantity: The numerical volume of usage. Depending on the QuantityType, this could be a whole number (units / parts) or a decimal (hours/percentage).subscription_type: The specific access model used by the customer. These will be unique pr retailer. Examples include: Unlimited / Trialunit_amount: The calculated rate paid per single unit of the chosentotal_amount: The total net revenue or royalty share to be paid to the publisher for this specific line item.market: The geographic market of the user (e.g., SE, DK, FI).| startDate required | string The start date for the query range (ISO 8601 format). The range cannot exceed 31 days. |
| endDate required | string The end date for the query range (ISO 8601 format). |
[- {
- "insert_timestamp": "string",
- "sale_timestamp": "string",
- "channel": {
- "id": "string",
- "name": "string"
}, - "customer_id": "string",
- "product_identifier": "string",
- "retailer_transaction_id": "string",
- "quantity": {
- "value": 0,
- "type": "Units"
}, - "subscription_type": "Unlimited",
- "unit_amount": 0,
- "total_amount": 0,
- "currency": "DKK",
- "market": "string"
}
]This endpoint handles the reporting of how end-users consume the digital content. It is only available to outbound channels.
required | Array of objects (ProductUsageReport) [ 1 .. 50 ] items |
{- "products": [
- {
- "subscriptionId": "string",
- "customerId": "string",
- "productIdentifier": "string",
- "usages": [
- {
- "part": 0,
- "format": "Epub",
- "startPosition": 0,
- "endPosition": 0,
- "usageId": "string",
- "usageDateTime": "2019-08-24T14:15:22Z"
}
]
}
]
}This endpoint allows publishers and sales channels to export transactional usage data.
Response:
usage_timestamp: Datetime when the usage started.customer_id: Optional customer identifier from the retailer system.product_identifier: The primary identifier for the title, typically the ISBN-13.part: Part index reported for the usage event.format: Format in which the usage happened.start_position: Start position in seconds (audiobooks) or words (ebooks).end_position: End position in seconds (audiobooks) or words (ebooks).usage_id: Unique identifier generated by the retailer for de-duplication.| startDate required | string The start date for the query range (ISO 8601 format). The range cannot exceed 31 days. |
| endDate required | string The end date for the query range (ISO 8601 format). |
[- {
- "usage_timestamp": "string",
- "product_identifier": "string",
- "customer_id": "string",
- "part": 0,
- "format": "Epub",
- "start_position": 0,
- "end_position": 0,
- "usage_id": "string"
}
]