文档API 参考

Rust · 0.1.0

Create Memo

POST /api/v1/memos

MemoService · MemoService_CreateMemo

基于协议生成的参考。授权与实例策略仍然生效。结构描述继承自 MIT 许可的应用接口定义;本站不会向真实服务执行示例。

访问权限

需要账号认证。在空间内创建或参与已有笔记时还会检查归属与读取权限;认证本身不代表可以修改他人的笔记。

创建私密测试笔记

JSON 请求体就是 Memo 本身。服务端确定所有者,并在未提供 memoId 时生成 UID。省略可见性时默认为 PRIVATE。标签和计算属性来自 Markdown。保存返回的 name 以便读取与编辑;使用自动 ID 的 POST 重试可能创建第二条笔记。

curl --fail-with-body -X POST \
  -H "Authorization: Bearer $MEMOS_TOKEN" \
  -H "Content-Type: application/json" \
  --data '{"content":"API test memo","visibility":"PRIVATE","state":"NORMAL"}' \
  "$MEMOS_URL/api/v1/memos"

创建时忽略 state 与 pinned

共享 Memo 结构包含 state 和 pinned,但创建操作不会写入这两个字段。即使请求提交 ARCHIVED 或 pinned: true,新笔记或评论仍以 NORMAL 状态创建且不置顶。应先创建记录,再按需要通过 UpdateMemo 的 state 或 pinned 更新掩码修改。不要把可复用结构中的每个字段都视为创建时会接受的输入。

请求

CreateMemo creates a memo. The request body is a Memo; set its content (Markdown) and visibility (PRIVATE | PROTECTED | PUBLIC | SPACE, default PRIVATE). The memo is owned by the authenticated user; requires authentication.

POST/api/v1/memos

参数

名称 / 位置类型 / 是否必需描述
memoId
query
string
OpenAPI 未标记为必需
Optional. The memo ID to use for this memo. If empty, a unique ID will be generated. Format: ^[a-zA-Z0-9]([a-zA-Z0-9-]{0,34}[a-zA-Z0-9])?$

请求体

必需

application/json · Memo

响应

200 · OK

application/json · Memo

default · Default error response

application/json · Status

完整操作定义

下方保留全部已声明约束、媒体类型和响应细节。结构引用链接到完整定义。

展开 JSON 定义
{
  "tags": [
    "MemoService"
  ],
  "description": "CreateMemo creates a memo. The request body is a Memo; set its content\n (Markdown) and visibility (PRIVATE | PROTECTED | PUBLIC | SPACE,\n default PRIVATE).\n The memo is owned by the authenticated user; requires authentication.",
  "operationId": "MemoService_CreateMemo",
  "parameters": [
    {
      "name": "memoId",
      "in": "query",
      "description": "Optional. The memo ID to use for this memo.\n If empty, a unique ID will be generated.\n Format: ^[a-zA-Z0-9]([a-zA-Z0-9-]{0,34}[a-zA-Z0-9])?$",
      "schema": {
        "type": "string"
      }
    }
  ],
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/Memo"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "description": "OK",
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/Memo"
          }
        }
      }
    },
    "default": {
      "description": "Default error response",
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/Status"
          }
        }
      }
    }
  }
}