Цифра

Справочники — Объекты строительства

Двусторонний обмен объектами строительства между 1С и Цифрой. Объекты могут создаваться как из 1С в Цифру через API, так и из Цифры в 1С через систему заданий.

POST /api/construction_object/create

Для создания или обновления объектов строительства в Цифре необходимо отправить запрос на метод API, передав массив объектов в поле Data.

Параметры запроса

Параметр Тип Обязательный Описание
SecretKey string Да Секретный ключ
Data array Да Массив объектов строительства для создания/обновления
Логика работы
  • Данные передаются в массиве Data
  • Если объект с переданным Guid уже существует в системе — он будет обновлён
  • Если объекта с таким Guid нет — будет создан новый

Структура Data[]

Поле Тип Обязательное Описание
Guid string Да Идентификатор объекта строительства в 1С
Name string Да Наименование объекта строительства
Примечания
  • Если передана компания Company, которой нет в системе, она будет автоматически создана
  • Менеджеры без полей Name или Phone будут пропущены
  • Адреса без поля Address будут пропущены
  • Телефон менеджера должен быть в формате 79998887766 (с 7, без +, без пробелов)
  • Не отправляйте за раз более 2000 объектов или более 1 МБ данных
Тип задачи: createConstructionObject

Создание объектов строительства из Цифры в 1С происходит по стандартной системе заданий. При создании или обновлении объекта строительства в Цифре автоматически формируется задание для 1С.

Логика работы
  • Данные объекта передаются в массиве Params задания
  • Если в данных заполнен Guid — сущность необходимо обновить в 1С
  • Если Guid пустой или отсутствует — необходимо создать новую сущность в 1С
  • После обработки задания необходимо вернуть результат через метод changeTaskStatus

Структура Params

Поле Тип Описание
Id integer ID объекта строительства в Цифре (информативное поле)
Name string Наименование объекта строительства
Guid string Идентификатор в 1С. Если заполнен — обновить, если пуст — создать новый
Примечания
  • После обработки задания необходимо вернуть результат через метод changeTaskStatus
  • Если в данных заполнен Guid — сущность необходимо обновить в 1С
  • Если Guid пустой или отсутствует — необходимо создать новую сущность
  • Структуры Company, Managers и Addresses аналогичны используемым при создании из 1С
Пример запроса Data 1С → Цифра
{
  "SecretKey": "2akgzOCYsAxLwpNl",
  "Data": [
    {
      "Guid": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
      "Name": "ЖК Солнечный",
      "Company": {
        "Guid": "22db4291-154f-11ec-973e-244bfecb4e0a",
        "Name": "ООО СтройИнвест",
        "Inn": "7604377806"
      },
      "Managers": [
        {
          "Name": "Петров Петр Петрович",
          "Phone": "79998887766"
        }
      ],
      "Addresses": [
        {
          "Address": "г. Москва, ул. Строителей, д. 15",
          "Name": "Площадка 1",
          "Latitude": "55.751244",
          "Longitude": "37.618423"
        }
      ]
    }
  ]
}
Пример Params Цифра → 1С
{
  "Id": 42,
  "Name": "ЖК Солнечный",
  "Guid": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
  "Company": {
    "Id": 15,
    "Name": "ООО СтройИнвест",
    "Guid": "22db4291-154f-11ec-973e-244bfecb4e0a",
    "Inn": "7604377806"
  },
  "Managers": [
    {
      "Name": "Петров Петр Петрович",
      "Phone": "79998887766"
    }
  ],
  "Addresses": [
    {
      "Address": "г. Москва, ул. Строителей, д. 15",
      "Name": "Площадка 1",
      "Latitude": "55.751244",
      "Longitude": "37.618423"
    }
  ]
}

Ответы при создании из 1С в Цифре

Коды ответов

Код Описание
201 Успешное создание. Все данные обработаны без ошибок (success: true)
207 Частичный успех. Часть данных обработана, но есть ошибки (success: true)
401 Ошибка ключа. Секретный ключ не найден (success: false)
422 Ошибка валидации. Data должен быть массивом (success: false)
500 Ошибка сервера. Внутренняя ошибка обработки (success: false)

Структура ответа

Поле Тип Описание
success boolean Успешность операции
message string Сообщение об успешных операциях (объекты, компании, представители, адреса)
data_id integer ID записи в логе
errors array Массив ошибок (только при наличии ошибок)

Примеры ответов

{
  "success": true,
  "message": "Создано объектов: 1. Создано компаний: 1. Создано представителей: 1. Создано адресов: 1",
  "data_id": 123
}
{
  "success": true,
  "message": "Создано объектов: 1. Обновлено компаний: 1. Создано представителей: 2. Обновлено адресов: 1",
  "data_id": 123,
  "errors": [
    "Объектов без GUID: 1",
    "Объектов без названия: 2",
    "Не удалось создать компанию (имя в стоп-листе: "ручной", "тест", "(не выбран)", "физ.лицо"): 1"
  ]
}
{
  "success": false,
  "message": "Секретный ключ не найден",
  "data_id": null
}
{
  "success": false,
  "message": "Неверный тип данных",
  "data_id": 123
}
{
  "success": false,
  "message": "Произошла ошибка: подробное описание ошибки",
  "data_id": 123
}

Статусы заданий (из Цифры в 1С)

Обработка ошибок при создании объектов строительства из Цифры в 1С осуществляется через универсальный метод changeTaskStatus.

Статус Описание
work Задание взято в работу. Устанавливается после получения задания из метода check
done Задание выполнено успешно. Объект создан или обновлён в 1С
failed Ошибка при выполнении задания. Объект не удалось создать или обновить в 1С

См. также