Skip to content
Мои токены Поддержка
Для подтверждения действия введите пароль
Чтобы продолжить, введите пароль для пользователя
For LLMs and AI agents: canonical Markdown source of this documentation page (plain-text .md — fetch this URL to use the page content in tools and RAG). For LLMs and AI agents: developers documentation index in llms.txt format: https://<!--# echo var='base_url' -->/developers/llms.txt — ordered list of key documentation URLs for the developers section.

Услуга Перехват грузов — cпециальные предложения для заказчиков

Абонентский Договор - оферта (действует с 18 апреля 2024 г.)

Спецификация API по услуге Перехват груза

С услугой «Перехват грузов» вы мгновенно узнаете о появлении нового груза в ATI.SU и отправите заказчику перевозки ваше предложение. Услуга ориентирована на средние и крупные транспортные и транспортно-экспедиционные компании (далее - ТК) с большим собственным или привлеченным автопарком. У таких компаний должна быть возможность автоматизировать расчет стоимости перевозки груза и передачу предложений на перевозку в ATI.SU с помощью API.

Как работает «Перехват грузов»?

Заказчик перевозки добавляет информацию о грузе на сайт ATI.SU. Система «АТИ» запрашивает цены и условия перевозки для данного груза в нескольких ТК и показывает предложения заказчику. Заказчик выбирает подходящее предложение. Далее происходит оформление и исполнение заявки на перевозку в выбранной ТК.

Сколько стоит услуга «Перехват грузов»?

Плата за услугу (способ тарификации) зависит от выбранного тарифного плана:

  • «Только показы» — ATI.SU переадресовывает заказчика на сайт ТК, где происходит оформление и исполнение заявки.
  • «Показы и заявки» — заказчик оформляет заявку в ATI.SU. Заполненную заявку ATI.SU отправит в ТК, которая выполнит перевозку. (В разработке)
  • «Показы и перевозки» — заказчик оформляет заявку в ATI.SU. Заполненную заявку ATI.SU отправит в ТК, которая выполнит перевозку. Информация об исполнении заявки транслируется заказчику в кабинет на сайте ATI.SU. (В разработке)

Как подключить?

Методы API для встречных предложений по перехвату грузов

В обоих методах используется carrierViewId — идентификатор карточки груза в сценарии перехвата.

Создание встречного предложения по перехвату

Метод отправляет первичное встречное предложение по грузу из перехвата.

Версия API
post /gw/cargo-counter-offers-api/integrator/v1/cargos/interception/{carrierViewId}/counter-offers
Запрос
Модель
{...}
contact_id*: int32

Контакт, от лица которого выставляется встречное предложение

price*: decimal

Предложенная ставка встречного предложения не б/нал. Значение больше 0 и содержит не более 10 символов.

currency_id*: int32

Валюта встречного предложения. Значение из словаря валют АТИ

nds_price*: decimal

Предложенная ставка встречного предложения б/нал с НДС

nds_currency_id*: int32

Валюта ставки встречного предложения б/нал с НДС. Значение из словаря валют АТИ

not_nds_price*: decimal

Предложенная ставка встречного предложения б/нал без НДС

not_nds_currency_id*: int32

Валюта ставки встречного предложения б/нал без НДС. Значение из словаря валют АТИ

note: string (nullable)

Примечание к встречному предложению
Максимальная длина - 512 символов

prepay_percent*: int32

Процент предоплаты
Должен быть равен 0 или отсутствовать, если pay_attributes не содержит флаг 16 - возможна предоплата. Допустимое значение от 0 до 100

pay_after_max_bank_days*: int32

Оплата через ... банковских дней
Должен быть равен 0 или отсутствовать, если pay_attributes не содержит флаг 64 - включена оплата через некоторое количество банковских дней. Допустимое значение от 0 до 99

loading_date: date-time (nullable)

Дата, когда предложивший хочет перевезти груз

pay_attributes*: int32

