DocumentationAPI reference

Rust · 0.1.0

Create Memo Share

POST /api/v1/memos/{memo}/shares

MemoService · MemoService_CreateMemoShare

Protocol-derived reference. Authorization and instance policy still apply. Schema descriptions are inherited from the MIT-licensed application contract; examples here are not executed against a live server.

Access

Requires the memo creator or an instance administrator. Updates and share management also check applicable space placement. Space membership by itself does not grant ownership of another member's memo.

A share is an access grant

Only NORMAL, non-SPACE memos can receive a share. expireTime, if present, must be a valid future timestamp. The final segment of the returned share name is the opaque token used by GetSharedMemo. Disclosing it grants read access to that memo without sign-in; it does not grant access to the relation graph.

Request

CreateMemoShare creates a share link for a memo. Requires the memo creator or an instance administrator.

POST/api/v1/memos/{memo}/shares

Parameters

Name / locationType / requirementDescription
memo
path
string
Required
The memo id.

Request body

Required

application/json · MemoShare

Responses

200 · OK

application/json · MemoShare

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": "CreateMemoShare creates a share link for a memo. Requires the memo creator or an instance administrator.",
  "operationId": "MemoService_CreateMemoShare",
  "parameters": [
    {
      "name": "memo",
      "in": "path",
      "description": "The memo id.",
      "required": true,
      "schema": {
        "type": "string"
      }
    }
  ],
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/MemoShare"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "description": "OK",
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/MemoShare"
          }
        }
      }
    },
    "default": {
      "description": "Default error response",
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/Status"
          }
        }
      }
    }
  }
}