Спецификация OpenRPC

18.04.22

Интеграция - WEB-интеграция

Спецификация OpenRPC определяет стандартное, независимое от языка программирования описание интерфейса для API-интерфейсов JSON-RPC 2.0. Перевод общей информации и спецификации с официального сайта https://open-rpc.org/

Предисловие

Перевожу данную спецификацию с расчетом, что смогу реализовать JSON-RPC с документированием через HTTP сервисы 1С. Сделать что-то вразумительное в стиле REST не получилось, сказалось отсутствие инструментария на уровне платформы (RegExp до сих пор не завезли). Вижу в качестве решения что перед 1С будет стоять прокси, в котором удобно реализовать современные протоколы, а 1С использовать как back-back-end. JSON-RPC стилистически похож на SOAP, но более легковесный (наличие автодокументации с JSON схемами перекрывает использование wsdl схем). Вопрос с валидацией схем пока открыт, есть наработки //infostart.ru/public/1265429/, но обвязки хранения и использования в контексте сервера еще не реализовано.

"|" - обозначает ИЛИ

"[]" - обозначает массив элементов

"GitHub Flavored Markdown", часто сокращаемый как GFM, - это диалект Markdown, который в настоящее время поддерживается для пользовательского контента на GitHub.com и GitHub Enterprise.

Введение

Спецификация OpenRPC определяет стандартное, не зависящее от языка программирования описание интерфейса для API JSON-RPC 2.0, которое позволяет как людям, так и компьютерам обнаруживать и понимать возможности службы, не требуя доступа к исходному коду, дополнительной документации или проверки сетевого трафика. При правильном определении через OpenRPC потребитель может понимать и взаимодействовать с удаленной службой с минимальным количеством логики реализации. Подобно описаниям интерфейсов для программирования более низкого уровня, спецификация OpenRPC устраняет догадки при вызове службы.

Варианты использования для машиночитаемых документов определения API JSON-RPC включают, но не ограничиваются:

  • интерактивная документация
  • генерация кода по документации
  • клиенты
  • серверы
  • автоматизация тестирования.

Документы OpenRPC описывают API-сервисы JSON-RPC и представлены в формате JSON. Эти документы могут создаваться и обслуживаться статически или динамически из приложения.

Спецификация OpenRPC не требует переписывания существующих API JSON-RPC. Он не требует привязки какого-либо программного обеспечения к сервису - описываемый сервис может даже не принадлежать создателю его описания. Однако требуется, чтобы возможности службы были описаны в структуре спецификации OpenRPC. Не все сервисы могут быть описаны OpenRPC — эта спецификация не предназначена для покрытия API REST - она предназначена исключительно для API, которые придерживаются спецификации JSON-RPC 2.0. Спецификация OpenRPC не требует определенного процесса разработки, такого как design-first или code-first. Это облегчает любой метод, устанавливая четкие взаимодействия с API JSON-RPC.

Определения

Документ OpenRPC
Документ (или набор документов), который определяет или описывает API. Документ OpenRPC использует спецификацию OpenRPC и соответствует ей.

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

Регулярное выражение
В спецификации OpenRPC и инструментах рекомендуется использовать регулярные выражения, совместимые с Perl. При этом разработчики инструментов ДОЛЖНЫ придерживаться регулярных выражений ECMA-262 6th Edition.

 

Официальный OpenRPC инструментарий (Tooling)

Инструмент, который создается, поддерживается и документируется организацией OpenRPC. Он предназначен для использования в качестве функциональной эталонной реализации спецификации. Пользователям спецификации OpenRPC рекомендуется создавать версии инструмента как свою собственные организации/проекты.

Примечание переводчика: Ссылки на инструменты https://open-rpc.org/developers

 

Версии

Спецификация OpenRPC версионируется с использованием семантического управления версиями 2.0.0.

