# Модель данных

Документ фиксирует текущую Community data model.

## Workspace

Workspace содержит:

- operations;
- agents;
- secrets;
- auth profiles;
- logs;
- usage.

## Operation

Operation описывает один REST integration contract.

Основные поля:

- `id`
- `workspace_id`
- `name`
- `display_name`
- `category`
- `protocol = rest`
- `status`
- `target`
- `input_schema`
- `output_schema`
- `input_mapping`
- `output_mapping`
- `execution_config`
- `tool_description`
- `created_at`
- `updated_at`

## REST target

REST target содержит:

- `base_url`
- `method`
- `path_template`
- `static_headers`

Поддерживаемые методы:

- `GET`
- `POST`
- `PUT`
- `PATCH`
- `DELETE`

## Agent

Agent определяет MCP endpoint и набор published operations.

Основные поля:

- `id`
- `workspace_id`
- `slug`
- `display_name`
- `description`
- `status`

Operation публикуется в agent через binding.

## Secrets и auth profiles

`Secret` хранит encrypted secret material.

`AuthProfile` описывает, как применить secret к REST request:

- bearer token;
- basic auth;
- API key header;
- API key query parameter.

Plaintext secret не возвращается через API после создания.

## Logs и usage

Invocation logs фиксируют:

- workspace;
- agent;
- operation;
- request id;
- status;
- latency;
- structured error context.

Usage rollups агрегируют вызовы по периодам.
