Skip to main content

GTS Shop API (0.0.1)

Introduction

The documentation is intended for the integration of external customers with the GTS Shop purchase and logistics service.

Authorization

For authorization, the following headers must be passed in each request:

X-Workspace-Id: 66cc21fa4ea089d0e4f8c744
Authorization: PrivateToken eyJhbGciOiJIUzI1NiJ9.eyJhY2NvdW50X2lkIjoiNjZjYzE2MDdmMWE5ZjNkZGRmNDg3MjBiIiwianRpIjoiZThmMTY1NjhmODdhODFhYmUzNzM4ODUxZWZlNGUwZjkiLCJpYXQiOjE3MjQ2NTQ0NTcsImV4cCI6LTEsImF1ZCI6Imh0dHBzOi8vYXBpLjVzLWdsb2JhbC5jb20iLCJpc3MiOiJodHRwczovL2F1dGguNXMtZ2xvYmFsLmNvbSJ9.VJrZmYQaX2zBqgTl5dFFLPCpLgSqd_yq433sQp2O86E

products

List of methods to work with the product items.

Get product list

Authorizations:
(private_tokenworkspace_id)
query Parameters
after_date
string
Example: after_date=2024-12-26T11:16:40Z

This parameter allows you to filter items by last modified date.
For example: list products which information has been changed since the last synchronization

object

This parameter allows you to divide a large data set into smaller, more manageable pieces (pages).

object

Filtering product items.

Responses

Response Schema: application/json
status
required
string
required
Array of objects (ProductListItem)
required
object (Meta)

Response samples

Content type
application/json
{
  • "status": "string",
  • "data": [
    ],
  • "meta": {
    }
}

Detailed product information

Authorizations:
(private_tokenworkspace_id)
path Parameters
productId
required
string

Product Identifier

Responses

Response Schema: application/json
status
required
string
required
object (Product)
required
object (OrdersMeta)

Response samples

Content type
application/json
{
  • "status": "string",
  • "data": {
    },
  • "meta": {
    }
}

categories

List of methods to work with the category items.

Get category list

Authorizations:
(private_tokenworkspace_id)
query Parameters
object

This parameter allows you to divide a large data set into smaller, more manageable pieces (pages).

Responses

Response Schema: application/json
status
required
string
required
Array of objects (Category)
required
object (Meta)

Response samples

Content type
application/json
{
  • "status": "string",
  • "data": [
    ],
  • "meta": {
    }
}

brands

List of methods to work with the brand items.

Get brand list

Authorizations:
(private_tokenworkspace_id)
query Parameters
object

This parameter allows you to divide a large data set into smaller, more manageable pieces (pages).

Responses

Response Schema: application/json
status
required
string
required
Array of objects (Brand)
required
object (Meta)

Response samples

Content type
application/json
{
  • "status": "string",
  • "data": [
    ],
  • "meta": {
    }
}

orders

The order is created in several steps:

  • A new order is created
  • The items for purchase are added to the order
  • The order is confirmed and passed to purchase specialists

Order list

Authorizations:
(private_tokenworkspace_id)
query Parameters
statuses[]
Array of strings
Example: statuses[]=draft

This parameter allows you to select and display orders based on their current status. You can filter orders by different statuses such as draft, created, purchase, acceptance, delivery.

stages[]
Array of strings
Example: stages[]=finished

This parameter allows you to select and display orders based on the current stage within the status. You can filter orders by different stages such as idle, started, finished, rejected.

mode
string
Default: "flexible"
Example: mode=strict

This parameter allows you to set the filtering mode by order status. It could takes one of two values:

flexible - outputs all orders that were in one of the statuses passed in the 'statuses' parameter

strict - outputs orders, which active status corresponds to one of the statuses passed in the 'statuses' parameter

after_date
string
Example: after_date=1

This parameter allows you to filter orders by date. For example: show orders that were purchased after August 27, 2024

recipient
string
Example: recipient=1

This parameter allows you to filter orders that specify or do not specify a final recipient for order items. If at least for one of the order items OrderItem the condition is met, the order will be shown.

FALSE - false, 0, "0", "f", "F", "false", "FALSE", "off", "OFF"

TRUE - any value

delivery_address
string
Example: delivery_address=1

This parameter allows you to filter orders that have or do not have a shipping address for order items. If at least for one of the order items OrderItem the condition is met, the order will be shown.

FALSE - false, 0, "0", "f", "F", "false", "FALSE", "off", "OFF"

TRUE - any value

object

This parameter allows you to divide a large data set into smaller, more manageable pieces (pages).

Responses

Response Schema: application/json
status
required
string
required
Array of objects (Order)
required
object (OrdersMeta)

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": [
    ],
  • "meta": {
    }
}

Create new order

Authorizations:
(private_tokenworkspace_id)
Request Body schema: application/json
object
number
string

Order identifier in the customer's system. If not filled in, it will be generated automatically

Array of objects

List of goods in the order

Responses

Response Schema: application/json
status
required
string
required
object (Order)
required
object (OrdersMeta)

Request samples

Content type
application/json
{
  • "data": {
    }
}

Response samples

Content type
application/json
{}

Order information

Authorizations:
(private_tokenworkspace_id)
path Parameters
orderId
required
string

Internal or external order identifier

Responses

Response Schema: application/json
status
required
string
required
object (Order)
required
object (OrdersMeta)

Response samples

Content type
application/json
{}

Add item to order

Add new item to existing order

