Marketplace:Services:v1.0: различия между версиями

Материал из Справочная система Россельхознадзора
Перейти к навигации Перейти к поиску
Создание страницы - Marketplace.Services.v1.0.wiki
 
Нет описания правки
 
(не показано 6 промежуточных версий этого же участника)
Строка 1: Строка 1:
=Marketplace:Services:v1.0=
= Marketplace:Services:v1.0 =


==Общие сведения==
== Общие сведения ==


Профиль Marketplace.Services v1.0 — интеграционный профиль ВетИС.API для информационных систем операторов посреднических цифровых платформ (маркетплейсов).  
Профиль Marketplace.Services v1.0 — интеграционный профиль ВетИС.API для информационных систем операторов посреднических цифровых платформ (маркетплейсов). Позволяет маркетплейсу получать из ФГИС «ВетИС» сведения, необходимые для проверки регистрации продавца, зарегистрированной номенклатуры товара и ветеринарного сопроводительного документа (ВСД).
 
Позволяет маркетплейсу получать из ФГИС «ВетИС» сведения, необходимые для проверки регистрации продавца, зарегистрированной номенклатуры товара и ветеринарного сопроводительного документа (ВСД).


Через профиль ФГИС «ВетИС» только передаёт сведения о регистрации. Решение о допуске продавца или карточки товара к размещению на платформе принимает сам маркетплейс.
Через профиль ФГИС «ВетИС» только передаёт сведения о регистрации. Решение о допуске продавца или карточки товара к размещению на платформе принимает сам маркетплейс.


==Версии профиля API==
== Версии профиля API ==


*v1.0 — Marketplace:Services:v1.0 (в разработке)
* v1.0 — Marketplace:Services:v1.0 (в разработке)


==Предоставляемые сервисы==
== Предоставляемые сервисы ==


{| class="wikitable"
{| class="wikitable"
!№!!Сервис!!Описание
! № !! Сервис !! Описание
|-
|-
|1
| 1
|ApplicationManagementService
| ApplicationManagementService
|Подсистема обработки заявок профиля
| Подсистема обработки заявок профиля
|}
|}


==Структура XSD==
== Структура XSD ==


Полные URI пространств имён указаны в самих XSD-схемах (передаются в составе пакета WSDL); в таблицах ниже приведены префиксы пространств.
Полные URI пространств имён указаны в самих XSD-схемах (передаются в составе пакета WSDL); в таблицах ниже приведены префиксы пространств.
Строка 30: Строка 28:


{| class="wikitable"
{| class="wikitable"
!XSD-схема!!Пространство имён
! XSD-схема !! Пространство имён
|-
|-
|application_v2.1.xsd
| application_v2.1.xsd
|xmlns:<b>apl</b>
| xmlns:<b>apl</b>
|-
|-
|application_ws_definitions_v2.1.xsd
| application_ws_definitions_v2.1.xsd
|xmlns:<b>def</b>
| xmlns:<b>def</b>
|-
|-
|base_ws_definitions_v2.1.xsd
| base_ws_definitions_v2.1.xsd
|xmlns:<b>bsdef</b>
| xmlns:<b>bsdef</b>
|}
|}


Строка 45: Строка 43:


{| class="wikitable"
{| class="wikitable"
!XSD-схема!!Пространство имён
! XSD-схема !! Пространство имён
|-
|-
|base_v2.1.xsd
| base_v2.1.xsd
|xmlns:<b>bs</b>
| xmlns:<b>bs</b>
|}
|}


Строка 54: Строка 52:


{| class="wikitable"
{| class="wikitable"
!XSD-схема!!Пространство имён
! XSD-схема !! Пространство имён
|-
|-
|dictionary_v2.6.xsd
| dictionary_v2.6.xsd
|xmlns:<b>dt</b>
| xmlns:<b>dt</b>
|-
|-
|document_v2.6.xsd
| document_v2.6.xsd
|xmlns:<b>vd</b>
| xmlns:<b>vd</b>
|-
|-
|codelist_v2.6r12.xsd
| codelist_v2.6r12.xsd
|xmlns:<b>cl</b>
| xmlns:<b>cl</b>
|}
|}


Строка 69: Строка 67:


{| class="wikitable"
{| class="wikitable"
!XSD-схема!!Пространство имён
! XSD-схема !! Пространство имён
|-
|-
|marketplace_applications.xsd
| marketplace_applications_v1.0.xsd
|xmlns:<b>mplc</b>
| xmlns:<b>mplc</b>
|}
|}


