Skip to content
Для ИИ NEW Мои токены Поддержка
Для подтверждения действия введите пароль
Чтобы продолжить, введите пароль для пользователя
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 — ordered list of key documentation URLs for the developers section.

Как добавить груз с нужными параметрами

Для того, чтобы найти перевозчика на Бирже грузоперевозок ATI.SU, для начала необходимо добавить груз.

Создать заявку на груз. API для интеграции. Публикует новую заявку на груз от имени текущего пользователя.
post /gw/cargos_create_v2/integration/v2/cargos
Параметры
Параметров нет
Запрос
Модель
{...}

Запрос на создание заявки на груз через Integration API.

}
Пример запроса
curl 'https://api.ati.su/gw/cargos_create_v2/integration/v2/cargos' \
-X 'POST' \
-H 'Authorization: Bearer {authorizationToken}' \
-H 'Content-Type: application/json' \
--data-raw '{"cargo_application":{"external_id":"EXT-12345","route":{"loading":{"dates":{"type":"ready","is_available_tomorrow":true,"time":{"0":"?"}},"cargos":[{"name":"Автомобиль(ли)","weight":{"0":"?"},"volume":{"0":"?"},"packaging":{"0":"?"},"sizes":{"0":"?"},"id":1}],"near_cities":[0],"city_id":3611,"address":"Набережная","coordinates":{"0":"?"},"location":{"type":"manual","city_id":3611,"address":"Набережная","coordinates":{"0":"?"}}},"unloading":{"dates":{"0":"?"},"near_cities":[0],"city_id":3611,"address":"Набережная","coordinates":{"0":"?"},"location":{"type":"manual","city_id":3611,"address":"Набережная","coordinates":{"0":"?"}}},"way_points":[{"type":"loading","cargos":[{"name":"Автомобиль(ли)","weight":{"0":"?"},"volume":{"0":"?"},"packaging":{"0":"?"},"sizes":{"0":"?"},"id":1}],"loading_date":{"0":"?"},"city_id":3611,"address":"Набережная","coordinates":{"0":"?"},"location":{"type":"manual","city_id":3611,"address":"Набережная","coordinates":{"0":"?"}}}],"is_round_trip":true},"truck":{"trucks_count":1,"load_type":"ftl","body_types":[0],"body_loading":{"0":"?"},"body_unloading":{"0":"?"},"temperature":{"0":"?"},"documents":{"0":"?"},"requirements":{"0":"?"},"adr":3,"belts_count":4,"is_tracking":true,"required_capacity":20},"payment":{"type":"with-bargaining","auto_invites_settings":{"0":"?"},"currency_type":1,"rate_with_vat":50000,"rate_without_vat":50000,"cash":50000,"on_card":true,"rates_with_vat":[{"rate_with_vat":50000,"vat_percent":22}],"hide_counter_offers":true,"direct_offer":true,"prepayment":{"0":"?"},"payment_mode":{"0":"?"}},"documents":[{"id":"9c6cce94-c0e3-eb11-bb99-002590fdcfdb","file_id":"6b35842b8386446c82a43726f139abe1"}],"boards":[{"id":"a0a0a0a0a0a0a0a0a0a0a0a0","publication_mode":"now","publication_time":"2024-01-15T10:30:00+00:00","cancel_publish_on_auction_bet":true,"reservation_enabled":true}],"paid_features":{"priority_view":{"0":"?"},"stealth":{"0":"?"}},"note":"Тестовый груз","contacts":[0]}}'
Ответ
200 Заявка на груз успешно создана и опубликована.
Модель
{...}

