Skip to content

Контракты

Что это

Контракт — описание операции API, принадлежащее объекту. Каждый контракт описывает одну операцию: эндпоинт, метод, тело запроса и другие параметры, зависящие от протокола.

Контракты объекта отображаются на вкладке API (для сервисов, баз данных и очередей сообщений).

Свойства контракта

СвойствоОписание
НазваниеИмя операции (до 128 символов)
ОписаниеЧто делает операция
ПротоколТип взаимодействия (REST, gRPC, Kafka и др.)
Поля протоколаЗависят от типа — см. Поля протоколов
ТелоСхема или пример запроса в формате JSON, XML, Proto, SQL и др.

Примеры контрактов по протоколам

ПротоколНазваниеПоле 1Поле 2Тело
RESTgetUserByIdGET/api/users/JSON
gRPCCreateOrderunaryOrderService/CreateOrderProto
GraphQLgetProductsquerygetProductsJSON
Kafkapublish-eventspublishuser-eventsJSON
PostgreSQLgetActiveUsersSELECTusersSQL

Создание контрактов

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

Вручную

На вкладке API объекта можно добавить контракт, указав протокол, название, поля и тело запроса.

Импорт из спецификации

Контракты можно импортировать из внешних спецификаций. При импорте система автоматически создаёт контракты на основе описания операций в файле.

Поддерживаемые форматы — см. Контракты и импорт.

Рекомендация

Рекомендуется сначала создать контракты для объектов, а затем использовать их при описании действий в связях. Это обеспечивает согласованность описания API и позволяет переиспользовать одну операцию в нескольких связях.

Связь с действиями в связях

При создании действия в связи можно выбрать контракт объекта. В этом случае поля действия заполняются из контракта. Действие может дополнять или переопределять данные контракта.

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

Действия

Создание контракта

Участник команды с ролью редактора или выше может создать контракт вручную или импортировать из спецификации.

Редактирование контракта

Участник команды с ролью редактора или выше может изменить любые свойства контракта.

Удаление контракта

Участник команды с ролью редактора или выше может удалить контракт.

Примечание

  • При удалении контракта действия в связях сохраняются, но теряют привязку к контракту
  • При удалении связи контракты объекта не удаляются

Права доступа

ДействиеНаблюдательРедакторАдминистраторВладелец командыВладелец организации
Просмотр контрактов
Создание контракта
Импорт контрактов
Редактирование контракта
Удаление контракта

2026 ООО «Тевас.АйО»