{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://apiperson.com/ru/agents/request.schema.json",
  "title": "Черновик обращения к Павлу Диденко",
  "description": "JSON описывает черновик письма, а не способ его отправки. На сайте нет приёмного API, автоматического заключения договора или оплаты. Если отправка недоступна, передайте человеку текст и контакты.",
  "type": "object",
  "additionalProperties": false,
  "required": [
    "task_summary",
    "context_summary",
    "desired_next_step",
    "reply_email"
  ],
  "properties": {
    "task_summary": {
      "type": "string",
      "minLength": 1,
      "maxLength": 2000
    },
    "context_summary": {
      "type": "string",
      "minLength": 1,
      "maxLength": 2000
    },
    "desired_next_step": {
      "type": "string",
      "minLength": 1,
      "maxLength": 2000
    },
    "reply_email": {
      "type": "string",
      "format": "email",
      "minLength": 1,
      "maxLength": 254
    },
    "preferred_language": {
      "enum": [
        "ru",
        "en"
      ]
    },
    "work_needed": {
      "type": "string",
      "maxLength": 2000
    },
    "match_reason": {
      "type": "string",
      "maxLength": 2000
    },
    "timing": {
      "type": "string",
      "maxLength": 2000
    },
    "prepared_by": {
      "type": "string",
      "maxLength": 2000
    },
    "open_questions": {
      "type": "array",
      "maxItems": 20,
      "items": {
        "type": "string",
        "minLength": 1,
        "maxLength": 1000
      }
    },
    "assumptions": {
      "type": "array",
      "maxItems": 20,
      "items": {
        "type": "string",
        "minLength": 1,
        "maxLength": 1000
      }
    }
  },
  "examples": [
    {
      "task_summary": "Нужно согласовать следующий выпуск приложения.",
      "context_summary": "Заказчик и команда по-разному понимают объём работ. Остальные обстоятельства пока неизвестны.",
      "desired_next_step": "Обсудить уточнение требований и проверку результата.",
      "reply_email": "requester@example.org",
      "preferred_language": "ru",
      "open_questions": [
        "Кто утверждает приоритеты?"
      ],
      "assumptions": []
    }
  ]
}