Ответ на создание заявки на груз через Integration API.

}
Пример
{...}
"cargo_application":{...}
"cargo_id":"3fa85f64-5717-4562-b3fc-2c963f66afa6",
"cargo_number":"ABC1234",
"source":2,
"contacts":[...],
0
],
"distance":1794,
"cargo_application_id":"3fa85f64-5717-4562-b3fc-2c963f66afa6",
"snapshot_id":1000500,
"cargo_application_number":"ABC1234",
"department_id":7654321,
"persistent_user_id":1234567,
"actor_contact_id":0,
"external_id":"EXT-12345",
"added_at":"2024-01-15T10:30:00+00:00",
"updated_at":"2024-01-15T10:30:00+00:00",
"refreshed_at":"2024-01-15T10:30:00+00:00",
"origin_source":"public-cargos-api",
"route":{...},
"loading":{...},
"near_cities":[...],
0
],
"dates":{...},
"type":"from-date",
"time":{...},
"0":"?"
},
"first_date":"2024-08-27T00:00:00+03:00",
"last_date":"2024-08-29T00:00:00+03:00"
},
"cargos":[...],
{...}
"name_id":112,
"name":"Автомобиль(ли)",
"packaging":{...},
"0":"?"
},
"cargo_id":1,
"weight":{...},
"0":"?"
},
"volume":{...},
"0":"?"
},
"sizes":{...}
"0":"?"
}
}
],
"nearby_cities":[...],
{...}
"id":3611,
"distance":25
}
],
"city_id":3611,
"city":{...},
"city_id":3611,
"region_id":21,
"country_id":1
},
"coordinates":{...},
"0":"?"
},
"address":"ул. Набережная, д. 12",
"organization":{...}
"0":"?"
}
},
"unloading":{...},
"near_cities":[...],
0
],
"dates":{...},
"0":"?"
},
"nearby_cities":[...],
{...}
"id":3611,
"distance":25
}
],
"city_id":3611,
"city":{...},
"city_id":3611,
"region_id":21,
"country_id":1
},
"coordinates":{...},
"0":"?"
},
"address":"ул. Набережная, д. 12",
"organization":{...}
"0":"?"
}
},
"way_points":[...],
{...}
"type":"loading",
"cargos":[...],
{...}
"name_id":112,
"name":"Автомобиль(ли)",
"packaging":{...},
"0":"?"
},
"cargo_id":1,
"weight":{...},
"0":"?"
},
"volume":{...},
"0":"?"
},
"sizes":{...}
"0":"?"
}
}
],
"loading_date":{...},
"0":"?"
},
"city_id":3611,
"city":{...},
"city_id":3611,
"region_id":21,
"country_id":1
},
"coordinates":{...},
"0":"?"
},
"address":"ул. Набережная, д. 12",
"organization":{...}
"0":"?"
}
}
],
"is_round_trip":true
},
"truck":{...},
"trucks_count":1,
"load_type":"ftl",
"body_types":[...],
0
],
"is_tracking":true,
"adr":3,
"belts_count":4,
"required_capacity":20,
"body_loading":{...},
"0":"?"
},
"body_unloading":{...},
"0":"?"
},
"temperature":{...},
"0":"?"
},
"documents":{...},
"0":"?"
},
"requirements":{...}
"0":"?"
}
},
"payment":{...},
"type":"with-bargaining",
"auto_invites_settings":{...},
"0":"?"
},
"currency_type":1,
"rate_with_vat":50000,
"rate_without_vat":50000,
"cash":50000,
"on_card":true,
"rates_with_vat":[...],
{...}
"rate_with_vat":50000,
"vat_percent":22
}
],
"hide_counter_offers":true,
"direct_offer":true,
"prepayment":{...},
"0":"?"
},
"payment_mode":{...}
"0":"?"
}
},
"boards":[...],
{...}
"id":"a0a0a0a0a0a0a0a0a0a0a0a0",
"publication_mode":"now",
"publication_time":"2024-01-15T10:30:00+00:00",
"cancel_publish_on_auction_bet":true,
"publication_restriction":0,
"reservation_enabled":true,
"is_published":true
}
],
"documents":[...],
{...}
"id":"9c6cce94-c0e3-eb11-bb99-002590fdcfdb",
"file_id":"6b35842b8386446c82a43726f139abe1",
"name":"Транспортная накладная.pdf",
"link":"https://api.ati.su/webapi/filestorage/files/6b35842b8386446c82a43726f139abe1"
}
],
"application_contacts":[...],
{...}
"id":0
}
],
"paid_features":{...},
"0":"?"
},
"note":"Тестовый груз",
"lot_id":"3fa85f64-5717-4562-b3fc-2c963f66afa6",
"lot_number":38,
"is_pass_through_copy":true,
"is_archived":true,
"archive_date":"2024-01-15T10:30:00+00:00",
"true_price":50000,
"true_currency_id":1,
"client_application_id":"ati"
}
}
400 Невалидные данные запроса.
Модель
{...}

