OpenAPI 规范 v3.1.0
OpenAPI 规范 v3.1.0
1. OpenAPI 规范
2. 简介
3. 定义
4. 规范
4.1 版本
4.2 格式
4.3 文档结构
4.4 数据类型
4.5 富文本格式化
4.6 URI 中的相对引用
4.7 URL 中的相对引用
4.8 模式
4.9 规范扩展
4.10 安全过滤
4.8.10 Operation 对象
创建时间: 2025-05-29 16:38

描述路径上的单个 API 操作。

4.8.10.1 固定字段
字段名称类型描述
标签[string]用于 API 文档控制的一组标签。标签可用于根据资源或任何其他限定符对操作进行逻辑分组。
摘要字符串操作作用的简短摘要。
描述字符串操作行为的详细说明。[CommonMark 规范] 语法可以用于富文本表示。
外部链接外部文档对象此操作的其他外部链接文档。
操作 ID字符串用于标识操作的唯一字符串。ID必须在 API 中描述的所有操作中唯一。operationId 值区分大小写。工具和库可以使用 operationId 唯一标识操作,因此,建议遵循常见的编程命名约定。
参数参数对象  引用对象适用于此操作的参数列表。如果参数已在路径项中定义,则新定义将覆盖它,但永远不会删除它。列表不得包含重复的参数。唯一参数由名称位置的组合定义。该列表可以使用引用对象链接到在OpenAPI 对象的 components/parameters中定义的参数。
请求体请求体对象  引用对象适用于此操作的请求体。requestBody 在 HTTP 1.1 规范 [RFC7231第 4.3.1 节 已明确定义请求体的语义的 HTTP 方法中得到完全支持。在 HTTP 规范含糊不清的其他情况下(例如 GETHEAD 和 DELETE),requestBody 是允许的,但没有明确定义的语义,并且如果可能,应该避免。
响应响应对象执行此操作后返回的可能响应列表。
回调Map[string回调对象  引用对象]与父操作相关的可能带外回调的映射。键是回调对象的唯一标识符。映射中的每个值都是一个回调对象,它描述了 API 提供者可能发起的请求以及预期的响应。
已弃用布尔值声明此操作已弃用。使用者应该避免使用声明的操作。默认值为 false
安全[安全需求对象]声明此操作可以使用哪些安全机制。值列表包含可使用的替代安全需求对象。只需要满足其中一个安全需求对象即可授权请求。若要使安全成为可选,可以在数组中包含一个空的安全需求 ({})。此定义会覆盖任何已声明的顶级 security。若要移除顶级安全声明,可以使用空数组。
服务器[服务器对象]此操作的服务替代 server 数组。如果在路径项对象或根级别指定了替代 server 对象,则此值将覆盖它。

此对象*可以使用 规范扩展 进行扩展。

4.8.10.2 Operation 对象示例
{
  "tags": [
    "pet"
  ],
  "summary": "Updates a pet in the store with form data",
  "operationId": "updatePetWithForm",
  "parameters": [
    {
      "name": "petId",
      "in": "path",
      "description": "ID of pet that needs to be updated",
      "required": true,
      "schema": {
        "type": "string"
      }
    }
  ],
  "requestBody": {
    "content": {
      "application/x-www-form-urlencoded": {
        "schema": {
          "type": "object",
          "properties": {
            "name": {
              "description": "Updated name of the pet",
              "type": "string"
            },
            "status": {
              "description": "Updated status of the pet",
              "type": "string"
            }
          },
          "required": ["status"]
        }
      }
    }
  },
  "responses": {
    "200": {
      "description": "Pet updated.",
      "content": {
        "application/json": {},
        "application/xml": {}
      }
    },
    "405": {
      "description": "Method Not Allowed",
      "content": {
        "application/json": {},
        "application/xml": {}
      }
    }
  },
  "security": [
    {
      "petstore_auth": [
        "write:pets",
        "read:pets"
      ]
    }
  ]
}
tags:
- pet
summary: Updates a pet in the store with form data
operationId: updatePetWithForm
parameters:
- name: petId
  in: path
  description: ID of pet that needs to be updated
  required: true
  schema:
    type: string
requestBody:
  content:
    'application/x-www-form-urlencoded':
      schema:
       type: object
       properties:
          name:
            description: Updated name of the pet
            type: string
          status:
            description: Updated status of the pet
            type: string
       required:
         - status
responses:
  '200':
    description: Pet updated.
    content:
      'application/json': {}
      'application/xml': {}
  '405':
    description: Method Not Allowed
    content:
      'application/json': {}
      'application/xml': {}
security:
- petstore_auth:
  - write:pets
  - read:pets
最后更新: -