Часть версии"major.minor" (например, 1.0.x) ДОЛЖНА обозначать набор функций OpenRPC. Как правило, версии ".patch" устраняют ошибки в этом документе, а не в наборе функций. Инструментарий, поддерживающий OpenRPC 1.0.0, ДОЛЖЕН быть совместим со всеми версиями OpenRPC 1.0.x. Версия исправления НЕ ДОЛЖНА учитываться инструментами, не делая различий, например, между 1.0.0 и 1.0.1.

Последующие выпуски второстепенных версий спецификации OpenRPC (увеличение "minor" номера версии) НЕ должно мешать инструменту, разработанному для более низкой младшей версии и той же основной версии. Таким образом, гипотетическая 1.1.0 спецификация ДОЛЖНА использоваться с инструментами, предназначенными для 1.0.0.

Документ OpenRPC, совместимый с OpenRPC 1.0.0, содержит обязательное "openrpc" поле, которое обозначает семантическую версию OpenRPC, которую он использует.

 

Формат

Документ OpenRPC, соответствующий спецификации OpenRPC, сам по себе является объектом JSON, который должен быть представлен в формате JSON. Из-за характера API-интерфейсов JSON-RPC, использующих форматы JSON, строго используйте JSON только так, как описано здесь. Если вы хотите использовать любой другой формат, кроме JSON, он должен быть преобразован вне любого инструмента OpenRPC.

Примечание переводчика: для ручного формирования документации удобнее использовать YAML, проверено на Swagger/OpenAPI, но позиция авторов такова что "только JSON", https://github.com/open-rpc/spec/issues/265. Использовать конвертер JSON<->YAML ради удобного просмотра или формирования без автодополнения неудобно.

Рекомендуется, чтобы документ OpenRPC назывался: openrpc.json. Инструмент , для ввода которого требуется документ OpenRPC, МОЖЕТ принять расположение документа по умолчанию "./openrpc.json", где "./" представляет текущий рабочий каталог.

Все имена полей в спецификации чувствительны к регистру. camelCase СЛЕДУЕТ использовать для всех ключевых имен. Сюда входят все поля, которые используются в качестве ключей в соответствии (map), за исключением случаев, когда явно указано, что ключи нечувствительны к регистру.

Согласно спецификации JSON для объектов, имена ключей ДОЛЖНЫ быть уникальными. Однако, чтобы избежать двусмысленности, все шаблонные поля в документе OpenRPC ДОЛЖНЫ иметь уникальные имена ключей внутри содержащего объекта.

 

Форматирование текста

Все поля спецификации "description" отмечены как поддерживающие форматирование Github markdown. Там, где инструмент OpenRPC отображает форматированный текст, он ДОЛЖЕН поддерживать, как минимум, синтаксис markdown, как описано в GitHub Flavored Markdown. Tooling МОЖЕТ игнорировать некоторые функции "GitHub Flavored Markdown" для решения проблем безопасности.

 

Метод обнаружения службы

API JSON-RPC могут поддерживать спецификацию OpenRPC, реализуя метод обнаружения служб, который возвращает схему OpenRPC для API JSON-RPC. Метод ДОЛЖЕН быть назван "rpc.discover." "rpc." префикс является зарезервированным префиксом метода для системных расширений спецификации JSON-RPC 2.0. Ниже приведена спецификация OpenRPC для метода обнаружения службы:

{
  "methods": [
    {
      "name": "rpc.discover",
      "description": "Returns an OpenRPC schema as a description of this service",
      "result": {
        "name": "OpenRPC Schema",
        "schema": {
          "$ref": "https://raw.githubusercontent.com/open-rpc/meta-schema/master/schema.json"
        }
      }
    }
  ]
}

Примеры

Примеры документов OpenRPC можно найти в OpenRPC Examples. Должен быть пример, который использует каждую концепцию спецификации. Эти примеры должны быть использованы в качестве основы тестирования для всех официальных инструментов OpenRPC.

 

Объект OpenRPC

Это корневой объект документа OpenRPC. Содержимое этого объекта представляет собой целый документ OpenRPC. То, как этот объект создается или хранится, выходит за рамки спецификации OpenRPC.

