app.bivri.feed.createComment

lexicons.bivri.app

Documentation

Bivri refuses content longer than 200 graphemes, which is stricter than the 1000 the record schema permits: the record admits what any client may write, this method admits what this service accepts. A refusal is InvalidComment and nothing is written.

main procedure

Bivri refuses content longer than 200 graphemes, which is stricter than the 1000 the record schema permits: the record admits what any client may write, this method admits what this service accepts. A refusal is InvalidComment and nothing is written.

Input

Encodingapplication/json
content string Required

Comment text.

maxLength: 10000 bytesmaxGraphemes: 1000 graphemes

Output

Encodingapplication/json
cid stringcid Required

CID of the comment record that was written.

uri stringat-uri Required

AT URI of the comment record that was written.

Errors

ConsentRequired The authenticated member has not confirmed age and accepted the Terms and Privacy Policy.
Unauthenticated Nobody is authenticated, so there is no repository to write to.
InvalidComment The comment is not one this service accepts — longer than 200 graphemes, or otherwise refused by the write boundary. Nothing was written.
Blocked The commenter and the Artwork's author, or the author of the comment being replied to, have a block between them in either direction. Nothing was written.
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": "Bivri refuses content longer than 200 graphemes, which is stricter than the 1000 the record schema permits: the record admits what any client may write, this method admits what this service accepts. A refusal is InvalidComment and nothing is written.",
  "errors": [
    {
      "description": "The authenticated member has not confirmed age and accepted the Terms and Privacy Policy.",
      "name": "ConsentRequired"
    },
    {
      "description": "Nobody is authenticated, so there is no repository to write to.",
      "name": "Unauthenticated"
    },
    {
      "description": "The comment is not one this service accepts — longer than 200 graphemes, or otherwise refused by the write boundary. Nothing was written.",
      "name": "InvalidComment"
    },
    {
      "description": "The commenter and the Artwork's author, or the author of the comment being replied to, have a block between them in either direction. Nothing was written.",
      "name": "Blocked"
    }
  ],
  "input": {
    "encoding": "application/json",
    "schema": {
      "properties": {
        "content": {
          "description": "Comment text.",
          "maxGraphemes": 1000,
          "maxLength": 10000,
          "type": "string"
        },
        "parent": {
          "description": "Strong reference to the comment being replied to. Omit for a top-level comment.",
          "ref": "com.atproto.repo.strongRef",
          "type": "ref"
        },
        "subject": {
          "description": "Strong reference to the artwork to comment on.",
          "ref": "com.atproto.repo.strongRef",
          "type": "ref"
        }
      },
      "required": [
        "subject",
        "content"
      ],
      "type": "object"
    }
  },
  "output": {
    "encoding": "application/json",
    "schema": {
      "properties": {
        "cid": {
          "description": "CID of the comment record that was written.",
          "format": "cid",
          "type": "string"
        },
        "uri": {
          "description": "AT URI of the comment record that was written.",
          "format": "at-uri",
          "type": "string"
        }
      },
      "required": [
        "uri",
        "cid"
      ],
      "type": "object"
    }
  },
  "type": "procedure"
}

Lexicon Garden

@