Reporting from subscription services
This service is only for customers with subscription model. It will replace the reporting documented at https://bokbasen.jira.com/wiki/spaces/api/pages/2498527278.
Please note the following:
Single point of reporting. Bokbasen will distribute reports to all relevant product owners (publisher) to be used for invoicing the subscription service and calculation of royalty to authors, etc.
The report should only include reads above the threshold (i.e 10%), as agreed upon with the publisher.
All data within a reporting period must be delivered simultaneously.
If a product changes product owner within a reporting period, the product must be reported twice (one time on each owner)
Frequency as agreed upon with the publisher, but should not include partial months, making a month the shortest reporting period possible.
New Authentication & URLs introduced Q2 2024
URL |
The token acquired from the Authentication Service (legacy). Required header: | ||
Method |
| ||
Request headers |
| Required | The token acquired from the Authentication Service Audience: |
JSON attributes (for each item in |
| Required | ISBN of the book you are reporting numbers for, mandatory |
| Required | Start of the reporting period on the format yyyy-MM | |
| Required | End of the reporting period on the format yyyy-MM | |
| Required | Numeric ID of the publisher who owned the rights to the book during the reporting period | |
| Optional | Name of the publisher who owned the rights to the book during the reporting period | |
| Required | The total cost that will be billed for this ISBN | |
| Optional | Can be sent in addition to cost.totalCost if you separate between trial and subscription | |
| |||
| Required | The total amount of books read | |
| Optional | Can be sent in addition to consumption.total if you separate between trial and subscription | |
| |||
| Optional | The price per book read (price per unit) | |
| Optional | Can be sent in addition to price.ppu if you separate between trial and subscription | |
| |||
| Optional | The currency of the cost/ppu-fields | |
| Optional | The market you are reporting for | |
Response headers |
|
| |
Response body | Empty on success | ||
Returns |
| No success | |
| On errors | ||
|
| If payload is too big (6MB limit) |
Example (curl)
curl -v -X POST \
-H "Authorization: Bearer <your-token>" \
-H "Content-Type: application/json" \
--data-binary "@sales_data.json" \
https://api.bokbasen.io/reporting/streaming/v1
Example content of sales_data.json
{
items: [
{
"isbn": "9782123456789",
"period": "2021-05",
"productOwnerId": "9999",
"productOwnerName": "Example name",
"cost": {
"totalCost": "600",
"paidCost": "450",
"trialCost": "150"
},
"consumption": {
"total": "30",
"paid": "15",
"trial": "15"
},
"price": {
"ppu": "20",
"paidPpu": "30",
"trialPpu": "10"
},
"currency": "NOK",
"market": "NO"
}
], ...
}