You are browsing the latest version of the documentation which is not released yet. See the current stable version instead.

API Methods

All API methods calls except for token generation are secured via OAuth2. You need to provide token via Authorization header to access requested data like this:

Authorization: Bearer eyJ0eXAiOiJKV...s3SKg

List of methods

Retrieve access token

URL

/api/token

Method

POST

Data Params

Required

  • grant_type=client_credentials
  • client_id=[string]
  • client_secret=[string]

Success Response

Code

200

Content
{
    "token_type": "Bearer",
    "expires_in": 3600,
    "access_token": "eyJ0eXAiOiJKV...s3SKg"
}

Error Response

Code

401 UNAUTHORIZED

Content
{
    "error": "invalid_client",
    "message": "Client authentication failed"
}

OR

Code

400 Bad Request

Notes

  • Token is valid for one hour.
  • You will need to generate new token after the first one expires.

Retrieve a product

URL

/api/v1/products/{uuid}

Method

GET

URL Params

Required

  • uuid=[string]

Success Response

Code

200

Content
{
  "uuid": "2ad32b16-bfb4-4cfa-8bbe-331e630769c5",
  "name": {
      "en": "22\" Sencor SLE 22F46DM4 HELLO KITTY",
      "cs": "22\" Sencor SLE 22F46DM4 HELLO KITTY"
  },
  "hidden": false,
  "sellingDenied": false,
  "sellingFrom": "2000-01-16T00:00:00+00:00",
  "catnum": "9177759",
  "ean": "8845781245930",
  "partno": "SLE 22F46DM4",
  "shortDescription": {
      "1": "Television LED, 55 cm diagonal ...",
      "2": "Sencor SLE 22F46DM4 Hello Kitty je ..."
  },
  "longDescription": {
      "1": "Television LED, 55 cm diagonal ...",
      "2": "<p><strong>Sencor SLE 22F46DM4 ..."
  }
}

Error Response

Code

400 Bad Request

Content
{
    "code": 400,
    "message": "This UUID is not valid: 123xxx"
}

OR

Code

401 UNAUTHORIZED

OR

Code

404 Not Found

Content
{
    "code": 404,
    "message": "Product with UUID 877a07d5-a276-49f8-9b73-6ac0edef83be does not exist."
}

Retrieve a list of products

URL

/api/v1/products

Method

GET

URL Params

Optional

  • uuids=[array of strings]
  • page=[integer]

Success Response

Code

200

Content
[
   {
      "uuid": "2ad32b16-bfb4-4cfa-8bbe-331e630769c5",
      "name": {
          "en": "22\" Sencor SLE 22F46DM4 HELLO KITTY",
          "cs": "22\" Sencor SLE 22F46DM4 HELLO KITTY"
      },
      "hidden": false,
      "sellingDenied": false,
      "sellingFrom": "2000-01-16T00:00:00+00:00",
      "catnum": "9177759",
      "ean": "8845781245930",
      "partno": "SLE 22F46DM4",
      "shortDescription": {
          "1": "Television LED, 55 cm diagonal ...",
          "2": "Sencor SLE 22F46DM4 Hello Kitty je ..."
      },
      "longDescription": {
          "1": "Television LED, 55 cm diagonal ...",
          "2": "<p><strong>Sencor SLE 22F46DM4 ..."
      }
   },
   # next products here
]
Headers

In headers there is list of links to another pages with products, it can be found under Link header

<http://127.0.0.1:8000/api/v1/products?page=2>; rel="next", <http://127.0.0.1:8000/api/v1/products?page=2>; rel="last"

Error Response

Code

400 Bad Request

Content
{
    "code": 400,
    "message": "This UUID is not valid: 123xx"
}

OR

Code

401 UNAUTHORIZED

OR

Code

422 Unprocessable Entity

Content
{
    "code": 422,
    "message": "There are no products on provided page."
}

Sample Call

http://127.0.0.1:8000/api/v1/products?uuids[]=877a07d5-a276-49f8-9b73-6ac0edef83be&uuids[]=f564da76-6d51-4ecd-b004-895c8019a235x

