social.colibri.community.migrate

colibri.social

Schema Diff

+22 -0

From

CID
bafyreicj4ls3r5s...
Indexed At
2026-07-29 16:12 UTC
View this version

To

CID
bafyreiavipjj27n...
Indexed At
2026-07-31 21:22 UTC
View this version

Compatibility Analysis

Backward Compatible

No changes detected.

1 1
{
2 2
  "id": "social.colibri.community.migrate",
3 3
  "defs": {
4 4
    "main": {
5 5
      "type": "procedure",
6 6
      "input": {
7 7
        "encoding": "multipart/form-data",
8 8
        "description": "Optional replacement community picture blob, as a `picture` part. Migrated communities have no banner."
9 9
      },
10 +
      "errors": [
11 +
        {
12 +
          "name": "AuthRequired",
13 +
          "description": "Missing, malformed, or unverifiable service auth."
14 +
        },
15 +
        {
16 +
          "name": "Forbidden",
17 +
          "description": "The caller lacks the permission this method requires."
18 +
        },
19 +
        {
20 +
          "name": "InvalidRequest",
21 +
          "description": "A parameter or body field was missing or malformed."
22 +
        },
23 +
        {
24 +
          "name": "NotFound",
25 +
          "description": "The referenced record does not exist."
26 +
        },
27 +
        {
28 +
          "name": "UpstreamFailure",
29 +
          "description": "A service outside this AppView failed."
30 +
        }
31 +
      ],
10 32
      "output": {
11 33
        "schema": {
12 34
          "type": "object",
13 35
          "required": [
14 36
            "did",
15 37
            "community",
16 38
            "channelMap"
17 39
          ],
18 40
          "properties": {
19 41
            "did": {
20 42
              "type": "string",
21 43
              "format": "did"
22 44
            },
23 45
            "community": {
24 46
              "type": "string",
25 47
              "format": "at-uri"
26 48
            },
27 49
            "channelMap": {
28 50
              "type": "array",
29 51
              "items": {
30 52
                "ref": "lex:social.colibri.community.migrate#channelMapping",
31 53
                "type": "ref"
32 54
              },
33 55
              "description": "Maps each cloned channel from its old AT-URI to its new AT-URI."
34 56
            }
35 57
          }
36 58
        },
37 59
        "encoding": "application/json"
38 60
      },
39 61
      "parameters": {
40 62
        "type": "params",
41 63
        "required": [
42 64
          "kind",
43 65
          "source"
44 66
        ],
45 67
        "properties": {
46 68
          "pds": {
47 69
            "type": "string",
48 70
            "description": "Bring-your-own PDS endpoint."
49 71
          },
50 72
          "kind": {
51 73
            "type": "string",
52 74
            "description": "The migration to run. 'legacy-community' migrates a pre-rework community record.",
53 75
            "knownValues": [
54 76
              "legacy-community"
55 77
            ]
56 78
          },
57 79
          "name": {
58 80
            "type": "string"
59 81
          },
60 82
          "source": {
61 83
            "type": "string",
62 84
            "format": "at-uri",
63 85
            "description": "The record being migrated (e.g. the legacy community)."
64 86
          },
65 87
          "password": {
66 88
            "type": "string",
67 89
            "description": "Bring-your-own account password."
68 90
          },
69 91
          "identifier": {
70 92
            "type": "string",
71 93
            "description": "Bring-your-own DID or handle."
72 94
          },
73 95
          "description": {
74 96
            "type": "string"
75 97
          },
76 98
          "requiresApprovalToJoin": {
77 99
            "type": "boolean"
78 100
          }
79 101
        }
80 102
      },
81 103
      "description": "Migrates a source record into a fresh community, cloning its structure and importing its members. The 'kind' discriminator selects the migration; today only legacy communities are supported, but the endpoint is designed to host future migrations. Provisioning mirrors community.create (managed when no PDS credentials are supplied, bring-your-own otherwise)."
82 104
    },
83 105
    "channelMapping": {
84 106
      "type": "object",
85 107
      "required": [
86 108
        "old",
87 109
        "new"
88 110
      ],
89 111
      "properties": {
90 112
        "new": {
91 113
          "type": "string",
92 114
          "format": "at-uri"
93 115
        },
94 116
        "old": {
95 117
          "type": "string",
96 118
          "format": "at-uri"
97 119
        }
98 120
      },
99 121
      "description": "A single channel's old AT-URI mapped to its new AT-URI."
100 122
    }
101 123
  },
102 124
  "$type": "com.atproto.lexicon.schema",
103 125
  "lexicon": 1
104 126
}

Compare Other Versions

Lexicon Garden

@