Имя поля Тип Описание
openrpc строка Обязательное. Эта строка ДОЛЖНА быть семантическим номером версии спецификации Open RPC, используемой в документе OpenRPC. Поле openrpc ДОЛЖНО использоваться спецификациями инструментов и клиентами для интерпретации документа OpenRPC. Это не связано со строкой API info.version.
info Объект информации Обязательное. Предоставляет метаданные об API. Метаданные МОГУТ быть использованы инструментарием по мере необходимости.
servers [Объект сервера] Массив серверных объектов, которые предоставляют информацию о подключении к целевому серверу. Если свойство "servers" не указано или представляет собой пустой массив, значением по умолчанию будет объект Server со значением URL localhost.
methods

[Объект метода] |[Объект примера]

Обязательное. Доступные методы для API. Пока это требуется, массив может быть пустым (например, для обработки фильтрации безопасности).
components Объект компонента Элемент для хранения различных схем для спецификации.
externalDocs Объект внешней документации Дополнительная внешняя документация.

Этот объект МОЖЕТ быть расширен с помощью расширений спецификации.

 

Объект информации (Info Object)

Объект предоставляет метаданные об API. Метаданные МОГУТ быть использованы клиентами, если это необходимо, и МОГУТ быть представлены в инструментах редактирования или создания документации для удобства.

Имя поля Тип Описание
title строка Обязательное. Название приложения
description строка Подробное описание приложения. Синтаксис GitHub Flavored Markdown МОЖЕТ использоваться для представления расширенного текста.
termsOfService строка URL-адрес Условий предоставления услуг для API. ДОЛЖЕН быть в формате URL.
contact Объект контакта Контактная информация для открытого API.
license Объект лицензии Информация о лицензии для открытого API.
version строка Обязательное. Версия документа Open RPC (которая отличается от версии спецификации OpenRPC или версии реализации API).

Этот объект МОЖЕТ быть расширен с помощью расширений спецификации.

 

Объект контакта (Contact Object)

Контактная информация для открытого API.

Имя поля Тип Описание
name строка Идентифицирующее имя контактного лица/организации.
url строка URL-адрес, указывающий на контактную информацию. ДОЛЖЕН быть в формате URL.
email строка Адрес электронной почты контактного лица/организации. ДОЛЖЕН быть в формате адреса электронной почты.

Этот объект МОЖЕТ быть расширен с помощью расширений спецификации.

 

Объект лицензии (License Object)

Информация о лицензии для открытого API.

Имя поля Тип Описание
name строка
Обязательное. Имя лицензии, используемое для API.
url строка URL-адрес лицензии, используемой для API. ДОЛЖЕН быть в формате URL.

Этот объект МОЖЕТ быть расширен с помощью расширений спецификации.

 

Объект сервера (Server Object)

Объект описывающий сервер.

Имя поля Тип Описание
name строка Обязательное. Имя, которое будет использоваться в качестве канонического имени сервера.
url Выражение выполнения Обязательное. URL-адрес целевого хоста. Этот URL-адрес поддерживает переменные сервера и МОЖЕТ быть относительным, чтобы указать, что местоположение хоста относительно местоположения, в котором обслуживается документ OpenRPC. Переменные сервера передаются в выражение времени выполнения для создания URL-адреса сервера.
summary строка Краткое изложение того, что такое сервер.
description строка Необязательная строка, описывающая хост, назначенный URL. Синтаксис GitHub Flavored Markdown МОЖЕТ использоваться для представления расширенного текста.
variables Соответствие из строк | Объект переменных сервера Сопоставление между именем переменной и ее значением. Значение передается в выражение среды выполнения для создания URL-адреса сервера.

Этот объект МОЖЕТ быть расширен с помощью расширений спецификации.

 

Объект переменных сервера (Server Variable Object)

Объект, представляющий серверную переменную для замены шаблона URL-адреса сервера.

