app.didpic.write.putProfile

lexicons.didpic.app

Documentation

Create or replace the authenticated viewer's app.didpic.actor.profile record at rkey 'self' on their own PDS, mediated by the AppView using its server-held session (confidential OAuth client only). Merges over the existing record: an omitted field keeps its current stored value, an empty string clears a text field. avatar/banner, when present, must come from a prior app.didpic.write.uploadBlob call; clearAvatar/clearBanner remove the image instead.

main procedure

Create or replace the authenticated viewer's app.didpic.actor.profile record at rkey 'self' on their own PDS, mediated by the AppView using its server-held session (confidential OAuth client only). Merges over the existing record: an omitted field keeps its current stored value, an empty string clears a text field. avatar/banner, when present, must come from a prior app.didpic.write.uploadBlob call; clearAvatar/clearBanner remove the image instead.

Input

Encodingapplication/json
avatar blob Optional

No description available.

maxSize: 1.0 MB
banner blob Optional

No description available.

maxSize: 2.0 MB
clearAvatar boolean Optional

No description available.

clearBanner boolean Optional

No description available.

description string Optional

No description available.

descriptionFacets array Optional

No description available.

displayName string Optional

No description available.

location string Optional

No description available.

pronouns string Optional

No description available.

Output

Encodingapplication/json
avatar blob Optional

No description available.

banner blob Optional

No description available.

cid 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.

Base URL for XRPC calls (e.g., https://bsky.social)
Enter valid JSON for the request body
View raw schema
{
  "description": "Create or replace the authenticated viewer's app.didpic.actor.profile record at rkey 'self' on their own PDS, mediated by the AppView using its server-held session (confidential OAuth client only). Merges over the existing record: an omitted field keeps its current stored value, an empty string clears a text field. avatar/banner, when present, must come from a prior app.didpic.write.uploadBlob call; clearAvatar/clearBanner remove the image instead.",
  "input": {
    "encoding": "application/json",
    "schema": {
      "properties": {
        "avatar": {
          "accept": [
            "image/png",
            "image/jpeg"
          ],
          "maxSize": 1000000,
          "type": "blob"
        },
        "banner": {
          "accept": [
            "image/png",
            "image/jpeg",
            "image/webp"
          ],
          "maxSize": 2000000,
          "type": "blob"
        },
        "clearAvatar": {
          "type": "boolean"
        },
        "clearBanner": {
          "type": "boolean"
        },
        "description": {
          "type": "string"
        },
        "descriptionFacets": {
          "items": {
            "ref": "app.didpic.richtext.facet",
            "type": "ref"
          },
          "type": "array"
        },
        "displayName": {
          "type": "string"
        },
        "location": {
          "type": "string"
        },
        "pronouns": {
          "type": "string"
        }
      },
      "type": "object"
    }
  },
  "output": {
    "encoding": "application/json",
    "schema": {
      "properties": {
        "avatar": {
          "accept": [
            "image/png",
            "image/jpeg"
          ],
          "maxSize": 1000000,
          "type": "blob"
        },
        "banner": {
          "accept": [
            "image/png",
            "image/jpeg",
            "image/webp"
          ],
          "maxSize": 2000000,
          "type": "blob"
        },
        "cid": {
          "format": "cid",
          "type": "string"
        },
        "uri": {
          "format": "at-uri",
          "type": "string"
        }
      },
      "required": [
        "uri",
        "cid"
      ],
      "type": "object"
    }
  },
  "type": "procedure"
}

Lexicon Garden

@