Skip to main content

Вход

Заголовок надёжнее: адрес с токеном остаётся в журналах веб-сервера и прокси. Подробнее — Токены.
Пробел в адресе кодируйте как %20, а не +. Знак + в OData — это плюс, и вне литерала сервис отклоняет его с 400 и позицией символа. Многие библиотеки (URLSearchParams в JavaScript, params в Python requests) по умолчанию кодируют пробел как + — формируйте строку запроса сами, как в примерах ниже. Плюс внутри литерала записывайте как %2B.

curl

Postman

  1. Создайте запрос GET на https://server/base/hs/odata/v4/Catalog_Номенклатура.
  2. Authorization → Basic Auth с именем и паролем пользователя 1С, или заголовок X-OData4-Token.
  3. Параметры $select, $filter, $top добавляйте на вкладке Params; проверьте, что пробелы в адресе закодированы как %20.
  4. Для записи: метод POST/PATCH, Body → raw → JSON, заголовок Content-Type: application/json.

Постраничная выдача

Коллекция приходит страницами по 1000 строк (размер задаёт настройка или заголовок Prefer: odata.maxpagesize=N). Пока в ответе есть @odata.nextLink, запрашивайте следующую страницу по нему как есть — ссылка уже содержит все параметры запроса. Подробнее — Постраничная выдача.
Браузерному приложению с другого домена нужен CORS — см. CORS.

Запись

Создание элемента справочника. Ответ — 201, заголовок Location и созданный объект с @odata.etag:
Изменение с проверкой версии — PATCH с If-Match из @odata.etag:
Заголовок Idempotency-Key (или Repeatability-Request-ID) делает повтор запроса безопасным: повтор с тем же ключом получит сохранённый ответ, а не создаст второй объект. Подробнее — Запись и Надёжная запись.