Ответ об ошибке при выполнении операции.

error_code*: null,string

Код ошибки.

reason*: null,string

Сообщение об ошибке.

details: {missing-type-info}

Дополнительные детали ошибки.

error_list:[{}]

Список ошибок валидации.

}
Пример
{...}
"error_code":"validation_error",
"reason":"Передан невалидный объект",
"details":"?",
"error_list":[...]
{}
]
}
402 Недостаточно средств на счёте для размещения.
Модель
{...}

Ответ об ошибке при выполнении операции.

error_code*: null,string

Код ошибки.

reason*: null,string

Сообщение об ошибке.

details: {missing-type-info}

Дополнительные детали ошибки.

error_list:[{}]

Список ошибок валидации.

}
Пример
{...}
"error_code":"validation_error",
"reason":"Передан невалидный объект",
"details":"?",
"error_list":[...]
{}
]
}
403 Нет прав на размещение или кошелёк заблокирован.
Модель
{...}

Ответ об ошибке при выполнении операции.

error_code*: null,string

Код ошибки.

reason*: null,string

Сообщение об ошибке.

details: {missing-type-info}

Дополнительные детали ошибки.

error_list:[{}]

Список ошибок валидации.

}
Пример
{...}
"error_code":"validation_error",
"reason":"Передан невалидный объект",
"details":"?",
"error_list":[...]
{}
]
}
404 Связанный ресурс не найден.
Модель
{...}

Ответ об ошибке при выполнении операции.

error_code*: null,string

Код ошибки.

reason*: null,string

Сообщение об ошибке.

details: {missing-type-info}

Дополнительные детали ошибки.

error_list:[{}]

Список ошибок валидации.

}
Пример
{...}
"error_code":"validation_error",
"reason":"Передан невалидный объект",
"details":"?",
"error_list":[...]
{}
]
}
409 Обнаружен дубликат заявки.
Модель
{...}

Ответ об ошибке при выполнении операции.

error_code*: null,string

Код ошибки.

reason*: null,string

Сообщение об ошибке.

details: {missing-type-info}

Дополнительные детали ошибки.

error_list:[{}]

Список ошибок валидации.

}
Пример
{...}
"error_code":"validation_error",
"reason":"Передан невалидный объект",
"details":"?",
"error_list":[...]
{}
]
}
417 Изменилась цена размещения.
Модель
{...}

Ответ об ошибке при выполнении операции.

error_code*: null,string

Код ошибки.

reason*: null,string

Сообщение об ошибке.

details: {missing-type-info}

Дополнительные детали ошибки.

error_list:[{}]

Список ошибок валидации.

}
Пример
{...}
"error_code":"validation_error",
"reason":"Передан невалидный объект",
"details":"?",
"error_list":[...]
{}
]
}
429 Достигнут ежедневный лимит публикации грузов.
Модель
{...}

Ответ об ошибке при выполнении операции.

error_code*: null,string

Код ошибки.

reason*: null,string

Сообщение об ошибке.

details: {missing-type-info}

Дополнительные детали ошибки.

error_list:[{}]

Список ошибок валидации.

}
Пример
{...}
"error_code":"validation_error",
"reason":"Передан невалидный объект",
"details":"?",
"error_list":[...]
{}
]
}

Груз может быть добавлен:

  1. на Общую площадку - тогда он будет виден всем пользователям ATI.SU. При этом он может быть поднят в поиске за счет приоритетного показа, который позволит привлечь больше внимания к грузу и увеличить охват. Метод для добавления и изменения параметров приоритетного показа:
