API справочников для 1С
Контракт POST ingest: водители и ТС в ДокТранс по API-ключу — для программиста 1С или интегратора.
Эта страница — для 1С-программиста / интегратора. Конечному пользователю обычно достаточно аддона и справочников или CSV в кабинете.
ДокТранс не ходит в 1С и не ходит в API Контура из расширения. Ваша обработка (или регламентное задание) пушит справочники к нам; Chrome-аддон читает уже наши данные и заполняет веб-Логистику.
Fresh vs коробка
| Контур 1С | Как обычно грузить справочники |
|---|---|
| 1С Fresh | Из коробки HTTP-сервис клиенту недоступен. Нужен партнёр Fresh/Рарус или регулярный CSV/Excel в Справочники. |
| Коробка / своя доработка | Регламентное задание → POST ниже с API-ключом из кабинета. |
Не обещайте клиенту на Fresh «подключили API — само подтянулось» без их интегратора.
Доступ
- В кабинете: Настройки → Создать API-ключ (показывается один раз).
- Базовый URL:
https://app.doctrans.ru - Заголовок (один из двух):
X-Api-Key: <ключ>Authorization: Bearer <ключ>
Content-Type: application/json
Проверка ключа:
GET /api/v1/ping
Ответ 200: {"ok":true,"email":"...","drivers":N,"vehicles":N,"trips":N}. Без ключа или с неверным — 401.
Водитель
POST /api/v1/directories/drivers
| Поле | Обяз. | Комментарий |
|---|---|---|
fio | да | ФИО как в ВУ / как ищут в Логистике |
external_id | нет | ID из 1С; при повторе — обновление той же записи |
phone | нет | |
license_series | нет | серия ВУ |
license_number | нет | номер ВУ |
license_date | нет | дата выдачи, строка как у вас принято |
label | нет | короткая метка в кабинете |
Пример:
{
"external_id": "1c-driver-42",
"fio": "Иванов Иван Иванович",
"phone": "79001112233",
"license_series": "16 01",
"license_number": "123456",
"license_date": "01.01.2020",
"label": "Основной"
}
Ответ 200: {"ok":true,"created":true|false,"driver":{...}}.
Без fio — 400. Без external_id каждый POST создаёт новую запись (удобно для разовых тестов, плохо для синка).
ТС
POST /api/v1/directories/vehicles
| Поле | Обяз. | Комментарий |
|---|---|---|
number | да | госномер |
external_id | нет | ID из 1С; upsert |
model | нет | марка/модель |
type | нет | тип ТС (как в списках Логистики, напр. «бортовой») |
max_weight | нет | грузоподъёмность |
capacity | нет | вместимость |
ownership | нет | тип владения |
trailer_number | нет | прицеп; в Контуре часто нет в справочнике — аддон не блокирует рейс |
label | нет |
Пример:
{
"external_id": "1c-veh-7",
"number": "А123АА116",
"model": "ГАЗель Next",
"type": "бортовой",
"max_weight": "3500",
"capacity": "16",
"ownership": "собственность"
}
Ответ 200: {"ok":true,"created":true|false,"vehicle":{...}}. Без number — 400.
Upsert
- Один и тот же
external_idу пользователя → одна запись: поля из тела перезаписываются (пустое необязательное поле в JSON не затирает уже сохранённое значение, кроме обязательныхfio/number). - Сменился госномер в 1С — пришлите тот же
external_idс новымnumber. - Удаление через API пока не делаем: отзовите запись вручную в кабинете или перестаньте слать её в аддонный профиль.
Чтение (для отладки)
Те же пути GET с тем же ключом (их использует Chrome-аддон):
GET /api/v1/directories/driversGET /api/v1/directories/vehicles
Чеклист сдачи интегратору
- Ключ выдан,
GET /ping= OK. - Две тестовые записи водитель + ТС с
external_id. - Повторный
POSTменяет ФИО/телефон / модель —created: false,idтот же. - В кабинете записи видны в Справочниках.
- В аддоне «Обновить справочники» → водитель/ТС появляются в списках → fill на черновике титула 1.
Дальше по процессу: аддон Логистики. Подпись и отправка документа остаются в Контуре.
Открыть кабинет
Подключите Диадок и отправьте первые документы — 10 штук бесплатно.
Попробовать бесплатно