[base url: http://api.autoallianse.com]
API AutoAllianse представляет собой REST-сервис, позволяющий осуществлять проценку товаров, размещать заказы и получать статусы размещённых заказов.
Для обращения к методам API нужно пройти авторизацию на сервисе посредством персонального логина/пароля. В ответ будет сгенерирован Bearer токен
, который необходимо передавать в HTTP-заголовок вызываемого метода.
POST /token
Метод для получения Bearer токена
необходимого для авторизации.
Параметр |
Тип данных |
Способ передачи |
Описание |
username* |
string |
(body) |
Имя пользователя |
password* |
string |
(body) |
Пароль |
grant_type* |
string |
(body) |
grant_type = password |
Параметр |
Тип данных |
Описание |
token |
string |
Авторизационный токен |
userName |
string |
Имя пользователя |
validaty |
DateTime |
Срок действия |
Примеры запроса
cURL
C# - RestSharp
PHP - cURL
Python - Requests
curl --location --request POST 'http://api.autoallianse.com/token' \
--header 'Content-Type: text/plain' \
--data-raw 'username=your_login&password=your_password&grant_type=password'
var client = new RestClient("http://api.autoallianse.com/token");
client.Timeout = -1;
var request = new RestRequest(Method.POST);
request.AddHeader("Content-Type", "text/plain");
request.AddParameter("text/plain", "username=your_login&password=your_password&grant_type=password", ParameterType.RequestBody);
IRestResponse response = client.Execute(request);
Console.WriteLine(response.Content);
<?php
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => 'http://api.autoallianse.com/token',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'POST',
CURLOPT_POSTFIELDS =>'username=your_login&password=your_password&grant_type=password',
CURLOPT_HTTPHEADER => array(
'Content-Type: text/plain'
),
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
import requests
url = "http://api.autoallianse.com/token"
payload="username=your_login&password=your_password&grant_type=password"
headers = {
'Content-Type': 'text/plain'
}
response = requests.request("POST", url, headers=headers, data=payload)
print(response.text)
Пример ответа
{
"token": "2RQOWS1jxKZ0bYFg0m2ij2LdhXtzPFH9k62QOy2no2JKCkbOEhvUxs9uSCDtH7NVdvRZx_9Jormneb2XybldwVr69IJVTOtSqAyHAaFb2wL2vRsqRQQl35sbsNBzrSq5g_uctP_hPfbeYjgiEDxbT3KtmSQ21AAE_T7LiVfHw0GcvGqXmSZ84icsWdPOGwcsdzpHHSk2sByiIx",
"userName": "yourUserName",
"validaty": "2022-09-22T17:47:50.0714638+03:00"
}
Получить список брендов по артикулу
GET /api/search/{pn}/brands
Возвращает только те бренды по которым имеются в наличие детали (на складе или у транзитных поставщиков).
Для авторизации необходимо передавать HTTP-заголовок: 'Authorization: Bearer %ВАШ АВТОРИЗАЦИОННЫЙ ТОКЕН%'
Параметры запроса
Параметр |
Тип данных |
Способ передачи |
Описание |
pn* |
string |
(path) |
Артикул (номер запчасти) |
analogues |
boolean |
(query) |
Искать аналоги:
false - поиск без аналогов (значение по умолчанию).
true - поиск с аналогами.
|
Параметры ответа
Параметр |
Тип данных |
Описание |
brand |
string |
Наименование производителя |
description |
string |
Описание детали |
Примеры
Примеры запроса
cURL
C# - RestSharp
PHP - cURL
Python - Requests
curl --location --request GET 'http://api.autoallianse.com/api/search/45216/brands?analogues=true' \
--header 'Authorization: Bearer 2RQOWS1jxKZ0bYFg0m2ij2LdhXtzPFH9k62QOy2no2JKCkbOEhvUxs9uSCDtH7NVdvRZx_9Jormneb2XybldwVr69IJVTOtSqAyHAaFb2wL2vRsqRQQl35sbsNBzrSq5g_uctP_hPfbeYjgiEDxbT3KtmSQ21AAE_T7LiVfHw0GcvGqXmSZ84icsWdPOGwcsdzpHHSk2sByiIx'
var client = new RestClient("http://api.autoallianse.com/api/search/45216/brands?analogues=true");
client.Timeout = -1;
var request = new RestRequest(Method.GET);
request.AddHeader("Authorization", "Bearer 2RQOWS1jxKZ0bYFg0m2ij2LdhXtzPFH9k62QOy2no2JKCkbOEhvUxs9uSCDtH7NVdvRZx_9Jormneb2XybldwVr69IJVTOtSqAyHAaFb2wL2vRsqRQQl35sbsNBzrSq5g_uctP_hPfbeYjgiEDxbT3KtmSQ21AAE_T7LiVfHw0GcvGqXmSZ84icsWdPOGwcsdzpHHSk2sByiIx");
IRestResponse response = client.Execute(request);
Console.WriteLine(response.Content);
<?php
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => 'http://api.autoallianse.com/api/search/45216/brands?analogues=true',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'GET',
CURLOPT_HTTPHEADER => array(
'Authorization: Bearer 2RQOWS1jxKZ0bYFg0m2ij2LdhXtzPFH9k62QOy2no2JKCkbOEhvUxs9uSCDtH7NVdvRZx_9Jormneb2XybldwVr69IJVTOtSqAyHAaFb2wL2vRsqRQQl35sbsNBzrSq5g_uctP_hPfbeYjgiEDxbT3KtmSQ21AAE_T7LiVfHw0GcvGqXmSZ84icsWdPOGwcsdzpHHSk2sByiIx'
),
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
import requests
url = "http://api.autoallianse.com/api/search/45216/brands?analogues=true"
payload={}
headers = {
'Authorization': 'Bearer 2RQOWS1jxKZ0bYFg0m2ij2LdhXtzPFH9k62QOy2no2JKCkbOEhvUxs9uSCDtH7NVdvRZx_9Jormneb2XybldwVr69IJVTOtSqAyHAaFb2wL2vRsqRQQl35sbsNBzrSq5g_uctP_hPfbeYjgiEDxbT3KtmSQ21AAE_T7LiVfHw0GcvGqXmSZ84icsWdPOGwcsdzpHHSk2sByiIx'
}
response = requests.request("GET", url, headers=headers, data=payload)
print(response.text)
Если поиск аналогов не требуется, параметр analogues
можно не указывать
Пример ответа
[
{
"brand": "3RG",
"description": "Кронштейн"
},
{
"brand": "FOBOS",
"description": "Труба приемная глушителя"
},
{
"brand": "MEAT&DORIA",
"description": "Шкив с муфтой свободного хода"
}
]
GET /api/search/{pn}/brand/{brand}
Для авторизации необходимо передавать HTTP-заголовок: 'Authorization: Bearer %ВАШ АВТОРИЗАЦИОННЫЙ ТОКЕН%'
Параметр |
Тип данных |
Способ передачи |
Описание |
pn* |
string |
(path) |
Артикул (номер запчасти) |
brand * |
string |
(path) |
Бренд |
analogues |
boolean |
(query) |
Искать аналоги:
false - поиск без аналогов (значение по умолчанию).
true - поиск с аналогами.
|
Параметр |
Тип данных |
Описание |
partName |
string |
Описание артикула |
deliveryDaysMin |
int32 |
Минимальный срок поставки |
deliveryDaysMax |
int32 |
Максимальный срок поставки |
qtyInStock |
int32 |
Количество, доступное к заказу на складе поставщика (0 - В наличии на складе поставщика ) |
minOrderQty |
int32 |
Минимальное количество для заказа |
price |
decimal |
Цена |
brand |
string |
Бренд |
partNumber |
string |
Номер детали |
supplierID |
int32 |
Код поставщика |
Примеры запроса
cURL
C# - RestSharp
PHP - cURL
Python - Requests
curl --location --request GET 'http://api.autoallianse.com/api/search/45216/brand/3RG?analogues=true' \
--header 'Authorization: Bearer 2RQOWS1jxKZ0bYFg0m2ij2LdhXtzPFH9k62QOy2no2JKCkbOEhvUxs9uSCDtH7NVdvRZx_9Jormneb2XybldwVr69IJVTOtSqAyHAaFb2wL2vRsqRQQl35sbsNBzrSq5g_uctP_hPfbeYjgiEDxbT3KtmSQ21AAE_T7LiVfHw0GcvGqXmSZ84icsWdPOGwcsdzpHHSk2sByiIx'
var client = new RestClient("http://api.autoallianse.com/api/search/45216/brand/3RG?analogues=true");
client.Timeout = -1;
var request = new RestRequest(Method.GET);
request.AddHeader("Authorization", "Bearer 2RQOWS1jxKZ0bYFg0m2ij2LdhXtzPFH9k62QOy2no2JKCkbOEhvUxs9uSCDtH7NVdvRZx_9Jormneb2XybldwVr69IJVTOtSqAyHAaFb2wL2vRsqRQQl35sbsNBzrSq5g_uctP_hPfbeYjgiEDxbT3KtmSQ21AAE_T7LiVfHw0GcvGqXmSZ84icsWdPOGwcsdzpHHSk2sByiIx");
IRestResponse response = client.Execute(request);
Console.WriteLine(response.Content);
<?php
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => 'http://api.autoallianse.com/api/search/45216/brand/3RG?analogues=true',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'GET',
CURLOPT_HTTPHEADER => array(
'Authorization: Bearer 2RQOWS1jxKZ0bYFg0m2ij2LdhXtzPFH9k62QOy2no2JKCkbOEhvUxs9uSCDtH7NVdvRZx_9Jormneb2XybldwVr69IJVTOtSqAyHAaFb2wL2vRsqRQQl35sbsNBzrSq5g_uctP_hPfbeYjgiEDxbT3KtmSQ21AAE_T7LiVfHw0GcvGqXmSZ84icsWdPOGwcsdzpHHSk2sByiIx'
),
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
import requests
url = "http://api.autoallianse.com/api/search/45216/brand/3RG?analogues=true"
payload={}
headers = {
'Authorization': 'Bearer 2RQOWS1jxKZ0bYFg0m2ij2LdhXtzPFH9k62QOy2no2JKCkbOEhvUxs9uSCDtH7NVdvRZx_9Jormneb2XybldwVr69IJVTOtSqAyHAaFb2wL2vRsqRQQl35sbsNBzrSq5g_uctP_hPfbeYjgiEDxbT3KtmSQ21AAE_T7LiVfHw0GcvGqXmSZ84icsWdPOGwcsdzpHHSk2sByiIx'
}
response = requests.request("GET", url, headers=headers, data=payload)
print(response.text)
Если поиск аналогов не требуется, параметр analogues
можно не указывать
Пример ответа
[
{
"partName": "Кронштейн",
"deliveryDaysMin": 58,
"deliveryDaysMax": 78,
"qtyInStock": 0,
"minOrderQty": 1,
"price": 185.7400,
"brand": "PEUGEOT/CITROEN",
"partNumber": "5271E4",
"supplierID": 4220
},
{
"partName": "Кронштейн",
"deliveryDaysMin": 68,
"deliveryDaysMax": 93,
"qtyInStock": 0,
"minOrderQty": 1,
"price": 159.2700,
"brand": "PEUGEOT/CITROEN",
"partNumber": "5271E4",
"supplierID": 4845
}
]
POST /api/order
При размещении заказа, возможно возникновение "коллизий" по цене либо по количеству:
- Коллизия по цене возникает если цена клиента ниже нашей текущей цены.
- Коллизия по количеству возникает если требуемое количество превышает остатки склада.
- Также коллизия по количеству возникает в случае, если требуемое количество не соответствует кратности по этой детали (Например: Деталь - тормозные колодки, которые продаются только парами, а клиент хочет заказать 3 таких детали.)
Управлять реакцией на возникающие коллизии можно посредством установки параметра ValidationType в параметрах запроса.
Для авторизации необходимо передавать HTTP-заголовок: 'Authorization: Bearer %ВАШ АВТОРИЗАЦИОННЫЙ ТОКЕН%'
Параметр |
Тип данных |
Способ передачи |
Описание |
custOrderNum |
string |
(body) |
Клиентский номер заказа |
orderNotes |
string |
(body) |
Примечание к заказу |
validationType* |
int32 |
(body) |
Реакция на возникшие коллизии:
0 - В случае любой коллизии заказ не размещать
1 - Разместить все позиции, кроме отсутствующих в остатках. При этом цена всегда наша текущая, а количество при нехватке уменьшается до имеющегося и выравнивается по кратности (поле MinOrderQty в результатах поиска это и есть кратность или 'минимальное количество для заказа')
2 - Коллизии обрабатываются построчно (в каждой строке задаются свои реакции)
|
isTest* |
boolean |
(body) |
true - тестовый заказ, не попадает в учётную систему и имеет время жизни ~24ч. (значение по умолчанию)
false - реальный заказ
|
orderHeadLines* |
array[] |
(body) |
Строки заказа |
orderHeadLines
Параметр |
Тип данных |
Способ передачи |
Описание |
qty* |
int32 |
(body) |
Количество |
price* |
decimal |
(body) |
Цена |
reference |
string |
(body) |
Код позиции |
reactionByCount |
byte |
(body) |
Реакция на коллизию по количеству.
(Существуют два вида коллизий: (ко) превышение имеющегося количества, (кр) несоответствие кратности).
0 - При возникновении любой из двух коллизий, позиция отбрасывается, иначе размещаем позицию в заказе с количеством Qty .
1 - При возникновении коллизии (кр), заказываемое количество корректируется вверх до ближайшего по кратности числа. При обнаружении коллизии (ко), позиция отбрасывается, иначе размещаем позицию в заказе со скорректированным количеством.
2 - При возникновении коллизии (кр), заказываемое количество корректируется вниз до ближайшего по кратности числа. При обнаружении коллизии (ко), заказываемое количество корректируется вниз, до ближайшего к имеющимся остаткам кратного числа. Размещаем позицию в заказе со скорректированным количеством, если оно превышает ноль, иначе позиция отбрасывается.
|
reactionByPrice |
byte |
(body) |
Реакция на коллизию по цене:
0 - Размещаем не выше указанной в поле Price цены, иначе позиция отбрасывается
1 - Размещаем по нашей текущей цене (независимо от цены в поле Price )
|
strictlyThisNumber |
boolean |
(body) |
Строго этот номер (замены неприемлемы) |
brand* |
string |
(body) |
Бренд |
partNumber* |
string |
(body) |
Номер детали |
supplierID* |
int32 |
(body) |
Код поставщика |
orderPlacedLines
Параметр |
Тип данных |
Описание |
qtyOrder |
int32 |
Количество запрошенное клиентом |
qtyPlaced |
int32 |
Количество размещённое в заказе |
priceOrder |
decimal |
Цена запрошенная клиентом |
pricePlaced |
decimal |
Цена размещённая в заказе |
status |
int32 |
Статус размещения:
0 - Строка успешна размещена
1 - Строка успешно размещена. Количество выровнено по кратности вверх.
2 - Строка успешно размещена. Количество выровнено по кратности вниз (со снижением до остатка при необходимости).
10 - Строка не размещена. Не указано одно из ключевых значений: Brand, PartNumber, SupplierID
11 - Строка не размещена. Не указано количество Qty .
12 - Строка не размещена. Не указана реакция на коллизию по количеству ReactionByCount .
13 - Строка не размещена. Не указана реакция на коллизию по цене ReactionByPrice .
20 - Строка не размещена. Коллизия по количеству.
30 - Строка не размещена. Коллизия по цене.
90 - Строка не размещена. Позиция не найдена в остатках.
|
reference |
string |
Код позиции |
brand |
string |
Бренд |
partNumber |
string |
Номер детали |
supplierID |
int32 |
Код поставщика |
Примеры запроса
cURL
C# - RestSharp
PHP - cURL
Python - Requests
curl --location --request POST 'http://api.autoallianse.com/api/order' \
--header 'Authorization: Bearer 2RQOWS1jxKZ0bYFg0m2ij2LdhXtzPFH9k62QOy2no2JKCkbOEhvUxs9uSCDtH7NVdvRZx_9Jormneb2XybldwVr69IJVTOtSqAyHAaFb2wL2vRsqRQQl35sbsNBzrSq5g_uctP_hPfbeYjgiEDxbT3KtmSQ21AAE_T7LiVfHw0GcvGqXmSZ84icsWdPOGwcsdzpHHSk2sByiIx' \
--header 'Content-Type: application/json' \
--data-raw '{
"custOrderNum": "test_order_12345",
"orderNotes": "text2",
"validationType": 2,
"isTest": true,
"orderHeadLines": [
{
"qty": 6,
"price": 4.23,
"reference": "ref1",
"reactionByCount": 1,
"reactionByPrice": 1,
"strictlyThisNumber": true,
"brand": "NGK",
"partNumber": "1667",
"supplierID": 5
},
{
"qty": 33,
"price": 1.03,
"reference": "ref2",
"reactionByCount": 0,
"reactionByPrice": 0,
"strictlyThisNumber": true,
"brand": "VAG",
"partNumber": "101000063AA",
"supplierID": 5
}
]
}'
var client = new RestClient("http://api.autoallianse.com/api/order");
client.Timeout = -1;
var request = new RestRequest(Method.POST);
request.AddHeader("Authorization", "Bearer 2RQOWS1jxKZ0bYFg0m2ij2LdhXtzPFH9k62QOy2no2JKCkbOEhvUxs9uSCDtH7NVdvRZx_9Jormneb2XybldwVr69IJVTOtSqAyHAaFb2wL2vRsqRQQl35sbsNBzrSq5g_uctP_hPfbeYjgiEDxbT3KtmSQ21AAE_T7LiVfHw0GcvGqXmSZ84icsWdPOGwcsdzpHHSk2sByiIx");
request.AddHeader("Content-Type", "application/json");
request.AddParameter("application/json",
"{
\"custOrderNum\": \"test_order_12345\",
\"orderNotes\": \"text2\",
\"validationType\": 2,
\"isTest\": true,
\"orderHeadLines\": [
{
\"qty\": 6,
\"price\": 4.23,
\"reference\": \"ref1\",
\"reactionByCount\": 1,
\"reactionByPrice\": 1,
\"strictlyThisNumber\": true,
\"brand\": \"NGK\",
\"partNumber\": \"1667\",
\"supplierID\": 5
},
{
\"pty\": 33,
\"price\": 1.03,
\"reference\": \"ref2\",
\"reactionByCount\": 0,
\"reactionByPrice\": 0,
\"strictlyThisNumber\": true,
\"brand\": \"VAG\",
\"partNumber\": \"101000063AA\",
\"supplierID\": 5
}
]
}", ParameterType.RequestBody);
IRestResponse response = client.Execute(request);
Console.WriteLine(response.Content);
<?php
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => 'http://api.autoallianse.com/api/order',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'POST',
CURLOPT_POSTFIELDS =>'{
"custOrderNum": "test_order_12345",
"orderNotes": "text2",
"validationType": 2,
"isTest": true,
"orderHeadLines": [
{
"qty": 6,
"price": 4.23,
"reference": "ref1",
"reactionByCount": 1,
"reactionByPrice": 1,
"strictlyThisNumber": true,
"brand": "NGK",
"partNumber": "1667",
"supplierID": 5
},
{
"qty": 33,
"price": 1.03,
"reference": "ref2",
"reactionByCount": 0,
"reactionByPrice": 0,
"strictlyThisNumber": true,
"brand": "VAG",
"partNumber": "101000063AA",
"supplierID": 5
}
]
}',
CURLOPT_HTTPHEADER => array(
'Authorization: Bearer 2RQOWS1jxKZ0bYFg0m2ij2LdhXtzPFH9k62QOy2no2JKCkbOEhvUxs9uSCDtH7NVdvRZx_9Jormneb2XybldwVr69IJVTOtSqAyHAaFb2wL2vRsqRQQl35sbsNBzrSq5g_uctP_hPfbeYjgiEDxbT3KtmSQ21AAE_T7LiVfHw0GcvGqXmSZ84icsWdPOGwcsdzpHHSk2sByiIx',
'Content-Type: application/json'
),
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
import requests
url = "http://api.autoallianse.com/api/order"
payload="{
\"custOrderNum\": \"test_order_12345\",
\"orderNotes\": \"text2\",
\"validationType\": 2,
\"isTest\": true,
\"orderHeadLines\": [
{
\"qty\": 6,
\"price\": 4.23,
\"reference\": \"ref1\",
\"reactionByCount\": 1,
\"reactionByPrice\": 1,
\"strictlyThisNumber\": true,
\"brand\": \"NGK\",
\"partNumber\": \"1667\",
\"supplierID\": 5
},
{
\"qty\": 33,
\"price\": 1.03,
\"reference\": \"ref2\",
\"reactionByCount\": 0,
\"reactionByPrice\": 0,
\"strictlyThisNumber\": true,
\"brand\": \"VAG\",
\"partNumber\": \"101000063AA\",
\"supplierID\": 5
}
]
}"
headers = {
'Authorization': 'Bearer 2RQOWS1jxKZ0bYFg0m2ij2LdhXtzPFH9k62QOy2no2JKCkbOEhvUxs9uSCDtH7NVdvRZx_9Jormneb2XybldwVr69IJVTOtSqAyHAaFb2wL2vRsqRQQl35sbsNBzrSq5g_uctP_hPfbeYjgiEDxbT3KtmSQ21AAE_T7LiVfHw0GcvGqXmSZ84icsWdPOGwcsdzpHHSk2sByiIx',
'Content-Type': 'application/json'
}
response = requests.request("POST", url, headers=headers, data=payload)
print(response.text)
Пример ответа
{
"orderID": 5198,
"status": 1,
"total": 13.5200,
"orderPlacedLines": [
{
"qtyOrder": 6,
"qtyPlaced": 8,
"priceOrder": 4.23,
"pricePlaced": 1.6900,
"status": 1,
"reference": "ref1",
"brand": "NGK",
"partNumber": "1667",
"supplierID": 5
},
{
"qtyOrder": 33,
"qtyPlaced": 0,
"priceOrder": 1.03,
"pricePlaced": 0.0,
"status": 30,
"reference": "ref2",
"brand": "VAG",
"partNumber": "101000063AA",
"supplierID": 5
}
]
}
GET /api/status/{orderID}
Для авторизации необходимо передавать HTTP-заголовок: 'Authorization: Bearer %ВАШ АВТОРИЗАЦИОННЫЙ ТОКЕН%'
Параметр |
Тип данных |
Способ передачи |
Описание |
orderID* |
int32 |
(path) |
ID заказа |
Параметр |
Тип данных |
Описание |
orderID |
int32 |
ID заказа |
custOrderNum |
string |
Клиентский номер заказа |
orderDate |
DateTime |
Дата размещения заказа |
completedDate |
DateTime? |
Дата завершения заказа |
status |
byte |
Статус заказа:
1 - Новый
2 - В работе
3 - Завершён
|
total |
decimal |
Сумма заказа |
orderLines |
array[] |
Строки заказа |
orderLines
Параметр |
Тип данных |
Описание |
partName |
string |
Описание артикула |
qty |
int32 |
Заказанное количество |
price |
decimal |
Цена |
referenceID |
string |
Код позиции |
currentStatus |
byte |
Текущий статус:
240 - Новый заказ
10 - Заказ проверен
15 - Заказ невозможен
40 - Заказ принят
50 - Отправлен поставщику
51 - Выход из порта отправителя
52 - Вход в порт прибытия
53 - Вход на таможенный терминал
54 - Выход по маршруту
55 - Выход с таможенного терминала
56 - Поступление на наш склад
57 - На транзитном складе № 1
58 - На транзитном складе № 2
59 - Вход в порт 1
60 - Вход в порт 2
61 - Брак
62 - Недостача
80 - Задержка
90 - Переход номера
100 - Изменение цены
120 - Поступил на склад
140 - Готово к выдаче
160 - Получен клиентом
180 - Поставка невозможна
190 - Выдача невозможна
200 - Отказ клиента
|
estSupplyDate |
DateTime? |
Ожидаемая дата поставки |
brand |
string |
Бренд |
partNumber |
string |
Номер детали |
supplierID |
int32 |
Код поставщика |
Примеры запроса
cURL
C# - RestSharp
PHP - cURL
Python - Requests
curl --location --request GET 'http://api.autoallianse.com/api/status/5198' \
--header 'Authorization: Bearer 2RQOWS1jxKZ0bYFg0m2ij2LdhXtzPFH9k62QOy2no2JKCkbOEhvUxs9uSCDtH7NVdvRZx_9Jormneb2XybldwVr69IJVTOtSqAyHAaFb2wL2vRsqRQQl35sbsNBzrSq5g_uctP_hPfbeYjgiEDxbT3KtmSQ21AAE_T7LiVfHw0GcvGqXmSZ84icsWdPOGwcsdzpHHSk2sByiIx'
var client = new RestClient("http://api.autoallianse.com/api/status/5198");
client.Timeout = -1;
var request = new RestRequest(Method.GET);
request.AddHeader("Authorization", "Bearer 2RQOWS1jxKZ0bYFg0m2ij2LdhXtzPFH9k62QOy2no2JKCkbOEhvUxs9uSCDtH7NVdvRZx_9Jormneb2XybldwVr69IJVTOtSqAyHAaFb2wL2vRsqRQQl35sbsNBzrSq5g_uctP_hPfbeYjgiEDxbT3KtmSQ21AAE_T7LiVfHw0GcvGqXmSZ84icsWdPOGwcsdzpHHSk2sByiIx");
IRestResponse response = client.Execute(request);
Console.WriteLine(response.Content);
<?php
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => 'http://api.autoallianse.com/api/status/5198',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'GET',
CURLOPT_HTTPHEADER => array(
'Authorization: Bearer 2RQOWS1jxKZ0bYFg0m2ij2LdhXtzPFH9k62QOy2no2JKCkbOEhvUxs9uSCDtH7NVdvRZx_9Jormneb2XybldwVr69IJVTOtSqAyHAaFb2wL2vRsqRQQl35sbsNBzrSq5g_uctP_hPfbeYjgiEDxbT3KtmSQ21AAE_T7LiVfHw0GcvGqXmSZ84icsWdPOGwcsdzpHHSk2sByiIx'
),
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
import requests
url = "http://api.autoallianse.com/api/status/5198"
payload={}
headers = {
'Authorization': 'Bearer 2RQOWS1jxKZ0bYFg0m2ij2LdhXtzPFH9k62QOy2no2JKCkbOEhvUxs9uSCDtH7NVdvRZx_9Jormneb2XybldwVr69IJVTOtSqAyHAaFb2wL2vRsqRQQl35sbsNBzrSq5g_uctP_hPfbeYjgiEDxbT3KtmSQ21AAE_T7LiVfHw0GcvGqXmSZ84icsWdPOGwcsdzpHHSk2sByiIx'
}
response = requests.request("GET", url, headers=headers, data=payload)
print(response.text)
Пример ответа
{
"orderID": 5198,
"custOrderNum": "test_order_12345",
"orderDate": "2077-01-21T00:00:00.00",
"completedDate": "0001-01-01T00:00:00",
"status": 1,
"total": 13.52,
"orderLines": [
{
"partName": "Свеча зажигания VL 35 BKR5E NGK 1667",
"qty": 8,
"price": 1.69,
"referenceID": "ref1",
"currentStatus": 10,
"estSupplyDate": "2077-01-12T00:00:00",
"brand": "NGK",
"partNumber": "1667",
"supplierID": 5
}
]
}
GET /api/getorders/{isActive}/{limit}
Метод возвращает все активные заказы (статусы: 1 - новый и 2 - в работе) или все заказы (+ статус: 3 - завершён) в зависимости от параметра isActive, но не больше параметра limit.
Для авторизации необходимо передавать HTTP-заголовок: 'Authorization: Bearer %ВАШ АВТОРИЗАЦИОННЫЙ ТОКЕН%'
Параметр |
Тип данных |
Способ передачи |
Описание |
isActive |
bool |
(path) |
Вернуть только активные заказы (true) или все заказы (false). По умолчанию - false. |
limit |
int32 |
(path) |
Кол-во заказов, которые нужно вернуть. Допускается любое значение от 1 до 1000. По умолчанию 100. |
Order[]
Параметр |
Тип данных |
Описание |
orderID |
int32 |
ID заказа |
custOrderNum |
string |
Клиентский номер заказа |
orderDate |
DateTime |
Дата размещения заказа |
completedDate |
DateTime? |
Дата завершения заказа |
status |
byte |
Статус заказа:
1 - Новый
2 - В работе
3 - Завершён
|
total |
decimal |
Сумма заказа |
orderLines |
array[] |
Строки заказа |
orderLines
Параметр |
Тип данных |
Описание |
partName |
string |
Описание артикула |
qty |
int32 |
Заказанное количество |
price |
decimal |
Цена |
referenceID |
string |
Код позиции |
currentStatus |
byte |
Текущий статус:
240 - Новый заказ
10 - Заказ проверен
15 - Заказ невозможен
40 - Заказ принят
50 - Отправлен поставщику
51 - Выход из порта отправителя
52 - Вход в порт прибытия
53 - Вход на таможенный терминал
54 - Выход по маршруту
55 - Выход с таможенного терминала
56 - Поступление на наш склад
57 - На транзитном складе № 1
58 - На транзитном складе № 2
59 - Вход в порт 1
60 - Вход в порт 2
61 - Брак
62 - Недостача
80 - Задержка
90 - Переход номера
100 - Изменение цены
120 - Поступил на склад
140 - Готово к выдаче
160 - Получен клиентом
180 - Поставка невозможна
190 - Выдача невозможна
200 - Отказ клиента
|
estSupplyDate |
DateTime? |
Ожидаемая дата поставки |
brand |
string |
Бренд |
partNumber |
string |
Номер детали |
supplierID |
int32 |
Код поставщика |
Примеры запроса
cURL
C# - RestSharp
PHP - cURL
Python - Requests
curl --location --request GET 'http://api.autoallianse.com/api/getorders/true/2' \
--header 'Authorization: Bearer 2RQOWS1jxKZ0bYFg0m2ij2LdhXtzPFH9k62QOy2no2JKCkbOEhvUxs9uSCDtH7NVdvRZx_9Jormneb2XybldwVr69IJVTOtSqAyHAaFb2wL2vRsqRQQl35sbsNBzrSq5g_uctP_hPfbeYjgiEDxbT3KtmSQ21AAE_T7LiVfHw0GcvGqXmSZ84icsWdPOGwcsdzpHHSk2sByiIx'
var client = new RestClient("http://api.autoallianse.com/api/getorders/true/2");
client.Timeout = -1;
var request = new RestRequest(Method.GET);
request.AddHeader("Authorization", "Bearer 2RQOWS1jxKZ0bYFg0m2ij2LdhXtzPFH9k62QOy2no2JKCkbOEhvUxs9uSCDtH7NVdvRZx_9Jormneb2XybldwVr69IJVTOtSqAyHAaFb2wL2vRsqRQQl35sbsNBzrSq5g_uctP_hPfbeYjgiEDxbT3KtmSQ21AAE_T7LiVfHw0GcvGqXmSZ84icsWdPOGwcsdzpHHSk2sByiIx");
IRestResponse response = client.Execute(request);
Console.WriteLine(response.Content);
<?php
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => 'http://api.autoallianse.com/api/getorders/true/2',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'GET',
CURLOPT_HTTPHEADER => array(
'Authorization: Bearer 2RQOWS1jxKZ0bYFg0m2ij2LdhXtzPFH9k62QOy2no2JKCkbOEhvUxs9uSCDtH7NVdvRZx_9Jormneb2XybldwVr69IJVTOtSqAyHAaFb2wL2vRsqRQQl35sbsNBzrSq5g_uctP_hPfbeYjgiEDxbT3KtmSQ21AAE_T7LiVfHw0GcvGqXmSZ84icsWdPOGwcsdzpHHSk2sByiIx'
),
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
import requests
url = "http://api.autoallianse.com/api/getorders/true/2"
payload={}
headers = {
'Authorization': 'Bearer 2RQOWS1jxKZ0bYFg0m2ij2LdhXtzPFH9k62QOy2no2JKCkbOEhvUxs9uSCDtH7NVdvRZx_9Jormneb2XybldwVr69IJVTOtSqAyHAaFb2wL2vRsqRQQl35sbsNBzrSq5g_uctP_hPfbeYjgiEDxbT3KtmSQ21AAE_T7LiVfHw0GcvGqXmSZ84icsWdPOGwcsdzpHHSk2sByiIx'
}
response = requests.request("GET", url, headers=headers, data=payload)
print(response.text)
Пример ответа
[
{
"orderID": 5282,
"custOrderNum": "test_order_12345",
"orderDate": "2021-01-21T17:45:40.21",
"completedDate": null,
"status": 1,
"total": 13.52,
"orderLines": [
{
"partName": "Свеча зажигания VL 35 BKR5E NGK 1667",
"qty": 8,
"price": 1.69,
"referenceID": "ref1",
"currentStatus": 240,
"estSupplyDate": null,
"brand": "NGK",
"partNumber": "1667",
"supplierID": 5
}
]
},
{
"orderID": 5276,
"custOrderNum": "test_order_12345",
"orderDate": "2021-01-21T17:45:39.81",
"completedDate": null,
"status": 1,
"total": 13.52,
"orderLines": [
{
"partName": "Свеча зажигания VL 35 BKR5E NGK 1667",
"qty": 8,
"price": 1.69,
"referenceID": "ref1",
"currentStatus": 240,
"estSupplyDate": null,
"brand": "NGK",
"partNumber": "1667",
"supplierID": 5
}
]
}
]
* - обязательный параметр