fyi.opensocial.uploadImage

lexicons.opensocial.fyi

{
  "$type": "com.atproto.lexicon.schema",
  "defs": {
    "main": {
      "description": "Upload an image for the profile avatar or banner. Requires group.configure. Binary input like com.atproto.repo.uploadBlob; the group is a parameter because the blob has to land in that group's repo for a profile record to reference it.",
      "input": {
        "encoding": "*/*"
      },
      "output": {
        "encoding": "application/json",
        "schema": {
          "properties": {
            "blob": {
              "type": "blob"
            }
          },
          "required": [
            "blob"
          ],
          "type": "object"
        }
      },
      "parameters": {
        "properties": {
          "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"
          }
        },
        "required": [
          "group"
        ],
        "type": "params"
      },
      "type": "procedure"
    }
  },
  "id": "fyi.opensocial.uploadImage",
  "lexicon": 1
}

Validate Record

Validate a record against fyi.opensocial.uploadImage

Validation Options
Treat any remaining unresolved references as valid

Metadata

DID
did:plc:2gqnilpksz2e7faj3bwvo6qc
CID
bafyreicuobyoyqanj46r3vxvihvwpya6paiwpjvwegwkc46xe7dlgaoal4
Indexed At
2026-09-24 00:10 UTC
AT-URI
at://did:plc:2gqnilpksz2e7faj3bwvo6qc/com.atproto.lexicon.schema/fyi.opensocial.uploadImage

Similar Lexicons

Lexicons whose schemas describe something close to this one. Check them before publishing a new one that overlaps.

  • Upload raw image bytes to the authenticated viewer's own PDS, mediated by the AppView using its server-held session (confidential OAuth client only). Mirrors com.atproto.repo.uploadBlob. The returned blob ref is passed …

  • 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 create…

  • Update the authenticated user's profile

  • Sets a community's picture or banner. The bytes are uploaded to the community's own repo, which is why this goes through the AppView: a community's blobs can only be written with the community credentials the AppView ho…

  • Uploads a file to the community's repo for use in a bridged message or as a bridged author's avatar.

Lexicon Garden

@