Атрибуты оплаты, по умолчанию - 0. Битовая сумма следующих параметров:

  • 1 - возможна оплата наличными
  • 2 - возможна оплата по безналичному рассчету
  • 4 - блиц
  • 8 - оплата с НДС
  • 16 - возможна предоплата
  • 32 - оплата на выгрузке
  • 64 - включена ли оплата через некоторое количество банковских дней
}
Пример запроса
curl 'https://api.ati.su/gw/cargo-counter-offers-api/integrator/v1/cargos/interception/{carrierViewId}/counter-offers' \
-X 'POST' \
-H 'Authorization: Bearer {authorizationToken}' \
-H 'Content-Type: application/json' \
--data-raw '{"contact_id":0,"price":120,"currency_id":2,"nds_price":120,"nds_currency_id":2,"not_nds_price":120,"not_nds_currency_id":2,"note":"string","prepay_percent":0,"pay_after_max_bank_days":0,"loading_date":"2026-04-28T08:56:55.313Z","pay_attributes":0}'
Ответ
200 Созданное встречное предложение
Модель
{...}
id: uuid

Id встречного предложения

cargo_id: uuid

Id груза, на который оставлено встречное предложение

cargo_number: string

Номер груза

cargo_firm_id: int32

Id фирмы, которой принадлежит груз

firm_id: int32 (nullable)

Id фирмы, которая оставила встречное предложение

added_at: date-time

Дата добавления встречного предложения

updated_at: date-time

Дата изменения встречного предложения

price: decimal

Предложенная ставка встречного предложения не б/нал. Значение больше 0 и содержит не более 10 символов.

currency_id: int32

Валюта встречного предложения. Значение из словаря валют АТИ

nds_price: decimal

Предложенная ставка встречного предложения б/нал с НДС

nds_currency_id: int32

Валюта ставки встречного предложения б/нал с НДС. Значение из словаря валют АТИ

not_nds_price: decimal

Предложенная ставка встречного предложения б/нал без НДС

not_nds_currency_id: int32

Валюта ставки встречного предложения б/нал без НДС. Значение из словаря валют АТИ

counter_offer_source: int32

Обозначение источника, откуда добавлено встречное предложение.

  • 0 - Неизвестный источник
  • 1 - Мобильное приложение
  • 2 - Интегратор
  • 3 - Перехват грузов интегратором
  • 4 - Страница поиска грузов
  • 5 - Перехват машин
  • 6 - Сквозное встречное предложение, добавлено автоматически
note: string (nullable)

Примечание к встречному предложению
Максимальная длина - 512 символов

pay_attributes: int32

Атрибуты оплаты, по умолчанию - 0. Битовая сумма следующих параметров:

  • 1 - возможна оплата наличными
  • 2 - возможна оплата по безналичному рассчету
  • 4 - блиц
  • 8 - оплата с НДС
  • 16 - возможна предоплата
  • 32 - оплата на выгрузке
  • 64 - включена ли оплата через некоторое количество банковских дней
prepay_percent: int32

Процент предоплаты
Должен быть равен 0 или отсутствовать, если pay_attributes не содержит флаг 16 - возможна предоплата. Допустимое значение от 0 до 100

pay_after_max_bank_days: int32

Оплата через ... банковских дней
Должен быть равен 0 или отсутствовать, если pay_attributes не содержит флаг 64 - включена оплата через некоторое количество банковских дней. Допустимое значение от 0 до 99

loading_date: date-time (nullable)

Дата, когда предложивший хочет перевезти ваш груз

is_outdated: boolean

Определяет, просрочено ли встречное предложение. Когда груз редактируют, удаляют, обновляют, встречное предложение помечается просроченным. Только для чтения.

is_cargo_published: boolean

Относится ли встречное предложение к публикующемуся грузу. Только для чтения.

}
Пример
{...}
"id":"3fa85f64-5717-4562-b3fc-2c963f66afa6",
"cargo_id":"3fa85f64-5717-4562-b3fc-2c963f66afa6",
"cargo_number":"string",
"cargo_firm_id":0,
"firm_id":0,
"added_at":"1970-01-01T00:00:00.000Z",
"updated_at":"1970-01-01T00:00:00.000Z",
"price":0.5,
"currency_id":0,
"nds_price":0.5,
"nds_currency_id":0,
"not_nds_price":0.5,
"not_nds_currency_id":0,
"counter_offer_source":0,
"note":"string",
"pay_attributes":0,
"prepay_percent":0,
"pay_after_max_bank_days":0,
"loading_date":"1970-01-01T00:00:00.000Z",
"is_outdated":false,
"is_cargo_published":false,
"firm_info":{...}
"total_score":0.5,
"status":0,
"full_firm_name":"string",
"contact":{...},
"id":0,
"name":"string",
"telephone":"string",
"email":"string",
"icq":"string",
"mobile":"string",
"mobile_operator":"string",
"skype_name":"string",
"city_id":0,
"location":{...}
"city_id":0,
"region_id":0,
"country_id":0,
"full_name":"string",
"short_name":"string",
"is_regional_center":false,
"city_size":0,
"fias_id":"3fa85f64-5717-4562-b3fc-2c963f66afa6",
"attributes":0,
"city_name":"string",
"region_name":"string",
"country_name":"string",
"country_code_name":"string"
}
},
"inn":"string"
}
}
4XX Ошибка запроса
Модель
{...}

