Додавання/видалення «прив’язки» сертифіката до товарів

Для роботи з цим методом користувач повинен бути авторизованим .

Метод запиту

HTTP POST

Content-Type

application/json (тіло HTTP запиту/відповіді в json форматі)

URL запиту

https://edo.edin.ua/Api/V1/Certificate/SetBind

Параметри, що передаються в URL (разом з адресою методу)

-//-

JSON-параметри в тілі HTTP запиту/відповіді

REQUEST

Таблиця 1 - Опис json-параметрів запиту

Параметр

Mandatory/Optional

Формат

Опис

varToken​

M

String

токен, отриманий при авторизації

cert_id

M

int (11)

id сертифіката (intCertID)

bind_action

M

int

дія по прив’язкам сертифіката до товару; 1 - Додати прив’язку до товару, 2 - Видалити прив’язку до товару

product_binds

M

[{…}]

масив об’єктів; дані товарних позицій. Блок повинен містити хоча б один параметр

gtin

O

[{…}]

штрих-код товару

article_supplier

O

String(30)

артикул Поставщика

article_buyer

O

String(30)

артикул Покупця

uktved

O

String(4-10)

код УКТЗЕД

dkpp

O

String «ХХ.ХХ.XX-XX.XX»

код ДКПП

RESPONSE

Таблиця 2 - Опис json-параметрів відповіді метода API

Параметр

Mandatory/Optional

Формат

Опис

​varMessage​

String

повідомлення сервера

​intCode​

int

код відповіді сервера


Приклади

Приклад тіла запиту в json форматі:

{
  "varToken": "jl4k81iq15utvdqtihghk38kk1",
  "cert_id": "2199",
  "bind_action": "1",
  "product_binds": [
    {
      "gtin": "4563456345",
      "article_supplier": "3458678967",
      "article_buyer": "67896789678",
      "uktved": "65756",
      "dkpp": "99.67.46-57.46"
    },
    {
      "article_supplier": "567856785",
      "article_buyer": "465345634574",
      "uktved": "567853",
      "dkpp": "11.67.46-57.46"
    },
    {
      "gtin": "875678567567"
    },
    {
      "gtin": "5678567453",
      "article_supplier": "5467456",
      "dkpp": "45.67.46-57.46"
    },
    {
      "gtin": "56785674353",
      "article_supplier": "567856711",
      "uktved": "3456",
      "dkpp": "78.67.46-57.41"
    },
    {
      "gtin": "5678354634",
      "article_supplier": "57856",
      "article_buyer": "3456435",
      "uktved": "47564",
      "dkpp": "98.67.46-57.46"
    }
  ]
}

Приклад тіла відповіді в json форматі:

{
  "varMessage": "Success!",
  "intCode": 200
}

Опис помилок роботи методу для надання доступу до сертифіката

  1. У разі коли сертифікат ("cert_id":"21478457735367345") не належить користувачу, під яким пройдена авторизація:

{
  "varMessage": "Сертификат не найден",
  "intCode": 404
}
  1. Якщо в запиті був відсутній тип доступу ("access_type":"") або був переданий тип доступу, якого немає в довіднику:

{
  "varMessage": "Не заполнено обязательное поле \"access_type\"",
  "intCode": 400
}
  1. Якщо в запиті передано тип доступу «Обмежений доступ» та не заповнено поле «дії над доступом сертифіката» ("access_action":"") або це значення відсутнє в довіднику:

{
  "varMessage": "Не заполнено обязательное поле \"access_action\"",
  "intCode": 400
}
{
  "varMessage": "Недопустимый формат поля \"access_action\" 324",
  "intCode": 400
}
  1. Якщо в запиті не заповнений параметр amigos_info

Приклад запиту:

{
"varToken":"jl4k81iq15utvdqtihghk38kk1",
"cert_id":"2173",
"access_type":"2",
"access_action":"2"
}

Приклад відповіді:

{
  "varMessage": "Не заполнено обязательное поле \"amigos_info\"",
  "intCode": 400
}
  1. Якщо в запиті не заповнено поле gln в блоці amigos_info

Приклад запиту:

"amigos_info":[
    {
      "gln": "",
      "isRetailer": true
    },
    {
      "gln": "",
      "isRetailer": true
    },
    {
      "gln": "4829900023799",
      "isRetailer": true
    }
  ]

Приклад відповіді:

{
  "varMessage": "Не заполнено обязательное поле \"gln\" в блоке \"amigos_info\"",
  "intCode": 400
}
  1. Якщо в запиті передано некорректний gln в блоці amigos_info

Приклад запиту:

"amigos_info":[
    {
      "gln": "dfghdfg",
      "isRetailer": true
    },
    {
      "gln": "dgfhdfg",
      "isRetailer": true
    },
    {
      "gln": "4829900023799",
      "isRetailer": true
    }
  ]
}

Приклад відповіді:

{
  "varMessage": "Недопустимый формат поля \"gln\" dfghdfg в блоке \"amigos_info\"",
  "intCode": 400
}
  1. Якщо в запиті передано некорректний isRetailer в блоці amigos_info

Приклад запиту:

"amigos_info":[
    {
      "gln": "9864066822430",
      "isRetailer": "fdsa"
    },
    {
      "gln": "9864064665428",
      "isRetailer": false
    },
    {
      "gln": "4829900023799",
      "isRetailer": true
    }
  ]
}

Приклад відповіді:

{
  "varMessage": "Недопустимый формат поля \"isRetailer\" fdsa в блоке \"amigos_info\"",
  "intCode": 400
}
  1. Якщо в запиті передано gln, якого немає в БД

Приклад запиту:

"amigos_info":[
    {
      "gln": "9008727091081",
      "isRetailer": false
    },
    {
      "gln": "9008727092026",
      "isRetailer": false
    },
    {
      "gln": "9008727092071",
      "isRetailer": false
    },
    {
      "gln": "9008727092033",
      "isRetailer": false
    }
  ]
}

Приклад відповіді:

{
  "varMessage": "Не найдены \"gln\" 9008727091081,9008727092026,9008727092071,9008727092033 в блоке \"amigos_info\"",
  "intCode": 404
}
  1. Якщо в запиті передано gln, що не відносяться до Торгової Мережі

Приклад запиту:

"amigos_info":[
    {
      "gln": "9864066822430",
      "isRetailer": true
    },
    {
      "gln": "9864064665428",
      "isRetailer": true
    },
    {
      "gln": "4829900023799",
      "isRetailer": true
    }
  ]
}

Приклад відповіді:

{
  "varMessage": "Переданные данные в поле \"gln\" 9864066822430,9864064665428  блока \"amigos_info не принадлежат сети\"",
  "intCode": 404
}