{
  "swagger": "2.0",
  "info": {
    "title": "聚玩邮件服务",
    "description": "处理邮件验证码发送与密码找回",
    "version": "1.0"
  },
  "schemes": [
    "http",
    "https"
  ],
  "consumes": [
    "application/json"
  ],
  "produces": [
    "application/json"
  ],
  "paths": {
    "/api/v1/auth/forgot-password/send": {
      "post": {
        "summary": "忘记密码-发送验证码",
        "operationId": "ForgotPassword",
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/EmptyResp"
            }
          }
        },
        "parameters": [
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/ForgotPasswordReq"
            }
          }
        ],
        "tags": [
          "email"
        ]
      }
    },
    "/api/v1/email/verification-code/send": {
      "post": {
        "summary": "发送邮箱验证码",
        "description": "向用户邮箱发送验证码，支持注册、登录、重置密码、绑定邮箱等场景",
        "operationId": "SendVerificationCode",
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/SendVerificationCodeResp"
            }
          }
        },
        "parameters": [
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/SendVerificationCodeReq"
            }
          }
        ],
        "tags": [
          "email"
        ]
      }
    }
  },
  "definitions": {
    "EmptyResp": {
      "type": "object",
      "title": "EmptyResp"
    },
    "ForgotPasswordReq": {
      "type": "object",
      "properties": {
        "email": {
          "type": "string"
        }
      },
      "title": "ForgotPasswordReq",
      "required": [
        "email"
      ]
    },
    "SendVerificationCodeReq": {
      "type": "object",
      "properties": {
        "email": {
          "type": "string"
        },
        "scene": {
          "type": "string"
        }
      },
      "title": "SendVerificationCodeReq",
      "required": [
        "email",
        "required",
        "scene"
      ]
    },
    "SendVerificationCodeResp": {
      "type": "object",
      "properties": {
        "requestId": {
          "type": "string"
        },
        "expireInSec": {
          "type": "integer",
          "format": "int64"
        },
        "message": {
          "type": "string"
        }
      },
      "title": "SendVerificationCodeResp",
      "required": [
        "requestId",
        "expireInSec",
        "message"
      ]
    }
  },
  "securityDefinitions": {
    "apiKey": {
      "type": "apiKey",
      "description": "Enter JWT Bearer token **_only_**",
      "name": "Authorization",
      "in": "header"
    }
  }
}