Тело ответа при ошибке (HTTP 4xx): общий ключ и пояснение, плюс при необходимости список ошибок по отдельным полям запроса.

error: string (nullable)

Ключ ошибки (идентификатор сценария отказа или типа сбоя).

reason: string (nullable)

Пояснение: что не так с запросом и при валидации — какие ограничения нарушены.

}
Пример
{...}
"error":"string",
"reason":"string",
"details":[...]
{...}
"property":"string",
"reason":"string",
"error":"string"
}
]
}

Изменение встречного предложения по перехвату

Метод изменяет ранее отправленное встречное предложение. Требуется cargoCounterOfferId.

Версия API
put /gw/cargo-counter-offers-api/integrator/v1/cargos/interception/{carrierViewId}/counter-offers/{cargoCounterOfferId}
Запрос
Модель
{...}
contact_id*: int32

Контакт, от лица которого выставляется встречное предложение

price*: decimal

Предложенная ставка встречного предложения не б/нал. Значение больше 0 и содержит не более 10 символов.

currency_id*: int32

Валюта встречного предложения. Значение из словаря валют АТИ

nds_price*: decimal

Предложенная ставка встречного предложения б/нал с НДС

nds_currency_id*: int32

Валюта ставки встречного предложения б/нал с НДС. Значение из словаря валют АТИ

not_nds_price*: decimal

Предложенная ставка встречного предложения б/нал без НДС

not_nds_currency_id*: int32

Валюта ставки встречного предложения б/нал без НДС. Значение из словаря валют АТИ

note: string (nullable)

Примечание к встречному предложению
Максимальная длина - 512 символов

prepay_percent*: int32

Процент предоплаты
Должен быть равен 0 или отсутствовать, если pay_attributes не содержит флаг 16 - возможна предоплата. Допустимое значение от 0 до 100

pay_after_max_bank_days*: int32

Оплата через ... банковских дней
Должен быть равен 0 или отсутствовать, если pay_attributes не содержит флаг 64 - включена оплата через некоторое количество банковских дней. Допустимое значение от 0 до 99

loading_date: date-time (nullable)

Дата, когда предложивший хочет перевезти груз

pay_attributes*: int32

Атрибуты оплаты, по умолчанию - 0. Битовая сумма следующих параметров:

  • 1 - возможна оплата наличными
  • 2 - возможна оплата по безналичному рассчету
  • 4 - блиц
  • 8 - оплата с НДС
  • 16 - возможна предоплата
  • 32 - оплата на выгрузке
  • 64 - включена ли оплата через некоторое количество банковских дней
}
Пример запроса
curl 'https://api.ati.su/gw/cargo-counter-offers-api/integrator/v1/cargos/interception/{carrierViewId}/counter-offers/{cargoCounterOfferId}' \
-X 'PUT' \
-H 'Authorization: Bearer {authorizationToken}' \
-H 'Content-Type: application/json' \
--data-raw '{"contact_id":0,"price":120,"currency_id":2,"nds_price":120,"nds_currency_id":2,"not_nds_price":120,"not_nds_currency_id":2,"note":"string","prepay_percent":0,"pay_after_max_bank_days":0,"loading_date":"2026-04-28T08:56:55.313Z","pay_attributes":0}'
Ответ
200 Измененное встречное предложение
Модель
{...}
id: uuid

Id встречного предложения

cargo_id: uuid

Id груза, на который оставлено встречное предложение

cargo_number: string

Номер груза

cargo_firm_id: int32

Id фирмы, которой принадлежит груз

firm_id: int32 (nullable)

Id фирмы, которая оставила встречное предложение

added_at: date-time

Дата добавления встречного предложения

updated_at: date-time

Дата изменения встречного предложения

price: decimal

Предложенная ставка встречного предложения не б/нал. Значение больше 0 и содержит не более 10 символов.

currency_id: int32