==ApplicationManagementService (подсистема обработки заявок)==
== ApplicationManagementService (подсистема обработки заявок) ==


===Параметры подключения===
=== Параметры подключения ===


{|
{|
| width="50%" valign="top" |
| width="50%" valign="top" |
'''Продуктивный контур'''
'''Продуктивный контур'''
{| class="wikitable"
{| class="wikitable"
|-
|-
! scope="col" style="text-align:left;" |WSDL
! scope="col" style="text-align:left;" | WSDL
|https://api.vetrf.ru/schema/platform/marketplace/v1.0b-last/ams-marketplace.service.wsdl
| https://api.vetrf.ru/schema/platform/marketplace/v1.0b-last/ams-marketplace.service_v1.0.wsdl
|-
|-
! scope="col" style="text-align:left;" |URL точки доступа (Endpoint)
! scope="col" style="text-align:left;"| URL точки доступа (Endpoint)
|https://api.vetrf.ru/platform/services/2.1/ApplicationManagementService
| https://api.vetrf.ru/platform/services/2.1/ApplicationManagementService
|-
|-
! scope="col" style="text-align:left;" |Описание типов заявок
! scope="col" style="text-align:left;"| Описание типов заявок
|включено в WSDL
| включено в WSDL
|-
|-
! scope="col" style="text-align:left;" |Код сервиса (serviceId)
! scope="col" style="text-align:left;"| Код сервиса (serviceId)
|marketplace.service:1.0
| marketplace.service:1.0
|-
|-
|}
|}


| width="50%" valign="top" |
| width="50%" valign="top" |
'''Тестовый контур'''
'''Тестовый контур'''
{| class="wikitable"
{| class="wikitable"
|-
|-
! scope="col" style="text-align:left;" |WSDL
! scope="col" style="text-align:left;" | WSDL
|https://api2.vetrf.ru:8002/schema/platform/marketplace/v1.0b-last/ams-marketplace.service.wsdl
| https://api2.vetrf.ru:8002/schema/platform/marketplace/v1.0b-last/ams-marketplace.service_v1.0.wsdl
|-
|-
! scope="col" style="text-align:left;" |URL точки доступа (Endpoint)
! scope="col" style="text-align:left;"| URL точки доступа (Endpoint)
|https://api2.vetrf.ru:8002/platform/services/2.1/ApplicationManagementService
| https://api2.vetrf.ru:8002/platform/services/2.1/ApplicationManagementService
|-
|-
! scope="col" style="text-align:left;" |Описание типов заявок
! scope="col" style="text-align:left;"| Описание типов заявок
|включено в WSDL
| включено в WSDL
|-
|-
! scope="col" style="text-align:left;" |Код сервиса (serviceId)
! scope="col" style="text-align:left;"| Код сервиса (serviceId)
|marketplace.service:1.0
| marketplace.service:1.0
|-
|-
|}
|}
Строка 118: Строка 118:
|}
|}


WSDL <code>ams-marketplace.service.wsdl</code> включает импорт штатного <code>ApplicationManagementService_v2.1.wsdl</code> и <code>marketplace.service.wsdl</code>.
WSDL <code>ams-marketplace.service_v1.0.wsdl</code> включает импорт базового <code>ApplicationManagementService_v2.1.wsdl</code> и <code>marketplace.service_v1.0.wsdl</code>.


===Принципы взаимодействия===
=== Принципы взаимодействия ===


Работа с сервисом ApplicationManagementService выполняется в два шага, каждый шаг выполняется синхронно:
Работа с сервисом ApplicationManagementService выполняется в два шага (каждый шаг — синхронный):


*'''Шаг 1''' — подача заявки (<code>submitApplication</code>) с параметрами бизнес-операции и получение результата приёма заявки (идентификатор <code>applicationId</code>, статус <code>ACCEPTED</code>);
* '''Шаг 1''' — подача заявки (<code>submitApplication</code>) с параметрами бизнес-операции и получение результата приёма заявки (идентификатор <code>applicationId</code>, статус <code>ACCEPTED</code>);
*'''Шаг 2''' — подача запроса на получение результата (<code>receiveApplicationResult</code>) по <code>applicationId</code>: результат бизнес-операции (статус <code>COMPLETED</code>) либо сведения об ошибке (статус <code>REJECTED</code>).
* '''Шаг 2''' — подача запроса на получение результата (<code>receiveApplicationResult</code>) по <code>applicationId</code>: результат бизнес-операции (статус <code>COMPLETED</code>) либо сведения об ошибке (статус <code>REJECTED</code>).