Сохранение или обновление настроек приоритетного показа на груз
put /gw/cargos-priority-view-api/v2/cargos/{cargoApplicationId}/priority-view
Параметры
Параметр Тип Расположение Описание
cargoApplicationId обязательный string (uuid) path
Пример: 3fa85f64-5717-4562-b3fc-2c963f66afa6
Запрос
Модель
{...}
}
Пример запроса
curl 'https://api.ati.su/gw/cargos-priority-view-api/v2/cargos/{cargoApplicationId}/priority-view' \
-X 'PUT' \
-H 'Authorization: Bearer {authorizationToken}' \
-H 'Content-Type: application/json' \
--data-raw '{"priority_view":{"view_rate":0.5,"daily_limit":0.5,"order_limit":0.5,"is_for_paid_only":false}}'
Ответ
200 Success
Успешный ответ
  1. на Персональную площадку - тогда он будет виден только тем пользователям, которые добавлены на данную Площадку. Создать Площадку и пригласить на нее пользователей вы можете через интерфейс на сайте ATI.SU или через API.
Создать площадку
post /v2/boards/public/boards/create
Параметры
Параметров нет
Запрос
Модель
{...}
all_departments_allowed*: boolean

Площадка доступна всем подразделениям компании. Такую площадку могут видеть все сотрудники, независимо от их подразделения Если передано true, то DepartmentsIds должен быть null или пустым Пример: true

board_exchange_direction*: enum
[0, 1, 2]

Направление обмена информацией на площадке (влияет на права доступа участников по умолчанию)

  • exchange — Обмен грузами/машинами
  • input — Грузы/машины для владельца площадки
  • output - Грузы/машины от владельца площадки
  • 0 — Информация от участников к владельцу

  • 1 — Информация от владельца к участникам

  • 2 — Обмен между всеми участниками

board_type*: enum
[0, 1]

Тип содержимого на площадке

  • loads - Площадка с грузами
  • trucks - Площадка с машинами (зарезервировано, в данный момент такая возможность ещё не доступна)
  • 0 — Грузы

  • 1 — Машины

color: string

Цвет плашки площадки Пример: "#d8cfd0"

departments_ids: [int32]

Перечень подразделений компании, которым доступна площадка. В случае, если передан не пустой перечень значение AllDepartmentsAllowed должно быть false. Ответственный контакт ResponsibleContactId должен состоять (принадлежать) хотя бы одному из указанных подразделений Пример: [100302, 100303]

description: string

Описание площадки (можно использовать тэги "b", "i", "span", "u", "ul", "li", "br") Пример: "Лучшая площадка из всех созданных"

name_for_users: string

Публичное имя, видимое участникам площадки (до 50 символов) Пример: "Приходите, покупайте"

private_name: string

Имя, которое видит только владелец площадки (до 50 символов) Пример: "Покупайте, приходите"

public*: boolean

Открытая площадка или закрытая. На открытую может подать заявку на вступление любой пользователь. На закрытую можно попасть только по приглашению владельца. Пример: true

responsible_contact_id: int32

ID контакта ответственного пользователя Пример: 1

subscribe_to_notifications: boolean

Подписывать на уведомления новых участников. Пример: true

}
Пример запроса
curl 'https://api.ati.su/v2/boards/public/boards/create' \
-X 'POST' \
-H 'Authorization: Bearer {authorizationToken}' \
-H 'Content-Type: application/json' \
--data-raw '{"all_departments_allowed":false,"board_exchange_direction":"0","board_requirements":{"requirement_document_types":[{"base_type_id":"1","custom_type_name":"string","is_requirable":false}],"rules":"string"},"board_type":"0","color":"string","departments_ids":[0],"description":"string","name_for_users":"string","private_name":"string","public":false,"responsible_contact_id":0,"subscribe_to_notifications":false}'
Ответ
200 Данные о площадке
Модель
{...}
all_departments_allowed*: boolean

Площадка доступна всем подразделениям компании. Такую площадку могут видеть все сотрудники, независимо от их подразделения Пример: true

available_for_contact*: boolean

Площадка доступна для данного контакта Пример: true

board_exchange_direction*: enum
[0, 1, 2]

Направление обмена информацией на площадке (влияет на права доступа участников по умолчанию)

  • exchange — Обмен грузами/машинами
  • input — Грузы/машины для владельца площадки
  • output - Грузы/машины от владельца площадки
  • 0 — Информация от участников к владельцу

  • 1 — Информация от владельца к участникам

  • 2 — Обмен между всеми участниками

