From autumn 2016 Bokbasen have been delivering e-books from international publishers through DDS, to support the large increase in number of books and specific requirements from International publishers this requires some changes in the DDS integration. These changes are only required by stores that wants to sell books from these publishers, no changes needed if you are only selling books from Norwegian publishers.
Two end-points are changing and will work in parallell
Get inventory
The interface for inventory will change in order to support a larger volume of books with introducing a paging mechanism where you are sure that you are always getting books that have changes. (similar to the mechanism used in Metadata Export Service. For details on how to user next and after parameters see: Export Service#Parameters
You are welcome to migrate to this endpoint even if you do not plan to import international e-books. The performance of this endpoint is dramatically improved compared to v1 and you will be able to load this data much faster. However, note that you will see a much larger number of books with access=false if you do not have a contract to sell international titles. Still, with the significant improvement in load time this is a more efficient way of loading Inventory data for Norwegian titles as well.
URL | |||
Method | GET | ||
Request headers | Authorization | Required | The token acquired from the Authentication Service (legacy). Formated "Boknett TGT-...." |
Date | Required | The timestamp the request was made. Must comply with RFC 1123 date formats. Example: Tue, 10 Jun 2014 16:23:42 GMT | |
Query parameters | after | Required if next not given | |
next | Required if after not given | ||
pagesize | optional | (defaults to 10000) | |
Response headers | Content-Type | application/atom+xml;charset=UTF-8 | |
Next | next token for next page | ||
Link | link to next page | ||
Response body | ATOM Inventory XML format (same format as before, however only latest version of each book is returned and some fields are removed) | ||
Returns | 200 | OK | |
40x | On error |
ATOM Inventory XML format for v2
For v2 some fields are removed, contact us if we have removed fields that are important for your process.
Example XML:
<?xml version="1.0" encoding="UTF-8"?> <feed xmlns="http://www.w3.org/2005/Atom" xmlns:inv="http://bokbasen.no/module/inventory/1.0"> <title>Inventory Items</title> <link rel="self" type="application/atom+xml" href="http://api.dds.boknett.no/inventory/" title="Inventory feed" /> <updated>2015-08-07T11:19:45Z</updated> <entry> <id>urn:uuid:99496f82-84c5-4de7-9899-31603e26a355</id> <updated>2015-08-06T11:52:09Z</updated> <inv:isbn>9788242160966</inv:isbn> <inv:publisher>900224</inv:publisher> <inv:format>MP3</inv:format> <inv:drm>SDRM</inv:drm> <inv:version>1</inv:version> <inv:deleted /> <inv:published>true</inv:published> <inv:access>false</inv:access> <inv:excerpt>false</inv:excerpt> </entry> </feed>
Place an order
International books requires additional fields for order where country code and zip code for the buyer is required. The country code will be validated against the metadata to ensure that the book is being sold in a market where you are allowed to sell it.
URL | https://api.dds.boknett.no/order | ||
Method | POST | ||
Request headers | Authorization | Required | The token acquired from the Authentication Service. Formated "Boknett TGT-...." |
Date | Required | The timestamp the request was made. Must comply with RFC 1123 date formats. Example: Tue, 10 Jun 2014 16:23:42 GMT | |
Accept | Required | application/json (We recommend all new implementations to use this header, XML support will be phased out in the future) | |
Content-type | Required | application/json | |
JSON attributes | orderid | Required | Your store order ID. Used as transaction ID in DDS. Must be unique for a purchase. |
resid | Required | The product ID in DDS. Unique name for e-/audio books found in the inventory service. | |
spd | Required | Price in Norwegian "øre" (sold for) including VAT. Example NOK 189 = 18900 | |
id | Optional | DDS-ID for end-consumer | |
firstname | Optional* | First name of the person buying the book (Required for all books with SDRM, minimum length 2) | |
lastname | Optional* | First name of the person buying the book (Required for all books with SDRM, minimum length 2) | |
excerpt | Optional | Order is for excerpt instead of actual book (defaults to false) | |
country | Required for international books | ISO 3166-1 code for country the buyer lives in (must correspond with SalesRights from the metadata feed, DDS will reject transaction if an order is placed for a customer living in a country where SalesRights are not present) | |
zip | Required for international books | Zip code where the customer lives (if not available, default to company zip code) | |
Response headers | Location | ||
Response body | Empty on success | ||
Returns | 201 | Created | |
40x | On errors |