API Model Reference
Overview of all Paloma Shop API models.
Catalog
AttributeGroup
Attribute group. Attributes referencing the same group are intended to be displayed together.
Property | Type | Description |
---|---|---|
name
|
string
|
Min: 1
Unique group name |
label
|
string
|
Localized label |
position
|
integer[int32]
|
Position of the group. When displaying several attribute groups, they are intended to be sorted by this position. |
AttributeType
Attribute type. Every attribute has a type which defines what the attribute describes. Examples: 'country_of_origin', 'preparation_instructions', 'nutrient_energy_100g_kcal'.
Property | Type | Description |
---|---|---|
name
|
string
|
Min: 1
Unique attribute type name |
locale
|
string
|
Locale code |
channel
|
string
|
Min: 1
|
catalog
|
string
|
Min: 1
|
group
|
AttributeGroup
|
Related attribute types are grouped together |
position
|
integer[int32]
|
Position of the attribute type within its group |
dataType
|
string
|
Values: text, text_multiline, html, integer, decimal, date, datetime, bool, currency, choice, code
|
label
|
string
|
Localized label |
values
|
array[AttributeTypeValue]
|
If the attribute type has dataType=choice, all available choice values are listed here |
measurement
|
string
|
Values: none, weight, volume
|
multiple
|
boolean
|
Whether attributes of this type can have multiple values |
display
|
string
|
Values: none, product
The display target of this attribute. 'None' means not intended to be displayed in a UI. 'product' means to be displayed on a product detail view. |
created
|
string[date-time]
|
When the attribute type was created |
modified
|
string[date-time]
|
When the attribute type was last updated |
{
"name": "description",
"locale": "de_CH",
"channel": "astina",
"catalog": "CH",
"group": {
"name": "default",
"label": "Standard"
},
"position": 12,
"dataType": "html",
"label": "Beschreibung",
"measurement": "none",
"multiple": false,
"created": "2020-03-11T13:17:42.216Z",
"modified": "2020-03-11T13:17:42.216Z"
}
AttributeTypeValue
Choice value for attribute types with dataType=choice
Property | Type | Description |
---|---|---|
name
|
string
|
Min: 1
Unique name within the attribute type |
label
|
string
|
Localized label |
position
|
integer[int32]
|
Position of this value within the attribute type. |
Brand
Product brand
Property | Type | Description |
---|---|---|
code
|
string
|
Brand code |
locale
|
string[locale]
|
Locale code |
name
|
string
|
Brand name |
slug
|
string
|
Slugified brand name, might be used for URL path segments. |
{
"code": "adidas",
"catalog": "B2C_CH",
"locale": "en",
"name": "Adidas",
"slug": "adidas"
}
BrandsPage
A collection of Brand
items.
Property | Type | Description |
---|---|---|
content
|
array[Brand]
|
List of |
size
|
integer[int32]
|
Page size |
number
|
integer[int32]
|
Page number, starting from 0 |
totalElements
|
integer[int64]
|
Total number of results for the search |
totalPages
|
integer[int32]
|
Total amount of pages |
last
|
boolean
|
|
first
|
boolean
|
|
sort
|
string
|
Sort property |
order
|
string
|
Values: asc, desc
Sort order |
CatalogPrice
Price of an item (article, ordering unit)
Property | Type | Description |
---|---|---|
currency
|
string
|
Min: 1
Formatted currency, usually the currency code. |
unit
|
string
|
Min: 1
Localized name of the unit this price is valid for. |
unitCode
|
string
|
Code of the unit this price is valid for. |
unitDecimals
|
integer[int32]
|
The number of decimals in which the unit can be defined. E.g. 2 means values like 1.25 or 2.95 are possible, 0 means integer values like 1 or 2. |
unitPrice
|
string
|
Min: 1
The price of one unit. Check |
originalUnitPrice
|
string
|
The price before possible discounts. This price will be missing, if it's the same as |
unitMsrp
|
string
|
The manufacturer's suggested retail price. This price will be missing, if it's the same as |
tax
|
string
|
The formatted tax rate. |
taxIncluded
|
boolean
|
Whether the |
individual
|
boolean
|
Whether this price is specific for the given price group. |
scaling
|
array[PriceScaling]
|
For scaled prices, this lists the scaling increments. If this is not a scaled price, the property will be missing. |
{
"currency": "CHF",
"unit": "St\u00fcck",
"unitPrice": "16.68",
"tax": "7.7 %",
"taxIncluded": true
}
CatalogPriceWithQuantity
Price of an item (article, ordering unit) for a specific quantity.
Property | Type | Description |
---|---|---|
currency
|
string
|
Min: 1
Formatted currency, usually the currency code. |
unit
|
string
|
Min: 1
Localized name of the unit this price is valid for. |
unitCode
|
string
|
Code of the unit this price is valid for. |
unitDecimals
|
integer[int32]
|
The number of decimals in which the unit can be defined. E.g. 2 means values like 1.25 or 2.95 are possible, 0 means integer values like 1 or 2. |
unitPrice
|
string
|
Min: 1
The price of one unit. Check |
quantity
|
number
|
The quantity for this price. |
price
|
string
|
Min: 1
The price for the given quantity. Check |
originalUnitPrice
|
string
|
The price before possible discounts. This price will be missing, if it's the same as |
unitMsrp
|
string
|
The manufacturer's suggested retail price. This price will be missing, if it's the same as |
tax
|
string
|
The formatted tax rate. |
taxIncluded
|
boolean
|
Whether the |
individual
|
boolean
|
Whether this price is specific for the given price group. |
{
"currency": "CHF",
"unit": "St\u00fcck",
"unitCode": "piece",
"unitPrice": "16.68",
"quantity": "2",
"price": "33.36",
"tax": "7.7 %",
"taxIncluded": true
}
Category
A product category. Categories are organised in a hierarchical fashion.
Property | Type | Description |
---|---|---|
code
|
string
|
Min: 1
Unique category identifier within a collection |
channel
|
string
|
Min: 1
|
catalog
|
string
|
Min: 1
|
locale
|
string[locale]
|
Locale code |
name
|
string
|
Min: 1
|
slug
|
string
|
SEO friendly name to be used for category URLs (together with the category code) |
pageTitle
|
string
|
When displaying a category view, this title can be used as the page title ( |
metaDescription
|
string
|
When displaying a category view, this title can be used as for the meta description. |
h1Title
|
string
|
When displaying a category view, this title can be used as for H1-heading. |
footerText
|
string
|
When displaying a category view, this text can be used as a footer text. |
aliases
|
string
|
Aliases for this category. This can be used to improve search results. |
parent
|
string
|
Parent category code |
position
|
integer[int32]
|
Position within the parent category |
level
|
integer[int32]
|
Level inside the category tree |
image
|
ProductImage
|
Category image |
status
|
string
|
Values: active, unlisted, inactive
Category status. By default, the catalog API will return only categories with status |
ancestors
|
array[ProductCategoryReference]
|
A list of category references for all the category's ancestors. This is useful when a breadcrumb-style navigation needs to be rendered. |
subCategories
|
array[Category]
|
A list of this category's child categories. May be missing depending on how the category was fetched. |
filterAggregates
|
array[FilterAggregate]
|
A list of filter aggregates. These aggregates contain information for displaying search filters for this category. |
created
|
string[date-time]
|
When the category was created |
modified
|
string[date-time]
|
When the category was last updated |
{
"code": "123",
"channel": "astina",
"catalog": "ch",
"locale": "de",
"name": "Ladies",
"slug": "ladies",
"parent": "12",
"position": 0,
"level": 1,
"subCategories": [
{
"code": "234",
"name": "Shoes",
"slug": "shoes",
"level": 2
}
],
"filterAggregates": [
{
"property": "variants.options.color.value",
"label": "Color",
"values": [
{
"value": "blue",
"count": 3
},
{
"value": "green",
"count": 4
},
{
"value": "yellow",
"count": 1
}
]
},
{
"property": "variants.options.size.value",
"label": "Size",
"values": [
{
"value": "41",
"count": 12
},
{
"value": "42",
"count": 2
},
{
"value": "43",
"count": 4
},
{
"value": "43 1\/2",
"count": 20
}
]
}
]
}
CategorySuggestion
Returned by the 'Search suggestions' API operation.
Property | Type | Description |
---|---|---|
code
|
string
|
Category code |
name
|
string
|
Localized category name |
slug
|
string
|
Category slug |
Channel
A channel is a virtual store front. Each channel can have its own catalog (products and categories), prices, languages, shipping methods and payment settings.
Property | Type | Description |
---|---|---|
name
|
string
|
Channel name |
catalog
|
string
|
The product catalog assigned to this channel. The same catalog can be assigned to multiple channels. |
currencies
|
array[string]
|
Supported currencies by this channel (ISO 4217) |
locales
|
array[string]
|
Supported locales by this channel |
origins
|
array[string]
|
Known order origins by this channel |
[
{
"name": "b2c_ch",
"catalog": "b2c_default",
"currencies": [
"CHF"
],
"locales": [
"de_CH",
"en_CH",
"fr_CH"
]
},
{
"name": "b2c_de",
"catalog": "b2c_default",
"currencies": [
"EUR"
],
"locales": [
"de_DE",
"en_DE"
]
},
{
"name": "b2b_ch",
"catalog": "b2b_ch",
"currencies": [
"CHF",
"EUR"
],
"locales": [
"de_CH",
"en_CH",
"fr_CH"
]
}
]
ExportProductsRequest
Request body for the 'Export one or multiple sheets with products' API operation.
Property | Type | Description |
---|---|---|
sheets
|
array[ExportProductsRequestSheet]
|
Information about the export sheets. |
pricingContext
|
PricingContext
|
Pricing context to be used for the product search |
{
"sheets": [
{
"name": "name",
"items": [
{
"quantity": 0,
"sku": "sku"
},
{
"quantity": 0,
"sku": "sku"
}
]
},
{
"name": "name",
"items": [
{
"quantity": 0,
"sku": "sku"
},
{
"quantity": 0,
"sku": "sku"
}
]
}
],
"pricingContext": {
"date": "date",
"currency": "currency",
"priceGroups": [
"priceGroups",
"priceGroups"
]
}
}
ExportProductsRequestSheet
Configuration for a product export sheet.
Property | Type | Description |
---|---|---|
name
|
string
|
Export sheet name |
items
|
array[ExportProductsRequestSheetItem]
|
Configuration for the product export sheet items |
{
"name": "name",
"items": [
{
"quantity": 0,
"sku": "sku"
},
{
"quantity": 0,
"sku": "sku"
}
]
}
ExportProductsRequestSheetItem
Configuration for an item to be exported.
Property | Type | Description |
---|---|---|
sku
|
string
|
SKU of the export item |
quantity
|
number
|
Quantity of the export item |
unit
|
string
|
Unit of the export item |
portions
|
integer[int32]
|
Number of portions for the export item |
{
"quantity": 0,
"sku": "sku"
}
ExportResponse
Response body of the 'Check export process status' API operation.
Property | Type | Description |
---|---|---|
id
|
string
|
Process ID |
created
|
string[date-time]
|
When the export request was created |
modified
|
string[date-time]
|
When the export was last updated |
status
|
string
|
Values: waiting, started, finished, failed
|
downloadLink
|
string
|
When the export is finished, this property contains the URL where the export file can be downloaded from |
filename
|
string
|
Name of the created export file |
{
"downloadLink": "downloadLink",
"created": "2000-01-23T04:56:07.000+00:00",
"modified": "2000-01-23T04:56:07.000+00:00",
"id": "id",
"status": "waiting",
"filename": "File.xlsx"
}
ExportSearchRequest
Request body for the 'Export a product search' API operation.
Property | Type | Description |
---|---|---|
category
|
string
|
Category code |
query
|
string
|
Search keywords |
filters
|
array[ExportSearchRequestFilter]
|
Search filters; will be applied using AND operations. |
sort
|
string
|
Accepts 'name', 'price', 'position', 'relevance' as well as any
attribute in the form |
order
|
string
|
Values: asc, desc
Sort order |
context
|
PricingContext
|
Pricing context to be used for the product search. |
catalog
|
string
|
Catalog code |
params
|
object
|
Generic params for the export search request. |
{
"query": "query",
"context": {
"date": "date",
"currency": "currency",
"priceGroups": [
"priceGroups",
"priceGroups"
]
},
"filters": [
{
"values": [
"values",
"values"
],
"lessThan": "lessThan",
"property": "property",
"match": "any",
"greaterThan": "greaterThan"
},
{
"values": [
"values",
"values"
],
"lessThan": "lessThan",
"property": "property",
"match": "any",
"greaterThan": "greaterThan"
}
],
"sort": "sort",
"category": "category",
"order": "asc"
}
ExportSearchRequestFilter
Filter for the product export search request.
Property | Type | Description |
---|---|---|
property
|
string
|
Full property path (e.g. attributes.material.value, master.pricing.grossPrice, variants.options.size.value) |
values
|
array[string]
|
Multiple filter values are applied using OR. |
greaterThan
|
string
|
Greater-than or equal to. Only applicable for numeric values |
lessThan
|
string
|
Less-than or equal to. Only applicable for numeric values |
match
|
string
|
Default: any
Values: any, all, none
Determines how the filter values of this filter are to be applied.
|
{
"values": [
"values",
"values"
],
"lessThan": "lessThan",
"property": "property",
"match": "any",
"greaterThan": "greaterThan"
}
FieldChoice
Choice for a product parameter field of type choice
.
Property | Type | Description |
---|---|---|
value
|
string
|
Choice value |
label
|
string
|
Localized choice value |
disabled
|
boolean
|
If |
FieldOptions
Options for a product parameter form field.
Property | Type | Description |
---|---|---|
required
|
boolean
|
Whether this is a mandatory parameter. |
acceptedFiles
|
array[string]
|
For parameters of type |
maxLength
|
integer
|
For text input: the maximum number of characters. |
minLength
|
integer
|
For text input: the minimum number of characters. |
pattern
|
string
|
For text input: a regular expression which is matched against the parameter input. |
max
|
string
|
For numerical input: the maximum value. |
min
|
string
|
For numerical input: the minimum value. |
choices
|
array[FieldChoice]
|
For parameters of type |
FilterAggregate
Aggregated data for a specific product data property. Depending of the property's type, a list of values (and their respective occurrence count) or min/max values are available.
Property | Type | Description |
---|---|---|
property
|
string
|
Full property path (e.g. attributes.material.value, master.pricing.grossPriceFormatted, variants.options.size.value) |
name
|
string
|
Internal name for the filter |
label
|
string
|
Localized filter label |
type
|
string
|
Values: text, bool, number, currency
Filter type: text, boolean, number or currency |
values
|
array[FilterAggregateValue]
|
|
min
|
number
|
Minimum value (for numeric properties) |
max
|
number
|
Maximum value (for numeric properties) |
{
"property": "variants.options.color.value",
"label": "Color",
"values": [
{
"value": "blue",
"count": 3,
"total": 27
},
{
"value": "green",
"count": 4,
"total": 31
},
{
"value": "yellow",
"count": 1,
"total": 15
}
]
}
FilterAggregateValue
Aggregated data for one filter value.
Property | Type | Description |
---|---|---|
value
|
string
|
Value for which the aggregation was calculated. |
valueCode
|
string
|
If applicable, this field contains the 'machine-readable' value for this aggregate. |
count
|
number
|
Number of occurrences of this value for the current search. |
total
|
number
|
Total overall occurrence of this value. Those totals are only calculated when requested ( |
{
"value": "blue",
"count": 3,
"total": 29
}
LifecycleInfo
Information about a product's lifecycle.
Property | Type | Description |
---|---|---|
phase
|
string
|
Values: active, phase_out, end_of_life
The current lifecycle phase of the product. |
nextPhase
|
string
|
Values: active, phase_out, end_of_life
The next lifecycle phase of the product. |
startOfNextPhase
|
string[date-time]
|
Start of the next lifecycle phase of the product. |
OrderingUnit
An ordering unit is a unit of a product variant which can be purchased.
Property | Type | Description |
---|---|---|
unit
|
string
|
Min: 1
Localized name of the unit of this ordering unit. |
unitCode
|
string
|
Code of the unit of this ordering unit. |
unitDecimals
|
integer[int32]
|
The number of decimals in which the unit can be defined. E.g. 2 means values like 1.25 or 2.95 are possible, 0 means integer values like 1 or 2. |
portioning
|
string
|
Values: none, optional, required
Defines whether and how the product variant can be split into portions using this ordering unit.
|
portioningUnit
|
string
|
Localized unit name the portion quantity should be entered with. |
portioningUnitCode
|
string
|
Code of the unit the portion quantity should be entered with. |
portioningNumerator
|
integer[int32]
|
Numerator to be applied to convert from the portioning unit into the ordering unit (e.g. 1000 if unit is kilogram and portioning unit is gram). |
portioningDenominator
|
integer[int32]
|
Denominator to be applied to convert from the portioning unit into the ordering unit (e.g. 100 if unit is milliliter and portioning unit is deciliter). |
minimumQuantity
|
string[decimal-string]
|
The minimum quantity that can be ordered using this ordering unit. |
quantityIncrement
|
string[decimal-string]
|
When using this ordering unit, the line quantity must be divisible by this amount. |
price
|
CatalogPrice
|
The price information valid for this ordering unit. |
{
"unit": "MP",
"unitDecimals": 2,
"portioning": "none",
"minimumQuantity": "0.05",
"price": {
"currency": "CHF",
"unit": "MP",
"unitPrice": "16.68",
"tax": "7.7 %",
"taxIncluded": true
}
}
ParameterField
Products with parameters define a list of parameter field configurations.
Property | Type | Description |
---|---|---|
name
|
string
|
Parameter name |
label
|
string
|
Localized parameter name |
type
|
string
|
Values: text, textarea, html, number, currency, choice, bool, date, datetime, time, email, url, file, section, country, password
Parameter form type |
formOptions
|
FieldOptions
|
Form field options for the parameter field |
position
|
integer
|
Position of the parameter within all the product's parameters. |
ParameterFields
Map of product parameter fields with the parameter names as map keys.
{
"instructions": {
"name": "instructions",
"label": "Instructions",
"type": "textarea",
"formOptions": {
"required": true,
"maxLength": 500
},
"position": 1
}
}
PriceScaling
Information about price scaling
Property | Type | Description |
---|---|---|
scaleQuantity
|
integer[int32]
|
Min: 1
Quantity from which the price is applied. |
unitPrice
|
string
|
Min: 1
Price of one unit |
originalUnitPrice
|
string
|
Original price of one unit |
unitMsrp
|
string
|
MSRP of one unit |
Pricing
Deprecated: Use CatalogPrice
instead.
Property | Type | Description |
---|---|---|
_deprecated
|
string
|
Deprecated: Use |
currency
|
string
|
Currency code |
grossPrice
|
number
|
This is the price the customer has to pay. |
netPrice
|
number
|
Net price (before taxes) |
originalGrossPrice
|
number
|
If the current gross price is reduced, this property holds the original price. |
grossPriceFormatted
|
string
|
Formatted gross price. |
netPriceFormatted
|
string
|
Formatted net price. |
originalGrossPriceFormatted
|
string
|
Formatted original price. |
taxes
|
TaxInfo
|
{
"currency": "CHF",
"grossPrice": 10.8,
"netPrice": 10,
"grossPriceFormatted": "10.80",
"netPriceFormatted": "10.00",
"taxes": {
"vat": {
"rate": 0.08,
"name": "MWST",
"amount": 0.8,
"rateFormatted": "8 %",
"amountFormatted": "0.80"
}
}
}
PricingContext
Parameter object which is used in many API operations what do product search, price evaluation and/or availability checks.
Property | Type | Description |
---|---|---|
currency
|
string
|
The currency to get product data. |
date
|
string
|
An optional date/time to get product data for a specific date (e.g. to get future prices). This date is used as |
priceDate
|
string
|
An optional date/time to get prices for a specific date (e.g. to get future prices). Can be either in date-time (RFC 3339, e.g. '2020-07-21T17:32:28Z') or date format (e.g. '2020-07-21'). If only a date is provided, 12:00 UTC is assumed as time. |
availabilityDate
|
string
|
An optional date/time to get product data with availability evaluated for a specific date (e.g. to get future prices). Can be either in date-time (RFC 3339, e.g. '2020-07-21T17:32:28Z') or date format (e.g. '2020-07-21'). If only a date is provided, 12:00 UTC is assumed as time. |
visibilityDate
|
string
|
An optional date/time to get product data with visibility evaluated for a specific date (e.g. to get future prices). Can be either in date-time (RFC 3339, e.g. '2020-07-21T17:32:28Z') or date format (e.g. '2020-07-21'). If only a date is provided, 12:00 UTC is assumed as time. |
priceGroups
|
array[string]
|
Optional pricing groups active for the customer. Pricing groups may affect the catalog's price evaluation. These should be taken from the logged-in customer's attribute with the same name. |
preferredUnit
|
string
|
Optional preferred price unit. The price unit will affect to price evaluation. If no price with the preferred price unit is available, or if the preferred price unit is not set, the articles default price unit will be returned. |
{
"currency": "CH",
"date": "2018-03-01T23:00:00.000Z",
"priceGroups": [
"GroupA",
"GroupB"
]
}
Product
Contains product attributes, images, assets as well as all product variants with their respective prices, stocks and attributes.
Property | Type | Description |
---|---|---|
itemNumber
|
string
|
Min: 1
Product item number (unique within the channel) |
channel
|
string
|
Min: 1
The channel of the product |
catalog
|
string
|
Min: 1
The catalog of the product |
locale
|
string[locale]
|
Locale of the localized data within this product (e.g. name, description, prices, attribute values) |
name
|
string
|
Min: 1
Localized product name |
slug
|
string
|
SEO friendly name to be used for product URLs (together with the product item number) |
description
|
string
|
Localized product description |
shortDescription
|
string
|
Short, localized product description |
badge
|
string
|
Deprecated: use attributes for product badges |
status
|
string
|
Default: active
Values: active, inactive
|
master
|
ProductVariant
|
The master variant. This variant can also be listed in the variants list and is referenced here for convenience. If for instance the images of the product is needed, product.master.images can be used. |
options
|
ProductOptionsSummary
|
Summary of options of all the variants. E.g. all colors and sizes. |
variants
|
array[ProductVariant]
|
Min: 1
Max: 100
Available variants (or articles) for this product. Note that this property can be |
categories
|
array[ProductCategory]
|
Min: 1
Max: 100
Product categories |
lifecycleInfo
|
LifecycleInfo
|
Lifecycle information of the product. E.g. used for end-of-life products |
associations
|
ProductAssociations
|
Different types of associated product numbers |
created
|
string[date-time]
|
|
modified
|
string[date-time]
|
{
"itemNumber": "10704-820",
"channel": "astina",
"catalog": "ch",
"locale": "de",
"name": "Absatzsandale",
"slug": "absatzsandale",
"description": "Verspielte Absatzsandale aus feinem Lackleder. Das zarte Riemchenspiel schmeichelt der Silhouette Ihres Fusses und setzt ihn stilsicher in Szene. Zudem schenkt er Ihnen endlos lange Beine und funktioniert edel zum Cocktail oder l\u00e4ssig zum Denim Look.",
"shortDescription": "Verspielte Absatzsandale aus feinem Lackleder.",
"badge": "sale",
"master": {
"sku": "10704-820-1",
"name": "Absatzsandale Dunkelblau",
"taxCategory": "default",
"price": {
"currency": "CHF",
"unit": "piece",
"unitPrice": "100.00",
"unitDecimals": 0,
"tax": "8 %",
"taxIncluded": true
},
"options": [
{
"option": "size",
"label": "Gr\u00f6sse",
"value": "36"
},
{
"option": "color",
"label": "Farbe",
"value": "dunkelblau"
}
],
"images": [
{
"name": "10704_820a.jpg",
"sources": [
{
"size": "large",
"url": "https:\/\/paloma.one\/images\/examples\/10704_820a.jpg"
},
{
"size": "medium",
"url": "https:\/\/paloma.one\/images\/examples\/10704_820a.jpg"
},
{
"size": "small",
"url": "https:\/\/paloma.one\/images\/examples\/10704_820a_overview.jpg"
}
]
},
{
"name": "10704_820c.jpg",
"sources": [
{
"size": "large",
"url": "https:\/\/paloma.one\/images\/examples\/10704_820c.jpg"
},
{
"size": "medium",
"url": "https:\/\/paloma.one\/images\/examples\/10704_820c.jpg"
},
{
"size": "small",
"url": "https:\/\/paloma.one\/images\/examples\/10704_820c.jpg"
}
]
}
],
"availability": {
"available": true,
"stocks": [
{
"inventory": "chzh01",
"stock": 12
}
],
"availableFrom": "2015-12-02"
}
},
"options": {
"color": {
"option": "color",
"label": "Farbe",
"values": [
{
"value": "dunkelblau",
"label": "Dunkelblau",
"image": {
"name": "10704_820a.jpg",
"sources": [
{
"size": "large",
"url": "https:\/\/paloma.one\/images\/examples\/10704_820a.jpg"
},
{
"size": "medium",
"url": "https:\/\/paloma.one\/images\/examples\/10704_820a.jpg"
},
{
"size": "small",
"url": "https:\/\/paloma.one\/images\/examples\/10704_820a_overview.jpg"
}
]
},
"skus": [
"10704-820-1",
"10704-820-2",
"10704-820-3"
]
},
{
"value": "dunkelgr\u00fcn",
"label": "Dunkelgr\u00fcn",
"image": {
"name": "10704_820a.jpg",
"sources": [
{
"size": "large",
"url": "https:\/\/paloma.one\/images\/examples\/10704_820a.jpg"
},
{
"size": "medium",
"url": "https:\/\/paloma.one\/images\/examples\/10704_820a.jpg"
},
{
"size": "small",
"url": "https:\/\/paloma.one\/images\/examples\/10704_820a_overview.jpg"
}
]
},
"skus": [
"10704-830-1",
"10704-830-2",
"10704-830-3"
]
}
]
},
"size": {
"option": "size",
"label": "Gr\u00f6sse",
"values": []
}
},
"variants": [
{
"sku": "10704-820-1",
"name": "Absatzsandale Dunkelblau",
"taxCategory": "default",
"price": {
"currency": "CHF",
"unit": "piece",
"unitPrice": "99.00",
"unitDecimals": 0,
"tax": "8 %",
"taxIncluded": true
},
"options": [
{
"option": "size",
"label": "Gr\u00f6sse",
"value": "36"
},
{
"option": "color",
"label": "Farbe",
"value": "dunkelblau"
}
],
"assets": [
{
"name": "432_567.jpg",
"source": "http:\/\/example.org\/files\/image_main_jpg_cmyk.jpg",
"title": "Hauptbild (JPG CMYK)",
"set": "image_main_jpg_cmyk",
"size": 69870
}
],
"images": [
{
"name": "10704_820a.jpg",
"sources": [
{
"size": "large",
"url": "https:\/\/paloma.one\/images\/examples\/10704_820a.jpg"
},
{
"size": "medium",
"url": "https:\/\/paloma.one\/images\/examples\/10704_820a.jpg"
},
{
"size": "small",
"url": "https:\/\/paloma.one\/images\/examples\/10704_820a_overview.jpg"
}
]
},
{
"name": "10704_820c.jpg",
"sources": [
{
"size": "large",
"url": "https:\/\/paloma.one\/images\/examples\/10704_820c.jpg"
},
{
"size": "medium",
"url": "https:\/\/paloma.one\/images\/examples\/10704_820c.jpg"
},
{
"size": "small",
"url": "https:\/\/paloma.one\/images\/examples\/10704_820c.jpg"
}
]
}
],
"availability": {
"available": true,
"stocks": [
{
"inventory": "chzh01",
"stock": 12
},
{
"inventory": "chzh02",
"stock": 4
}
]
}
},
{
"sku": "10704-820-2",
"name": "Absatzsandale Dunkelgr\u00fcn",
"taxCategory": "default",
"price": {
"currency": "CHF",
"unit": "piece",
"unitPrice": "100.00",
"unitDecimals": 0,
"tax": "8 %",
"taxIncluded": true
},
"options": [
{
"option": "size",
"label": "Gr\u00f6sse",
"value": "36"
},
{
"option": "color",
"label": "Farbe",
"value": "dunkelgr\u00fcn"
}
],
"assets": [
{
"name": "432_567.jpg",
"source": "http:\/\/example.org\/files\/image_main_jpg_cmyk.jpg",
"title": "Hauptbild (JPG CMYK)",
"set": "image_main_jpg_cmyk",
"size": 69870
}
],
"images": [
{
"name": "10704_820a.jpg",
"sources": [
{
"size": "large",
"url": "https:\/\/paloma.one\/images\/examples\/10704_820a.jpg"
},
{
"size": "medium",
"url": "https:\/\/paloma.one\/images\/examples\/10704_820a.jpg"
},
{
"size": "small",
"url": "https:\/\/paloma.one\/images\/examples\/10704_820a_overview.jpg"
}
]
},
{
"name": "10704_820c.jpg",
"sources": [
{
"size": "large",
"url": "https:\/\/paloma.one\/images\/examples\/10704_820c.jpg"
},
{
"size": "medium",
"url": "https:\/\/paloma.one\/images\/examples\/10704_820c.jpg"
},
{
"size": "small",
"url": "https:\/\/paloma.one\/images\/examples\/10704_820c.jpg"
}
]
}
],
"availability": {
"available": false,
"stocks": [
{
"inventory": "chzh01",
"stock": 0
},
{
"inventory": "chzh02",
"stock": 0
}
]
}
}
],
"categories": [
{
"code": "100",
"name": "Shoes",
"slug": "shoes",
"level": 0
},
{
"code": "101",
"name": "Hiking Boots",
"slug": "shoes\/hiking-boots",
"level": 1
}
]
}
ProductAsset
A product asset like a PDF-manual or print-ready product images.
Property | Type | Description |
---|---|---|
name
|
string
|
Asset file name |
source
|
string
|
URL of the asset |
title
|
string
|
Localized asset title |
caption
|
string
|
Localized asset caption |
set
|
string
|
Assets may be visually grouped by their set |
size
|
integer
|
Asset file size in bytes |
{
"name": "432_567.jpg",
"source": "http:\/\/example.org\/files\/image_main_jpg_cmyk.jpg",
"title": "Hauptbild (JPG CMYK)",
"set": "image_main_jpg_cmyk",
"size": 69870
}
ProductAssociations
Map of product associations. The map key contains the association type, the map values are lists of product item numbers.
{
"recommended": [
"9781502878618",
"3940562348948"
],
"similar": [
"0846502832118"
]
}
ProductAttribute
Attributes consist of a type, label and one or multiple values. The type can be used as an identifier in case some logic needs to be applied for certain attributes. Attributes can also be used to filter product search results.
Property | Type | Description |
---|---|---|
type
|
string
|
Attribute type |
dataType
|
string
|
Values: text, text_multiline, html, integer, decimal, date, datetime, bool, currency, choice, code
Data type of this attribute |
label
|
string
|
Localized attribute label |
value
|
string
|
Localized attribute value. If the attribute has multiple values, those are listed here as well (e.g. "a, b, c") |
values
|
array[string]
|
|
valueCode
|
string
|
Optional: language-independent identifier for this attribute value |
valueCodes
|
array[string]
|
|
group
|
AttributeGroup
|
|
position
|
integer[int32]
|
The attribute's position within its group |
display
|
string
|
Values: product, none
Whether the attribute should be displayed on the product detail page |
{
"label": "ISBN Number",
"type": "isbn_number",
"value": "9781502878618",
"values": [
"9781502878618"
],
"display": "product"
}
ProductAvailability
Information about the availability of a product variant.
Property | Type | Description |
---|---|---|
available
|
boolean
|
Available for purchase |
unitCode
|
string
|
Unit code |
totalStock
|
number
|
Total number of available products for |
availableStock
|
number
|
Number of available products minus reservations for |
stocks
|
array[ProductStock]
|
List of stock information items. |
availableFrom
|
string[date-time]
|
Release date |
availableTo
|
string[date-time]
|
The product will no longer available after this timestamp |
interruptions
|
array[ProductAvailabilityInterruption]
|
List of possible supply interruptions. |
nextPossibleDeliveryDate
|
DeliveryDate
|
Describes the next possible date this item may be delivered at |
inventoryMode
|
string
|
Values: managed, non_managed
Inventory mode:
|
unavailabilityReasons
|
array[string]
|
If the above |
{
"available": true,
"stocks": [
{
"inventory": "chzh01",
"stock": 12
}
],
"availableFrom": "2015-12-02"
}
ProductAvailabilityInterruption
Interruption of an item's availability.
Property | Type | Description |
---|---|---|
interruptedFrom
|
string[date-time]
|
Start of the interruption |
interruptedTo
|
string[date-time]
|
End of the interruption |
ProductCategory
Category information for a product. Contains only basic data about the category (e.g. to render a link to the category) as well as the product's position within the category.
Property | Type | Description |
---|---|---|
code
|
string
|
Category code |
name
|
string
|
Category name |
slug
|
string
|
Category slug |
level
|
integer[int32]
|
Level in the category tree |
productPosition
|
integer[int32]
|
The position of the product within this category |
categoryPosition
|
integer[int32]
|
The position of the category within its parent category |
ProductCategoryReference
Reference to a category. Contains only basic data about the category (e.g. to render a link to the category).
Property | Type | Description |
---|---|---|
code
|
string
|
Category code |
name
|
string
|
Category name |
slug
|
string
|
Category slug |
level
|
integer[int32]
|
Level in the category tree |
ProductImage
A product or article image, usually optimized for displaying in a website or app.
Property | Type | Description |
---|---|---|
name
|
string
|
Min: 1
Image name |
title
|
string
|
Localized image name |
caption
|
string
|
Localized image caption |
set
|
string
|
Images sharing the same set are intended to be shown together. |
sources
|
array[ProductImageSource]
|
List of sources for this image. |
{
"name": "123_123.jpg",
"sources": [
{
"size": "large",
"url": "http:\/\/example.org\/images\/example-large.jpg"
},
{
"size": "medium",
"url": "http:\/\/example.org\/images\/example-medium.jpg"
},
{
"size": "small",
"url": "http:\/\/example.org\/images\/example-small.jpg"
}
]
}
ProductImageSource
A source for a product image (specific size).
Property | Type | Description |
---|---|---|
size
|
string
|
Size name of the image source. Available sizes can be configured individually for each project. Default sizes are: 'small' (400 x 400), 'medium' (800 x 800), 'large' (1600 x 1600), 'full' (2000 x 2000). Note that resized images will keep their aspect ratio, so those sizes represent maximum width or height. |
url
|
string
|
Absolute URL for the resized image. |
{
"size": "large",
"url": "http:\/\/example.org\/images\/example.jpg"
}
ProductInfo
Contains basic product information.
Property | Type | Description |
---|---|---|
itemNumber
|
string
|
Min: 1
Product item number (unique within the channel) |
channel
|
string
|
Min: 1
The channel of the product |
catalog
|
string
|
Min: 1
The catalog of the product |
locale
|
string[locale]
|
Locale code |
name
|
string
|
Min: 1
Product name |
slug
|
string
|
SEO friendly name to be used for product URLs (together with the product item number) |
description
|
string
|
Product description |
shortDescription
|
string
|
Short product description |
categories
|
array[ProductCategory]
|
Min: 1
Max: 100
Product categories |
{
"itemNumber": "10704-820",
"channel": "astina",
"catalog": "ch",
"locale": "de",
"name": "Absatzsandale",
"slug": "absatzsandale",
"description": "Verspielte Absatzsandale aus feinem Lackleder. Das zarte Riemchenspiel schmeichelt der Silhouette Ihres Fusses und setzt ihn stilsicher in Szene. Zudem schenkt er Ihnen endlos lange Beine und funktioniert edel zum Cocktail oder l\u00e4ssig zum Denim Look.",
"shortDescription": "Verspielte Absatzsandale aus feinem Lackleder.",
"categories": [
{
"code": "100",
"name": "Shoes",
"slug": "shoes",
"level": 0
},
{
"code": "101",
"name": "Hiking Boots",
"slug": "shoes\/hiking-boots",
"level": 1
}
]
}
ProductOption
When a product is using options, each variant has a list of options describing the concrete value for each option for this variant.
Property | Type | Description |
---|---|---|
option
|
string
|
The option type |
label
|
string
|
Localized option value |
value
|
string
|
Option value |
{
"option": "color",
"label": "Schwarz",
"value": "black"
}
ProductOptions
Map of product options, the map key containing the option type.
{
"size": {
"option": "color",
"label": "Black",
"value": "001"
}
}
ProductOptionsSummary
Summary of options of all the variants. E.g. all colors and sizes.
Property | Type | Description |
---|---|---|
key
|
string
|
|
value
|
ProductOptionsSummaryOption
|
{
"color": {
"option": "color",
"label": "Farbe",
"values": [
{
"value": "dunkelblau",
"label": "Dunkelblau",
"image": {
"name": "10704_820a.jpg",
"sources": [
{
"size": "large",
"url": "https:\/\/paloma.one\/images\/examples\/10704_820a.jpg"
},
{
"size": "medium",
"url": "https:\/\/paloma.one\/images\/examples\/10704_820a.jpg"
},
{
"size": "small",
"url": "https:\/\/paloma.one\/images\/examples\/10704_820a_overview.jpg"
}
]
},
"skus": [
"10704-820-1",
"10704-820-2",
"10704-820-3"
]
},
{
"value": "dunkelgr\u00fcn",
"label": "Dunkelgr\u00fcn",
"image": {
"name": "10704_820a.jpg",
"sources": [
{
"size": "large",
"url": "https:\/\/paloma.one\/images\/examples\/10704_820a.jpg"
},
{
"size": "medium",
"url": "https:\/\/paloma.one\/images\/examples\/10704_820a.jpg"
},
{
"size": "small",
"url": "https:\/\/paloma.one\/images\/examples\/10704_820a_overview.jpg"
}
]
},
"skus": [
"10704-830-1",
"10704-830-2",
"10704-830-3"
]
}
]
},
"size": {
"option": "size",
"label": "Gr\u00f6sse",
"values": []
}
}
ProductOptionsSummaryOption
Product option containing all values for this type
Property | Type | Description |
---|---|---|
option
|
string
|
The option type |
label
|
string
|
Localized option name |
values
|
array[ProductOptionsSummaryOptionValue]
|
{
"option": "color",
"label": "Farbe",
"values": [
{
"value": "dunkelblau",
"label": "Dunkelblau",
"image": {
"name": "10704_820a.jpg",
"sources": [
{
"size": "large",
"url": "https:\/\/paloma.one\/images\/examples\/10704_820a.jpg"
},
{
"size": "medium",
"url": "https:\/\/paloma.one\/images\/examples\/10704_820a.jpg"
},
{
"size": "small",
"url": "https:\/\/paloma.one\/images\/examples\/10704_820a_overview.jpg"
}
]
},
"skus": [
"10704-820-1",
"10704-820-2",
"10704-820-3"
]
},
{
"value": "dunkelgr\u00fcn",
"label": "Dunkelgr\u00fcn",
"image": {
"name": "10704_820a.jpg",
"sources": [
{
"size": "large",
"url": "https:\/\/paloma.one\/images\/examples\/10704_820a.jpg"
},
{
"size": "medium",
"url": "https:\/\/paloma.one\/images\/examples\/10704_820a.jpg"
},
{
"size": "small",
"url": "https:\/\/paloma.one\/images\/examples\/10704_820a_overview.jpg"
}
]
},
"skus": [
"10704-830-1",
"10704-830-2",
"10704-830-3"
]
}
]
}
ProductOptionsSummaryOptionValue
Product option value containing a list of SKUs that have this option value
Property | Type | Description |
---|---|---|
value
|
string
|
Option value code |
label
|
string
|
Localized option value |
image
|
ProductImage
|
Product option image |
skus
|
array[string]
|
List of product variant SKUs that have this option value |
{
"value": "dunkelblau",
"label": "Dunkelblau",
"image": {
"name": "10704_820a.jpg",
"sources": [
{
"size": "large",
"url": "https:\/\/paloma.one\/images\/examples\/10704_820a.jpg"
},
{
"size": "medium",
"url": "https:\/\/paloma.one\/images\/examples\/10704_820a.jpg"
},
{
"size": "small",
"url": "https:\/\/paloma.one\/images\/examples\/10704_820a_overview.jpg"
}
]
},
"skus": [
"10704-820-1",
"10704-820-2",
"10704-820-3"
]
}
ProductPage
Page of product items.
Property | Type | Description |
---|---|---|
content
|
array[Product]
|
List of products |
aggregates
|
array[FilterAggregate]
|
A list of filter aggregates. These aggregates contain information for displaying search filters for this product page. |
size
|
integer[int32]
|
Page size |
number
|
integer[int32]
|
Page number, starting from 0 |
totalElements
|
integer[int64]
|
Total number of results for the search |
totalPages
|
integer[int32]
|
Total amount of pages |
last
|
boolean
|
|
first
|
boolean
|
|
sort
|
array[SortOrder]
|
Sort properties |
ProductStock
Product stock information for a specific unit and inventory.
Property | Type | Description |
---|---|---|
inventory
|
string
|
Inventory code |
unitCode
|
string
|
Unit code |
stock
|
integer[int32]
|
Amount of items |
{
"inventory": "chzh01",
"unitCode": "piece",
"stock": 130
}
ProductSuggestion
Returned by the 'Search suggestions' API operation.
Property | Type | Description |
---|---|---|
itemNumber
|
string
|
Product item number |
name
|
string
|
Localized product name |
slug
|
string
|
Product slug |
category
|
CategorySuggestion
|
Category where the product is located (or one of the categories, if there are multiple) |
mainCategory
|
CategorySuggestion
|
Relevant parent of the category. |
image
|
ProductImage
|
Product image |
attributes
|
ProductAttributes
|
Product attributes |
ProductUnit
A product unit contains information about packaging, weight and (informational) price. Not all units can be purchased as such. See OrderingUnit
for purchasable units.
Property | Type | Description |
---|---|---|
unit
|
string
|
Min: 1
Localized name of the unit. |
unitCode
|
string
|
Code of the unit. |
minimumQuantity
|
string[decimal-string]
|
Minimum quantity that can be purchased. |
quantityIncrement
|
string[decimal-string]
|
Increments by which this item can be purchased. If the quantity increment is 3, for example, the item may be purchased with amounts of 3, 6, 9, 12, .etc. |
grossWeightKg
|
string
|
Gross weight in kg, localized and formatted. |
netWeightKg
|
string
|
Net weight in kg, localized and formatted. |
netDrainedWeightKg
|
string
|
Net drained weight in kg, localized and formatted. |
bundleUnit
|
ProductUnitBundleInfo
|
Information about units bundled within this unit (e.g. kg in a can, or boxes on a pallet). |
price
|
CatalogPrice
|
The price information for this unit. |
{
"unit": "Consumer Unit",
"unitCode": "CU",
"grossWeightKg": "0.95",
"netWeightKg": "0.8",
"bundleUnit": {
"unit": "Kg",
"unitCode": "kilogram",
"quantity": "0.8"
},
"price": {
"currency": "CHF",
"unitPrice": "16.68",
"tax": "7.7 %",
"taxIncluded": false
}
}
ProductUnitBundleInfo
Contains information about units bundled within another unit (e.g. kg in a can, or boxes on a pallet).
Property | Type | Description |
---|---|---|
unit
|
string
|
Min: 1
Localized name of the unit. |
unitCode
|
string
|
Code of the unit. |
quantity
|
string
|
How much of this unit is contained within the bundle. Localized and formatted. |
ProductVariant
A specific variant (or article) of a product.
Property | Type | Description |
---|---|---|
sku
|
string
|
Min: 1
Stock keeping unit (unique) |
name
|
string
|
Min: 1
Product variant name |
taxCategory
|
string
|
Min: 1
The tax category |
pricing
|
Pricing
|
Variant pricing. This field is deprecated and |
price
|
CatalogPrice
|
Resolved purchase price based on the given request parameters. |
baseOrderingUnit
|
string
|
Unit code of the base (or 'default') ordering unit. |
baseUnit
|
string
|
Unit code of the base (or 'default') unit. |
orderingUnits
|
array[OrderingUnit]
|
List of all available ordering units for this variant. |
units
|
array[ProductUnit]
|
List of all known units for this variant. |
informationalPrices
|
array[CatalogPrice]
|
Informational prices for this variant. For instance, the variant price might be for a 5 kg bag, and these prices might include one for 100 g. The variant cannot be bought in 100 g increments, but we might be legally required to the hypothetical price. This field is deprecated and |
options
|
ProductOptions
|
Product options for this variant. Only available if the product uses option types. |
attributes
|
ProductAttributes
|
Attributes for this variant. |
parameters
|
ParameterFields
|
Parameters are a way for the customer to specify special wishes when buying a product, such as adding a commentary, selecting a value for a coupon, selecting special ingredients "extra onions", "vegan cheese", configuring a computer or appliance with parts "Base configuration" "Extra 32 TB SSD", or other, similar endeavours. This fields specifies, which parameters this product accepts. A value for each parameter can (must) be sent when purchasing a variant. |
assets
|
array[ProductAsset]
|
List of assets for this variant. |
images
|
array[ProductImage]
|
List of images for this variant. |
availability
|
ProductAvailability
|
Information about this variant's availability. |
[
{
"sku": "10704-820-1",
"name": "Absatzsandale Dunkelblau",
"price": {
"currency": "CHF",
"unitPrice": "99.00",
"originalUnitPrice": "219.00",
"tax": "8 %",
"taxIncluded": true
},
"product": {
"itemNumber": "10704-820",
"channel": "astina",
"catalog": "ch",
"locale": "de",
"name": "Absatzsandale",
"slug": "absatzsandale",
"description": "Verspielte Absatzsandale aus feinem Lackleder. Das zarte Riemchenspiel schmeichelt der Silhouette Ihres Fusses und setzt ihn stilsicher in Szene. Zudem schenkt er Ihnen endlos lange Beine und funktioniert edel zum Cocktail oder l\u00e4ssig zum Denim Look.",
"shortDescription": "Verspielte Absatzsandale aus feinem Lackleder.",
"categories": [
{
"code": "100",
"name": "Shoes",
"slug": "shoes",
"level": 0
},
{
"code": "101",
"name": "Hiking Boots",
"slug": "shoes\/hiking-boots",
"level": 1
}
]
},
"options": [
{
"option": "size",
"label": "Gr\u00f6sse",
"value": "36"
},
{
"option": "color",
"label": "Farbe",
"value": "dunkelblau"
}
],
"images": [
{
"name": "10704_820a.jpg",
"sources": [
{
"size": "large",
"url": "https:\/\/paloma.one\/images\/examples\/10704_820a.jpg"
},
{
"size": "medium",
"url": "https:\/\/paloma.one\/images\/examples\/10704_820a.jpg"
},
{
"size": "small",
"url": "https:\/\/paloma.one\/images\/examples\/10704_820a_overview.jpg"
}
]
},
{
"name": "10704_820c.jpg",
"sources": [
{
"size": "large",
"url": "https:\/\/paloma.one\/images\/examples\/10704_820c.jpg"
},
{
"size": "medium",
"url": "https:\/\/paloma.one\/images\/examples\/10704_820c.jpg"
},
{
"size": "small",
"url": "https:\/\/paloma.one\/images\/examples\/10704_820c.jpg"
}
]
}
],
"availability": {
"available": true,
"stocks": [
{
"inventory": "chzh01",
"stock": 12
},
{
"inventory": "chzh02",
"stock": 4
}
]
}
}
]
ProductVariantPage
A page containing product variants
Property | Type | Description |
---|---|---|
content
|
array[ProductVariantWithProductInfo]
|
List of product variants |
aggregates
|
array[FilterAggregate]
|
A list of filter aggregates. These aggregates contain information for displaying search filters for this product variant page. |
size
|
integer[int32]
|
Page size |
number
|
integer[int32]
|
Page number, starting from 0 |
totalElements
|
integer[int64]
|
Total number of results for the search |
totalPages
|
integer[int32]
|
Total amount of pages |
last
|
boolean
|
|
first
|
boolean
|
|
sort
|
array[SortOrder]
|
Sort properties |
ProductVariantWithProductInfo
A specific variant (or article) of a product.
Property | Type | Description |
---|---|---|
sku
|
string
|
Min: 1
Stock keeping unit (unique) |
name
|
string
|
Min: 1
Product variant name |
taxCategory
|
string
|
Min: 1
The tax category |
price
|
CatalogPrice
|
Resolved purchase price based on the given request parameters. |
orderingUnits
|
array[OrderingUnit]
|
List of all available ordering units for this variant. |
informationalPrices
|
array[CatalogPrice]
|
Informational prices for this variant. For instance, the variant price might be for a 5 kg bag, and these prices might include one for 100 g. The variant cannot be bought in 100 g increments, but we might be legally required to the hypothetical price. |
product
|
ProductInfo
|
Basic product information |
options
|
ProductOptions
|
Product options, if the product uses option types. |
attributes
|
ProductAttributes
|
Product attributes |
assets
|
array[ProductAsset]
|
List of product assets |
images
|
array[ProductImage]
|
List of product images |
availability
|
ProductAvailability
|
Product availability information |
[
{
"sku": "10704-820-1",
"name": "Absatzsandale Dunkelblau",
"price": {
"currency": "CHF",
"unit": "piece",
"unitPrice": "99.00",
"tax": "8 %",
"taxIncluded": true
},
"options": [
{
"option": "size",
"label": "Gr\u00f6sse",
"value": "36"
},
{
"option": "color",
"label": "Farbe",
"value": "dunkelblau"
}
],
"images": [
{
"name": "10704_820a.jpg",
"sources": [
{
"size": "large",
"url": "https:\/\/paloma.one\/images\/examples\/10704_820a.jpg"
},
{
"size": "medium",
"url": "https:\/\/paloma.one\/images\/examples\/10704_820a.jpg"
},
{
"size": "small",
"url": "https:\/\/paloma.one\/images\/examples\/10704_820a_overview.jpg"
}
]
},
{
"name": "10704_820c.jpg",
"sources": [
{
"size": "large",
"url": "https:\/\/paloma.one\/images\/examples\/10704_820c.jpg"
},
{
"size": "medium",
"url": "https:\/\/paloma.one\/images\/examples\/10704_820c.jpg"
},
{
"size": "small",
"url": "https:\/\/paloma.one\/images\/examples\/10704_820c.jpg"
}
]
}
],
"availability": {
"available": true,
"stocks": [
{
"inventory": "chzh01",
"stock": 12
},
{
"inventory": "chzh02",
"stock": 4
}
]
}
}
]
ProductsBySkuRequest
Request body of the 'Get products for SKUs' API operation
Property | Type | Description |
---|---|---|
skus
|
array[string]
|
Min: 1
List of SKU |
omitOtherVariants
|
boolean
|
If |
includeInactiveProducts
|
boolean
|
If |
{
"skus": [
"123-987",
"123-988"
],
"omitOtherVariants": false,
"includeInactiveProducts": false
}
SearchFilter
Product search filter within a product search request.
Property | Type | Description |
---|---|---|
property
|
string
|
Full property path (e.g. attributes.material.value, master.pricing.grossPrice, variants.options.size.value) |
values
|
array[string]
|
Multiple filter values are applied using OR. |
greaterThan
|
number
|
Greater-than or equal to. Only applicable for numeric values |
lessThan
|
number
|
Less-than or equal to. Only applicable for numeric values |
match
|
string
|
Default: any
Values: any, all, none
Determines how the filter values of this filter are to be applied. |
or
|
SearchFilter
|
Add another filter with OR. |
{
"property": "variants.options.color.value",
"values": [
"green",
"blue"
]
}
SearchRequest
Product search request to retrieve paged product listings.
Property | Type | Description |
---|---|---|
category
|
string
|
Category code |
query
|
string
|
Search keywords |
filters
|
array[SearchFilter]
|
Search filters; will be applied using AND operations. |
filterAggregates
|
boolean
|
Whether to include aggregated option and attribute values over all search results. |
totalAggregates
|
boolean
|
Whether to include overall total counts in aggregated values. |
omitVariants
|
boolean
|
Whether to omit product variants in the response (may significantly reduce payload size) |
page
|
integer[int32]
|
Page number, starting from 0 |
size
|
integer[int32]
|
Default: 10
Min: 1
|
sort
|
string
|
Accepts 'name', 'price', 'base_unit_price', 'position', 'relevance' as well as any attribute in the form |
order
|
string
|
Default: asc
Values: asc, desc
Sort order |
context
|
PricingContext
|
The context to be used for the product search. |
{
"category": "123",
"query": "sports",
"filters": [
{
"property": "variants.options.size.value",
"values": [
"40"
]
}
],
"page": 2,
"sort": "price",
"order": "asc"
}
SearchSuggestions
Response body of the 'Get search suggestions' API operation.
Property | Type | Description |
---|---|---|
products
|
array[ProductSuggestion]
|
List of product suggestions |
categories
|
array[CategorySuggestion]
|
List of category suggestions |
{
"categories": [
{
"code": "123",
"name": "Sports Shoes",
"slug": "sports-shoes"
},
{
"code": "234",
"name": "Hiking Boots",
"slug": "hiking-boots"
}
],
"products": [
{
"itemNumber": "123",
"name": "Adidas Superstars Green\/9",
"slug": "adidas-superstars-green-9",
"category": "Sports Shoes",
"mainCategory": {
"code": "110",
"name": "Shoes",
"slug": "shoes"
}
}
]
}
SortOrder
Sort order setting
Property | Type | Description |
---|---|---|
direction
|
string
|
Values: asc, desc
Whether to sort ascending or descending |
property
|
string
|
The property to be sorted by |
Tax
Information about a specific type of tax.
Property | Type | Description |
---|---|---|
type
|
string
|
Default: VAT
Values: VAT
Tax type |
rate
|
number[double]
|
Tax rate as decimal |
name
|
string
|
The tax name |
amount
|
number
|
Tax amount |
rateFormatted
|
string
|
Formatted tax rate |
amountFormatted
|
string
|
Formatted tax amount |
{
"tye": "VAT",
"rate": 0.08,
"name": "MWST",
"amount": 0.8,
"rateFormatted": "8 %",
"amountFormatted": "0.80"
}
TaxInfo
Information about VAT.
Property | Type | Description |
---|---|---|
vat
|
Tax
|
VAT information |
taxInclusion
|
string
|
Default: inclusive
Values: inclusive, exclusive, not_applicable
Defines whether the price amount includes taxes or not. |
{
"vat": {
"tye": "VAT",
"rate": 0.08,
"name": "MWST",
"amount": 0.8,
"rateFormatted": "8 %",
"amountFormatted": "0.80"
}
}
TaxSummary
List of taxes applied to an order.
Property | Type | Description |
---|---|---|
taxes
|
array[Tax]
|
List of tax information |
Checkout
Address
Address data
Property | Type | Description |
---|---|---|
title
|
string
|
Max: 50
Salutation |
titleCode
|
string
|
Values: ms, mr, unknown
Salutation code |
firstName
|
string
|
Max: 50
First name |
lastName
|
string
|
Max: 50
Last name |
company
|
string
|
Max: 50
Company name |
street
|
string
|
Max: 50
Address street |
zipCode
|
string
|
Max: 50
ZIP code |
city
|
string
|
Max: 50
Address city |
country
|
string
|
Min: 2
Max: 2
Country code |
phoneNumber
|
string
|
Max: 50
Phone number |
emailAddress
|
string
|
Max: 255
Email address |
remarks
|
string
|
Max: 255
Additional remarks about the address |
{
"title": "Mr.",
"titleCode": "mr",
"firstName": "Hans",
"lastName": "Muster",
"street": "Musterweg 1",
"zipCode": "8000",
"city": "Zurich",
"country": "CH",
"phoneNumber": "0445007710",
"emailAddress": "test@astina.io",
"remarks": "This is a remark"
}
AvailablePaymentMethod
Returned by the 'Get payment methods' API operation. List of payment methods available for an order.
Property | Type | Description |
---|---|---|
name
|
string
|
Min: 1
Name of the payment method. |
type
|
string
|
Values: invoice, electronic, unknown
Payment methods with type 'electronic' require that the web shop performs a payment flow. See |
provider
|
string
|
Values: datatrans, postfinance, test
Only for type 'electronic': The payment provider that the web shop should use to perform the payment flow. |
paymentInstruments
|
array[PaymentInstrument]
|
Only for type 'electronic': Payment instruments are saved credit cards which can be used for payment. |
paymentMeans
|
array[PaymentMeans]
|
Only for type 'electronic': The payment means (e.g. credit card types) supported by the provider. |
{
"name": "creditcard",
"type": "electronic",
"provider": "datatrans",
"paymentInstruments": [
{
"id": "01E4V2JCC9T33QXEAXPHCJEC4F",
"type": "Mastercard",
"maskedCardNumber": "513659xxxxxx5354",
"expirationMonth": "12",
"expirationYear": "24"
}
],
"paymentMeans": [
{
"id": "visa",
"name": "Visa",
"providerCode": "VIS"
},
{
"id": "mastercard",
"name": "Mastercard",
"providerCode": "ECA"
}
]
}
AvailableShippingMethod
Returned by the 'Get shipping methods' API operation. List of available shipping methods for an order.
Property | Type | Description |
---|---|---|
name
|
string
|
Shipping method name |
pricing
|
Pricing
|
Pricing for the shipping method |
{
"name": "post_priority",
"pricing": {
"currency": "CHF",
"grossPrice": 10,
"grossPriceFormatted": "10.00",
"taxes": {
"vat": {
"type": "VAT",
"rate": 0.08,
"name": "MwSt.",
"amount": 22.14,
"rateFormatted": "8 %",
"amountFormatted": "22.14"
}
}
}
}
BrokerDto
Person/entity who places the order.
Property | Type | Description |
---|---|---|
id
|
string
|
Min: 1
Max: 255
Broker entity ID |
name
|
string
|
Min: 1
Max: 255
Broker name |
emailAddress
|
string
|
Min: 1
Max: 255
Broker email address |
{
"id": "123",
"name": "Petra Musterfrau",
"emailAddress": "petra.musterfrau@example.com"
}
BulkDeleteDto
Request body for the 'Bulk delete items' API operation.
Property | Type | Description |
---|---|---|
itemIds
|
array[string]
|
Min: 1
Item ids denoting the items that need to be removed from the order. |
CartModification
Automatic modification to the cart that was not explicitly requested by the client.
Property | Type | Description |
---|---|---|
code
|
string
|
Values: item_removed, item_price_changed, item_unit_changed, item_not_added, shipping_target_date_removed, delivery_arrangement_removed, delivery_arrangement_modified, currency_changed
|
itemId
|
string
|
ID of the affected order item (may be null) |
params
|
object
|
Arbitrary key-value pairs with information about the modification (see example). |
{
"code": "item_price_changed",
"itemId": "1",
"params": {
"unit_price_before": "19.90",
"unit_price_after": "13.80",
"item_price_before": "39.80",
"item_price_after": "27.60"
}
}
CartModificationParams
Map containing information about a cart modification.
Property | Type | Description |
---|---|---|
key
|
string
|
|
value
|
string
|
{
"unit_price_before": "19.90",
"unit_price_after": "13.80",
"item_price_before": "39.80",
"item_price_after": "27.60"
}
Channel
A channel is a virtual store front. Each channel can have its own catalog (products and categories), prices, languages, shipping methods and payment settings.
Property | Type | Description |
---|---|---|
name
|
string
|
Channel name |
currencies
|
array[string]
|
Supported currencies by this channel (ISO 4217) |
locales
|
array[string]
|
Supported locales by this channel |
origins
|
array[string]
|
Known order origins by this channel |
checkout
|
ChannelCheckoutSettings
|
Checkout settings for this channel |
[
{
"name": "b2c_ch",
"currencies": [
"CHF"
],
"locales": [
"de_CH",
"en_CH",
"fr_CH"
],
"checkout": {
"minItemsPrice": 50
}
},
{
"name": "b2c_de",
"currencies": [
"EUR"
],
"locales": [
"de_DE",
"en_DE"
],
"checkout": {
"minItemsPrice": 25
}
},
{
"name": "b2b_ch",
"currencies": [
"CHF",
"EUR"
],
"locales": [
"de_CH",
"en_CH",
"fr_CH"
],
"checkout": {
"maxItemsPrice": 10000,
"minItemCount": 3
}
}
]
ChannelCheckoutSettings
Checkout settings for a channel
Property | Type | Description |
---|---|---|
minItemsPriceSurchargeThreshold
|
number
|
Minimum value of all items in a shopping cart. If the price is below this number, a 'surcharge' adjustment is added to the order. |
minItemsPrice
|
number
|
Minimum value of all items in a shopping cart. If the price is below this number, purchase is not possible. |
maxItemsPrice
|
number
|
Maximum value of all items in a shopping cart. If the price is above this number, purchase is not possible. |
minOrderPrice
|
number
|
Minimum value of all items in a shopping cart. If the price is below this number, purchase is not possible. |
maxOrderPrice
|
number
|
Maximum value of all items in a shopping cart. If the price is above this number, purchase is not possible. |
minItemCount
|
integer[int32]
|
Minimum cumulated quantity of items in a shopping cart. If the number is below this value, purchase is not possible. |
maxItemCount
|
integer[int32]
|
Maximum cumulated quantity of items in a shopping cart. If the number is above this value, purchase is not possible. |
CustomDataUpdate
Object containing custom data updates.
Property | Type | Description |
---|---|---|
path
|
string
|
|
value
|
object
|
{
"path": "example",
"value": "example"
}
Customer
Customer information within an order. The customer can be a registered customer within Paloma, a guest user or a customer from 3rd party system.
Property | Type | Description |
---|---|---|
id
|
string
|
Default: Customer ID of the referenced Paloma customer (optional)
Min: 1
Max: 36
Paloma customer ID |
customerNumber
|
string
|
Min: 1
Max: 50
Customer number. |
emailAddress
|
string
|
Default: Customer email address
Min: 1
|
firstName
|
string
|
Min: 1
Max: 50
First name |
locale
|
string[locale]
|
Locale code (de, en, fr, de_CH, ...) |
lastName
|
string
|
Min: 1
Max: 50
Last name |
company
|
string
|
Min: 1
Max: 50
Company name |
gender
|
string
|
Default: Gender code (optional). This is primarily used to generate proper salutations in order transaction mails.
Values: male, female, unknown
|
dateOfBirth
|
string[date]
|
Default: Date of birth. This may be used to test if a user is old enough to buy certain goods.
|
billingAddress
|
Address
|
Default: The customer's default billing address
|
shippingAddress
|
Address
|
Default: The customer's default shipping address
|
userId
|
string
|
Default: Optional: ID of the acting Paloma shop user
|
deliveryGroup
|
string
|
Default: Delivery group associated with this customer
|
catalog
|
string
|
Default: Catalog associated with this customer (if unset, the channel's default catalog is used)
|
customerStatus
|
string
|
Default: Customer status
Values: enabled, disabled
|
priceGroups
|
array[string]
|
Pricing groups may affect the cart's price evaluation. These should be taken from the logged-in customer's attribute with the same name. |
{
"id": "43435-6565-6565",
"customerNumber": "989739",
"emailAddress": "test@astina.io",
"locale": "de_CH",
"firstName": "Hans",
"lastName": "Muster",
"company": "Muster AG",
"gender": "male",
"userId": "CH000350921",
"priceGroups": [
"12-45"
]
}
CustomerOrderNumberDto
Property | Type | Description |
---|---|---|
customerOrderNumber
|
string
|
{
"customerOrderNumber": "ORD-123456789"
}
DeliveryArrangement
Property | Type | Description |
---|---|---|
shippingMethodName
|
string
|
|
targetDate
|
string[date]
|
|
targetSlot
|
string
|
Null only if no delivery target slots are configured for this instance. |
override
|
boolean
|
If set to true, the delivery arrangement will be applied even if it is not valid for the given item. This is intended for internal users who "know better" and should not be called for web shop use. |
DeliveryDayOptions
Property | Type | Description |
---|---|---|
targetDate
|
string[date]
|
All delivery schemes in this object start on this date and slot. |
targetSlot
|
string
|
All delivery schemes in this object start on this date and slot. |
deliverable
|
string
|
Values: NO_DELIVERY, NO_DELIVERY_SCHEMES, DELIVERY_SCHEMES_AVAILABLE
Is a delivery possible on this day?
|
orderDateTime
|
string[date-time]
|
This field answers the question "When do I last have to order so I can get some or all articles for this day and deliver slot?". There are three cases, according to the deliverable field:
|
deliverySchemes
|
array[DeliveryScheme]
|
DeliveryOption
Property | Type | Description |
---|---|---|
itemId
|
integer[int32]
|
|
sku
|
string
|
|
deliveryArrangement
|
DeliveryArrangement
|
|
preparationDays
|
integer[int32]
|
|
forerunDays
|
integer[int32]
|
|
orderDateTime
|
string[date-time]
|
DeliveryScheme
Property | Type | Description |
---|---|---|
name
|
string
|
|
targetDate
|
string[date]
|
Date and slot of the first delivery of this delivery scheme. |
targetSlot
|
string
|
Date and slot of the first delivery of this delivery scheme. |
deliveryMethodName
|
string
|
This is set if all the items in the scheme have one, and only one deliveryMethodName. Otherwise this will be null. |
orderDateTime
|
string[date-time]
|
|
numberOfDeliveries
|
integer[int32]
|
|
itemOptions
|
array[DeliveryOption]
|
DeliverySchemeReference
Property | Type | Description |
---|---|---|
name
|
string
|
ExpectedDelivery
Property | Type | Description |
---|---|---|
deliveryArrangement
|
DeliveryArrangement
|
|
itemIds
|
array[string]
|
|
itemsPricing
|
Pricing
|
Total price of all items within this delivery tranche. |
quantities
|
array[ExpectedDeliveryQuantity]
|
ExpectedDeliveryQuantity
Property | Type | Description |
---|---|---|
unit
|
string
|
|
unitCode
|
string
|
|
quantity
|
number
|
ItemPriceOverride
Property | Type | Description |
---|---|---|
unitPrice
|
number
|
|
linePrice
|
number
|
NextPossibleDeliveryDate
Property | Type | Description |
---|---|---|
date
|
string[date]
|
ObjectOperationInfo
Property | Type | Description |
---|---|---|
name
|
string
|
Operation name |
available
|
boolean
|
Whether the operation is available for execution. If false, |
validation
|
ObjectOperationValidation
|
ObjectOperationValidation
Property | Type | Description |
---|---|---|
errors
|
array[ObjectOperationValidationError]
|
ObjectOperationValidationError
Property | Type | Description |
---|---|---|
property
|
string
|
|
code
|
string
|
|
message
|
string
|
ObjectValidationInfo
Property | Type | Description |
---|---|---|
properties
|
PropertyValidationInfos
|
OldDeliveryOption
Property | Type | Description |
---|---|---|
targetDate
|
string[date]
|
|
targetSlot
|
string
|
|
preparationDays
|
integer[int32]
|
|
forerunDays
|
integer[int32]
|
|
orderDateTime
|
string[date-time]
|
Order
Cart order. This is the primary entity used by the checkout API.
Property | Type | Description |
---|---|---|
id
|
string
|
Unique order ID |
created
|
string[date-time]
|
When the order was created |
modified
|
string[date-time]
|
When the order was last modified |
orderNumber
|
string
|
Order number. Only set after the first finalization |
channel
|
string
|
Order channel |
locale
|
string[locale]
|
Locale code. This locale is used to render locale-specific values within this order |
status
|
string
|
Values: cart, finalized, purchased
Order status |
origin
|
string
|
Order origin, e.g. 'order_management', 'portal' |
purchaseDate
|
string[date]
|
Date of purchase. Only set if the order is in status 'purchased' |
currency
|
string
|
Order currency |
taxIncluded
|
boolean
|
Whether prices are shown with taxes included |
items
|
array[OrderItem]
|
List of the order's items |
itemsPricing
|
Pricing
|
Total of all item prices excluding adjustments. |
adjustments
|
array[OrderAdjustment]
|
List of all order adjustments |
orderPricing
|
Pricing
|
Total of all item prices plus adjustments. This is what the customer pays for the whole order. |
taxSummary
|
TaxSummary
|
Summary of taxes applied to the order |
customer
|
OrderCustomer
|
Customer data for the order |
billingAddress
|
Address
|
Order billing address |
shippingAddress
|
Address
|
Order shipping address |
paymentMethod
|
PaymentMethod
|
Selected payment method for the order |
shippingMethod
|
ShippingMethod
|
Selected shipping method for the order |
payments
|
array[Payment]
|
Payments associated with the order |
expectedDeliveries
|
array[ExpectedDelivery]
|
Expected deliveries for this order |
coupons
|
array[string]
|
List of coupon codes applied to the order |
modifications
|
array[CartModification]
|
If an operation requires modification to the order that where not explicitly requested by the client, those modifications are listed here. Example: Prices of items changed because the customer was updated. |
broker
|
BrokerDto
|
Information about the order's broker |
comment
|
string
|
Order comment |
customerOrderNumber
|
string
|
Order number from the customer |
customData
|
object
|
Arbitrary additional data |
_validation
|
ObjectValidationInfo
|
Validation information for the order |
_operations
|
array[ObjectOperationInfo]
|
List of available operations for the order. Only available if the order was fetched using |
{
"id": "123",
"created": "2020-01-23T10:56:23.432Z",
"modified": "2020-01-23T11:56:23.432Z",
"orderNumber": "CH00032",
"channel": "CH",
"locale": "en",
"status": "confirmed",
"currency": "CHF",
"items": [
{
"id": "234",
"quantity": 2,
"title": "Adidas Superstars",
"unitPricing": {
"currency": "CHF",
"grossPrice": 249.9,
"netPrice": 231.4,
"originalGrossPrice": 299.9,
"grossPriceFormatted": "249.90",
"netPriceFormatted": "231.40",
"originalGrossPriceFormatted": "299.90",
"taxes": {
"vat": {
"rate": 0.08,
"name": "MWST",
"amount": 18.5,
"rateFormatted": "8 %",
"amountFormatted": "18.50"
}
}
},
"itemPricing": {
"currency": "CHF",
"grossPrice": 499.8,
"netPrice": 462.8,
"originalGrossPrice": 599.8,
"grossPriceFormatted": "499.80",
"netPriceFormatted": "462.80",
"originalGrossPriceFormatted": "599.80",
"taxes": {
"vat": {
"rate": 0.08,
"name": "MWST",
"amount": 37,
"rateFormatted": "8 %",
"amountFormatted": "37.00"
}
}
},
"variant": {
"sku": "457",
"name": "Adidas Superstars Green\/10",
"taxCategory": "default",
"pricing": {
"currency": "CHF",
"grossPrice": 499.8,
"taxes": {
"vat": {
"rate": 0.08,
"name": "MWST",
"amount": 37,
"rateFormatted": "8 %",
"amountFormatted": "37.00"
}
}
},
"price": {
"currency": "CHF",
"unit": "piece",
"unitDecimals": 0,
"unitPrice": 499.8,
"tax": "8 %",
"taxIncluded": true
},
"availability": {
"available": true,
"stocks": [
{
"inventory": "chzh01",
"stock": 12
}
],
"availableFrom": "2015-12-02"
}
}
}
],
"itemsPricing": {
"currency": "CHF",
"grossPrice": 199.8,
"netPrice": 462.8,
"grossPriceFormatted": "499.80",
"netPriceFormatted": "462.80",
"taxes": {
"vat": {
"type": "VAT",
"rate": 0.08,
"name": "MwSt.",
"amount": 22.14,
"rateFormatted": "8 %",
"amountFormatted": "22.14"
}
}
},
"adjustments": [
{
"type": "shipping",
"description": "Post-Pack Economy",
"pricing": {
"currency": "CHF",
"grossPrice": 10,
"netPrice": 10,
"grossPriceFormatted": "10.00",
"netPriceFormatted": "10.00"
}
}
],
"taxSummary": {
"taxes": [
{
"type": "vat",
"rate": 0.08,
"name": "MWST",
"amount": 37,
"rateFormatted": "8 %",
"amountFormatted": "37.00"
}
]
},
"customer": {
"customerNumber": "989739",
"emailAddress": "test@astina.io",
"firstName": "Hans",
"lastName": "Muster",
"company": "Muster AG"
},
"billingAddress": {
"title": "Mr.",
"titleCode": "mr",
"firstName": "Hans",
"lastName": "Muster",
"street": "Musterweg 1",
"zipCode": 8000,
"city": "Zurich",
"country": "CH",
"phoneNumber": "0445007710",
"remarks": "This is a remark"
},
"shippingAddress": {
"title": "Mr.",
"titleCode": "mr",
"firstName": "Hans",
"lastName": "Muster",
"street": "Musterweg 1",
"zipCode": 8000,
"city": "Zurich",
"country": "CH",
"phoneNumber": "0445007710",
"remarks": "This is a remark"
},
"paymentMethod": {
"name": "cc_visa",
"type": "electronic",
"provider": "datatrans",
"paymentInstrumentId": "01E4V2JCC9T33QXEAXPHCJEC4F"
},
"shippingMethod": {
"name": "post_priority"
},
"payments": {
"order": "123",
"paymentMethod": "cc_visa",
"reference": "2865-397-349",
"currency": "CHF",
"amount": 199,
"status": "authorized"
},
"coupons": [
"XY12398472"
],
"broker": {
"id": "123",
"name": "Petra Musterfrau",
"emailAddress": "petra.musterfrau@example.com"
}
}
OrderAddressesDto
Set billing and shipping address for an order. Address data can either be sent directly or by referencing a customer address ID, but only if a customer ID is already set on the order.
Property | Type | Description |
---|---|---|
billingAddress
|
Address
|
|
billingAddressId
|
string
|
ID of one of the order's customer's billing address |
shippingAddress
|
Address
|
|
shippingAddressId
|
string
|
ID of one of the order's customer's shipping address |
OrderAdjustment
Order adjustment. This can be shipping charges, discounts or some surcharge.
Property | Type | Description |
---|---|---|
type
|
string
|
Default: Type of the adjustment
Values: shipping, tax, discount, promotion, surcharge
|
description
|
string
|
Adjustment description |
pricing
|
Pricing
|
Adjustment price. For discounts, this will be negative amounts. |
{
"type": "promotion",
"description": "Christmas Sale",
"pricing": {
"currency": "CHF",
"grossPrice": -20,
"netPrice": -20,
"grossPriceFormatted": "-20.00",
"netPriceFormatted": "-20.00"
}
}
OrderCommentDto
Property | Type | Description |
---|---|---|
comment
|
string
|
Max: 1000
|
{
"comment": "This is a comment for the order."
}
OrderCouponError
Property | Type | Description |
---|---|---|
errors
|
array[OrderCouponErrorItem]
|
{
"errors": [
{
"coupon": "TEST123",
"status": "redemptions_exceeded"
}
]
}
OrderCouponErrorItem
Property | Type | Description |
---|---|---|
coupon
|
string
|
The invalid coupon code |
status
|
string
|
Values: not_found, not_eligible, not_combinable, expired, redemptions_exceeded, service_unavailable, error
Reason why the coupon is invalid:
|
OrderCreateDto
Property | Type | Description |
---|---|---|
locale
|
string[locale]
|
|
channel
|
string
|
|
currency
|
string
|
|
origin
|
string
|
|
customer
|
Customer
|
|
broker
|
BrokerDto
|
{
"locale": "de"
}
OrderCustomer
Property | Type | Description |
---|---|---|
customerNumber
|
string
|
|
customerId
|
string
|
|
emailAddress
|
string
|
Email address |
firstName
|
string
|
First name |
lastName
|
string
|
Last name |
company
|
string
|
Company name |
deliveryGroup
|
string
|
Delivery group |
catalog
|
string
|
Catalog |
gender
|
string
|
Values: male, female, unknown
|
dateOfBirth
|
string[date]
|
|
userId
|
string
|
|
priceGroups
|
array[string]
|
{
"customerNumber": "1000234",
"emailAddress": "test@astina.io",
"firstName": "Hans",
"lastName": "Muster",
"company": "Muster AG",
"gender": "male"
}
OrderItem
Order line item.
Property | Type | Description |
---|---|---|
id
|
string
|
Unique item ID within an order |
sku
|
string
|
Product variant SKU for this item |
itemNumber
|
string
|
Product item number for this item |
quantity
|
number
|
Default: Item quantity
|
portions
|
integer[int32]
|
The number of portions the order item quantity will be split into. |
unit
|
string
|
Localized name of the unit for this item |
unitCode
|
string
|
Code of the unit for this item |
title
|
string
|
E.g. product name |
description
|
string
|
E.g. product description |
image
|
ProductImage
|
Default: Item article image
|
variant
|
ProductVariant
|
Product variant for this item |
adjustments
|
array[OrderAdjustment]
|
Adjustments for this item |
parameters
|
array[ParameterValue]
|
Order item parameters |
unitPricing
|
Pricing
|
Price for one unit of this item |
itemPricing
|
Pricing
|
Price for the whole order item |
deliveryArrangement
|
DeliveryArrangement
|
Selected delivery arrangement for this item |
reservationExpires
|
string[date-time]
|
If the SKU uses managed inventory, An inventory reservation has been made which will expire at the designated time. |
_operations
|
array[ObjectOperationInfo]
|
Information about order item operations. Only available if the order was requested using |
{
"id": "234",
"quantity": 2,
"unitPricing": {
"currency": "CHF",
"grossPrice": 5.4,
"netPrice": 5,
"grossPriceFormatted": "5.40",
"netPriceFormatted": "5.00",
"taxes": {
"vat": {
"rate": 0.08,
"name": "MWST",
"amount": 0.4,
"rateFormatted": "8 %",
"amountFormatted": "0.40"
}
}
},
"itemPricing": {
"currency": "CHF",
"grossPrice": 10.8,
"netPrice": 10,
"grossPriceFormatted": "10.80",
"netPriceFormatted": "10.00",
"taxes": {
"vat": {
"rate": 0.08,
"name": "MWST",
"amount": 0.8,
"rateFormatted": "8 %",
"amountFormatted": "0.80"
}
}
},
"title": "Adidas Superstars",
"variant": {
"sku": "457",
"name": "Adidas Superstars Green\/10"
}
}
OrderItemCreateDto
Property | Type | Description |
---|---|---|
sku
|
string
|
Min: 1
Product variant sku |
quantity
|
number
|
The number of items to add. If this is missing, the minimum allowable amount is added. Usually, this is |
onInvalidQuantity
|
string
|
Default: fail
Values: fail, increment_until_valid
How the application should behave if the requested quantity is not a valid quantity for the item due to the items minimumQuantity/quantityIncrement values (e.g. trying to add quantity 1 for an item with minimumQuantity 10). On invalid quantity:
|
unit
|
string
|
The unit you want to order. Optional. If left empty, the variant's default unit will be used. Note: use the |
onInvalidUnit
|
string
|
Default: fail
Values: fail, use_default_unit
How the application should behave if the requested unit is not a valid unit for the given SKU. On invalid unit:
|
portions
|
integer[int32]
|
Min: 1
The number of portions the provided quantity will be split into. |
id
|
string[int32]
|
Optional cart item ID to be used. If omitted, the item ID is generated automatically. If provided, the operation will fail if another cart item with the same ID already exists. Also, the new cart item will never be merged with an existing one, if an ID is provided. |
allowedUnavailabilityReasons
|
array[string]
|
List of 'unavailability' reasons to be ignored when adding the item to the cart. Reasons for a variant being unavailable can be found at |
parameters
|
array[ParameterValue]
|
Parameters are a way for the customer to specify special wishes when buying a product, such as adding a commentary, selecting a value for a coupon, selecting special ingredients "extra onions", "vegan cheese", configuring a computer or appliance with parts "Base configuration" "Extra 32 TB SSD", or other, similar endeavours. The parameters on the product master specify which parameters (i.e. special wishes) the variants in the product accept. For each of the parameters, a value may (must, if required = true) be given when adding an item. |
{
"sku": "456",
"quantity": 1.5,
"portions": 2
}
OrderItemShippingMethodOptions
Property | Type | Description |
---|---|---|
shippingMethodName
|
string
|
|
itemId
|
integer[int32]
|
|
sku
|
string
|
|
delivery
|
array[OldDeliveryOption]
|
{
"shippingMethodName": "default",
"position": "1",
"sku": "item_no_1",
"delivery": [
{
"targetDate": "2021-01-21",
"targetSlot": "afternoon",
"preparationDays": 1,
"forerunDays": 0,
"orderDateTime": "2021-01-20T12:00:00+01:00"
},
{
"targetDate": "2021-01-22",
"targetSlot": "morning",
"preparationDays": 1,
"forerunDays": 0,
"orderDateTime": "2021-01-21T12:00:00+01:00"
}
]
}
OrderItemShippingOptions
Property | Type | Description |
---|---|---|
itemId
|
integer[int32]
|
|
sku
|
string
|
|
delivery
|
array[DeliveryOption]
|
OrderItemUpdateDto
Property | Type | Description |
---|---|---|
quantity
|
number
|
The number of items to set. |
onInvalidQuantity
|
string
|
Default: fail
Values: fail, increment_until_valid
How the application should behave if the requested quantity is not a valid quantity for the item due to the items minimumQuantity/quantityIncrement values (e.g. trying to add quantity 1 for an item with minimumQuantity 10). On invalid quantity:
|
portions
|
integer[int32]
|
Min: 1
The number of portions the provided quantity will be split into. |
parameters
|
array[ParameterValue]
|
Parameters are a way for the customer to specify special wishes when buying a product, such as adding a commentary, selecting a value for a coupon, selecting special ingredients "extra onions", "vegan cheese", configuring a computer or appliance with parts "Base configuration" "Extra 32 TB SSD", or other, similar endeavours. The parameters on the product master specify which parameters (i.e. special wishes) the variants in the product accept. For each of the parameters, a value may (must, if required = true) be given when adding an item. |
{
"quantity": 2.5,
"portions": 5
}
OrderItemsCreateDto
Property | Type | Description |
---|---|---|
orderItems
|
array[OrderItemCreateDto]
|
Min: 1
Order item create DTOs |
{
"orderItems": [
{
"sku": "456",
"quantity": 2
},
{
"sku": "963",
"quantity": 1
}
]
}
OrderPage
Property | Type | Description |
---|---|---|
content
|
array[Order]
|
|
size
|
integer
|
Page size |
number
|
integer[int32]
|
Page number, starting from 0 |
totalElements
|
integer[int64]
|
Total number of results for the search |
totalPages
|
integer[int32]
|
|
last
|
boolean
|
|
first
|
boolean
|
|
sort
|
string
|
Sort property |
order
|
string
|
Values: asc, desc
Sort order |
OrderingUnit
An ordering unit is a unit of a product variant which can be purchased.
Property | Type | Description |
---|---|---|
unit
|
string
|
Min: 1
Localized name of the unit of this ordering unit. |
unitCode
|
string
|
Code of the unit of this ordering unit. |
unitDecimals
|
integer[int32]
|
The number of decimals in which the unit can be defined. E.g. 2 means values like 1.25 or 2.95 are possible, 0 means integer values like 1 or 2. |
portioning
|
string
|
Values: none, optional, required
Defines whether and how the product variant can be split into portions using this ordering unit.
|
portioningUnit
|
string
|
Localized unit name the portion quantity should be entered with. |
portioningUnitCode
|
string
|
Code of the unit the portion quantity should be entered with. |
portioningNumerator
|
integer[int32]
|
Numerator to be applied to convert from the portioning unit into the ordering unit (e.g. 1000 if unit is kilogram and portioning unit is gram). |
portioningDenominator
|
integer[int32]
|
Denominator to be applied to convert from the portioning unit into the ordering unit (e.g. 100 if unit is milliliter and portioning unit is deciliter). |
minimumQuantity
|
string[decimal-string]
|
The minimum quantity that can be ordered using this ordering unit. |
quantityIncrement
|
string[decimal-string]
|
When using this ordering unit, the line quantity must be divisible by this amount. |
price
|
Price
|
The price information valid for this ordering unit. |
{
"unit": "St\u00fcck",
"unitDecimals": 2,
"portioning": "none",
"minimumQuantity": "0.05",
"price": {
"currency": "CHF",
"unit": "MP",
"unitPrice": "16.68",
"tax": "7.7 %",
"taxIncluded": true
}
}
ParameterFields
Map of product parameter fields with the parameter names as map keys.
{
"instructions": {
"name": "instructions",
"label": "Instructions",
"type": "textarea",
"formOptions": {
"required": true,
"maxLength": 500
},
"position": 1
}
}
ParameterValue
Property | Type | Description |
---|---|---|
name
|
string
|
|
value
|
object
|
Payment
Property | Type | Description |
---|---|---|
order
|
string
|
Order ID |
paymentProvider
|
string
|
|
paymentProviderType
|
string
|
Values: datatrans, postfinance, test
|
paymentMethod
|
string
|
|
reference
|
string
|
|
transactionId
|
string
|
|
currency
|
string
|
|
amount
|
number
|
|
status
|
string
|
Default: initiated
Values: initiated, pending, authorized, completed, failed, cancelled, unknown
|
paymentMeans
|
string
|
Default: initiated
Values: invoice, cas, voucher, // Gift or purchase voucher, creditcard, // If exact creditcard is not known, visa, mastercard, american_express, diners_club, maestro, postfinance_card, postfinance_efinance, paypal, twint, jcb, powerpay, other, unknown
|
maskedCardNumber
|
string
|
|
cardHolderCountry
|
string
|
|
providerRequest
|
PaymentProviderRequest
|
|
providerResponse
|
PaymentProviderResponse
|
|
created
|
string[date-time]
|
|
modified
|
string[date-time]
|
{
"order": "123",
"paymentMethod": "cc_visa",
"reference": "923843284",
"currency": "CHF",
"amount": 894.2,
"status": "authorized"
}
PaymentInitDto
Property | Type | Description |
---|---|---|
successUrl
|
string
|
Min: 1
|
cancelUrl
|
string
|
Min: 1
|
errorUrl
|
string
|
Min: 1
|
{
"successUrl": "https:\/\/example.org\/checkout\/success",
"cancelUrl": "https:\/\/example.org\/checkout\/cancel",
"errorUrl": "https:\/\/example.org\/checkout\/error"
}
PaymentInstrument
Property | Type | Description |
---|---|---|
id
|
string
|
Min: 1
|
type
|
string
|
|
maskedCardNumber
|
string
|
|
expirationMonth
|
string
|
|
expirationYear
|
string
|
{
"id": "01E4V2JCC9T33QXEAXPHCJEC4F",
"type": "Mastercard",
"maskedCardNumber": "513659xxxxxx5354",
"expirationMonth": "12",
"expirationYear": "24"
}
PaymentMeans
Property | Type | Description |
---|---|---|
id
|
string
|
Min: 1
|
name
|
string
|
Min: 1
|
providerCode
|
string
|
{
"id": "american_express",
"name": "American Express",
"providerCode": "AMX"
}
PaymentMethod
Property | Type | Description |
---|---|---|
name
|
string
|
Min: 1
|
type
|
string
|
Values: invoice, electronic, unknown
Payment methods with type 'electronic' require that the web shop performs a payment flow. See |
provider
|
string
|
Values: datatrans, postfinance, test
Only for type 'electronic': The payment provider that the web shop should use to perform the payment flow. |
paymentInstrumentId
|
string
|
{
"name": "creditcard",
"type": "electronic",
"provider": "datatrans",
"paymentInstrumentId": "01E4V2JCC9T33QXEAXPHCJEC4F"
}
PaymentProviderParam
Property | Type | Description |
---|---|---|
name
|
string
|
|
value
|
string
|
{
"name": "merchant-id",
"value": "1002323"
}
PaymentProviderRequest
Property | Type | Description |
---|---|---|
url
|
string
|
|
httpMethod
|
string
|
|
sent
|
string[date-time]
|
|
params
|
array[PaymentProviderParam]
|
|
payload
|
string
|
PaymentProviderResponse
Property | Type | Description |
---|---|---|
received
|
string[date-time]
|
|
params
|
array[PaymentProviderParam]
|
|
httpStatus
|
string
|
|
payload
|
string
|
Price
Property | Type | Description |
---|---|---|
currency
|
string
|
Formatted currency, usually the currency code. |
unit
|
string
|
Name of the unit this price is valid for. |
unitCode
|
string
|
Code of the unit this price is valid for. |
unitDecimals
|
integer[int32]
|
The number of decimals in which the unit can be defined. E.g. 2 means values like 1.25 or 2.95 are possible, 0 means integer values like 1 or 2. |
unitPrice
|
string
|
The price of one unit. Check |
originalUnitPrice
|
string
|
The price before possible discounts. This price will be missing, if it's the same as |
tax
|
string
|
The formatted tax rate. |
taxIncluded
|
boolean
|
Whether the |
individual
|
boolean
|
Whether this price is specific for the given price group. |
scaling
|
array[PriceScaling]
|
For scaled prices, this lists the scaling increments. If this is not a scaled price, the property will be missing. |
{
"currency": "CHF",
"unit": "St\u00fcck",
"unitPrice": "16.68",
"tax": "7.7 %",
"taxIncluded": true
}
PriceScaling
Property | Type | Description |
---|---|---|
scaleQuantity
|
integer[int32]
|
Min: 1
|
unitPrice
|
string
|
|
originalUnitPrice
|
string
|
Pricing
Property | Type | Description |
---|---|---|
currency
|
string
|
Currency code |
grossPrice
|
number
|
This is the price the customer has to pay. |
netPrice
|
number
|
Net price (before taxes) |
originalGrossPrice
|
number
|
If the current gross price is reduced, this property holds the original price. |
grossPriceFormatted
|
string
|
Formatted gross price. |
netPriceFormatted
|
string
|
Formatted net price. |
originalGrossPriceFormatted
|
string
|
Formatted original price. |
taxes
|
TaxInfo
|
{
"currency": "CHF",
"grossPrice": 10.8,
"netPrice": 10,
"grossPriceFormatted": "10.80",
"netPriceFormatted": "10.00",
"taxes": {
"vat": {
"rate": 0.08,
"name": "MWST",
"amount": 0.8,
"rateFormatted": "8 %",
"amountFormatted": "0.80"
}
}
}
ProductAvailabilityInterruption
Property | Type | Description |
---|---|---|
interruptedFrom
|
string[date-time]
|
|
interruptedTo
|
string[date-time]
|
ProductUnit
A product unit contains information about packaging, weight and (informational) price. Not all units can be purchased as such. See OrderingUnit
for purchasable units.
Property | Type | Description |
---|---|---|
unit
|
string
|
Min: 1
Localized name of the unit. |
unitCode
|
string
|
Code of the unit. |
minimumQuantity
|
string[decimal-string]
|
Minimum order quantity. |
quantityIncrement
|
string[decimal-string]
|
Order quantity must be divisible by this value. |
grossWeightKg
|
string
|
Gross weight in kg, localized and formatted. |
netWeightKg
|
string
|
Net weight in kg, localized and formatted. |
netDrainedWeightKg
|
string
|
Net drained weight in kg, localized and formatted. |
bundleUnit
|
ProductUnitBundleInfo
|
|
price
|
Price
|
The price information for this unit. |
{
"unit": "MP",
"unitCode": "MP",
"price": {
"currency": "CHF",
"unit": "MP",
"unitCode": "MP",
"unitPrice": "16.68",
"tax": "7.7 %",
"taxIncluded": false
}
}
ProductUnitBundleInfo
Contains information about units bundled within another unit (e.g. kg in a can, or boxes on a pallet).
Property | Type | Description |
---|---|---|
unit
|
string
|
Min: 1
Localized name of the unit. |
unitCode
|
string
|
Code of the unit. |
quantity
|
string
|
How much of this unit is contained within the bundle. Localized and formatted. |
ProductVariant
Property | Type | Description |
---|---|---|
sku
|
string
|
Min: 1
Stock keeping unit (unique) |
name
|
string
|
Min: 1
Product variant name |
taxCategory
|
string
|
Min: 1
The tax category |
pricing
|
Pricing
|
Variant pricing. This field is deprecated and |
price
|
Price
|
Variant price information. |
baseOrderingUnit
|
string
|
Unit code of the base (or 'default') ordering unit. |
baseUnit
|
string
|
Unit code of the base (or 'default') unit. |
orderingUnits
|
array[OrderingUnit]
|
List of all available ordering units for this variant. |
units
|
array[ProductUnit]
|
List of all known units for this variant. |
informationalPrices
|
array[Price]
|
Informational prices for this variant. For instance, the variant price might be for a 5 kg bag, and these prices might include one for 100 g. The variant cannot be bought in 100 g increments, but we might be legally required to the hypothetical price. This field is deprecated and |
options
|
ProductOptions
|
|
attributes
|
ProductAttributes
|
|
parameters
|
ParameterFields
|
Parameters are a way for the customer to specify special wishes when buying a product, such as adding a commentary, selecting a value for a coupon, selecting special ingredients "extra onions", "vegan cheese", configuring a computer or appliance with parts "Base configuration" "Extra 32 TB SSD", or other, similar endeavours. This fields specifies, which parameters this product accepts. A value for each parameter can (must) be sent when purchasing a variant. |
assets
|
array[ProductAsset]
|
|
images
|
array[ProductImage]
|
|
availability
|
ProductAvailability
|
[
{
"sku": "10704-820-1",
"name": "Absatzsandale Dunkelblau",
"pricing": {
"currency": "CHF",
"grossPrice": 99,
"netPrice": 91.65,
"originalGrossPrice": 219,
"grossPriceFormatted": "99.00",
"netPriceFormatted": "91.65",
"originalGrossPriceFormatted": "219.00",
"taxes": {
"vat": {
"rate": 0.08,
"name": "MWST",
"amount": 7.35,
"rateFormatted": "8 %",
"amountFormatted": "7.35"
}
}
},
"options": [
{
"option": "size",
"label": "Gr\u00f6sse",
"value": "36"
},
{
"option": "color",
"label": "Farbe",
"value": "dunkelblau"
}
],
"images": [
{
"name": "10704_820a.jpg",
"sources": [
{
"size": "large",
"url": "https:\/\/paloma.one\/images\/examples\/10704_820a.jpg"
},
{
"size": "medium",
"url": "https:\/\/paloma.one\/images\/examples\/10704_820a.jpg"
},
{
"size": "small",
"url": "https:\/\/paloma.one\/images\/examples\/10704_820a_overview.jpg"
}
]
},
{
"name": "10704_820c.jpg",
"sources": [
{
"size": "large",
"url": "https:\/\/paloma.one\/images\/examples\/10704_820c.jpg"
},
{
"size": "medium",
"url": "https:\/\/paloma.one\/images\/examples\/10704_820c.jpg"
},
{
"size": "small",
"url": "https:\/\/paloma.one\/images\/examples\/10704_820c.jpg"
}
]
}
],
"availability": {
"available": true,
"stocks": [
{
"inventory": "chzh01",
"stock": 12
},
{
"inventory": "chzh02",
"stock": 4
}
]
}
}
]
SearchFilter
Property | Type | Description |
---|---|---|
attribute
|
string
|
Full attribute path (e.g. customer.customerId) |
operator
|
string
|
Values: eq, neq, contains, not_contains, contains_term, not_contains_term, gt, lt, gte, lte
|
values
|
array[string]
|
Multiple filter values are applied using OR. |
{
"attribute": "billing.paymentMethod",
"values": [
"electronic",
"invoice"
]
}
SearchRequest
Property | Type | Description |
---|---|---|
query
|
string
|
Search keywords |
filters
|
array[SearchFilter]
|
Search filters; will be applied using AND operations. |
{
"query": "loafers",
"filters": [
{
"attribute": "status",
"values": [
"shipped"
]
}
]
}
ShippingMethod
Property | Type | Description |
---|---|---|
name
|
string
|
Min: 1
|
deliverySchemeName
|
string
|
Min: 1
|
shippingZone
|
string
|
|
targetDate
|
string[date]
|
|
targetSlot
|
string
|
|
override
|
boolean
|
Indicates that the shipping method was set forcefully via the shipping-override endpoint and might not represent an otherwise valid combination of name, targetDate, targetSlot. |
{
"name": "post_priority"
}
ShippingMethodOptions
Property | Type | Description |
---|---|---|
shippingMethodName
|
string
|
|
delivery
|
array[OldDeliveryOption]
|
|
orderItemShippingMethodOptions
|
array[OrderItemShippingMethodOptions]
|
{
"shippingMethodName": "default",
"delivery": [
{
"targetDate": "2021-01-21",
"targetSlot": "afternoon",
"preparationDays": 1,
"forerunDays": 0,
"orderDateTime": "2021-01-20T12:00:00+01:00"
},
{
"targetDate": "2021-01-22",
"targetSlot": "morning",
"preparationDays": 1,
"forerunDays": 0,
"orderDateTime": "2021-01-21T12:00:00+01:00"
}
],
"orderItemShippingMethodOptions": [
{
"shippingMethodName": "default",
"position": "1",
"sku": "item_no_1",
"delivery": [
{
"targetDate": "2021-01-21",
"targetSlot": "afternoon",
"preparationDays": 1,
"forerunDays": 0,
"orderDateTime": "2021-01-20T12:00:00+01:00"
},
{
"targetDate": "2021-01-22",
"targetSlot": "morning",
"preparationDays": 1,
"forerunDays": 0,
"orderDateTime": "2021-01-21T12:00:00+01:00"
}
]
}
]
}
ShippingOptions
Property | Type | Description |
---|---|---|
deliveryDayOptions
|
array[DeliveryDayOptions]
|
|
orderItemShippingOptions
|
array[OrderItemShippingOptions]
|
ShippingOverride
Property | Type | Description |
---|---|---|
name
|
string
|
Min: 1
|
targetDate
|
string[date]
|
|
targetSlot
|
string
|
{
"name": "default",
"targetDate": "2022-05-01"
}
Tax
Property | Type | Description |
---|---|---|
type
|
string
|
Values: VAT
|
rate
|
number[double]
|
Tax rate as decimal |
name
|
string
|
|
amount
|
number
|
Tax amount |
rateFormatted
|
string
|
Formatted tax rate |
amountFormatted
|
string
|
Formatted tax amount |
{
"tye": "VAT",
"rate": 0.08,
"name": "MWST",
"amount": 0.8,
"rateFormatted": "8 %",
"amountFormatted": "0.80"
}
TaxInfo
Property | Type | Description |
---|---|---|
vat
|
Tax
|
|
taxInclusion
|
string
|
Values: inclusive, exclusive, not_applicable
|
{
"vat": {
"tye": "VAT",
"rate": 0.08,
"name": "MWST",
"amount": 0.8,
"rateFormatted": "8 %",
"amountFormatted": "0.80"
}
}
TaxSummary
Property | Type | Description |
---|---|---|
taxes
|
array[Tax]
|
Customers
AccessRequestAcceptDto
Property | Type | Description |
---|---|---|
acceptIntoCustomerId
|
string
|
Customer ID, of the customer to accept the user into. |
autoApprove
|
boolean
|
Approve the request automatically. If set to false, the customer admin still needs to approve of the request, if set to true, the user will be created and able to log-in instantly. Approval by customer admins will be implemented at a later time, so currently this field must be set to true. |
assignedRoles
|
array[string]
|
|
updatedFormData
|
AccessRequestDto
|
The admin will be able to edit the data entered by the user. |
AccessRequestDeclineDto
Property | Type | Description |
---|---|---|
reason
|
string
|
Customer ID, of the customer to accept the user into. |
AccessRequestDto
Property | Type | Description |
---|---|---|
firstName
|
string
|
First name of the prospective user. |
lastName
|
string
|
Last name of the prospective user. |
company
|
string
|
Company that the user wants to register or gain access to. |
phoneNumber
|
string
|
Phone number of the prospective user. The client (shop operator) may contact the prospective user using this telephone number, for instance, to screen the prospective user/customer or negotiate conditions. |
emailAddress
|
string[email]
|
Min: 1
E-mail address of the prospective user. Some organisations allow the user to be accepted automatically if the user applies with an organizational e-mail address. |
existingCustomerDto
|
AccessRequestDtoExistingCustomer
|
To be given if the user wants access to an existing customer. existingCustomerDto and newCustomerDto are mutually exclusive. |
newCustomerDto
|
AccessRequestDtoNewCustomer
|
To be given if the user become a new customer. existingCustomerDto and newCustomerDto are mutually exclusive. |
locale
|
string[locale]
|
Locale code (de, en, fr, de_CH, ...) |
confirmationBaseUrl
|
string
|
A confirmation token will be appended to this URL to be included in the confirmation email sent to the user. |
AccessRequestDtoExistingCustomer
Property | Type | Description |
---|---|---|
customerNumber
|
string
|
Customer number. May help match the user to a customer. If the user enters both customer number and request code, then both need to belong to the same customer. Neither customerNumber nor requestCode is required, but giving either or both will speed up the process. |
requestCode
|
string
|
A request code. Some organizations distribute request codes, with which new users can be accepted automatically. Neither customerNumber nor requestCode is required, but giving either or both will speed up the process. |
AccessRequestDtoNewCustomer
Property | Type | Description |
---|---|---|
street
|
string
|
Postal address of the prospective customer. |
zipCode
|
string
|
Postal address of the prospective customer. |
city
|
string
|
Postal address of the prospective customer. |
Address
Address data
Property | Type | Description |
---|---|---|
title
|
string
|
Max: 50
Salutation |
titleCode
|
string
|
Values: ms, mr, unknown
Salutation code |
firstName
|
string
|
Max: 50
First name |
lastName
|
string
|
Max: 50
Last name |
company
|
string
|
Max: 50
Company name |
street
|
string
|
Max: 50
Address street |
zipCode
|
string
|
Max: 50
ZIP code |
city
|
string
|
Max: 50
Address city |
country
|
string
|
Min: 2
Max: 2
Country code |
phoneNumber
|
string
|
Max: 50
Phone number |
emailAddress
|
string
|
Max: 255
Email address |
remarks
|
string
|
Max: 255
Additional remarks about the address |
{
"title": "Mr.",
"firstName": "Hans",
"lastName": "Muster",
"company": "Muster AG",
"street": "Musterweg 1",
"zipCode": "8000",
"city": "Zurich",
"country": "CH",
"phoneNumber": "0445007710",
"emailAddress": "test@astina.io",
"remarks": "This is a remark"
}
AuthenticationToken
Property | Type | Description |
---|---|---|
user
|
AuthenticationToken_User
|
|
customer
|
AuthenticationToken_Customer
|
{
"user": {
"username": "test@astina.io",
"id": "12324-3434-3434",
"confirmed": true
},
"customer": {
"customerNumber": "10001",
"emailAddress": "test@astina.io",
"locale": "de_CH",
"firstName": "Hans",
"lastName": "Muster",
"company": "Muster AG",
"gender": "male",
"id": "43435-6565-6565"
}
}
AuthenticationToken_Customer
Property | Type | Description |
---|---|---|
customerNumber
|
string
|
Customer number |
emailAddress
|
string
|
Primary email address |
locale
|
string[locale]
|
Locale code (de, en, fr, de_CH, ...) |
firstName
|
string
|
First name |
lastName
|
string
|
Last name |
company
|
string
|
Company name |
gender
|
string
|
Values: male, female, unknown
|
id
|
string
|
Paloma customer ID |
catalog
|
string
|
Customer catalog |
AuthenticationToken_User
Property | Type | Description |
---|---|---|
username
|
string
|
|
id
|
string
|
Paloma user ID |
confirmed
|
boolean
|
|
locale
|
string[locale]
|
Locale code (de, en, fr, de_CH, ...) |
firstName
|
string
|
First name |
lastName
|
string
|
Last name |
permissions
|
array[string]
|
User permissions |
AutocompleteAddress
Property | Type | Description |
---|---|---|
title
|
string
|
Max: 50
|
titleCode
|
string
|
Values: mr, ms
|
firstName
|
string
|
Max: 50
|
lastName
|
string
|
Max: 50
|
company
|
string
|
Max: 50
|
street
|
string
|
Max: 50
|
zipCode
|
string
|
Max: 50
|
city
|
string
|
Max: 50
|
country
|
string
|
Min: 2
Max: 2
Country code |
phoneNumber
|
string
|
Max: 50
|
emailAddress
|
string
|
Max: 255
|
remarks
|
string
|
Max: 255
|
{
"title": "Mr.",
"firstName": "Hans",
"lastName": "Muster",
"company": "Muster AG",
"street": "Musterweg 1",
"zipCode": "8000",
"city": "Zurich",
"country": "CH",
"phoneNumber": "0445007710",
"emailAddress": "test@astina.io",
"remarks": "This is a remark"
}
Billing
Property | Type | Description |
---|---|---|
address
|
Address
|
|
paymentMethod
|
string
|
|
accountNumber
|
string
|
{
"address": {
"firstName": "Hans",
"lastName": "Muster",
"street": "Musterstrasse 1",
"zipCode": "4321",
"city": "Musterstadt",
"country": "CH",
"phoneNumber": "098 765 43 21",
"emailAddress": "test@astina.ch",
"remarks": "This is a remark"
},
"paymentMethod": "invoice"
}
ChangeWatchlistNameRequest
Property | Type | Description |
---|---|---|
name
|
string
|
Min: 1
Max: 60
|
Channel
A channel is a virtual store front. Each channel can have its own catalog (products and categories), prices, languages, shipping methods and payment settings.
Property | Type | Description |
---|---|---|
name
|
string
|
Channel name |
currencies
|
array[string]
|
Supported currencies by this channel (ISO 4217) |
locales
|
array[string]
|
Supported locales by this channel |
origins
|
array[string]
|
Known order origins by this channel |
customers
|
ChannelCustomerSettings
|
Customer settings for this channel |
[
{
"name": "b2c_ch",
"currencies": [
"CHF"
],
"locales": [
"de_CH",
"en_CH",
"fr_CH"
],
"customers": {
"countries": [
"CH",
"LI"
]
}
},
{
"name": "b2c_de",
"currencies": [
"EUR"
],
"locales": [
"de_DE",
"en_DE"
],
"customers": {
"countries": [
"DE"
]
}
},
{
"name": "b2b_ch",
"currencies": [
"CHF",
"EUR"
],
"locales": [
"de_CH",
"en_CH",
"fr_CH"
]
}
]
ChannelCustomerSettings
Customer settings for a channel
Property | Type | Description |
---|---|---|
countries
|
array[string]
|
Countries allowed in customer addresses |
ConfirmationToken
Property | Type | Description |
---|---|---|
token
|
string
|
Min: 1
Max: 50
|
{
"token": "4eeatk85pQQB9Dd8aBAADwswHZTFtBqF"
}
Customer
Property | Type | Description |
---|---|---|
id
|
string
|
Paloma customer ID |
type
|
string
|
Values: individual, organization
|
customerNumber
|
string
|
|
emailAddress
|
string
|
|
channel
|
string
|
|
locale
|
string[locale]
|
Locale code (de, en, fr, de_CH, ...) |
firstName
|
string
|
First name |
lastName
|
string
|
Last name |
company
|
string
|
Company name |
gender
|
string
|
Values: male, female, unknown
|
dateOfBirth
|
string[date]
|
|
contactAddress
|
Address
|
|
billingAddress
|
Address
|
|
shippingAddress
|
Address
|
|
shippingPreferences
|
ShippingPreferences
|
|
deliveryGroup
|
string
|
|
catalog
|
string
|
|
customerStatus
|
string
|
Values: enabled, disabled
|
priceGroups
|
array[string]
|
|
orderLimits
|
CustomerOrderLimits
|
|
users
|
array[MinimalUser]
|
|
customData
|
object
|
|
_validation
|
ObjectValidationInfo
|
{
"id": "43435-6565-6565",
"type": "individual",
"channel": "example",
"customerNumber": "989739",
"emailAddress": "test@astina.io",
"locale": "de_CH",
"firstName": "Hans",
"lastName": "Muster",
"company": "Muster AG",
"gender": "male",
"priceGroups": [
"47\/11",
"premium++"
]
}
CustomerAddress
Property | Type | Description |
---|---|---|
id
|
string
|
Unique customer address ID |
type
|
string
|
Values: contact, billing, shipping
Address type |
address
|
Address
|
|
defaultAddress
|
boolean
|
True if this address is the default address for its type |
externalId
|
string
|
Optional ID, e.g. an account number |
CustomerAddressUpdate
Property | Type | Description |
---|---|---|
type
|
string
|
Values: contact, billing, shipping
Address type |
address
|
Address
|
|
defaultAddress
|
boolean
|
True if this address is the default address for its type |
externalId
|
string
|
Optional ID, e.g. an account number |
CustomerCreateDto
Property | Type | Description |
---|---|---|
type
|
string
|
Default: individual
Values: individual, organization
|
emailAddress
|
string
|
Primary email address |
locale
|
string[locale]
|
Locale code (de, en, fr, de_CH, ...) |
firstName
|
string
|
First name |
lastName
|
string
|
Last name |
company
|
string
|
Company name |
gender
|
string
|
Values: male, female, unknown
|
dateOfBirth
|
string[date]
|
In yyyy-MM-dd format (e.g. 1980-01-01) |
customerStatus
|
string
|
Values: enabled, disabled
|
user
|
CustomerCreateDto_User
|
|
contactAddress
|
Address
|
|
billingAddress
|
Address
|
|
shippingAddress
|
Address
|
|
deliveryGroup
|
string
|
|
confirmationBaseUrl
|
string
|
A confirmation token will be appended to this URL to be included in the confirmation email sent to the user. |
{
"type": "individual",
"emailAddress": "test@astina.io",
"user": {
"username": "hmuster",
"password": "123456"
},
"locale": "de",
"confirmationBaseUrl": "http:\/\/example.org\/users\/confirm"
}
CustomerCreateDto_User
Property | Type | Description |
---|---|---|
username
|
string
|
Min: 3
Max: 100
|
emailAddress
|
string
|
|
password
|
string
|
Min: 3
|
CustomerOrderLimits
Property | Type | Description |
---|---|---|
minItemsPrice
|
integer[int32]
|
Minimum order items value. |
maxItemsPrice
|
integer[int32]
|
Maximum order items value. |
CustomerPage
Property | Type | Description |
---|---|---|
content
|
array[Customer]
|
|
size
|
integer[int32]
|
Page size |
number
|
integer[int32]
|
Page number, starting from 0 |
totalElements
|
integer[int64]
|
Total number of results for the search |
totalPages
|
integer[int32]
|
|
last
|
boolean
|
|
first
|
boolean
|
|
sort
|
array[Sort]
|
Sort property |
{
"content": [
{
"id": "43435-6565-6565",
"channel": "CH",
"customerNumber": "989739",
"emailAddress": "test@astina.io",
"locale": "de_CH",
"firstName": "Hans",
"lastName": "Muster",
"company": "Muster AG",
"gender": "male",
"priceGroups": [
"47\/11",
"premium++"
]
},
{
"id": "43435-4523-1587",
"channel": "CH",
"customerNumber": "989191",
"emailAddress": "test2@astina.io",
"locale": "de_CH",
"firstName": "Petra",
"lastName": "Muster",
"company": "Beispiel AG",
"gender": "female",
"priceGroups": [
"48\/11",
"premium+"
]
}
],
"totalElements": 2,
"last": true,
"first": true,
"sort": [
{
"direction": "DESC",
"property": "customerNumber",
"ascending": true,
"descending": false
}
],
"size": 20,
"number": 0
}
CustomerUpdateDto
Property | Type | Description |
---|---|---|
type
|
string
|
Values: individual, organization
|
emailAddress
|
string
|
Primary email address |
locale
|
string[locale]
|
Locale code (de, en, fr, de_CH, ...) |
firstName
|
string
|
First name |
lastName
|
string
|
Last name |
company
|
string
|
Company name |
gender
|
string
|
Values: male, female, unknown
|
dateOfBirth
|
string[date]
|
In yyyy-MM-dd format (e.g. 1980-01-01) |
customerStatus
|
string
|
Values: enabled, disabled
|
confirmationToken
|
string
|
|
confirmationBaseUrl
|
string
|
A confirmation token will be appended to this URL to be included in the confirmation email sent to the user. |
{
"locale": "de_CH",
"firstName": "Peter",
"lastName": "Muster",
"dateOfBirth": "1979-01-16"
}
CustomersOrder
Property | Type | Description |
---|---|---|
id
|
string
|
|
orderNumber
|
string
|
|
channel
|
string
|
|
orderDate
|
string[date-time]
|
|
locale
|
string[locale]
|
|
status
|
string
|
Values: unknown, draft, incoming, payment_pending, purchased, processed, assembly, shipped, delivered, canceled, returned, returned_partial, refunded
|
origin
|
string
|
|
currency
|
string
|
|
taxIncluded
|
boolean
|
|
customer
|
OrderCustomer
|
|
billing
|
Billing
|
|
shipping
|
Shipping
|
|
items
|
array[OrderItem]
|
|
adjustments
|
array[OrderAdjustment]
|
|
deliveries
|
array[Delivery]
|
|
pointOfSale
|
PointOfSale
|
|
totals
|
OrderTotals
|
|
comment
|
string
|
|
customerOrderNumber
|
string
|
{
"id": "f76885bf-e923-4924-a204-9c9943013cfc",
"orderNumber": "123",
"channel": "CH",
"orderDate": "2018-02-21T09:17:42.000+0000",
"locale": "de_CH",
"status": "processed",
"currency": "CHF",
"customer": {
"customerNumber": "6548",
"emailAddress": "test@astina.io",
"firstName": "Hans",
"lastName": "Muster",
"company": "Muster AG",
"gender": "unknown"
},
"billing": {
"address": {
"title": "Herr",
"firstName": "Hans",
"lastName": "Muster",
"street": "Musterstrasse 1",
"zipCode": "1234",
"city": "Musterhausen",
"country": "CH",
"phoneNumber": "012 345 67 89",
"emailAddress": "test@astina.ch",
"remarks": "This is a remark"
},
"paymentMethod": "invoice",
"accountNumber": "123"
},
"shipping": {
"address": {
"title": "Herr",
"firstName": "Hans",
"lastName": "Muster",
"street": "Musterstrasse 1",
"zipCode": "1234",
"city": "Musterhausen",
"country": "CH",
"phoneNumber": "012 345 67 89",
"emailAddress": "test@astina.ch",
"remarks": "This is a remark"
},
"addressReference": "321",
"deliveryMethod": "swiss_post",
"targetDate": "2018-02-27"
},
"items": [
{
"position": 1,
"sku": "300004233",
"name": "K\u00fcrbis-Curry-Cr\u00e8mesuppe",
"params": [],
"quantity": 1,
"unitPrice": "3.90",
"taxRate": "2.5 %",
"adjustmentsAmount": "0.00",
"image": {
"name": "168258ead73557d16e715488e8322a514aa42c8d_Kuerbis_Curry_Suppe_WEB.jpg",
"sources": [
{
"size": "full",
"url": "http:\/\/localhost:8193\/full\/1\/6\/8\/2\/168258ead73557d16e715488e8322a514aa42c8d_Kuerbis_Curry_Suppe_WEB.jpg"
},
{
"size": "large",
"url": "http:\/\/localhost:8193\/large\/1\/6\/8\/2\/168258ead73557d16e715488e8322a514aa42c8d_Kuerbis_Curry_Suppe_WEB.jpg"
},
{
"size": "medium",
"url": "http:\/\/localhost:8193\/medium\/1\/6\/8\/2\/168258ead73557d16e715488e8322a514aa42c8d_Kuerbis_Curry_Suppe_WEB.jpg"
},
{
"size": "small",
"url": "http:\/\/localhost:8193\/small\/1\/6\/8\/2\/168258ead73557d16e715488e8322a514aa42c8d_Kuerbis_Curry_Suppe_WEB.jpg"
}
]
},
"deliveryId": "200-72433811"
},
{
"position": 2,
"sku": "300003650",
"name": "Bircherm\u00fcesli",
"params": [],
"quantity": 1,
"unitPrice": "3.70",
"taxRate": "2.5 %",
"adjustmentsAmount": "0.00",
"deliveryId": "200-72433811"
},
{
"position": 3,
"sku": "130708200",
"name": "Multifrucht Saft",
"params": [],
"quantity": 1,
"unitPrice": "2.10",
"taxRate": "2.5 %",
"adjustmentsAmount": "0.00",
"deliveryId": "200-72433811"
},
{
"position": 4,
"sku": "300009716",
"name": "Fleischvogel",
"params": [],
"quantity": 1,
"unitPrice": "14.80",
"taxRate": "2.5 %",
"adjustmentsAmount": "0.00",
"deliveryId": "200-72433811"
},
{
"position": 5,
"sku": "300009719",
"name": "Lachsfilet",
"params": [],
"quantity": 1,
"unitPrice": "13.80",
"taxRate": "2.5 %",
"adjustmentsAmount": "0.00",
"deliveryId": "200-72433811"
},
{
"position": 6,
"sku": "300009727",
"name": "Ch\u00e4s-Chn\u00f6pfli",
"params": [],
"quantity": 1,
"unitPrice": "11.80",
"taxRate": "2.5 %",
"adjustmentsAmount": "0.00",
"deliveryId": "200-72433811"
},
{
"position": 7,
"sku": "300003763",
"name": "Cervelat-K\u00e4se-Salat",
"params": [],
"quantity": 1,
"unitPrice": "4.60",
"taxRate": "2.5 %",
"adjustmentsAmount": "0.00",
"deliveryId": "200-72433811"
},
{
"position": 8,
"sku": "300003808",
"name": "Mah-Mee",
"params": [],
"quantity": 1,
"unitPrice": "5.40",
"taxRate": "2.5 %",
"adjustmentsAmount": "0.00",
"deliveryId": "200-72433811"
}
],
"adjustments": [],
"deliveries": [
{
"id": "200-72433811",
"deliveryMethod": "swiss_post",
"sent": "2018-02-27T00:00:00.000+0000"
}
],
"totals": {
"itemsTotal": "60.10",
"shippingTotal": "0.00",
"orderTotal": "60.10",
"includedTaxes": [
{
"type": "vat",
"name": "MwSt.",
"rate": "2.5 %",
"amount": "1.52"
}
]
},
"comment": "This is a comment."
}
Delivery
Property | Type | Description |
---|---|---|
id
|
string
|
|
deliveryMethod
|
string
|
|
sent
|
string[date-time]
|
|
parcels
|
array[DeliveryParcel]
|
{
"id": "200-72433811",
"deliveryMethod": "swiss_post",
"sent": "2018-02-27T00:00:00.000+0000",
"parcels": [
{
"parcelNumber": "2",
"trackingCode": "9012844"
}
]
}
DeliveryDetails
Property | Type | Description |
---|---|---|
id
|
string
|
Delivery ID |
deliveryNumber
|
string
|
Delivery number |
status
|
string
|
Values: unknown, ready, shipped, delivered
Delivery status |
customerId
|
string
|
Customer ID |
deliveryMethod
|
string
|
|
targetDate
|
string[date]
|
Expected delivery date |
targetTime
|
string[time]
|
Expected delivery time on the delivery date |
sent
|
string[date-time]
|
|
delivered
|
string[date-time]
|
|
sender
|
PostalAddress
|
|
recipient
|
PostalAddress
|
|
orders
|
array[OrderInfo]
|
|
items
|
array[DeliveryItemDetails]
|
|
parcels
|
array[DeliveryParcel]
|
{
"id": "12345678-9012-3456-7890-123456789013",
"customerId": "66345678-7712-9956-4490-888856789013",
"deliveryMethod": "swiss_post",
"sent": "2020-01-20",
"sender": {
"salutation": "Mr.",
"name1": "Hans",
"name2": "Muster",
"name3": "Muster AG",
"street": "Musterweg 1",
"zipCode": "8000",
"city": "Zurich",
"country": "CH",
"phoneNumber": "0445007710",
"emailAddress": "test@astina.io",
"remarks": "This is a remark"
},
"recipient": {
"salutation": "Mr.",
"name1": "Hans",
"name2": "Muster",
"name3": "Muster AG",
"street": "Musterweg 1",
"zipCode": "8000",
"city": "Zurich",
"country": "CH",
"phoneNumber": "0445007710",
"emailAddress": "test@astina.io",
"remarks": "This is a remark"
},
"items": [
{
"sku": "300001234",
"orderId": "12345678-9012-3456-7890-123456789013",
"orderNumber": "66345678-7712-9956-4490-888856789013",
"position": 10,
"name": "Black Shoes",
"quantity": 12,
"quantityUnit": "PCE",
"customData": {
"customProperty1": "value1",
"customProperty2": "value2"
}
},
{
"sku": "300009876",
"orderId": "12345678-9012-3456-7890-123456789013",
"orderNumber": "66345678-7712-9956-4490-888856789013",
"position": 10,
"name": "Socks",
"quantity": 10,
"quantityUnit": "PCE",
"customData": {
"customProperty1": "value1",
"customProperty2": "value2"
}
}
],
"parcels": [
{
"parcelNumber": "1234",
"trackingCode": "8000123456",
"trackingUrl": "https:\/\/foo.bar\/8000123456"
},
{
"parcelNumber": "9876",
"trackingCode": "8000987654",
"trackingUrl": "https:\/\/foo.bar\/8000987654"
}
]
}
DeliveryItemDetails
Property | Type | Description |
---|---|---|
sku
|
string
|
|
orderId
|
string
|
|
orderNumber
|
string
|
|
position
|
integer[int32]
|
|
name
|
string
|
|
quantity
|
number[double]
|
|
quantityUnit
|
string
|
|
image
|
ProductImage
|
|
customData
|
object
|
{
"sku": "300001234",
"orderId": "12345678-9012-3456-7890-123456789013",
"orderNumber": "66345678-7712-9956-4490-888856789013",
"position": 10,
"name": "Black Shoes",
"quantity": 12,
"quantityUnit": "l",
"customData": {
"customProperty1": "value1",
"customProperty2": "value2"
}
}
DeliveryPage
Property | Type | Description |
---|---|---|
content
|
array[DeliveryDetails]
|
|
size
|
integer[int32]
|
Page size |
number
|
integer[int32]
|
Page number, starting from 0 |
totalElements
|
integer[int64]
|
Total number of results for the search |
totalPages
|
integer[int32]
|
|
last
|
boolean
|
|
first
|
boolean
|
|
sort
|
array[DeliveryPageSort]
|
Sort property |
{
"content": [
{
"id": "12345678-9012-3456-7890-123456789013",
"customerId": "66345678-7712-9956-4490-888856789013",
"deliveryMethod": "swiss_post",
"sent": "2020-01-20",
"sender": {
"salutation": "Mr.",
"name1": "Hans",
"name2": "Muster",
"name3": "Muster AG",
"street": "Musterweg 1",
"zipCode": "8000",
"city": "Zurich",
"country": "CH",
"phoneNumber": "0445007710",
"emailAddress": "test@astina.io",
"remarks": "This is a remark"
},
"recipient": {
"salutation": "Mr.",
"name1": "Hans",
"name2": "Muster",
"name3": "Muster AG",
"street": "Musterweg 1",
"zipCode": "8000",
"city": "Zurich",
"country": "CH",
"phoneNumber": "0445007710",
"emailAddress": "test@astina.io",
"remarks": "This is a remark"
},
"items": [
{
"sku": "300001234",
"orderId": "12345678-9012-3456-7890-123456789013",
"orderNumber": "66345678-7712-9956-4490-888856789013",
"position": 10,
"name": "Black Shoes",
"quantity": 12,
"quantityUnit": "PCE",
"customData": {
"customProperty1": "value1",
"customProperty2": "value2"
}
},
{
"sku": "300009876",
"orderId": "12345678-9012-3456-7890-123456789013",
"orderNumber": "66345678-7712-9956-4490-888856789013",
"position": 10,
"name": "Socks",
"quantity": 10,
"quantityUnit": "PCE",
"customData": {
"customProperty1": "value1",
"customProperty2": "value2"
}
}
],
"parcels": [
{
"parcelNumber": "1234",
"trackingCode": "8000123456",
"trackingUrl": "https:\/\/foo.bar\/8000123456"
},
{
"parcelNumber": "9876",
"trackingCode": "8000987654",
"trackingUrl": "https:\/\/foo.bar\/8000987654"
}
],
"deliverySlipUrl": "https:\/\/foo.bar\/delivery-slip"
}
],
"facets": [],
"totalPages": 1,
"totalElements": 1,
"last": true,
"first": true,
"numberOfElements": 1,
"sort": [
{
"direction": "ASC",
"property": "sent",
"ascending": true,
"descending": false
}
],
"size": 20,
"number": 0
}
DeliveryParcel
Property | Type | Description |
---|---|---|
parcelNumber
|
string
|
|
trackingCode
|
string
|
|
trackingUrl
|
string
|
{
"parcelNumber": "1234",
"trackingCode": "8000123456",
"trackingUrl": "https:\/\/foo.bar\/8000123456"
}
ImportResponse
Property | Type | Description |
---|---|---|
results
|
array[ImportSheet]
|
ImportRow
Property | Type | Description |
---|---|---|
row
|
integer[int32]
|
|
status
|
string
|
Values: ok, not_ok
Row processing status:
|
sku
|
string
|
Value from the SKU column, or from the product if the SKU column doesn't exist or is empty. |
quantity
|
number
|
Value from the quantity column. If this is missing, it'll assumed to
be |
unit
|
string
|
Defines in which unit the quantity is described |
portions
|
integer[int32]
|
The number of portions of the defined quantity. |
lookup
|
array[ImportRowLookup]
|
Detailed search order in the catalog. |
operation
|
string
|
Values: add, update_quantity, sum_quantity, identical, ignore_unspecific, ignore_missing_in_catalog, ignore_duplicate, ignore_invalid_quantity
Watchlist operation:
|
watchlistIndex
|
integer[int32]
|
Item index in the watchlist result. Available if |
ImportRowLookup
Property | Type | Description |
---|---|---|
cell
|
string
|
|
label
|
string
|
|
value
|
string
|
|
foundInCatalog
|
string
|
Values: not_applicable, not_found, unique, multiple
Catalog inquiry status:
|
ImportSheet
Property | Type | Description |
---|---|---|
sheetName
|
string
|
Min: 1
|
watchlistId
|
string
|
|
status
|
string
|
Values: ignored, created, updated
Sheet update status:
|
importRows
|
array[ImportRow]
|
|
removals
|
array[WatchlistItemRemoval]
|
IncludedTax
Property | Type | Description |
---|---|---|
type
|
string
|
Values: vat
|
name
|
string
|
|
rate
|
string
|
Tax rate with percent sign |
amount
|
string
|
Formatted tax amount without currency |
{
"type": "vat",
"name": "MwSt.",
"rate": "2.5 %",
"amount": "1.52"
}
MinimalUser
Property | Type | Description |
---|---|---|
id
|
string
|
|
username
|
string
|
|
emailAddress
|
string
|
|
firstName
|
string
|
|
lastName
|
string
|
{
"id": "43435-6565-6565",
"username": "hmuster",
"emailAddress": "testuser@astina.io"
}
ObjectValidationInfo
Property | Type | Description |
---|---|---|
properties
|
PropertyValidationInfos
|
OperationMetadata
Property | Type | Description |
---|---|---|
permitted
|
boolean
|
Order
Property | Type | Description |
---|---|---|
orderNumber
|
string
|
|
quantity
|
number
|
|
unit
|
string
|
|
validFrom
|
string[date-time]
|
OrderAdjustment
Property | Type | Description |
---|---|---|
position
|
integer[int32]
|
|
type
|
string
|
Values: shipping, tax, discount, surcharge
|
name
|
string
|
|
quantity
|
number
|
|
unitPrice
|
string
|
|
taxAmount
|
string
|
|
taxRate
|
string
|
Tax rate with percent sign |
grossItemTotal
|
string
|
|
netItemTotal
|
string
|
{
"position": 1,
"type": "promotion",
"name": "Christmas Sale",
"quantity": 1,
"unitPrice": "-5.40",
"taxAmount": "-0.14",
"taxRate": "2.5 %",
"grossItemTotal": "-5.40",
"netItemTotal": "-5.27"
}
OrderCustomer
Property | Type | Description |
---|---|---|
customerNumber
|
string
|
|
firstName
|
string
|
|
lastName
|
string
|
|
company
|
string
|
|
emailAddress
|
string
|
|
gender
|
string
|
Values: male, female, unknown
|
{
"customerNumber": "12345",
"emailAddress": "test@astina.io",
"firstName": "Hans",
"lastName": "Muster",
"company": "Muster AG",
"gender": "male"
}
OrderInfo
Property | Type | Description |
---|---|---|
orderId
|
string
|
|
orderNumber
|
string
|
|
orderDate
|
string[date-time]
|
OrderItem
Property | Type | Description |
---|---|---|
position
|
integer[int32]
|
|
sku
|
string
|
|
code
|
string
|
|
params
|
OrderItemParams
|
Arbitrary key-value pairs with additional parameters. |
name
|
string
|
|
quantity
|
number
|
|
portions
|
integer[int32]
|
The number of portions the order item quantity will be split into. |
unit
|
string
|
Localized name of the unit for this item |
unitCode
|
string
|
Code of the unit for this item |
unitPrice
|
string
|
|
linePrice
|
string
|
|
grossItemTotal
|
string
|
Deprecated: use |
originalPrice
|
string
|
|
originalLinePrice
|
string
|
|
adjustmentsTotal
|
string
|
|
taxRate
|
string
|
Tax rate with percent sign |
taxCategory
|
string
|
|
image
|
ProductImage
|
|
deliveryMethod
|
string
|
The projected delivery method |
deliveryTargetDate
|
string[date]
|
The projected delivery date |
deliveryTargetSlot
|
string
|
The projected delivery slot |
deliveryId
|
string
|
|
adjustments
|
array[OrderItemAdjustment]
|
|
customData
|
object
|
{
"position": 1,
"sku": "300004233",
"name": "K\u00fcrbis-Curry-Cr\u00e8mesuppe",
"params": [],
"quantity": 1,
"unitPrice": "3.90",
"taxRate": 0.025,
"adjustmentsTotal": "3.90",
"example": {
"name": "123_123.jpg",
"sources": [
{
"size": "large",
"url": "http:\/\/example.org\/images\/example-large.jpg"
},
{
"size": "medium",
"url": "http:\/\/example.org\/images\/example-medium.jpg"
},
{
"size": "small",
"url": "http:\/\/example.org\/images\/example-small.jpg"
}
]
}
}
OrderItemAdjustment
Property | Type | Description |
---|---|---|
type
|
string
|
Values: shipping, tax, discount, surcharge, promotion
|
description
|
string
|
|
amount
|
string
|
{
"type": "promotion",
"amount": "1.25"
}
OrderItemCodeOccurrence
Property | Type | Description |
---|---|---|
itemCode
|
string
|
|
count
|
integer[int64]
|
{
"itemCode": "206-365",
"count": 32
}
OrderPage
Property | Type | Description |
---|---|---|
content
|
array[CustomersOrder]
|
|
size
|
integer[int32]
|
Page size |
number
|
integer[int32]
|
Page number, starting from 0 |
totalElements
|
integer[int64]
|
Total number of results for the search |
totalPages
|
integer[int32]
|
|
last
|
boolean
|
|
first
|
boolean
|
|
sort
|
array[Sort]
|
Sort property |
{
"content": [
{
"id": "12345678-9012-3456-7890-123456789012",
"orderNumber": "123",
"channel": "CH",
"orderDate": "2018-03-14T10:07:26.000+0000",
"locale": "de_CH",
"status": "processed",
"currency": "CHF",
"customer": {
"customerNumber": "6548",
"emailAddress": "test@astina.io",
"firstName": "Hans",
"lastName": "Muster",
"company": "Muster AG",
"gender": "unknown"
},
"billing": {
"address": {
"title": "Herr",
"firstName": "Hans",
"lastName": "Muster",
"street": "Musterweg 1",
"zipCode": "8000",
"city": "Z\u00fcrich",
"country": "CH",
"emailAddress": "test@astina.io",
"remarks": "This is a remark"
},
"paymentMethod": "invoice",
"accountNumber": "123"
},
"shipping": {
"address": {
"title": "Herr",
"firstName": "Hans",
"lastName": "Muster",
"street": "Musterweg 1",
"zipCode": "8000",
"city": "Z\u00fcrich",
"country": "CH",
"emailAddress": "test@astina.io",
"remarks": "This is a remark"
},
"addressReference": "321",
"deliveryMethod": "swiss_post",
"targetDate": "2018-03-15"
},
"items": [
{
"position": 1,
"sku": "300009431",
"name": "Lachsfilet",
"params": {
"short_number": "401"
},
"quantity": 1,
"unitPrice": "13.80",
"taxRate": "2.5 %",
"adjustmentsAmount": "0.00",
"image": {
"name": "443c89024eac98732a037b535dc141ca6d8f7840_Lachsfilet_pochiert_UC_DL_WEB.jpg",
"sources": [
{
"size": "full",
"url": "https:\/\/localhost\/images\/full\/4\/4\/3\/c\/443c89024eac98732a037b535dc141ca6d8f7840_Lachsfilet_pochiert_UC_DL_WEB.jpg"
},
{
"size": "large",
"url": "https:\/\/localhost\/images\/large\/4\/4\/3\/c\/443c89024eac98732a037b535dc141ca6d8f7840_Lachsfilet_pochiert_UC_DL_WEB.jpg"
},
{
"size": "medium",
"url": "https:\/\/localhost\/images\/medium\/4\/4\/3\/c\/443c89024eac98732a037b535dc141ca6d8f7840_Lachsfilet_pochiert_UC_DL_WEB.jpg"
},
{
"size": "small",
"url": "https:\/\/localhost\/images\/small\/4\/4\/3\/c\/443c89024eac98732a037b535dc141ca6d8f7840_Lachsfilet_pochiert_UC_DL_WEB.jpg"
}
]
}
},
{
"position": 10001,
"sku": "300009402",
"name": "Trinkwasser",
"quantity": 1,
"unitPrice": "0.00",
"taxRate": "2.5 %",
"adjustmentsAmount": "0.00",
"image": {
"name": "7117ccd8da3cf7c8db6eee04a37201c3740105ea_Trinkwasser.jpg",
"sources": [
{
"size": "full",
"url": "https:\/\/localhost\/images\/full\/7\/1\/1\/7\/7117ccd8da3cf7c8db6eee04a37201c3740105ea_Trinkwasser.jpg"
},
{
"size": "large",
"url": "https:\/\/localhost\/images\/large\/7\/1\/1\/7\/7117ccd8da3cf7c8db6eee04a37201c3740105ea_Trinkwasser.jpg"
},
{
"size": "medium",
"url": "https:\/\/localhost\/images\/medium\/7\/1\/1\/7\/7117ccd8da3cf7c8db6eee04a37201c3740105ea_Trinkwasser.jpg"
},
{
"size": "small",
"url": "https:\/\/localhost\/images\/small\/7\/1\/1\/7\/7117ccd8da3cf7c8db6eee04a37201c3740105ea_Trinkwasser.jpg"
}
]
}
}
],
"adjustments": [
{
"position": 1,
"type": "surcharge",
"name": "Differenz zum Mindestbestellbetrag",
"quantity": 1,
"unitPrice": "11.20",
"taxAmount": "0.00",
"taxRate": "0 %",
"grossItemTotal": "11.20",
"netItemTotal": "11.20"
},
{
"position": 2,
"type": "shipping",
"name": "Versandkostenanteil",
"quantity": 1,
"unitPrice": "8.50",
"taxAmount": "0.70",
"taxRate": "7.7 %",
"grossItemTotal": "8.50",
"netItemTotal": "7.80"
}
],
"deliveries": [],
"totals": {
"itemsTotal": "13.80",
"shippingTotal": "8.50",
"surchargeTotal": "11.20",
"orderTotal": "33.50",
"includedTaxes": [
{
"type": "vat",
"name": "MwSt.",
"rate": "2.5 %",
"amount": "0.34"
},
{
"type": "vat",
"name": "MwSt.",
"rate": "7.7 %",
"amount": "0.70"
}
]
}
},
{
"id": "12345678-9012-3456-7890-123456789013",
"orderNumber": "124",
"channel": "CH",
"orderDate": "2018-03-14T12:01:56.000+0000",
"locale": "de_CH",
"status": "processed",
"currency": "CHF",
"customer": {
"customerNumber": "6548",
"emailAddress": "test@astina.io",
"firstName": "Hans",
"lastName": "Muster",
"company": "Muster AG",
"gender": "unknown"
},
"billing": {
"address": {
"title": "Herr",
"firstName": "Hans",
"lastName": "Muster",
"street": "Musterweg 1",
"zipCode": "8000",
"city": "Z\u00fcrich",
"country": "CH",
"emailAddress": "test@astina.io",
"remarks": "This is a remark"
},
"paymentMethod": "invoice",
"accountNumber": "123"
},
"shipping": {
"address": {
"title": "Herr",
"firstName": "Hans",
"lastName": "Muster",
"street": "Musterweg 1",
"zipCode": "8000",
"city": "Z\u00fcrich",
"country": "CH",
"emailAddress": "test@astina.io",
"remarks": "This is a remark"
},
"addressReference": "321",
"deliveryMethod": "swiss_post",
"targetDate": "2018-03-16"
},
"items": [
{
"position": 1,
"sku": "300009431",
"name": "Lachsfilet",
"params": {
"short_number": "401"
},
"quantity": 1,
"unitPrice": "13.80",
"taxRate": "2.5 %",
"adjustmentsAmount": "0.00",
"image": {
"name": "443c89024eac98732a037b535dc141ca6d8f7840_Lachsfilet_pochiert_UC_DL_WEB.jpg",
"sources": [
{
"size": "full",
"url": "https:\/\/localhost\/images\/full\/4\/4\/3\/c\/443c89024eac98732a037b535dc141ca6d8f7840_Lachsfilet_pochiert_UC_DL_WEB.jpg"
},
{
"size": "large",
"url": "https:\/\/localhost\/images\/large\/4\/4\/3\/c\/443c89024eac98732a037b535dc141ca6d8f7840_Lachsfilet_pochiert_UC_DL_WEB.jpg"
},
{
"size": "medium",
"url": "https:\/\/localhost\/images\/medium\/4\/4\/3\/c\/443c89024eac98732a037b535dc141ca6d8f7840_Lachsfilet_pochiert_UC_DL_WEB.jpg"
},
{
"size": "small",
"url": "https:\/\/localhost\/images\/small\/4\/4\/3\/c\/443c89024eac98732a037b535dc141ca6d8f7840_Lachsfilet_pochiert_UC_DL_WEB.jpg"
}
]
}
},
{
"position": 10001,
"sku": "300009402",
"name": "Trinkwasser",
"quantity": 1,
"unitPrice": "0.00",
"taxRate": "2.5 %",
"adjustmentsAmount": "0.00",
"image": {
"name": "7117ccd8da3cf7c8db6eee04a37201c3740105ea_Trinkwasser.jpg",
"sources": [
{
"size": "full",
"url": "https:\/\/localhost\/images\/full\/7\/1\/1\/7\/7117ccd8da3cf7c8db6eee04a37201c3740105ea_Trinkwasser.jpg"
},
{
"size": "large",
"url": "https:\/\/localhost\/images\/large\/7\/1\/1\/7\/7117ccd8da3cf7c8db6eee04a37201c3740105ea_Trinkwasser.jpg"
},
{
"size": "medium",
"url": "https:\/\/localhost\/images\/medium\/7\/1\/1\/7\/7117ccd8da3cf7c8db6eee04a37201c3740105ea_Trinkwasser.jpg"
},
{
"size": "small",
"url": "https:\/\/localhost\/images\/small\/7\/1\/1\/7\/7117ccd8da3cf7c8db6eee04a37201c3740105ea_Trinkwasser.jpg"
}
]
}
}
],
"adjustments": [
{
"position": 1,
"type": "surcharge",
"name": "Differenz zum Mindestbestellbetrag",
"quantity": 1,
"unitPrice": "11.20",
"taxAmount": "0.00",
"taxRate": "0 %",
"grossItemTotal": "11.20",
"netItemTotal": "11.20"
},
{
"position": 2,
"type": "shipping",
"name": "Versandkostenanteil",
"quantity": 1,
"unitPrice": "8.50",
"taxAmount": "0.70",
"taxRate": "7.7 %",
"grossItemTotal": "8.50",
"netItemTotal": "7.80"
}
],
"deliveries": [],
"totals": {
"itemsTotal": "13.80",
"shippingTotal": "8.50",
"surchargeTotal": "11.20",
"orderTotal": "33.50",
"includedTaxes": [
{
"type": "vat",
"name": "MwSt.",
"rate": "2.5 %",
"amount": "0.34"
},
{
"type": "vat",
"name": "MwSt.",
"rate": "7.7 %",
"amount": "0.70"
}
]
}
}
],
"totalPages": 1,
"totalElements": 2,
"last": true,
"first": true,
"sort": [
{
"direction": "ASC",
"property": "orderDate",
"ascending": true,
"descending": false
}
],
"size": 20,
"number": 0
}
OrderStatus
Property | Type | Description |
---|---|---|
orderNumber
|
string
|
|
status
|
string
|
Values: unknown, pending, shipped, delivered
|
deliveryMethod
|
string
|
Values: swiss_post, dhl
|
trackingCode
|
string
|
|
language
|
string
|
|
trackingInfos
|
array[ShipmentsTrackingInfo]
|
OrderTotals
Property | Type | Description |
---|---|---|
itemsTotal
|
string
|
|
shippingTotal
|
string
|
|
taxTotal
|
string
|
|
discountTotal
|
string
|
|
surchargeTotal
|
string
|
|
orderTotal
|
string
|
|
netOrderTotal
|
string
|
|
includedTaxes
|
array[IncludedTax]
|
PasswordResetToken
Property | Type | Description |
---|---|---|
user
|
string
|
User ID |
emailAddress
|
string
|
|
token
|
string
|
Token for the password confirmation URL |
expires
|
string[date-time]
|
PasswordResetTokenCreateDto
Property | Type | Description |
---|---|---|
emailAddress
|
string
|
|
confirmationBaseUrl
|
string
|
Min: 1
A confirmation token will be appended to this URL to be included in the confirmation email sent to the user. |
{
"emailAddress": "test@astina.io",
"confirmationBaseUrl": "http:\/\/example.org\/users\/confirm"
}
PasswordResetTokenPasswordDto
Property | Type | Description |
---|---|---|
password
|
string
|
Min: 1
|
{
"password": "jahI&\/g4s86.KDs"
}
PasswordUpdate
Property | Type | Description |
---|---|---|
username
|
string
|
Min: 1
|
currentPassword
|
string
|
Min: 1
|
newPassword
|
string
|
Min: 1
|
{
"username": "test@astina.ch",
"currentPassword": "123456",
"newPassword": "jahI&\/g4s86.KDs"
}
PaymentInstrumentDto
Property | Type | Description |
---|---|---|
id
|
string
|
|
type
|
string
|
Localized payment means |
maskedCardNumber
|
string
|
|
expirationMonth
|
string
|
|
expirationYear
|
string
|
|
expired
|
boolean
|
{
"id": "01E4TDTA7W5GPZ06FJBCJZVZJ9",
"type": "Mastercard",
"maskedCardNumber": "510000xxxxxx0008",
"expirationMonth": "12",
"expirationYear": "24",
"expired": false
}
PointOfSale
Property | Type | Description |
---|---|---|
code
|
string
|
PostalAddress
Property | Type | Description |
---|---|---|
salutation
|
string
|
|
name1
|
string
|
|
name2
|
string
|
|
name3
|
string
|
|
street
|
string
|
|
zipCode
|
string
|
|
city
|
string
|
|
country
|
string
|
Country code |
phoneNumber
|
string
|
|
emailAddress
|
string
|
|
remarks
|
string
|
{
"salutation": "Mr.",
"name1": "Hans",
"name2": "Muster",
"name3": "Muster AG",
"street": "Musterweg 1",
"zipCode": "8000",
"city": "Zurich",
"country": "CH",
"phoneNumber": "0445007710",
"emailAddress": "test@astina.io",
"remarks": "This is a remark"
}
ProductPage
Property | Type | Description |
---|---|---|
content
|
array[Product]
|
|
size
|
integer[int32]
|
Page size |
number
|
integer[int32]
|
Page number, starting from 0 |
totalElements
|
integer[int64]
|
Total number of results for the search |
totalPages
|
integer[int32]
|
|
last
|
boolean
|
|
first
|
boolean
|
|
sort
|
array[Sort]
|
Sort property |
ProductVariant
Property | Type | Description |
---|---|---|
sku
|
string
|
Stock keeping unit (unique) |
name
|
string
|
|
pricing
|
Pricing
|
|
options
|
array[ProductOption]
|
|
images
|
array[ProductImage]
|
|
availability
|
ProductAvailability
|
[
{
"sku": "10704-820-1",
"name": "Absatzsandale Dunkelblau",
"pricing": {
"currency": "CHF",
"grossPrice": 99,
"netPrice": 91.65,
"originalGrossPrice": 219,
"grossPriceFormatted": "99.00",
"netPriceFormatted": "91.65",
"originalGrossPriceFormatted": "219.00",
"taxes": {
"vat": {
"rate": 0.08,
"name": "MWST",
"amount": 7.35,
"rateFormatted": "8 %",
"amountFormatted": "7.35"
}
}
},
"options": [
{
"option": "size",
"label": "Gr\u00f6sse",
"value": "36"
},
{
"option": "color",
"label": "Farbe",
"value": "dunkelblau"
}
],
"images": [
{
"name": "10704_820a.jpg",
"sources": [
{
"size": "large",
"url": "http:\/\/navy-dev.astina.io\/images\/examples\/10704_820a.jpg"
},
{
"size": "medium",
"url": "http:\/\/navy-dev.astina.io\/images\/examples\/10704_820a.jpg"
},
{
"size": "small",
"url": "http:\/\/navy-dev.astina.io\/images\/examples\/10704_820a_overview.jpg"
}
]
},
{
"name": "10704_820c.jpg",
"sources": [
{
"size": "large",
"url": "http:\/\/navy-dev.astina.io\/images\/examples\/10704_820c.jpg"
},
{
"size": "medium",
"url": "http:\/\/navy-dev.astina.io\/images\/examples\/10704_820c.jpg"
},
{
"size": "small",
"url": "http:\/\/navy-dev.astina.io\/images\/examples\/10704_820c.jpg"
}
]
}
],
"availability": {
"available": true,
"stocks": [
{
"inventory": "chzh01",
"stock": 12
},
{
"inventory": "chzh02",
"stock": 4
}
]
}
}
]
SearchFilter
Property | Type | Description |
---|---|---|
attribute
|
string
|
Full attribute path (e.g. customer.customerId) |
operator
|
string
|
Values: eq, neq, contains, not_contains, contains_term, not_contains_term, gt, lt, gte, lte
|
values
|
array[string]
|
Multiple filter values are applied using OR. |
{
"attribute": "billing.paymentMethod",
"values": [
"electronic",
"invoice"
]
}
SearchRequest
Property | Type | Description |
---|---|---|
query
|
string
|
Search keywords |
filters
|
array[SearchFilter]
|
Search filters; will be applied using AND operations. |
{
"query": "loafers",
"filters": [
{
"attribute": "status",
"values": [
"shipped"
]
}
]
}
ShipmentsTrackingEvent
Property | Type | Description |
---|---|---|
date
|
string[date]
|
|
description
|
string
|
|
location
|
string
|
ShipmentsTrackingInfo
Property | Type | Description |
---|---|---|
status
|
string
|
|
events
|
array[ShipmentsTrackingEvent]
|
Shipping
Property | Type | Description |
---|---|---|
address
|
Address
|
|
addressReference
|
string
|
|
deliveryMethod
|
string
|
|
targetDate
|
string[date]
|
{
"address": {
"title": "Herr",
"firstName": "Hans",
"lastName": "Muster",
"street": "Musterstr. 1",
"zipCode": "1234",
"city": "Musterhausen",
"country": "CH",
"phoneNumber": "012 345 67 89",
"emailAddress": "test@astina.ch",
"remarks": "This is a remark"
},
"deliveryMethod": "swiss_post",
"targetDate": "2018-02-27"
}
ShippingPreferences
Property | Type | Description |
---|---|---|
preferredShippingMethod
|
string
|
Sort
Property | Type | Description |
---|---|---|
direction
|
string
|
Values: ASC, DESC
|
property
|
string
|
|
ignoreCase
|
boolean
|
|
ascending
|
boolean
|
|
descending
|
boolean
|
StreetAndHouseResponse
List of matched street and house entries
Property | Type | Description |
---|---|---|
content
|
array[string]
|
Tax
Property | Type | Description |
---|---|---|
type
|
string
|
Values: VAT
|
rate
|
number[double]
|
Tax rate as decimal |
name
|
string
|
|
amount
|
number
|
Tax amount |
rateFormatted
|
string
|
Formatted tax rate |
amountFormatted
|
string
|
Formatted tax amount |
{
"tye": "VAT",
"rate": 0.08,
"name": "MWST",
"amount": 0.8,
"rateFormatted": "8 %",
"amountFormatted": "0.80"
}
TaxInfo
Property | Type | Description |
---|---|---|
vat
|
Tax
|
{
"vat": {
"tye": "VAT",
"rate": 0.08,
"name": "MWST",
"amount": 0.8,
"rateFormatted": "8 %",
"amountFormatted": "0.80"
}
}
TaxSummary
Property | Type | Description |
---|---|---|
taxes
|
array[Tax]
|
User
Property | Type | Description |
---|---|---|
id
|
string
|
|
username
|
string
|
|
emailAddress
|
string
|
|
enabled
|
boolean
|
|
confirmed
|
boolean
|
|
firstName
|
string
|
|
lastName
|
string
|
|
locale
|
string[locale]
|
|
timeZone
|
string
|
|
roles
|
array[UserRoleInfo]
|
{
"id": "43435-6565-6565",
"username": "hmuster",
"emailAddress": "testuser@astina.io",
"enabled": false,
"confirmed": false
}
UserAccessRequest
Property | Type | Description |
---|---|---|
id
|
string
|
|
created
|
string[date-time]
|
|
modified
|
string[date-time]
|
|
emailAddress
|
string
|
|
channel
|
string
|
|
formData
|
AccessRequestDto
|
|
state
|
string
|
Values: PENDING, INVALID, PROCESSING_ERROR, ACCEPTED, APPROVED, DECLINED
|
assignedRoles
|
array[string]
|
|
acceptedIntoCustomerId
|
string
|
|
createdUserId
|
string
|
UserAccessRequestPage
Property | Type | Description |
---|---|---|
content
|
array[UserAccessRequest]
|
|
size
|
integer[int32]
|
Page size |
number
|
integer[int32]
|
Page number, starting from 0 |
totalElements
|
integer[int64]
|
Total number of results for the search |
totalPages
|
integer[int32]
|
|
last
|
boolean
|
|
first
|
boolean
|
|
sort
|
array[Sort]
|
Sort property |
UserCreateDto
Property | Type | Description |
---|---|---|
username
|
string
|
Min: 3
Max: 255
|
emailAddress
|
string
|
Min: 3
Max: 255
|
enabled
|
boolean
|
Default: 1
|
firstName
|
string
|
Min: 1
Max: 255
|
lastName
|
string
|
Min: 1
Max: 255
|
locale
|
string[locale]
|
|
sendInvitation
|
boolean
|
|
timeZone
|
string
|
|
roles
|
array[string]
|
{
"emailAddress": "testuser@astina.io",
"username": "testuser",
"enabled": false,
"firstName": "Hans",
"lastName": "Muster",
"locale": "de_CH",
"timeZone": "Europe\/Zurich",
"roles": [
{
"name": "ROLE_BUYER",
"description": "Buyer",
"permissions": [
"CATALOG_VIEW",
"ORDERS_VIEW",
"ORDERS_CREATE"
]
}
]
}
UserCredentials
Property | Type | Description |
---|---|---|
username
|
string
|
Min: 1
|
password
|
string
|
Min: 1
|
{
"username": "test@astina.io",
"password": "123456"
}
UserRef
Property | Type | Description |
---|---|---|
userId
|
string
|
|
username
|
string
|
|
emailAddress
|
string
|
|
name
|
string
|
Full name of the user (if available) |
UserRole
User role
Property | Type | Description |
---|---|---|
id
|
string
|
|
name
|
string
|
Unique role name |
label
|
string
|
Localized role label |
category
|
string
|
|
defaultRole
|
boolean
|
True if new users will get this role assigned by default. |
permissions
|
array[UserRolePermission]
|
UserRoleInfo
Property | Type | Description |
---|---|---|
name
|
string
|
|
label
|
string
|
|
category
|
string
|
|
permissions
|
array[string]
|
List of permission codes (e.g. 'ROLE_PERM_PORTAL_USERS_MANAGE') |
{
"name": "ROLE_BUYER",
"description": "Buyer",
"permissions": [
"ROLE_PERM_PORTAL_CATALOG_VIEW",
"ROLE_PERM_PORTAL_ORDERS_VIEW",
"ROLE_PERM_PORTAL_ORDERS_CREATE"
]
}
UserUpdateDto
Property | Type | Description |
---|---|---|
username
|
string
|
Min: 3
Max: 255
|
emailAddress
|
string
|
Min: 3
Max: 255
|
enabled
|
boolean
|
|
firstName
|
string
|
Min: 1
Max: 255
|
lastName
|
string
|
Min: 1
Max: 255
|
locale
|
string[locale]
|
|
timeZone
|
string
|
|
roles
|
array[string]
|
{
"username": "testuser",
"emailAddress": "test@astina.ch",
"enabled": true
}
ValidationResponse
Property | Type | Description |
---|---|---|
valid
|
boolean
|
Whether the address validation was a success. |
errors
|
array[ValidationResponseError]
|
ValidationResponseError
Property | Type | Description |
---|---|---|
code
|
string
|
Values: address.validate.zipCodeNotFound, address.validate.cityNotFound, address.validate.zipCodeNotInCountry, address.validate.houseMissingFromStreet, address.validate.streetNotFound, address.validate.houseNotFoundInStreet
Unique code per failure reason. |
property
|
string
|
Path to the request property that failed validation. |
message
|
string
|
Readable failure reason. Not localized. |
Watchlist
Property | Type | Description |
---|---|---|
watchlistId
|
string
|
|
channel
|
string
|
The channel to which this watchlist belongs. |
customerId
|
string
|
The ID of the customer to which this watchlist belongs. |
customerName
|
string
|
The name of the customer to which this watchlist belongs. |
name
|
string
|
|
createdAt
|
string[date-time]
|
|
createdBy
|
UserRef
|
|
modifiedAt
|
string[date-time]
|
|
modifiedBy
|
UserRef
|
|
sharedAt
|
string[date-time]
|
|
sharedBy
|
UserRef
|
|
itemCount
|
integer[int32]
|
|
itemOffset
|
integer[int32]
|
Item offset applied for the returned items list. |
itemLimit
|
integer[int32]
|
Item limit that was passed with the API request to get the watchlist. |
type
|
string
|
Values: manual, auto
|
shareStatus
|
string
|
Values: enabled, disabled
Turn sharing on/off. If 'enabled', an access token is provided for the watchlist. |
accessToken
|
string
|
If set, this token can be used to create sharing links for this watchlist. |
accessTokenExpires
|
string[date-time]
|
Access token expiration date/time. |
publicName
|
string
|
Optional public name which should be used instead of |
items
|
array[WatchlistItem]
|
|
_operations
|
object
|
WatchlistItem
Property | Type | Description |
---|---|---|
id
|
string
|
|
position
|
integer[int32]
|
Position within the watchlist. 0-based and consecutive. |
sku
|
string
|
|
quantity
|
number
|
|
unit
|
string
|
Localized name of the unit for this item |
unitCode
|
string
|
Code of the unit for this item |
createdAt
|
string[date-time]
|
|
createdBy
|
UserRef
|
|
modifiedAt
|
string[date-time]
|
|
modifiedBy
|
UserRef
|
|
title
|
string
|
|
description
|
string
|
|
image
|
object
|
|
variant
|
object
|
|
successors
|
array[string]
|
List of successor articles |
portions
|
integer[int32]
|
The number of portions the provided quantity will be split into. |
portionSize
|
number
|
The size of an individual portion. This value is calculated from the |
{
"id": 123456,
"sku": "10704-820-1",
"title": "Absatzsandale Dunkelblau",
"description": "Verspielte Absatzsandale aus feinem Lackleder.",
"variant": {
"sku": "10704-820-1",
"name": "Absatzsandale Dunkelblau",
"price": {
"currency": "CHF",
"unitPrice": "99.00",
"unit": "piece"
},
"options": [
{
"option": "size",
"label": "Gr\u00f6sse",
"value": "36"
},
{
"option": "color",
"label": "Farbe",
"value": "dunkelblau"
}
],
"attributes": {
"heel": {
"type": "heel",
"label": "Absatz",
"value": "2 cm",
"values": [
"2 cm"
]
}
},
"images": [
{
"name": "10704_820a.jpg",
"sources": [
{
"size": "large",
"url": "https:\/\/paloma.one\/images\/examples\/10704_820a.jpg"
},
{
"size": "medium",
"url": "https:\/\/paloma.one\/images\/examples\/10704_820a.jpg"
},
{
"size": "small",
"url": "https:\/\/paloma.one\/images\/examples\/10704_820a_overview.jpg"
}
]
}
],
"availability": {
"available": true,
"stocks": [
{
"inventory": "chzh01",
"stock": 12
},
{
"inventory": "chzh02",
"stock": 4
}
]
}
},
"successors": [],
"createdAt": "2000-01-23T04:56:07.000+00:00",
"createdBy": {
"emailAddress": "test@astina.io",
"userId": 123456,
"username": "hmuster"
},
"modifiedAt": "2000-01-23T04:56:07.000+00:00",
"modifiedBy": {
"emailAddress": "test@astina.io",
"userId": 123456,
"username": "hmuster"
}
}
WatchlistItemCreateDto
Property | Type | Description |
---|---|---|
sku
|
string
|
Product variant SKU |
unit
|
string
|
Product variant unit code |
quantity
|
number
|
Default: 1
|
portions
|
integer[int32]
|
WatchlistItemRemoval
An item that has been removed from the watchlist.
Property | Type | Description |
---|---|---|
sku
|
string
|
|
quantity
|
number
|
WatchlistItemUpdateDto
Property | Type | Description |
---|---|---|
unit
|
string
|
Product variant unit code |
quantity
|
number
|
Default: 1
|
portions
|
integer[int32]
|
WatchlistList
Property | Type | Description |
---|---|---|
items
|
array[WatchlistRef]
|
WatchlistRef
Property | Type | Description |
---|---|---|
watchlistId
|
string
|
|
channel
|
string
|
The channel to which this watchlist belongs. |
customerId
|
string
|
The ID of the customer to which this watchlist belongs. |
customerName
|
string
|
The name of the customer to which this watchlist belongs. |
name
|
string
|
|
createdAt
|
string[date-time]
|
|
createdBy
|
UserRef
|
|
modifiedAt
|
string[date-time]
|
|
modifiedBy
|
UserRef
|
|
sharedAt
|
string[date-time]
|
|
sharedBy
|
UserRef
|
|
itemCount
|
integer[int32]
|
|
type
|
string
|
Values: manual, auto
|
shareStatus
|
string
|
Values: enabled, disabled
|
accessToken
|
string
|
If set, this token can be used to create sharing links for this watchlist. |
accessTokenExpires
|
string[date-time]
|
Access token expiration date/time. |
publicName
|
string
|
Optional public name which should be used instead of |
_operations
|
object
|
WatchlistSharingSettings
Sharing settings for this watchlist
Property | Type | Description |
---|---|---|
shareStatus
|
string
|
Values: enabled, disabled
Turn sharing on/off. If 'enabled', an access token is provided for the watchlist. |
cycleAccessToken
|
boolean
|
If set to true, the access token will be re-created (invalidating the current access token). |
publicName
|
string
|
Optional name to use when sharing this watchlist. If empty, the watchlist name will be used. |
shareUntil
|
string[date-time]
|
Optional expiration date. After this date, the watchlist will not be accessible using the access token. |
ZipResponse
Property | Type | Description |
---|---|---|
content
|
array[ZipResponseZip]
|
ZipResponseZip
Property | Type | Description |
---|---|---|
zipCode
|
string
|
|
city
|
string
|