board_type*: enum
[0, 1]

Тип содержимого на площадке

  • loads - Площадка с грузами
  • trucks - Площадка с машинами (зарезервировано, в данный момент такая возможность ещё не доступна)
  • 0 — Грузы

  • 1 — Машины

color: string

Цвет площадки Пример: "#d8cfd0"

created_on*: date-time

Время создания площадки (timestamp) Пример: 1556201954901

departments_ids: [int32]

Перечень подразделений компании, которым доступна площадка Пример: [100302, 100303]

id: string

ID площадки (строка 24 символа) Пример: "507f1f77bcf86cd799439011"

name: string

Название площадки Пример: "Образцово-показательная площадка"

owner_ati_id: string

Код участника АТИ создавшего площадку Пример: "1111111"

owner_firm*: int32

Код участника АТИ создавшего площадку Пример: 1111111

updated_on*: date-time

Последнее время изменения площадки (Timestamp) Пример: 1556201954901

view_only_own*: boolean

Участник может видеть только свои грузы/машины Пример: true

}
Пример
{...}
"all_departments_allowed":false,
"available_for_contact":false,
"board_exchange_direction":"0",
"board_type":"0",
"color":"string",
"created_on":"1970-01-01T00:00:00.000Z",
"departments_ids":[...],
0
],
"id":"string",
"name":"string",
"owner_ati_id":"string",
"owner_firm":0,
"updated_on":"1970-01-01T00:00:00.000Z",
"view_only_own":false
}
400 Ошибка валидации или другая
Модель
{...}
error: string

Код ошибки

reason: string

Текст ошибки

errors_list: [string]

Список ошибок. Поле может отсутствовать в ответе, если для данного типа ошибки оно не предусмотрено

}
Пример
{...}
"error":"string",
"reason":"string",
"details":{...},
"any-key":null
},
"errors_list":[...]
"string"
]
}
Пригласить участника АТИ на площадку
post /v2/boards/public/participants/invite
Параметры
Параметров нет
Запрос
Модель
{...}
ati_id: string

код участника в АТИ

board_id: string

ID площадки

contact_id: int32

ID контакта

}
Пример запроса
curl 'https://api.ati.su/v2/boards/public/participants/invite' \
-X 'POST' \
-H 'Authorization: Bearer {authorizationToken}' \
-H 'Content-Type: application/json' \
--data-raw '{"ati_id":"string","board_id":"string","contact_id":0}'
Ответ
200 ID приглашения
Модель
string
Пример
"string"
400 Ошибка валидации
Модель
{...}
error: string

Код ошибки

reason: string

Текст ошибки

errors_list: [string]

Список ошибок. Поле может отсутствовать в ответе, если для данного типа ошибки оно не предусмотрено

}
Пример
{...}
"error":"string",
"reason":"string",
"details":{...},
"any-key":null
},
"errors_list":[...]
"string"
]
}

Полная документация API Площадок.

После того, как Площадка будет создана, вы сможете добавлять на неё грузы.

Добавляя груз, вы можете выбрать, каким образом будет сформирована итоговая ставка за перевозку:

  • если опубликовать груз с запросом ставки, то перевозчики будут предлагать вам свои цены - встречные предложения, из которых вы сможете выбрать наиболее интересный для вас вариант;
  • если опубликовать груз с фиксированной ставкой, но с возможностью торга, то перевозчики смогут сделать вам встречные предложения, опираясь на ту цену, которую изначально указали вы. И у вас также будет возможность выбрать наиболее интересный для вас вариант;
  • если опубликовать груз с фиксированной ставкой, без возможности торга, то его смогут взять те перевозчики, которые будут согласны перевезти груз за указанную вами цену;
  • если опубликовать груз с Торгами (Аукционом), то конечная ставка за перевозку будет сформирована после Торгов.

Безналичных ставок с НДС у груза может быть несколько — набор payment.rates_with_vat, не больше одной на процент. Какие проценты доступны для какой валюты — в разделе Ставки НДС.

Полная документация API грузов.