Имя поля Тип Описание
enum [строка] Массив строковых значений, которые будут использоваться, если параметры подстановки из ограниченного набора.
default строка

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

Обратите внимание, что это поведение отличается от обработки объектом схемы значений по умолчанию, поскольку в этих случаях значения параметров являются необязательными.

description строка Необязательное описание для переменной сервера. Синтаксис GitHub Flavored Markdown МОЖЕТ использоваться для представления расширенного текста.

Этот объект МОЖЕТ быть расширен с помощью расширений спецификации.

 

Объект метода (Method Object)

Описывает интерфейс для данного имени метода. Имя метода используется в качестве поля метода тела JSON-RPC. Поэтому он ДОЛЖЕН быть уникальным.

Имя поля Тип Описание
name строка Обязательное. Каноническое имя метода. Имя ДОЛЖНО быть уникальным в массиве методов.
tags [Объект тега | Эталонный объект] Список тегов для управления документацией API. Теги могут использоваться для логической группировки методов по ресурсам или любому другому классификатору.
summary строка Краткое изложение того, что делает метод.
description строка Подробное объяснение поведения метода. Синтаксис GitHub Flavored Markdown МОЖЕТ использоваться для представления расширенного текста.
externalDocs Внешний объект документации Дополнительная внешняя документация для этого метода.
params [Дескриптор содержимого | Эталонный объект] Обязательное. Список параметров, применимых для этого метода. Список НЕ ДОЛЖЕН содержать дублированных параметров и поэтому требует, чтобы имя было уникальным. Список может использовать ссылочный объект для ссылки на параметры, определенные объектом "Дескриптор содержимого". Все необязательные параметры (объекты дескриптора содержимого с "required": false) ДОЛЖНЫ располагаться после всех обязательных параметров в списке.
result [Дескриптор содержимого | Эталонный объект] Обязательное. Описание результата, возвращаемого методом. Это ДОЛЖЕН быть Дескриптор содержимого.
deprecated булево Объявляет этот метод устаревшим. Потребители ДОЛЖНЫ воздерживаться от использования заявленного метода. Значение по умолчанию "false".
servers [Объект сервера] Альтернативный массив "servers"  для обслуживания этого метода. Если альтернативный массив "servers" указан на корневом уровне, он будет переопределен этим значением.
errors [Объект ошибки | Эталонный объект] Список ошибок, определяемых пользовательским приложением, которые МОГУТ быть возвращены. Ошибки ДОЛЖНЫ иметь уникальные коды ошибок.
links [Объект ссылки | Эталонный объект] Список возможных ссылок из этого вызова метода.
paramStructure "by-name" | "by-position" | "either"

Ожидаемый формат параметров. Согласно спецификации JSON-RPC 2.0, параметрами объекта запроса JSON-RPC могут быть "массив", "объект" или "любой из" (представленные как "by-position", "by-name" и "either" соответственно).

Когда метод имеет значение "paramStructure", равное "by-name", вызывающие метод ДОЛЖНЫ отправить объект запроса JSON-RPC, поле параметров которого является объектом. Кроме того, имена ключей объекта params ДОЛЖНЫ совпадать с "contentDescriptor.names" для данного метода. По умолчанию используется значение "either".

examples "Объект парного примера" Массив из "Объект парного примера", где каждый пример включает в себя допустимое сопряжение параметров запроса с результатом "Дескриптор содержимого".

Этот объект МОЖЕТ быть расширен с помощью расширений спецификации.

 

Объект дескриптора содержимого (Content Descriptor Object)

Дескрипторы контента - это объекты, которые делают то, что они предлагают- описывают контент. Это многоразовые способы описания параметров или результата. Они ДОЛЖНЫ иметь схему.

