MemoService · MemoService_CreateMemoComment
Access
Requires an authenticated account. Creating in a space or participating on an existing memo applies additional placement/read checks; authentication alone is not permission to modify someone else's memo.
Comments have their own lifecycle
The body is a Memo, without a comment wrapper. Creation adds an immutable COMMENT context relation to the URL's parent memo. Set the comment's visibility and optional space deliberately; it does not inherit the parent's placement or audience. The parent must be readable and participation permitted. The immediate creation response may omit parent; a subsequent GetMemo hydrates the relation.
Creation ignores state and pinned
The shared Memo schema includes state and pinned, but creation does not write either field. A new memo or comment starts in NORMAL state and is unpinned even if the request supplies ARCHIVED or pinned: true. Create the record first, then use UpdateMemo with the supported state or pinned updateMask paths if you need to change those values. Do not treat every field in the reusable schema as accepted on creation.
Request
CreateMemoComment atomically creates an independent memo plus one immutable COMMENT context relation to the named memo. The new memo keeps its own placement, visibility, authorship, and lifecycle.
/api/v1/memos/{memo}/commentsParameters
| Name / location | Type / requirement | Description |
|---|---|---|
memopath | string Required | The memo id. |
commentIdquery | string Not marked required in OpenAPI | Optional. The comment ID to use. |
Request body
Required
application/json · Memo
Responses
200 · OK
application/json · Memo
default · Default error response
application/json · Status
Complete operation definition
All declared constraints, media types and response details are retained below. Schema references link to their complete definitions.
Open JSON definition
{
"tags": [
"MemoService"
],
"description": "CreateMemoComment atomically creates an independent memo plus one immutable\n COMMENT context relation to the named memo. The new memo keeps its own\n placement, visibility, authorship, and lifecycle.",
"operationId": "MemoService_CreateMemoComment",
"parameters": [
{
"name": "memo",
"in": "path",
"description": "The memo id.",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "commentId",
"in": "query",
"description": "Optional. The comment ID to use.",
"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"
}
}
}
}
}
}