Роут-провайдер

Данный роут помогает получить доступ к штатному АПИ платформы.

  1. Необходимо активировать нативные роуты.

  2. Для выполнения запроса к нативному роуту-провайдеру, также необходимо использовать авторизацию по токену.

  3. Либо, можно переопределить роут-провайдер через собственные карты роутов, и сконфигурировать его под конкретные нужды проекта.

При штатных настройках, для взаимодействия с роутом, необходимо:

  1. Послать GET-запрос с нужным классом и методом, чтобы увидеть, какие параметры готов принять метод указанного класса.

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

Получение информации по классу и методу штатного АПИ платформы.

GET https://site.com/api/provider?class=CSaleOrder&method=GetList

Query Parameters

Name
Type
Description

class*

String

Класс модуля

method*

String

Метод класса

{
	"class": {
		"name": "CSaleOrder",
		"file": "C:\\WebServer\\module.loc\\bitrix\\modules\\sale\\mysql\\order.php"
	},
	"method": {
		"name": "GetList",
		"doc": "/**\n\t * @param array $arOrder\n\t * @param array $arFilter\n\t * @param bool|array $arGroupBy\n\t * @param bool|array $arNavStartParams\n\t * @param array $arSelectFields\n\t * @param array $arOptions\n\t * @return bool|CDBResult\n\t */",
		"deprecated": false,
		"static": true,
		"parameters": {
			"arOrder": {
				"name": "arOrder",
				"defaultValue": {
					"ID": "DESC"
				},
				"isPassedByReference": false
			},
			"arFilter": {
				"name": "arFilter",
				"defaultValue": [],
				"isPassedByReference": false
			},
			"arGroupBy": {
				"name": "arGroupBy",
				"defaultValue": false,
				"isPassedByReference": false
			},
			"arNavStartParams": {
				"name": "arNavStartParams",
				"defaultValue": false,
				"isPassedByReference": false
			},
			"arSelectFields": {
				"name": "arSelectFields",
				"defaultValue": [],
				"isPassedByReference": false
			},
			"arOptions": {
				"name": "arOptions",
				"defaultValue": [],
				"isPassedByReference": false
			}
		}
	}
}
  1. Теперь, когда мы видим, какие параметры готов принять метод указанного класса, мы можем выполнить запрос, для получения данных.

  2. Для выполнения запроса необходимо отравлять POST-запрос, в теле которого будут переданы параметры запроса. Пример, далее.

// Тело запроса
{
	"class": "CSaleOrder",
	"method": "GetList",
	"parameters": {
		"arFilter": {
			"LID": "s1"
		}
	}
}

Получение данных используя класс и метод штатного АПИ платформы.

POST https://site.com/api/provider

Headers

Name
Type
Description

Content-Type*

String

application/json

Request Body

Name
Type
Description

class*

String

Класс модуля

method*

String

Метод класса

parameters*

Object

Параметры для метода