Имя поля Тип Описание
name строка Обязательное. Имя описываемого содержимого. Если описанное содержимое является назначаемым параметром метода by-name, это поле ДОЛЖНО определять ключ параметра (т. е. Имя).
summary строка
Краткое изложение описываемого содержимого.
description строка Подробное объяснение поведения дескриптора содержимого. Синтаксис GitHub Flavored Markdown МОЖЕТ использоваться для представления расширенного текста.
required булево Определяет, является ли содержимое обязательным полем. Значение по умолчанию "false".
schema Объект схемы Обязательное. Схема, описывающая содержимое.
deprecated булево Указывает, что содержимое устарело и ДОЛЖНО быть выведено из использования. Значение по умолчанию "false".

Этот объект МОЖЕТ быть расширен с помощью расширений спецификации.

 

Объект схемы (Schema Object)
Объект схемы позволяет определять типы входных и выходных данных. Объекты схемы ДОЛЖНЫ соответствовать описанию спецификаций JSON Schema Specification 7, каждый раз, когда объект схемы может использоваться, вместо него может использоваться "Ссылочный объект". Это позволяет ссылаться на определения, а не определять их повторно (inline).

 

Объект парного примера (Example Pairing Object)

Объект примера состоит из набора параметров примера и результата. Результат-это то, что вы можете ожидать от службы JSON-RPC, учитывая точные параметры.

Имя поля Тип Описание
name строка
Имя для примера сопряжения.
description строка Подробное объяснение примера сопряжения.
summary строка Краткое описание примера сопряжения.
params [Объект примера| Объект ссылки] Пример параметров.
result Объект примера| Объект ссылки Пример результата.

Этот объект МОЖЕТ быть расширен с помощью расширений спецификации.

 

Объект примера (Example Object)

Объект примера - это объект, определяющий пример, который должен соответствовать заданной "Схеме дескриптора содержимого". Если "Схема дескриптора содержимого" включает "examples", значение из этого примера объекта заменяет значение примера схемы.

Имя поля Тип Описание
name строка Каноническое имя примера.
summary строка Краткое описание примера.
description строка Подробное объяснение примера. Синтаксис GitHub Flavored Markdown МОЖЕТ использоваться для представления расширенного текста.
value любой Встроенный буквальный пример. Поля "value" и "externalValue" являются взаимоисключающими. Чтобы представить примеры типов носителей, которые не могут быть естественным образом представлены в JSON, используйте строковое значение, содержащее пример, экранируя его там, где это необходимо.
externalValue строка URL-адрес, указывающий на буквальный пример. Это дает возможность ссылаться на примеры, которые не могут быть легко включены в документы JSON. Поля "value" и "externalValue" являются взаимоисключающими.

Этот объект МОЖЕТ быть расширен с помощью расширений спецификации.

 

Объект ссылки (Link Object)

Объект ссылки представляет собой возможную ссылку проектирования для результата. Наличие ссылки не гарантирует способность вызывающего абонента успешно вызывать ее, скорее она обеспечивает известную связь и механизм обхода между результатами и другими методами.

В отличие от динамических ссылок (т.е. Ссылок, предоставляемых в полезной нагрузке результата), механизм связывания OpenRPC не требует информации о ссылках в результате выполнения.

Для вычисления ссылок и предоставления инструкций, а так же для их выполнения "выражение выполнения" используется для доступа к значениям в методе и использования их в качестве параметров при вызове связанного метода.

Имя поля Тип Описание
name строка Обязательное. Каноническое имя ссылки.
description строка Описание ссылки. Синтаксис GitHub Flavored Markdown МОЖЕТ использоваться для представления расширенного текста.
summary строка Краткое описание для ссылки.
method строка Имя существующего разрешаемого метода OpenRPC, определенного с помощью уникального "method". Это поле ДОЛЖНО быть преобразовано в уникальный объект метода. В отличие от OpenAPI, относительные "method" значения НЕ допускаются.
params

Соответствие из

строка | любой | выражение выполнения

Соответствие, представляющая параметры для передачи методу, как указано в "method". Ключ - это имя параметра, которое будет использоваться, тогда как значение может быть константой или "выражение выполнения", которое будет вычислено и передано связанному методу.
server Объект сервера Объект сервера, используемый целевым методом.

 

