The API provides endpoints which allow to programmatically create and edit shops.
[ Setup ] [ Environments / endpoints ] [ Authentication ] [ Making a request ] [ Path Parameters ] [ Query Parameters ] [ Response ] [ Examples Create shop ] [ Update shop ] [ Error handling ] [ Error response ]
Setup
Make sure you have the following information at hand before proceeding.
...
Name | Mandatory | Example | Description |
---|---|---|---|
ownerPartyKey |
| owner-party-name | Unique owner party identifier in DI database |
| Shop object which will be persisted | ||
customerSystem |
| Data to create a new customer system connected to the new shop | |
transportSolutionIds |
| [1, 2, 3] | Collection of already existing transport solutions to be connected to the new shop; can’t be empty |
Shop
Name | Mandatory | Example | Description |
---|---|---|---|
id | ⚠️ | Must be empty when creating a new shop | |
organizationNumber | 123 456 789 | Applicable based on the regional regulations | |
| email@test.com | ||
| Warehouse’s address | ||
legalName | Company AS | Shop’s legal name | |
delivererEDI | EDI software used | ||
vatLiable | true | Whether shop is vat liable; will be set to false if not sent | |
webShopPlatform | Egen | Ecommerce platform | |
ceo | John Doe | Shop’s CEO | |
customerManager | John Doe | Shop’s customer manager | |
contactPersonPhone | 58692698 | Phone number of a contact person | |
externalCustomerIds | [{“freightProductId”: 1, “customerNumber”: 1}] | Unique combination of customer number and freight product id |
...
Name | Mandatory | Example | Description |
---|---|---|---|
name |
| ||
shortName |
| Must be unique; max. 5 characters | |
customerFacingName | |||
addressCollector |
...
Curl request example
Code Block |
---|
Response
Examples
Expand | ||
---|---|---|
| ||
Code Block | curl --location 'https://staging-ws.di.no/ws/json/shop/v-1' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer TOKEN' \
--data-raw '{
"ownerPartyKey": "ownerPartyKey",
"shop": {
"organizationNumber": "543 123 345",
"email": "email@email.com",
"address": {
"street": "Street gata",
"streetNumber": 5,
"zipCode": 55555,
"city": "The City",
"countryCode": "NO"
},
"legalName": "Legal Name2",
"shortName": "sn1",
"delivererEDI": "delivererEDI",
"vatLiable": false,
"webShopPlatform": "web shop platform",
"ceo": "Ceo Ceo",
"customerManager": "Kristine",
"externalCustomerIds": [{
"freightProductId": 1,
"customerNumber": 3799475
}]
},
"customerSystem": {
"name": " customer system",
"shortName": "abcd"
},
"transportSolutionsIds": [1]
}' |
Response
Returns a newly created shop object. “requiredSetupComplete” field confirms that your shop is ready to be used.
Update shop
TEST
| |||||||
PRODUCTION
|
...
key | value example | comment |
Authorization | Bearer "SECRET_WS_TOKEN" | See authentication on how to obtain a token |
Curl request example
...
Response
Examples
...
title | Example response 1 |
---|
...
Request Body
Name | Mandatory | Example | Description | ||
---|---|---|---|---|---|
patch |
|
| JsonPatch object describing changes which are supposed to be made to the shop. Please refer to JsonPatch documentation for further information. |
Curl request example
Code Block |
---|
curl --location --request PATCH 'https://staging-ws.di.no/ws/json/shop/v-1/1957' \
--header 'OwnerParty-Id: 1' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer TOKEN' \
--data '[
{
"op":"replace",
"path":"/customerHandler",
"value":"New Customer Handler"
},
{
"op":"add",
"path":"/customerNumbers/1",
"value":{
"shopId":1,
"customerNumber":"12345",
"freightProductId":2
}
}
]' |
Response
Returns updated shop object.
Error handling
API requests that result in errors will return an appropriate HTTP status code to help you identify the type of error. You can use the table below to understand what each code means. og search online with the HTTP status code. The HTTP error keys used are based on the standard, and therefore available online (Tips to search “HTTP code XXX”)
...