Каждый запрос дополнительно содержит <code>serviceId = marketplace.service:1.0</code> — общий код профиля, одинаковый для всех маркетплейсов.
Каждый запрос дополнительно содержит <code>serviceId = marketplace.service:1.0</code> — общий код профиля, одинаковый для всех маркетплейсов.


Логин и пароль, выданные при регистрации системы в ВетИС.API, используются только для подключения к сервису (базовая аутентификация) и НЕ передаются в <code>initiator.login</code> — поле <code>initiator.login</code> заполняется логином пользователя ВетИС, от имени которого выполняется запрос.
Логин и пароль, выданные при регистрации системы в ВетИС.API, используются только для подключения к сервису (базовая аутентификация) и НЕ передаются в <code>initiator.login</code> — это поле заполняется логином пользователя ВетИС, от имени которого выполняется запрос.


===Безопасность===
=== Безопасность ===


*Доступ к сервису ограничивается с помощью ключей доступа к API (APIKey).
* Доступ к сервису ограничивается с помощью ключей доступа к API (APIKey).
*Ключи доступа предоставляются при регистрации информационной системы маркетплейса в ВетИС.API как клиента.
* Ключи доступа предоставляются при регистрации информационной системы маркетплейса в ВетИС.API как клиента.
*APIKey идентифицирует информационную систему маркетплейса.
* APIKey идентифицирует информационную систему маркетплейса.
*Перед проверкой APIKey выполняется базовая аутентификация с помощью логина и пароля, выданных при регистрации.
* Перед проверкой APIKey выполняется базовая аутентификация с помощью логина и пароля, выданных при регистрации.


===Предварительные условия до первого запроса===
=== Предварительные условия до первого запроса ===


#Юрлицо маркетплейса зарегистрировано в ФГИС «ВетИС» как хозяйствующий субъект;
# Юрлицо маркетплейса зарегистрировано в ФГИС «ВетИС» как хозяйствующий субъект;
#Система маркетплейса зарегистрирована в ВетИС.API как клиент; выданы логин и пароль;
# Система маркетплейса зарегистрирована в ВетИС.API как клиент; выданы логин и пароль;
#Выдан APIKey — ключ доступа к API;
# Выдан APIKey — ключ доступа к API;
#Маркетплейсу выдано право на профиль Marketplace.Services;
# Маркетплейсу выдано право на профиль Marketplace.Services;
#Для каждой заявки у маркетплейса есть <code>initiator.login</code> — логин зарегистрированного пользователя ВетИС, от имени которого выполняется запрос.
# Для каждой заявки у маркетплейса есть <code>initiator.login</code> — логин зарегистрированного пользователя ВетИС, от имени которого выполняется запрос.


===Операции, выполняемые через ApplicationManagementService===
=== Операции, выполняемые через ApplicationManagementService ===


