DocumentationAPI reference

Rust · 0.1.0

Create Space

POST /api/v1/spaces

SpaceService · SpaceService_CreateSpace

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 an authenticated, active account. Instance policy and the operation-specific checks below still apply.

Create then invite

Send a Space body with a nonempty title, optional description and icon. The caller becomes its first ADMIN. Use CreateSpaceInvitation to invite existing active accounts; the invited user joins only after accepting. spaceId is optional and uses the identifier format declared below.

Request

CreateSpace creates a space and makes the authenticated caller its first administrator.

POST/api/v1/spaces

Parameters

Name / locationType / requirementDescription
spaceId
query
string
Not marked required in OpenAPI
Optional. The space UID to use for this space. If empty, a canonical UUID v4 will be generated. Format: ^[a-zA-Z0-9]([a-zA-Z0-9-]{0,34}[a-zA-Z0-9])?$

Request body

Required

application/json · Space

Responses

200 · OK

application/json · Space

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": [
    "SpaceService"
  ],
  "description": "CreateSpace creates a space and makes the authenticated caller its first\n administrator.",
  "operationId": "SpaceService_CreateSpace",
  "parameters": [
    {
      "name": "spaceId",
      "in": "query",
      "description": "Optional. The space UID to use for this space.\n If empty, a canonical UUID v4 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/Space"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "description": "OK",
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/Space"
          }
        }
      }
    },
    "default": {
      "description": "Default error response",
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/Status"
          }
        }
      }
    }
  }
}