Add product

URL

/api/v1/products

Method

POST

Headers

Content-Type: application/json

Request Body

Content
{
  "name": {
      "en": "22\" Sencor SLE 22F46DM4 HELLO KITTY",
      "cs": "22\" Sencor SLE 22F46DM4 HELLO KITTY"
  },
  "hidden": false,
  "sellingDenied": false,
  "sellingFrom": "2000-01-16T00:00:00+00:00",
  "sellingTo": "2100-01-16T00:00:00+00:00",
  "catnum": "9177759",
  "ean": "8845781245930",
  "partno": "SLE 22F46DM4",
  "shortDescription": {
      "1": "Television LED, 55 cm diagonal ...",
      "2": "Sencor SLE 22F46DM4 Hello Kitty je ..."
  },
  "longDescription": {
      "1": "Television LED, 55 cm diagonal ...",
      "2": "<p><strong>Sencor SLE 22F46DM4 ..."
  }
}

Request Body for specified UUID

Content
{
  "uuid": "7a34a8cf-8f3b-405d-9662-f20d983cfc8a",
  "name": {
      "en": "22\" Sencor SLE 22F46DM4 HELLO KITTY",
      "cs": "22\" Sencor SLE 22F46DM4 HELLO KITTY"
  },
  "hidden": false,
  "sellingDenied": false,
  "sellingFrom": "2000-01-16T00:00:00+00:00",
  "sellingTo": "2100-01-16T00:00:00+00:00",
  "catnum": "9177759",
  "ean": "8845781245930",
  "partno": "SLE 22F46DM4",
  "shortDescription": {
      "1": "Television LED, 55 cm diagonal ...",
      "2": "Sencor SLE 22F46DM4 Hello Kitty je ..."
  },
  "longDescription": {
      "1": "Television LED, 55 cm diagonal ...",
      "2": "<p><strong>Sencor SLE 22F46DM4 ..."
  }
}

Success Response

Code

201

Headers
Location: http://127.0.0.1:8000/api/v1/products/7a34a8cf-8f3b-405d-9662-f20d983cfc8a

Error Response

Code

401 UNAUTHORIZED

OR

Code

415 Unsupported Media Type

OR

Code

400 Bad Request

Content
{
    "message": "Provided data did not pass validation",
    "errors": {
        "sellingTo": "The value \"12.1.2019\" is not a valid DateTime::ATOM format.",
        "longDescription.1": "The value 345 is not a valid string."
    }
}

OR

Code

422 Unprocessable Entity

Content
{
    "message": "Product with 74da76db-61ab-43fb-926e-43ba326325fc UUID already exists"
}

Partial product update

URL

/api/v1/products/{uuid}

Method

PATCH

Headers

Content-Type: application/json

URL Params

Required

  • uuid=[string]

Request Body

Content
{
  "name": {
      "en": "22\" Sencor SLE 22F46DM4 HELLO KITTY",
      "cs": "22\" Sencor SLE 22F46DM4 HELLO KITTY"
  },
  "hidden": false,
  "shortDescription": {
      "1": "Television LED, 55 cm diagonal ..."
  }
}

Success Response

Code

204

Error Response

Code

401 UNAUTHORIZED

OR

Code

415 Unsupported Media Type

OR

Code

400 Bad Request

Content
{
    "message": "Provided data did not pass validation",
    "errors": {
        "sellingTo": "The value \"12.1.2019\" is not a valid DateTime::ATOM format.",
        "longDescription.1": "The value 345 is not a valid string."
    }
}

OR

Code

404 Not Found

Note

Updating variant/main variant is not supported yet

Delete product

URL

/api/v1/products/{uuid}

Method

DELETE

Headers

Content-Type: application/json

URL Params

Required

  • uuid=[string]

Success Response

Code

204

Error Response

Code

400 Bad Request

Content
{
    "code": 400,
    "message": "This UUID is not valid: 123xx"
}

OR

Code

401 UNAUTHORIZED

OR

Code

415 Unsupported Media Type

OR

Code

404 Not Found

Note

Deleting variant/main variant is not supported yet