Связанный метод должен быть идентифицирован непосредственно и должен существовать в списке методов, определенных объектом Methods.

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

Значения из результата могут использоваться для управления связанным методом.

Клиенты переходят по всем ссылкам по своему усмотрению. Ни разрешения, ни возможность успешного вызова этой ссылки не гарантируется исключительно существованием отношения.

Этот объект МОЖЕТ быть расширен с помощью расширений спецификации.

 

Выражение выполнения (Runtime Expression)

Выражения выполнения позволяют пользователю определить выражение, которое будет вычисляться в строку, как только будут известны желаемые значения. Они используются, когда желаемое значение ссылки или сервера может быть создано только во время выполнения. Этот механизм используется "Объектами ссылок" и "Переменными сервера".

Выражение времени выполнения использует синтаксис языка шаблонов JSON.

В таблице ниже приведены примеры выражений времени выполнения и примеры их использования в значении:

в документации таблица отсутствует

Выражения времени выполнения сохраняют тип ссылочного значения.

 

Объект ошибки (Error Object)

Определяет ошибку уровня приложения.

Имя поля Тип Описание
code Код ошибки, определяемый приложением Обязательное. Число, указывающее тип ошибки, которая произошла. Это ДОЛЖНО быть целое число. Коды ошибок от -32768 до -32000 зарезервированы для предопределенных ошибок. Предполагается, что эти предопределенные ошибки возвращаются из любого API JSON-RPC.
message строка
Обязательное. Строка, содержащая краткое описание ошибки. Сообщение ДОЛЖНО быть ограничено одним кратким предложением.
data любой Примитивное или структурированное значение, содержащее дополнительную информацию об ошибке. Это может быть опущено. Значение этого члена определяется Сервером (например, подробная информация об ошибках, вложенные ошибки и т.д.).

 

Объект компоненты (Components Object)

Содержит набор повторно используемых объектов для различных аспектов OpenRPC. Все объекты, определенные в объекте components, не будут влиять на API, если на них явно не ссылаются свойства вне объекта components.

Имя поля Тип Описание
contentDescriptors соответствие(строка, Объект дескриптора содержимого) Объект для хранения повторно используемых "Объект дескриптора содержимого"
schemas соответствие(строка, Объект схемы) Объект для хранения повторно используемых "Объект схемы"
examples соответствие(строка, Объект примера) Объект для хранения повторно используемых "Объект примера"
links соответствие(строка, Объект ссылки) Объект для хранения повторно используемых "Объект ссылки"
errors соответствие(строка, Объект ошибки) Объект для хранения повторно используемых "Объект ошибки"
examplePairingObjects соответствие(строка, Объект парного примера) Объект для хранения повторно используемых "Объект парного примера"
tags соответствие(строка, Объект тега) Объект для хранения повторно используемых "Объект тега"

Этот объект МОЖЕТ быть расширен с помощью расширений спецификации.

Все фиксированные поля, объявленные выше, являются объектами, которые ДОЛЖНЫ использовать ключи, соответствующие регулярному выражению: "^[a-zA-Z0-9\.\-_]+$"

 

Объект тега (Tag Object)

Добавляет метаданные к одному тегу, который используется "Объект метода". Не обязательно иметь объект тега для каждого тега, определенного в экземплярах объекта метода.

Имя поля Тип Описание
name строка Обязательное. Имя тега.
summary строка Краткое описание тега.
description строка Подробное объяснение тега. Синтаксис GitHub Flavored Markdown МОЖЕТ использоваться для представления расширенного текста.
externalDocs Объект внешней документации Дополнительная внешняя документация для этого тега.

Этот объект МОЖЕТ быть расширен с помощью расширений спецификации.

 

Объект внешней документации (External Documentation Object)

Позволяет ссылаться на внешний ресурс для расширенной документации.

