Replace the profile: name, description, join policy. Requires group.configure. Fields are inlined rather than referencing fyi.opensocial.profile, because a record def cannot be used as an input object — mirrors createGroup.
Input
application/jsonavatar
blob
Optional
The group's avatar, as returned by uploadImage. Omit to keep the current one; null to clear it.
maxSize: 1.0 MBbanner
blob
Optional
The group's banner, as returned by uploadImage. Omit to keep the current one; null to clear it.
maxSize: 1.0 MBdescription
string
Optional
No description available.
maxLength: 3000 bytesmaxGraphemes: 300 graphemesdisplayName
string
Required
No description available.
maxLength: 640 bytesmaxGraphemes: 64 graphemesgroup
stringdid
Required
The group DID. Every method is served by the group's host and authorized against that group's roles.
joinPolicy
string
Optional
No description available.
url
stringuri
Optional
The group's own site.
Output
application/jsoncid
stringcid
Required
A content identifier (CID) referencing immutable data.
uri
stringat-uri
Required
An AT Protocol URI (e.g., at://did:plc:xyz/app.bsky.feed.post/abc).
Try It
Requests are sent directly from your browser. Some servers may block requests due to CORS.
View raw schema
{
"description": "Replace the profile: name, description, join policy. Requires group.configure. Fields are inlined rather than referencing fyi.opensocial.profile, because a record def cannot be used as an input object — mirrors createGroup.",
"input": {
"encoding": "application/json",
"schema": {
"properties": {
"avatar": {
"accept": [
"image/png",
"image/jpeg"
],
"description": "The group's avatar, as returned by uploadImage. Omit to keep the current one; null to clear it.",
"maxSize": 1000000,
"type": "blob"
},
"banner": {
"accept": [
"image/png",
"image/jpeg"
],
"description": "The group's banner, as returned by uploadImage. Omit to keep the current one; null to clear it.",
"maxSize": 1000000,
"type": "blob"
},
"description": {
"maxGraphemes": 300,
"maxLength": 3000,
"type": "string"
},
"displayName": {
"maxGraphemes": 64,
"maxLength": 640,
"type": "string"
},
"group": {
"description": "The group DID. Every method is served by the group's host and authorized against that group's roles.",
"format": "did",
"type": "string"
},
"joinPolicy": {
"knownValues": [
"fyi.opensocial.profile#open",
"fyi.opensocial.profile#request",
"fyi.opensocial.profile#invite"
],
"type": "string"
},
"url": {
"description": "The group's own site.",
"format": "uri",
"type": "string"
}
},
"required": [
"group",
"displayName"
],
"type": "object"
}
},
"output": {
"encoding": "application/json",
"schema": {
"properties": {
"cid": {
"format": "cid",
"type": "string"
},
"uri": {
"format": "at-uri",
"type": "string"
}
},
"required": [
"uri",
"cid"
],
"type": "object"
}
},
"type": "procedure"
}