At

 view release on metacpan or  search on metacpan

share/lexicons/app/bsky/actor/defs.json  view on Meta::CPAN

      "type": "array",
      "items": {
        "type": "union",
        "refs": [
          "#adultContentPref",
          "#contentLabelPref",
          "#savedFeedsPref",
          "#savedFeedsPrefV2",
          "#personalDetailsPref",
          "#feedViewPref",
          "#threadViewPref",
          "#interestsPref",
          "#mutedWordsPref",
          "#hiddenPostsPref",
          "#bskyAppStatePref",
          "#labelersPref"
        ]
      }
    },
    "adultContentPref": {
      "type": "object",

share/lexicons/app/bsky/actor/defs.json  view on Meta::CPAN

        "hideReposts": {
          "type": "boolean",
          "description": "Hide reposts in the feed."
        },
        "hideQuotePosts": {
          "type": "boolean",
          "description": "Hide quote posts in the feed."
        }
      }
    },
    "threadViewPref": {
      "type": "object",
      "properties": {
        "sort": {
          "type": "string",
          "description": "Sorting mode for threads.",
          "knownValues": ["oldest", "newest", "most-likes", "random", "hotness"]
        },
        "prioritizeFollowedUsers": {
          "type": "boolean",
          "description": "Show followed users at the top of all replies."
        }
      }
    },
    "interestsPref": {
      "type": "object",

share/lexicons/app/bsky/feed/defs.json  view on Meta::CPAN

        "replyCount": { "type": "integer" },
        "repostCount": { "type": "integer" },
        "likeCount": { "type": "integer" },
        "quoteCount": { "type": "integer" },
        "indexedAt": { "type": "string", "format": "datetime" },
        "viewer": { "type": "ref", "ref": "#viewerState" },
        "labels": {
          "type": "array",
          "items": { "type": "ref", "ref": "com.atproto.label.defs#label" }
        },
        "threadgate": { "type": "ref", "ref": "#threadgateView" }
      }
    },
    "viewerState": {
      "type": "object",
      "description": "Metadata about the requesting account's relationship with the subject content. Only has meaningful content for authed requests.",
      "properties": {
        "repost": { "type": "string", "format": "at-uri" },
        "like": { "type": "string", "format": "at-uri" },
        "threadMuted": { "type": "boolean" },
        "replyDisabled": { "type": "boolean" },
        "embeddingDisabled": { "type": "boolean" },
        "pinned": { "type": "boolean" }
      }
    },
    "feedViewPost": {
      "type": "object",
      "required": ["post"],
      "properties": {
        "post": { "type": "ref", "ref": "#postView" },

share/lexicons/app/bsky/feed/defs.json  view on Meta::CPAN

      "required": ["by", "indexedAt"],
      "properties": {
        "by": { "type": "ref", "ref": "app.bsky.actor.defs#profileViewBasic" },
        "indexedAt": { "type": "string", "format": "datetime" }
      }
    },
    "reasonPin": {
      "type": "object",
      "properties": {}
    },
    "threadViewPost": {
      "type": "object",
      "required": ["post"],
      "properties": {
        "post": { "type": "ref", "ref": "#postView" },
        "parent": {
          "type": "union",
          "refs": ["#threadViewPost", "#notFoundPost", "#blockedPost"]
        },
        "replies": {
          "type": "array",
          "items": {
            "type": "union",
            "refs": ["#threadViewPost", "#notFoundPost", "#blockedPost"]
          }
        }
      }
    },
    "notFoundPost": {
      "type": "object",
      "required": ["uri", "notFound"],
      "properties": {
        "uri": { "type": "string", "format": "at-uri" },
        "notFound": { "type": "boolean", "const": true }

share/lexicons/app/bsky/feed/defs.json  view on Meta::CPAN

      "type": "object",
      "required": ["repost"],
      "properties": {
        "repost": { "type": "string", "format": "at-uri" }
      }
    },
    "skeletonReasonPin": {
      "type": "object",
      "properties": {}
    },
    "threadgateView": {
      "type": "object",
      "properties": {
        "uri": { "type": "string", "format": "at-uri" },
        "cid": { "type": "string", "format": "cid" },
        "record": { "type": "unknown" },
        "lists": {
          "type": "array",
          "items": { "type": "ref", "ref": "app.bsky.graph.defs#listViewBasic" }
        }
      }

share/lexicons/app/bsky/feed/getAuthorFeed.json  view on Meta::CPAN

            "default": 50
          },
          "cursor": { "type": "string" },
          "filter": {
            "type": "string",
            "description": "Combinations of post/repost types to include in response.",
            "knownValues": [
              "posts_with_replies",
              "posts_no_replies",
              "posts_with_media",
              "posts_and_author_threads"
            ],
            "default": "posts_with_replies"
          },
          "includePins": {
            "type": "boolean",
            "default": false
          }
        }
      },
      "output": {

share/lexicons/app/bsky/feed/getPostThread.json  view on Meta::CPAN

{
  "lexicon": 1,
  "id": "app.bsky.feed.getPostThread",
  "defs": {
    "main": {
      "type": "query",
      "description": "Get posts in a thread. Does not require auth, but additional metadata and filtering will be applied for authed requests.",
      "parameters": {
        "type": "params",
        "required": ["uri"],
        "properties": {
          "uri": {
            "type": "string",
            "format": "at-uri",
            "description": "Reference (AT-URI) to post record."
          },
          "depth": {

share/lexicons/app/bsky/feed/getPostThread.json  view on Meta::CPAN

            "default": 80,
            "minimum": 0,
            "maximum": 1000
          }
        }
      },
      "output": {
        "encoding": "application/json",
        "schema": {
          "type": "object",
          "required": ["thread"],
          "properties": {
            "thread": {
              "type": "union",
              "refs": [
                "app.bsky.feed.defs#threadViewPost",
                "app.bsky.feed.defs#notFoundPost",
                "app.bsky.feed.defs#blockedPost"
              ]
            },
            "threadgate": {
              "type": "ref",
              "ref": "app.bsky.feed.defs#threadgateView"
            }
          }
        }
      },
      "errors": [{ "name": "NotFound" }]
    }
  }
}

share/lexicons/app/bsky/feed/threadgate.json  view on Meta::CPAN

{
  "lexicon": 1,
  "id": "app.bsky.feed.threadgate",
  "defs": {
    "main": {
      "type": "record",
      "key": "tid",
      "description": "Record defining interaction gating rules for a thread (aka, reply controls). The record key (rkey) of the threadgate record must match the record key of the thread's root post, and that record must be in the same repository.",
      "record": {
        "type": "object",
        "required": ["post", "createdAt"],
        "properties": {
          "post": {
            "type": "string",
            "format": "at-uri",
            "description": "Reference (AT-URI) to the post record."
          },
          "allow": {

share/lexicons/app/bsky/graph/muteThread.json  view on Meta::CPAN

{
  "lexicon": 1,
  "id": "app.bsky.graph.muteThread",
  "defs": {
    "main": {
      "type": "procedure",
      "description": "Mutes a thread preventing notifications from the thread and any of its children. Mutes are private in Bluesky. Requires auth.",
      "input": {
        "encoding": "application/json",
        "schema": {
          "type": "object",
          "required": ["root"],
          "properties": {
            "root": { "type": "string", "format": "at-uri" }
          }
        }
      }

share/lexicons/app/bsky/graph/unmuteThread.json  view on Meta::CPAN

{
  "lexicon": 1,
  "id": "app.bsky.graph.unmuteThread",
  "defs": {
    "main": {
      "type": "procedure",
      "description": "Unmutes the specified thread. Requires auth.",
      "input": {
        "encoding": "application/json",
        "schema": {
          "type": "object",
          "required": ["root"],
          "properties": {
            "root": { "type": "string", "format": "at-uri" }
          }
        }
      }

t/00_compile.t  view on Meta::CPAN

        is my $timeline = $bsky->get( 'app.bsky.feed.getTimeline' => { actor => $bsky->did } ), hash {
            field cursor => D();
            field feed   => D();    # Feed items are subject to change
            end;
        }, 'getTimeline( )';
    };
    subtest 'pull author feed' => sub {
        $login || skip_all "$login";
        is my $feed
            = $bsky->get(
            'app.bsky.feed.getAuthorFeed' => { actor => 'did:plc:z72i7hdynmk6r22z27h6tvur', filter => 'posts_and_author_threads', limit => 30 } ),
            hash {
            field cursor => D();
            field feed   => D();    # Feed items are subject to change
            end;
            }, 'getAuthorFeed( ... )';
    };
    subtest 'pull post thread' => sub {
        $login || skip_all "$login";
        is my $thread
            = $bsky->get( 'app.bsky.feed.getPostThread' => { uri => 'at://did:plc:z72i7hdynmk6r22z27h6tvur/app.bsky.feed.post/3l2s5xxv2ze2c' } ),
            hash {
            field threadgate => E();
            field thread     => meta {    # Feed items are subject to change
                prop reftype => 'HASH';
            };
            end;
            }, 'getPostThread( ... )';
    };
    subtest 'pull post' => sub {
        $login || skip_all "$login";
        is my $post
            = $bsky->get( 'app.bsky.feed.getPosts' => { uris => ['at://did:plc:z72i7hdynmk6r22z27h6tvur/app.bsky.feed.post/3l2s5xxv2ze2c'] } ), hash {
            field posts => array {



( run in 0.272 second using v1.01-cache-2.11-cpan-ec4f86ec37b )