Authorizations:
(private_tokenworkspace_id)
path Parameters
orderId
required
string

Internal or external order identifier

Request Body schema: application/json
required
object
required
object
quantity
required
integer

Quantity of order items

object

The cost of the item at the time the order is created. If not passed on, the information will be loaded using the link to the merchant website

price_deviation
number

Tolerance as a percentage of the value as of the date of ordering as a percentage

comment
string

Free-form comment. Used to accurately describe the size or color of the item

Responses

Response Schema: application/json
status
required
string
required
object (Order)
required
object (OrdersMeta)

Request samples

Content type
application/json
{}

Response samples

Content type
application/json
{}

Update information about order item

This method is used to add information about the order recipient and delivery address.

Authorizations:
(private_tokenworkspace_id)
path Parameters
orderId
required
string

Internal or external order identifier

orderItemId
required
string

Internal or external order item identifier

Request Body schema: application/json
object
object (Recipient)

Final recipient info

object (DeliveryAddress)

Shipping address

Responses

Response Schema: application/json
status
required
string
required
object (Order)
required
object (OrdersMeta)

Request samples

Content type
application/json
{}

Response samples

Content type
application/json
{}

Confirm order, assign to work

Assign order to be started to work on

Authorizations:
(private_tokenworkspace_id)
path Parameters
orderId
required
string

Internal or external order identifier

Request Body schema: application/json
required
object
required
object
quantity
required
integer

Quantity of order items

object

The cost of the item at the time the order is created. If not passed on, the information will be loaded using the link to the merchant website

price_deviation
number

Tolerance as a percentage of the value as of the date of ordering as a percentage

comment
string

Free-form comment. Used to accurately describe the size or color of the item

Responses

Response Schema: application/json
status
required
string
required
object (Order)
required
object (OrdersMeta)

Request samples

Content type
application/json
{}

Response samples

Content type
application/json
{}

Order position tracking history information

Authorizations:
(private_tokenworkspace_id)
path Parameters
orderId
required
string

Internal or external order identifier

orderItemId
required
string

Internal or external order item identifier

Responses

Response Schema: application/json
status
required
string
required
object (OrderItemsTrckingHistory)
required
object (OrdersItemsMeta)

Response samples

Content type
application/json
{
  • "status": "success",
  • "data": {
    },
  • "meta": {
    }
}

Product

id
required
string

Unique identifier

created_at
required
string

Datetime of creation

updated_at
required
string

Datetime of update

name
required
string

Product name

description
required
string

Product description

gender
required
string

Gender

required
object

Brand

required
Array of objects

Category tree

required
Array of objects

Product images

required
Array of objects

Available variants of this product

{
  • "id": "string",
  • "created_at": "string",
  • "updated_at": "string",
  • "name": "string",
  • "description": "string",
  • "gender": "string",
  • "brand": {
    },
  • "categories": [
    ],
  • "images": [
    ],
  • "variants": [
    ]
}

Category

tag
required
string

Unique identifier

required
string or null

Parent tag identifier

name
required
string

Category name

title
required
string

Category title

{
  • "tag": "string",
  • "parent_tag": "string",
  • "name": "string",
  • "title": "string"
}

Brand

tag
required
string

Unique identifier

name
required
string

Category name

{
  • "tag": "string",
  • "name": "string"
}

Order

id
required
string
created_at
required
string
updated_at
required
string
number
required
string
status
required
object
required
Array of objects (OrderItem)
{
  • "id": "string",
  • "created_at": "string",
  • "updated_at": "string",
  • "number": "string",
  • "status": { },
  • "items": [
    ]
}

OrderItem

id
required
string
created_at
required
string
updated_at
required
string
comment
string
object
quantity
required
string
required
object
required
object (Product)
{
  • "id": "string",
  • "created_at": "string",
  • "updated_at": "string",
  • "comment": "string",
  • "price_on_order_date": {
    },
  • "quantity": "string",
  • "status": {
    },
  • "product": {
    }
}

OrderItemProduct

provider_id
required
string
type
required
string
value
required
string
name
required
string
required
string or null
required
string or null
required
string or null
required
string or null
required
string or null
{
  • "provider_id": "string",
  • "type": "string",
  • "value": "string",
  • "name": "string",
  • "brand": "string",
  • "sku": "string",
  • "color": "string",
  • "size": "string",
  • "description": "string"
}

Status

Possible values

Steps

  • draft - Draft order
  • created - New order
  • purchase - Purchase order
  • acceptence - Process of receiving goods at intermediate warehouse
  • package - Outgoing order
  • delivery - Order delivery task to final recipient

Stages

  • idle - Waiting for action/info
  • started - Work in progress
  • finished - Step is finished successfully
  • rejected - Step if finished with an error
name
required
string

Status

stage
required
string

Stage

created_at
required
string

Datetime of transition to this stage or state

reason
string

Reason for error

{
  • "name": "string",
  • "stage": "string",
  • "created_at": "string",
  • "reason": "string"
}

Recipient

inn
required
string

Russian Tax Number (INN)

first_name
required
string

Name

last_name
required
string

Surname

middle_name
required
string

Patronymic Name

phone
required
string

Contact phone number

required
object

Identity passport info

{
  • "inn": "string",
  • "first_name": "string",
  • "last_name": "string",
  • "middle_name": "string",
  • "phone": "string",
  • "passport": {
    }
}

DeliveryAddress

zip
required
string

Postal code

location
required
string

Full address

{
  • "zip": "string",
  • "location": "string"
}