Валюта встречного предложения. Значение из словаря валют АТИ

nds_price: decimal

Предложенная ставка встречного предложения б/нал с НДС

nds_currency_id: int32

Валюта ставки встречного предложения б/нал с НДС. Значение из словаря валют АТИ

not_nds_price: decimal

Предложенная ставка встречного предложения б/нал без НДС

not_nds_currency_id: int32

Валюта ставки встречного предложения б/нал без НДС. Значение из словаря валют АТИ

counter_offer_source: int32

Обозначение источника, откуда добавлено встречное предложение.

  • 0 - Неизвестный источник
  • 1 - Мобильное приложение
  • 2 - Интегратор
  • 3 - Перехват грузов интегратором
  • 4 - Страница поиска грузов
  • 5 - Перехват машин
  • 6 - Сквозное встречное предложение, добавлено автоматически
note: string (nullable)

Примечание к встречному предложению
Максимальная длина - 512 символов

pay_attributes: int32

Атрибуты оплаты, по умолчанию - 0. Битовая сумма следующих параметров:

  • 1 - возможна оплата наличными
  • 2 - возможна оплата по безналичному рассчету
  • 4 - блиц
  • 8 - оплата с НДС
  • 16 - возможна предоплата
  • 32 - оплата на выгрузке
  • 64 - включена ли оплата через некоторое количество банковских дней
prepay_percent: int32

Процент предоплаты
Должен быть равен 0 или отсутствовать, если pay_attributes не содержит флаг 16 - возможна предоплата. Допустимое значение от 0 до 100

pay_after_max_bank_days: int32

Оплата через ... банковских дней
Должен быть равен 0 или отсутствовать, если pay_attributes не содержит флаг 64 - включена оплата через некоторое количество банковских дней. Допустимое значение от 0 до 99

loading_date: date-time (nullable)

Дата, когда предложивший хочет перевезти ваш груз

is_outdated: boolean

Определяет, просрочено ли встречное предложение. Когда груз редактируют, удаляют, обновляют, встречное предложение помечается просроченным. Только для чтения.

is_cargo_published: boolean

Относится ли встречное предложение к публикующемуся грузу. Только для чтения.

}
Пример
{...}
"id":"3fa85f64-5717-4562-b3fc-2c963f66afa6",
"cargo_id":"3fa85f64-5717-4562-b3fc-2c963f66afa6",
"cargo_number":"string",
"cargo_firm_id":0,
"firm_id":0,
"added_at":"1970-01-01T00:00:00.000Z",
"updated_at":"1970-01-01T00:00:00.000Z",
"price":0.5,
"currency_id":0,
"nds_price":0.5,
"nds_currency_id":0,
"not_nds_price":0.5,
"not_nds_currency_id":0,
"counter_offer_source":0,
"note":"string",
"pay_attributes":0,
"prepay_percent":0,
"pay_after_max_bank_days":0,
"loading_date":"1970-01-01T00:00:00.000Z",
"is_outdated":false,
"is_cargo_published":false,
"firm_info":{...}
"total_score":0.5,
"status":0,
"full_firm_name":"string",
"contact":{...},
"id":0,
"name":"string",
"telephone":"string",
"email":"string",
"icq":"string",
"mobile":"string",
"mobile_operator":"string",
"skype_name":"string",
"city_id":0,
"location":{...}
"city_id":0,
"region_id":0,
"country_id":0,
"full_name":"string",
"short_name":"string",
"is_regional_center":false,
"city_size":0,
"fias_id":"3fa85f64-5717-4562-b3fc-2c963f66afa6",
"attributes":0,
"city_name":"string",
"region_name":"string",
"country_name":"string",
"country_code_name":"string"
}
},
"inn":"string"
}
}
4XX Ошибка запроса
Модель
{...}

Тело ответа при ошибке (HTTP 4xx): общий ключ и пояснение, плюс при необходимости список ошибок по отдельным полям запроса.

error: string (nullable)

Ключ ошибки (идентификатор сценария отказа или типа сбоя).

reason: string (nullable)

Пояснение: что не так с запросом и при валидации — какие ограничения нарушены.

}
Пример
{...}
"error":"string",
"reason":"string",
"details":[...]
{...}
"property":"string",
"reason":"string",
"error":"string"
}
]
}

Поддержка

По вопросам подключения обращайтесь к Александру Вильде: sas@ati.su, + 7 (812) 602-01-04 доб.108