Skip to content

Create categories

POST
/merchants/{merchantCode}/categories
curl --request POST \
--url https://catalog.shopgate.io/v1/merchants/example/categories \
--header 'Content-Type: application/json' \
--data '{ "categories": [ { "code": "someCode", "parentCategoryCode": "ParentCategoryA", "image": { "en-us": "string in english", "de-de": "Zeichenkette auf Deutsch" }, "name": { "en-us": "string in english", "de-de": "Zeichenkette auf Deutsch" }, "url": { "en-us": "string in english", "de-de": "Zeichenkette auf Deutsch" }, "sequenceId": 1, "description": { "en-us": "string in english", "de-de": "Zeichenkette auf Deutsch" }, "externalUpdateDate": "2018-12-15T00:00:23.114Z", "status": "active" } ] }'

Create new categories.

Localizations

The following properties are localized:

  • name
  • image
  • url
  • description

see Entity Localization for further information.

merchantCode
required
string
<= 255 characters
catalogCode
string
<= 255 characters
Media typeapplication/json
object
categories
required
Array<object>
>= 1 items
object
code
required

Human readable code of the entity

string
>= 1 characters <= 255 characters
Example
someCode
parentCategoryCode
null | string
>= 1 characters <= 255 characters
Example
ParentCategoryA
image

Localization object, see Entity Localization for further information.

object
key
additional properties
string
>= 1 characters <= 255 characters
Example
{
"en-us": "string in english",
"de-de": "Zeichenkette auf Deutsch"
}
name
required

Localization object, see Entity Localization for further information.

object
key
additional properties
string
>= 1 characters <= 255 characters
Example
{
"en-us": "string in english",
"de-de": "Zeichenkette auf Deutsch"
}
url

Localization object, see Entity Localization for further information.

object
key
additional properties
string
>= 1 characters <= 255 characters
Example
{
"en-us": "string in english",
"de-de": "Zeichenkette auf Deutsch"
}
sequenceId
required

By default this creates an ascending order of categories meaning 0 is the first.

integer
Example
1
description

Localization object, see Entity Localization for further information.

object
key
additional properties
string
<= 255 characters
Example
{
"en-us": "string in english",
"de-de": "Zeichenkette auf Deutsch"
}
externalUpdateDate
null | string format: date-time
Example
2018-12-15T00:00:23.114Z
status
string
Allowed values: active inactive

Successfully created

Media typeapplication/json
object
errors
required
Array<object>
object
code
number
entity
string
entityId
string | object
entityIndex
integer
reason
string
catalogCode
string
subentityPath
Array<string | number>
validationErrors
Array<object>
object
code

Machine readable error code

string
Allowed values: ENUM_MISMATCH MAXIMUM MAXIMUM_EXCLUSIVE MINIMUM MINIMUM_EXCLUSIVE MULTIPLE_OF ARRAY_LENGTH_LONG ARRAY_LENGTH_SHORT ARRAY_ADDITIONAL_ITEMS ARRAY_UNIQUE MAX_LENGTH MIN_LENGTH MAX_PROPERTIES MIN_PROPERTIES OBJECT_MISSING_REQUIRED_PROPERTY OBJECT_PROPERTIES_MAXIMUM OBJECT_PROPERTIES_MINIMUM OBJECT_ADDITIONAL_PROPERTIES OBJECT_DEPENDENCY_KEY ONE_OF_MISSING ONE_OF_MULTIPLE NOT_PASSED INVALID_FORMAT INVALID_CREDENTIALS INVALID_TYPE UNKNOWN_FORMAT PATTERN
message

Human readable error code

string
description
string
path
Array<string>
Example
{
"errors": [
{
"code": 400,
"entity": "planet",
"entityId": "pluto",
"entityIndex": 1,
"reason": "Planet pluto was not found (did you mean dwarf planet pluto?)",
"subentityPath": [
"categories",
0
],
"validationErrors": [
{
"code": "MAX_LENGTH",
"message": "Name too long",
"description": "Property Name is too long",
"path": [
"name"
]
}
]
}
]
}

Validation error

Media typeapplication/json
object
statusCode
number
message
string
code
string
additionalInfo
object
validationErrors
Array<object>
object
code
number
reason
string
entity
string
entityId
string
subentityPath
Array<string | number>
error
object
paramName

The parameter-field, that failed to validate, like “userId”

string
paramValue

The value, that was sent, like “xxx”

null | string | number | array | object
code

Machine readable error code

string
Allowed values: SCHEMA_VALIDATION_FAILED VALIDATION_FAILED ENUM_MISMATCH MAXIMUM MAXIMUM_EXCLUSIVE MINIMUM MINIMUM_EXCLUSIVE MULTIPLE_OF ARRAY_LENGTH_LONG ARRAY_LENGTH_SHORT ARRAY_ADDITIONAL_ITEMS ARRAY_UNIQUE MAX_LENGTH MIN_LENGTH MAX_PROPERTIES MIN_PROPERTIES OBJECT_MISSING_REQUIRED_PROPERTY OBJECT_PROPERTIES_MAXIMUM OBJECT_PROPERTIES_MINIMUM OBJECT_ADDITIONAL_PROPERTIES OBJECT_DEPENDENCY_KEY ONE_OF_MISSING ONE_OF_MULTIPLE NOT_PASSED INVALID_FORMAT INVALID_TYPE UNKNOWN_FORMAT PATTERN
message
required

Human readable error code

string
results
object
errors
Array<object>
object
code

Machine readable error code

string
Allowed values: ENUM_MISMATCH MAXIMUM MAXIMUM_EXCLUSIVE MINIMUM MINIMUM_EXCLUSIVE MULTIPLE_OF ARRAY_LENGTH_LONG ARRAY_LENGTH_SHORT ARRAY_ADDITIONAL_ITEMS ARRAY_UNIQUE MAX_LENGTH MIN_LENGTH MAX_PROPERTIES MIN_PROPERTIES OBJECT_MISSING_REQUIRED_PROPERTY OBJECT_PROPERTIES_MAXIMUM OBJECT_PROPERTIES_MINIMUM OBJECT_ADDITIONAL_PROPERTIES OBJECT_DEPENDENCY_KEY ONE_OF_MISSING ONE_OF_MULTIPLE NOT_PASSED INVALID_FORMAT INVALID_CREDENTIALS INVALID_TYPE UNKNOWN_FORMAT PATTERN
message

Human readable error code

string
description
string
path
Array<string>
warnings
array
Example
{
"error": {
"code": "SCHEMA_VALIDATION_FAILED",
"results": {
"errors": [
{
"code": "MAX_LENGTH",
"message": "Name too long",
"description": "Property Name is too long",
"path": [
"name"
]
}
]
}
}
}

Merchant not found

Media typeapplication/json
object
statusCode
number
code
required
string
message
required
string
Example
{
"code": "NotFound",
"message": "Merchant not found"
}