Имя поля Тип  
description строка Подробное объяснение целевой документации. Синтаксис GitHub Flavored Markdown МОЖЕТ использоваться для представления расширенного текста.
url строка Обязательное. URL-адрес целевой документации. Значение ДОЛЖНО быть в формате URL.

Этот объект МОЖЕТ быть расширен с помощью расширений спецификации.

 

Объект ссылки

Простой объект, позволяющий ссылаться на другие компоненты спецификации, внутренние и внешние.

Ссылочный объект определяется схемой JSON и следует той же структуре, поведению и правилам.

Имя поля Тип Описание
$ref строка Обязательное. Ссылочная строка.

Этот объект не может быть расширен дополнительными свойствами, и любые добавленные свойства должны игнорироваться.

 

Расширения спецификации

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

Свойства расширений реализуются в виде шаблонных полей, которые всегда имеют префикс "x-".

Расширения могут поддерживаться или не поддерживаться доступными инструментами, но они также могут быть расширены для добавления запрашиваемой поддержки (если инструменты являются внутренними или открытыми).

 

Благодарю за внимание.

См. также

Сайты и интернет-магазины WEB-интеграция Системный администратор Программист Пользователь Платформа 1С v8.3 Конфигурации 1cv8 1С:Управление торговлей 11 Автомобили, автосервисы Россия Управленческий учет Платные (руб)

Интеграционный модуль обмена между конфигурацией Альфа Авто 5 и Альфа Авто 6 и порталом AUTOCRM. Данный модуль универсален. Позволяет работать с несколькими обменами AUTOCRM разных брендов в одной информационной базе в ручном и автоматическом режиме.

36000 руб.

03.08.2020    17783    19    22    

16

Сайты и интернет-магазины Интеграция WEB-интеграция Платформа 1С v8.3 Конфигурации 1cv8 Управленческий учет Платные (руб)

Интеграция 1С и Битрикс 24. Разработка имеет двухстороннюю синхронизацию 1С и Bitrix24 задачами. Решение позволяет создавать пользователя в 1С из Битрикс24 и наоборот. Данная разработка технически подходит под все основные конфигурации линейки продуктов 1С:Предприятие 8.3 (платформа начиная с 8.3.23). При приобретении предоставляется 1 месяц бесплатных обновлений разработки. Доступна демо-версия продукта с подключением Вашего Битрикс24

5040 руб.

04.05.2021    19849    13    17    

16

WEB-интеграция 8.3.8 Конфигурации 1cv8 Автомобили, автосервисы Беларусь Украина Россия Казахстан Управленческий учет Платные (руб)

Расширение предназначено для конфигурации "1С:Предприятие 8. Управление Автотранспортом. ПРОФ". Функционал модуля: 1. Заполнение регистров сведений по подсистеме "Мониторинг", а именно: события по мониторингу, координаты по мониторингу, пробег и расход по мониторингу, текущее местоположение ТС по мониторингу 2. Заполнение путевого листа: пробег по мониторингу, время выезда/заезда, табличная часть ГСМ, места стоянок по геозонам. 3. Отчеты по данным загруженным в регистры сведений. 4. Предусмотрена автоматическая загрузка данных в фоновом режиме (условия работы данной загрузке читайте в описании товара) Модуль работает без включенной константы по настройкам мониторинга. Модуль формы предоставляется с открытым кодом, общий модуль защищен. Любой заинтересованный пользователь, имеет возможность скачать демо-версию расширения.

22656 руб.

25.05.2021    14424    42    8    

18

WEB-интеграция Программист Руководитель проекта Платформа 1С v8.3 Конфигурации 1cv8 1С:Франчайзи, автоматизация бизнеса Платные (руб)

Расширение значительно упрощает написание API на 1С. Веб программисты получают простой и понятный доступ к 1С. Описание API создаётся автоматически и представляется в виде удобном как для человека, так и для программной обработки.

24000 руб.

27.09.2024    1172    1    0    

3
Оставьте свое сообщение