social.colibri.beta.community.migrate

colibri.social

Documentation

Migrates a repo-backed community onto spaces. Structure is recreated in new spaces and stamped with migratedFrom. Message history stays in the legacy public repos and is served alongside, because messages live in their authors' repos and only their authors can move them.

main procedure

Migrates a repo-backed community onto spaces. Structure is recreated in new spaces and stamped with migratedFrom. Message history stays in the legacy public repos and is served alongside, because messages live in their authors' repos and only their authors can move them.

Input

Encodingapplication/json
community stringat-identifier Required

The legacy community to migrate, by handle or DID. Only a community that holds its own DID can be migrated, so the DID is the whole address: the record to read is always social.colibri.community at self in that repo.

Output

Encodingapplication/json

Errors

AuthRequired The request is missing, malformed, or unverifiable service auth.
Forbidden The requesting user lacks permission to migrate this community.
CommunityNotFound No community exists at the legacy record's DID.
AlreadyExists This legacy community has already been migrated.
CredentialsUnavailable The AppView's stored credentials for this community are missing or unusable.
UpstreamFailure A PDS or third-party call the AppView depends on failed.
Try It

Requests are sent directly from your browser. Some servers may block requests due to CORS.

Base URL for XRPC calls (e.g., https://bsky.social)
Enter valid JSON for the request body
View raw schema
{
  "type": "procedure",
  "input": {
    "schema": {
      "type": "object",
      "required": [
        "community"
      ],
      "properties": {
        "community": {
          "type": "string",
          "format": "at-identifier",
          "description": "The legacy community to migrate, by handle or DID. Only a community that holds its own DID can be migrated, so the DID is the whole address: the record to read is always social.colibri.community at self in that repo."
        }
      }
    },
    "encoding": "application/json"
  },
  "errors": [
    {
      "name": "AuthRequired",
      "description": "The request is missing, malformed, or unverifiable service auth."
    },
    {
      "name": "Forbidden",
      "description": "The requesting user lacks permission to migrate this community."
    },
    {
      "name": "CommunityNotFound",
      "description": "No community exists at the legacy record's DID."
    },
    {
      "name": "AlreadyExists",
      "description": "This legacy community has already been migrated."
    },
    {
      "name": "CredentialsUnavailable",
      "description": "The AppView's stored credentials for this community are missing or unusable."
    },
    {
      "name": "UpstreamFailure",
      "description": "A PDS or third-party call the AppView depends on failed."
    }
  ],
  "output": {
    "schema": {
      "type": "object",
      "required": [
        "community"
      ],
      "properties": {
        "community": {
          "ref": "social.colibri.beta.community.defs#communityView",
          "type": "ref",
          "description": "The newly created, space-backed community."
        }
      }
    },
    "encoding": "application/json"
  },
  "description": "Migrates a repo-backed community onto spaces. Structure is recreated in new spaces and stamped with migratedFrom. Message history stays in the legacy public repos and is served alongside, because messages live in their authors' repos and only their authors can move them."
}

Lexicon Garden

@