A small tool to view real-world ActivityPub objects as JSON! Enter a URL
or username from Mastodon or a similar service below, and we'll send a
request with
the right
Accept
header
to the server to view the underlying object.
{
"@context": [
"https://www.w3.org/ns/activitystreams",
{
"ostatus": "http://ostatus.org#",
"atomUri": "ostatus:atomUri",
"inReplyToAtomUri": "ostatus:inReplyToAtomUri",
"conversation": "ostatus:conversation",
"sensitive": "as:sensitive",
"toot": "http://joinmastodon.org/ns#",
"votersCount": "toot:votersCount",
"Hashtag": "as:Hashtag"
}
],
"id": "https://ioc.exchange/users/peterrenshaw/statuses/114085251862572626",
"type": "Note",
"summary": null,
"inReplyTo": "https://ioc.exchange/users/peterrenshaw/statuses/114085228853958166",
"published": "2025-03-01T04:19:53Z",
"url": "https://ioc.exchange/@peterrenshaw/114085251862572626",
"attributedTo": "https://ioc.exchange/users/peterrenshaw",
"to": [
"https://www.w3.org/ns/activitystreams#Public"
],
"cc": [
"https://ioc.exchange/users/peterrenshaw/followers"
],
"sensitive": false,
"atomUri": "https://ioc.exchange/users/peterrenshaw/statuses/114085251862572626",
"inReplyToAtomUri": "https://ioc.exchange/users/peterrenshaw/statuses/114085228853958166",
"conversation": "tag:ioc.exchange,2025-03-01:objectId=134039537:objectType=Conversation",
"content": "<p>Big question, Why ATProtocol from <a href=\"https://ioc.exchange/tags/BlueSkySocial\" class=\"mention hashtag\" rel=\"tag\">#<span>BlueSkySocial</span></a> <a href=\"https://ioc.exchange/tags/PBC\" class=\"mention hashtag\" rel=\"tag\">#<span>PBC</span></a>’s mouth instead of Mastodon and ActivityPub?: </p><p>“Why not use ActivityPub? <a href=\"https://ioc.exchange/tags/ActivityPub\" class=\"mention hashtag\" rel=\"tag\">#<span>ActivityPub</span></a> is a federated social networking technology popularized by <a href=\"https://ioc.exchange/tags/Mastodon\" class=\"mention hashtag\" rel=\"tag\">#<span>Mastodon</span></a>.</p><p>Account <a href=\"https://ioc.exchange/tags/portability\" class=\"mention hashtag\" rel=\"tag\">#<span>portability</span></a> is a major reason why we chose to build a separate protocol. We consider portability to be crucial because it protects <a href=\"https://ioc.exchange/tags/users\" class=\"mention hashtag\" rel=\"tag\">#<span>users</span></a> from sudden bans, server shutdowns, and policy disagreements. Our <a href=\"https://ioc.exchange/tags/solution\" class=\"mention hashtag\" rel=\"tag\">#<span>solution</span></a> for portability requires both signed data repositories and <a href=\"https://ioc.exchange/tags/DIDs\" class=\"mention hashtag\" rel=\"tag\">#<span>DIDs</span></a>, neither of which are easy to retrofit into ActivityPub. The migration <a href=\"https://ioc.exchange/tags/tools\" class=\"mention hashtag\" rel=\"tag\">#<span>tools</span></a> for ActivityPub are comparatively limited; they require the original server to provide a redirect and cannot migrate the user's previous data.</p><p>Another major reason is <a href=\"https://ioc.exchange/tags/scalability\" class=\"mention hashtag\" rel=\"tag\">#<span>scalability</span></a>. <a href=\"https://ioc.exchange/tags/ActivityPub\" class=\"mention hashtag\" rel=\"tag\">#<span>ActivityPub</span></a> depends heavily on delivering messages between a wide network of small-to-medium sized nodes, which can cause individual <a href=\"https://ioc.exchange/tags/nodes\" class=\"mention hashtag\" rel=\"tag\">#<span>nodes</span></a> to be flooded with traffic and generally struggles to provide global views of <a href=\"https://ioc.exchange/tags/activity\" class=\"mention hashtag\" rel=\"tag\">#<span>activity</span></a>.”</p><p>Short version, WE CANT CONTROL YOU. </p><p><<a href=\"https://atproto.com/guides/faq\" target=\"_blank\" rel=\"nofollow noopener noreferrer\" translate=\"no\"><span class=\"invisible\">https://</span><span class=\"\">atproto.com/guides/faq</span><span class=\"invisible\"></span></a>></p>",
"contentMap": {
"en": "<p>Big question, Why ATProtocol from <a href=\"https://ioc.exchange/tags/BlueSkySocial\" class=\"mention hashtag\" rel=\"tag\">#<span>BlueSkySocial</span></a> <a href=\"https://ioc.exchange/tags/PBC\" class=\"mention hashtag\" rel=\"tag\">#<span>PBC</span></a>’s mouth instead of Mastodon and ActivityPub?: </p><p>“Why not use ActivityPub? <a href=\"https://ioc.exchange/tags/ActivityPub\" class=\"mention hashtag\" rel=\"tag\">#<span>ActivityPub</span></a> is a federated social networking technology popularized by <a href=\"https://ioc.exchange/tags/Mastodon\" class=\"mention hashtag\" rel=\"tag\">#<span>Mastodon</span></a>.</p><p>Account <a href=\"https://ioc.exchange/tags/portability\" class=\"mention hashtag\" rel=\"tag\">#<span>portability</span></a> is a major reason why we chose to build a separate protocol. We consider portability to be crucial because it protects <a href=\"https://ioc.exchange/tags/users\" class=\"mention hashtag\" rel=\"tag\">#<span>users</span></a> from sudden bans, server shutdowns, and policy disagreements. Our <a href=\"https://ioc.exchange/tags/solution\" class=\"mention hashtag\" rel=\"tag\">#<span>solution</span></a> for portability requires both signed data repositories and <a href=\"https://ioc.exchange/tags/DIDs\" class=\"mention hashtag\" rel=\"tag\">#<span>DIDs</span></a>, neither of which are easy to retrofit into ActivityPub. The migration <a href=\"https://ioc.exchange/tags/tools\" class=\"mention hashtag\" rel=\"tag\">#<span>tools</span></a> for ActivityPub are comparatively limited; they require the original server to provide a redirect and cannot migrate the user's previous data.</p><p>Another major reason is <a href=\"https://ioc.exchange/tags/scalability\" class=\"mention hashtag\" rel=\"tag\">#<span>scalability</span></a>. <a href=\"https://ioc.exchange/tags/ActivityPub\" class=\"mention hashtag\" rel=\"tag\">#<span>ActivityPub</span></a> depends heavily on delivering messages between a wide network of small-to-medium sized nodes, which can cause individual <a href=\"https://ioc.exchange/tags/nodes\" class=\"mention hashtag\" rel=\"tag\">#<span>nodes</span></a> to be flooded with traffic and generally struggles to provide global views of <a href=\"https://ioc.exchange/tags/activity\" class=\"mention hashtag\" rel=\"tag\">#<span>activity</span></a>.”</p><p>Short version, WE CANT CONTROL YOU. </p><p><<a href=\"https://atproto.com/guides/faq\" target=\"_blank\" rel=\"nofollow noopener noreferrer\" translate=\"no\"><span class=\"invisible\">https://</span><span class=\"\">atproto.com/guides/faq</span><span class=\"invisible\"></span></a>></p>"
},
"attachment": [],
"tag": [
{
"type": "Hashtag",
"href": "https://ioc.exchange/tags/blueskysocial",
"name": "#blueskysocial"
},
{
"type": "Hashtag",
"href": "https://ioc.exchange/tags/pbc",
"name": "#pbc"
},
{
"type": "Hashtag",
"href": "https://ioc.exchange/tags/activitypub",
"name": "#activitypub"
},
{
"type": "Hashtag",
"href": "https://ioc.exchange/tags/mastodon",
"name": "#mastodon"
},
{
"type": "Hashtag",
"href": "https://ioc.exchange/tags/portability",
"name": "#portability"
},
{
"type": "Hashtag",
"href": "https://ioc.exchange/tags/users",
"name": "#users"
},
{
"type": "Hashtag",
"href": "https://ioc.exchange/tags/solution",
"name": "#solution"
},
{
"type": "Hashtag",
"href": "https://ioc.exchange/tags/dids",
"name": "#dids"
},
{
"type": "Hashtag",
"href": "https://ioc.exchange/tags/tools",
"name": "#tools"
},
{
"type": "Hashtag",
"href": "https://ioc.exchange/tags/scalability",
"name": "#scalability"
},
{
"type": "Hashtag",
"href": "https://ioc.exchange/tags/nodes",
"name": "#nodes"
},
{
"type": "Hashtag",
"href": "https://ioc.exchange/tags/activity",
"name": "#activity"
}
],
"replies": {
"id": "https://ioc.exchange/users/peterrenshaw/statuses/114085251862572626/replies",
"type": "Collection",
"first": {
"type": "CollectionPage",
"next": "https://ioc.exchange/users/peterrenshaw/statuses/114085251862572626/replies?only_other_accounts=true&page=true",
"partOf": "https://ioc.exchange/users/peterrenshaw/statuses/114085251862572626/replies",
"items": []
}
},
"likes": {
"id": "https://ioc.exchange/users/peterrenshaw/statuses/114085251862572626/likes",
"type": "Collection",
"totalItems": 9
},
"shares": {
"id": "https://ioc.exchange/users/peterrenshaw/statuses/114085251862572626/shares",
"type": "Collection",
"totalItems": 7
}
}