{| class="wikitable"
{| class="wikitable"
!Код операции!!Название операции / ссылка на спецификацию!!Описание операции
! Код операции !! Название операции / ссылка на спецификацию !! Описание операции
|-
|-
|AMS.MPLC.1.1
| AMS.MPLC.1.1
|[Marketplace:CheckBusinessEntity:v1.0]
| [https://help.vetrf.ru/wiki/Marketplace.CheckBusinessEntity.v1.0 Marketplace:CheckBusinessEntity:v1.0]
|Проверка регистрации хозяйствующего субъекта (продавца)
| Проверка регистрации хозяйствующего субъекта (продавца)
|-
|-
|AMS.MPLC.1.2
| AMS.MPLC.1.2
|[Marketplace:GetProductItemByGuid:v1.0]
| [https://help.vetrf.ru/wiki/Marketplace.GetProductItemByGuid.v1.0 Marketplace:GetProductItemByGuid:v1.0]
|Проверка зарегистрированной номенклатуры товара
| Проверка зарегистрированной номенклатуры товара
|-
|-
|AMS.MPLC.1.3
| AMS.MPLC.1.3
|[Marketplace:GetVetDocumentByUuid:v1.0]
| [https://help.vetrf.ru/wiki/Marketplace.GetVetDocumentByUuid.v1.0 Marketplace:GetVetDocumentByUuid:v1.0]
|Получение ветеринарного сопроводительного документа (ВСД) по уникальному идентификатору
| Получение ветеринарного сопроводительного документа (ВСД) по уникальному идентификатору
|}
|}


==Ошибки профиля==
== Ошибки ==
 
Ошибки подсистемы обработки заявок бывают двух уровней:


При отклонении заявки в её ответе возвращается статус <code>REJECTED</code>, а в элементе <code>apl:errors</code> — текст ошибки и её код.
* '''Транспортный уровень''' — fault'ы, задекларированные в WSDL профиля; возвращаются как SOAP-fault, а не в ответе заявки (не в <code>apl:errors</code>):


Профиль отклоняет заявку в следующих случаях:
{| class="wikitable"
! Fault !! Возвращает операция !! Описание
|-
| <code>AccessDeniedFault</code> || <code>submitApplication</code>, <code>receiveApplicationResult</code> || Доступ запрещён
|-
| <code>ApplicationNotFoundFault</code> || <code>receiveApplicationResult</code> || Заявка с указанным <code>applicationId</code> не найдена
|-
| <code>IncorrectRequestFault</code> || <code>submitApplication</code>, <code>receiveApplicationResult</code> || Некорректный запрос. Возникает, если запрос не соответствует требованиям, указанным в xsd
|-
| <code>InternalServiceFault</code> || <code>submitApplication</code>, <code>receiveApplicationResult</code> || Внутренняя ошибка сервиса
|-
| <code>UnknownServiceIdFault</code> || <code>submitApplication</code> || Неизвестный код сервиса (<code>serviceId</code>)
|-
| <code>UnsupportedApplicationDataTypeFault</code> || <code>submitApplication</code> || Тип данных заявки не поддерживается профилем
|}


*информационная система передаёт операцию, отличную от трёх разрешённых профилем;
* '''Уровень заявки''' — ошибки, которые приходят в ответе на заявку. При отклонении заявки статус — <code>REJECTED</code>, текст ошибки и её код — в элементе <code>apl:errors</code>. Профиль отклоняет заявку в следующих случаях:
*у информационной системы отсутствует право использования профиля.
** информационная система передаёт операцию, отличную от трёх разрешённых профилем;
** у информационной системы отсутствует право использования профиля.


Остальные ошибки (валидация и выполнение отдельных операций) описаны в разделе «Коды ошибок» спецификации каждой операции.
Остальные ошибки (валидация и выполнение отдельных операций) передаются тем же способом — описаны в разделе «Коды ошибок» спецификации каждой операции.

Текущая версия от 16:30, 16 октября 2026

Marketplace:Services:v1.0

Общие сведения

Профиль Marketplace.Services v1.0 — интеграционный профиль ВетИС.API для информационных систем операторов посреднических цифровых платформ (маркетплейсов). Позволяет маркетплейсу получать из ФГИС «ВетИС» сведения, необходимые для проверки регистрации продавца, зарегистрированной номенклатуры товара и ветеринарного сопроводительного документа (ВСД).

Через профиль ФГИС «ВетИС» только передаёт сведения о регистрации. Решение о допуске продавца или карточки товара к размещению на платформе принимает сам маркетплейс.

Версии профиля API

  • v1.0 — Marketplace:Services:v1.0 (в разработке)

Предоставляемые сервисы

№ Сервис Описание
1 ApplicationManagementService Подсистема обработки заявок профиля

Структура XSD

Полные URI пространств имён указаны в самих XSD-схемах (передаются в составе пакета WSDL); в таблицах ниже приведены префиксы пространств.

Типы данных транспортного уровня (заявочный режим):

XSD-схема Пространство имён
application_v2.1.xsd xmlns:apl
application_ws_definitions_v2.1.xsd xmlns:def
base_ws_definitions_v2.1.xsd xmlns:bsdef

Базовые типы данных:

XSD-схема Пространство имён
base_v2.1.xsd xmlns:bs

Прикладные типы данных:

XSD-схема Пространство имён
dictionary_v2.6.xsd xmlns:dt
document_v2.6.xsd xmlns:vd
codelist_v2.6r12.xsd xmlns:cl

Типы данных профиля Marketplace.Services:

XSD-схема Пространство имён
marketplace_applications_v1.0.xsd xmlns:mplc

ApplicationManagementService (подсистема обработки заявок)

Параметры подключения

Продуктивный контур

WSDL https://api.vetrf.ru/schema/platform/marketplace/v1.0b-last/ams-marketplace.service_v1.0.wsdl
URL точки доступа (Endpoint) https://api.vetrf.ru/platform/services/2.1/ApplicationManagementService
Описание типов заявок включено в WSDL
Код сервиса (serviceId) marketplace.service:1.0

Тестовый контур

WSDL https://api2.vetrf.ru:8002/schema/platform/marketplace/v1.0b-last/ams-marketplace.service_v1.0.wsdl
URL точки доступа (Endpoint) https://api2.vetrf.ru:8002/platform/services/2.1/ApplicationManagementService
Описание типов заявок включено в WSDL
Код сервиса (serviceId) marketplace.service:1.0

WSDL ams-marketplace.service_v1.0.wsdl включает импорт базового ApplicationManagementService_v2.1.wsdl и marketplace.service_v1.0.wsdl.

Принципы взаимодействия

Работа с сервисом ApplicationManagementService выполняется в два шага (каждый шаг — синхронный):

  • Шаг 1 — подача заявки (submitApplication) с параметрами бизнес-операции и получение результата приёма заявки (идентификатор applicationId, статус ACCEPTED);
  • Шаг 2 — подача запроса на получение результата (receiveApplicationResult) по applicationId: результат бизнес-операции (статус COMPLETED) либо сведения об ошибке (статус REJECTED).

Каждый запрос дополнительно содержит serviceId = marketplace.service:1.0 — общий код профиля, одинаковый для всех маркетплейсов.

Логин и пароль, выданные при регистрации системы в ВетИС.API, используются только для подключения к сервису (базовая аутентификация) и НЕ передаются в initiator.login — это поле заполняется логином пользователя ВетИС, от имени которого выполняется запрос.

Безопасность

  • Доступ к сервису ограничивается с помощью ключей доступа к API (APIKey).
  • Ключи доступа предоставляются при регистрации информационной системы маркетплейса в ВетИС.API как клиента.
  • APIKey идентифицирует информационную систему маркетплейса.
  • Перед проверкой APIKey выполняется базовая аутентификация с помощью логина и пароля, выданных при регистрации.

Предварительные условия до первого запроса

  1. Юрлицо маркетплейса зарегистрировано в ФГИС «ВетИС» как хозяйствующий субъект;
  2. Система маркетплейса зарегистрирована в ВетИС.API как клиент; выданы логин и пароль;
  3. Выдан APIKey — ключ доступа к API;
  4. Маркетплейсу выдано право на профиль Marketplace.Services;
  5. Для каждой заявки у маркетплейса есть initiator.login — логин зарегистрированного пользователя ВетИС, от имени которого выполняется запрос.

Операции, выполняемые через ApplicationManagementService

Код операции Название операции / ссылка на спецификацию Описание операции
AMS.MPLC.1.1 Marketplace:CheckBusinessEntity:v1.0 Проверка регистрации хозяйствующего субъекта (продавца)
AMS.MPLC.1.2 Marketplace:GetProductItemByGuid:v1.0 Проверка зарегистрированной номенклатуры товара
AMS.MPLC.1.3 Marketplace:GetVetDocumentByUuid:v1.0 Получение ветеринарного сопроводительного документа (ВСД) по уникальному идентификатору

Ошибки

Ошибки подсистемы обработки заявок бывают двух уровней:

  • Транспортный уровень — fault'ы, задекларированные в WSDL профиля; возвращаются как SOAP-fault, а не в ответе заявки (не в apl:errors):
Fault Возвращает операция Описание
AccessDeniedFault submitApplication, receiveApplicationResult Доступ запрещён
ApplicationNotFoundFault receiveApplicationResult Заявка с указанным applicationId не найдена
IncorrectRequestFault submitApplication, receiveApplicationResult Некорректный запрос. Возникает, если запрос не соответствует требованиям, указанным в xsd
InternalServiceFault submitApplication, receiveApplicationResult Внутренняя ошибка сервиса
UnknownServiceIdFault submitApplication Неизвестный код сервиса (serviceId)
UnsupportedApplicationDataTypeFault submitApplication Тип данных заявки не поддерживается профилем
  • Уровень заявки — ошибки, которые приходят в ответе на заявку. При отклонении заявки статус — REJECTED, текст ошибки и её код — в элементе apl:errors. Профиль отклоняет заявку в следующих случаях:
    • информационная система передаёт операцию, отличную от трёх разрешённых профилем;
    • у информационной системы отсутствует право использования профиля.

Остальные ошибки (валидация и выполнение отдельных операций) передаются тем же способом — описаны в разделе «Коды ошибок» спецификации каждой операции.