[
	{
		"ID": "2",
		"LID": "s1",
		"ACCOUNT_NUMBER": "2",
		"TRACKING_NUMBER": "",
		"PAY_SYSTEM_ID": "1",
		"DELIVERY_ID": "new1:profile",
		"DATE_INSERT": "13.07.2023 16:41:16",
		"DATE_UPDATE": "13.07.2023 16:41:16",
		"PERSON_TYPE_ID": "0",
		"USER_ID": "1",
		"PAYED": "N",
		"IS_SYNC_B24": "N",
		"DATE_PAYED": null,
		"EMP_PAYED_ID": null,
		"DEDUCTED": "N",
		"DATE_DEDUCTED": null,
		"EMP_DEDUCTED_ID": null,
		"REASON_UNDO_DEDUCTED": null,
		"STATUS_ID": "N",
		"DATE_STATUS": "13.07.2023 16:41:15",
		"EMP_STATUS_ID": "1",
		"MARKED": "N",
		"DATE_MARKED": null,
		"EMP_MARKED_ID": null,
		"REASON_MARKED": null,
		"PRICE_DELIVERY": "0",
		"ALLOW_DELIVERY": "N",
		"DATE_ALLOW_DELIVERY": null,
		"EMP_ALLOW_DELIVERY_ID": null,
		"RESERVED": "N",
		"PRICE": "19350",
		"CURRENCY": "RUB",
		"DISCOUNT_VALUE": "0",
		"TAX_VALUE": "0.00",
		"SUM_PAID": "0.00",
		"USER_DESCRIPTION": "",
		"PAY_VOUCHER_NUM": "",
		"PAY_VOUCHER_DATE": null,
		"ADDITIONAL_INFO": null,
		"COMMENTS": "",
		"COMPANY_ID": null,
		"CREATED_BY": "1",
		"RESPONSIBLE_ID": null,
		"STAT_GID": null,
		"DATE_PAY_BEFORE": null,
		"DATE_BILL": null,
		"IS_RECURRING": "N",
		"RECURRING_ID": null,
		"LOCKED_BY": null,
		"DATE_LOCK": null,
		"RECOUNT_FLAG": "Y",
		"AFFILIATE_ID": null,
		"DELIVERY_DOC_NUM": null,
		"DELIVERY_DOC_DATE": null,
		"UPDATED_1C": "N",
		"ORDER_TOPIC": null,
		"XML_ID": "bx_64affefbefbb1",
		"ID_1C": null,
		"VERSION_1C": null,
		"VERSION": "0",
		"EXTERNAL_ORDER": "N",
		"STORE_ID": null,
		"CANCELED": "N",
		"EMP_CANCELED_ID": null,
		"DATE_CANCELED": null,
		"REASON_CANCELED": null,
		"BX_USER_ID": "3f61d5bdbd4e0835463b75bf7cfe5e36",
		"SEARCH_CONTENT": null,
		"RUNNING": "N",
		"DATE_INSERT_FORMAT": "13.07.2023 16:41:16",
		"DATE_UPDATE_SHORT": "13.07.2023",
		"DATE_STATUS_SHORT": "13.07.2023",
		"DATE_CANCELED_SHORT": null,
		"BY_RECOMMENDATION": "N",
		"LOCK_STATUS": "green",
		"LOCK_USER_NAME": null,
		"RESPONSIBLE_LOGIN": null,
		"RESPONSIBLE_NAME": null,
		"RESPONSIBLE_LAST_NAME": null,
		"RESPONSIBLE_SECOND_NAME": null,
		"RESPONSIBLE_EMAIL": null,
		"RESPONSIBLE_WORK_POSITION": null,
		"RESPONSIBLE_PERSONAL_PHOTO": null,
		"USER_LOGIN": "admin",
		"USER_NAME": "Денис",
		"USER_LAST_NAME": "Артамонов",
		"USER_EMAIL": "[email protected]"
	},
	{
		"ID": "1",
		"LID": "s1",
		"ACCOUNT_NUMBER": "1",
		"TRACKING_NUMBER": "",
		"PAY_SYSTEM_ID": "1",
		"DELIVERY_ID": "new1:profile",
		"DATE_INSERT": "13.07.2023 16:41:03",
		"DATE_UPDATE": "13.07.2023 16:41:03",
		"PERSON_TYPE_ID": "0",
		"USER_ID": "1",
		"PAYED": "N",
		"IS_SYNC_B24": "N",
		"DATE_PAYED": null,
		"EMP_PAYED_ID": null,
		"DEDUCTED": "N",
		"DATE_DEDUCTED": null,
		"EMP_DEDUCTED_ID": null,
		"REASON_UNDO_DEDUCTED": null,
		"STATUS_ID": "N",
		"DATE_STATUS": "13.07.2023 16:41:02",
		"EMP_STATUS_ID": "1",
		"MARKED": "N",
		"DATE_MARKED": null,
		"EMP_MARKED_ID": null,
		"REASON_MARKED": null,
		"PRICE_DELIVERY": "0",
		"ALLOW_DELIVERY": "N",
		"DATE_ALLOW_DELIVERY": null,
		"EMP_ALLOW_DELIVERY_ID": null,
		"RESERVED": "N",
		"PRICE": "19350",
		"CURRENCY": "RUB",
		"DISCOUNT_VALUE": "0",
		"TAX_VALUE": "0.00",
		"SUM_PAID": "0.00",
		"USER_DESCRIPTION": "",
		"PAY_VOUCHER_NUM": "",
		"PAY_VOUCHER_DATE": null,
		"ADDITIONAL_INFO": null,
		"COMMENTS": "",
		"COMPANY_ID": null,
		"CREATED_BY": "1",
		"RESPONSIBLE_ID": null,
		"STAT_GID": null,
		"DATE_PAY_BEFORE": null,
		"DATE_BILL": null,
		"IS_RECURRING": "N",
		"RECURRING_ID": null,
		"LOCKED_BY": null,
		"DATE_LOCK": null,
		"RECOUNT_FLAG": "Y",
		"AFFILIATE_ID": null,
		"DELIVERY_DOC_NUM": null,
		"DELIVERY_DOC_DATE": null,
		"UPDATED_1C": "N",
		"ORDER_TOPIC": null,
		"XML_ID": "bx_64affeeeaa677",
		"ID_1C": null,
		"VERSION_1C": null,
		"VERSION": "0",
		"EXTERNAL_ORDER": "N",
		"STORE_ID": null,
		"CANCELED": "N",
		"EMP_CANCELED_ID": null,
		"DATE_CANCELED": null,
		"REASON_CANCELED": null,
		"BX_USER_ID": "3f61d5bdbd4e0835463b75bf7cfe5e36",
		"SEARCH_CONTENT": null,
		"RUNNING": "N",
		"DATE_INSERT_FORMAT": "13.07.2023 16:41:03",
		"DATE_UPDATE_SHORT": "13.07.2023",
		"DATE_STATUS_SHORT": "13.07.2023",
		"DATE_CANCELED_SHORT": null,
		"BY_RECOMMENDATION": "N",
		"LOCK_STATUS": "green",
		"LOCK_USER_NAME": null,
		"RESPONSIBLE_LOGIN": null,
		"RESPONSIBLE_NAME": null,
		"RESPONSIBLE_LAST_NAME": null,
		"RESPONSIBLE_SECOND_NAME": null,
		"RESPONSIBLE_EMAIL": null,
		"RESPONSIBLE_WORK_POSITION": null,
		"RESPONSIBLE_PERSONAL_PHOTO": null,
		"USER_LOGIN": "admin",
		"USER_NAME": "Денис",
		"USER_LAST_NAME": "Артамонов",
		"USER_EMAIL": "[email protected]"
	}
]

Last updated