ActivityPub Viewer

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.

Open in browser →
{ "@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", "blurhash": "toot:blurhash", "focalPoint": { "@container": "@list", "@id": "toot:focalPoint" }, "Hashtag": "as:Hashtag" } ], "id": "https://me.dm/users/screwlisp/statuses/113993657758094213", "type": "Note", "summary": null, "inReplyTo": null, "published": "2025-02-13T00:06:18Z", "url": "https://me.dm/@screwlisp/113993657758094213", "attributedTo": "https://me.dm/users/screwlisp", "to": [ "https://www.w3.org/ns/activitystreams#Public" ], "cc": [ "https://me.dm/users/screwlisp/followers" ], "sensitive": false, "atomUri": "https://me.dm/users/screwlisp/statuses/113993657758094213", "inReplyToAtomUri": null, "conversation": "tag:me.dm,2025-02-13:objectId=85765137:objectType=Conversation", "content": "<p><a href=\"https://me.dm/tags/emacs\" class=\"mention hashtag\" rel=\"tag\">#<span>emacs</span></a> <a href=\"https://me.dm/tags/commonLisp\" class=\"mention hashtag\" rel=\"tag\">#<span>commonLisp</span></a> <a href=\"https://me.dm/tags/lisp\" class=\"mention hashtag\" rel=\"tag\">#<span>lisp</span></a> <a href=\"https://me.dm/tags/slime\" class=\"mention hashtag\" rel=\"tag\">#<span>slime</span></a> <a href=\"https://me.dm/tags/braindump\" class=\"mention hashtag\" rel=\"tag\">#<span>braindump</span></a> <a href=\"https://me.dm/tags/programming\" class=\"mention hashtag\" rel=\"tag\">#<span>programming</span></a> <a href=\"https://me.dm/tags/tutorial\" class=\"mention hashtag\" rel=\"tag\">#<span>tutorial</span></a> on <a href=\"https://me.dm/tags/medium\" class=\"mention hashtag\" rel=\"tag\">#<span>medium</span></a></p><p><a href=\"https://medium.com/@screwlisp/my-personal-emacs-slime-useage-examples-b2c8b6b9e023\" target=\"_blank\" rel=\"nofollow noopener noreferrer\" translate=\"no\"><span class=\"invisible\">https://</span><span class=\"ellipsis\">medium.com/@screwlisp/my-perso</span><span class=\"invisible\">nal-emacs-slime-useage-examples-b2c8b6b9e023</span></a></p><p>Really a mixture of three things:<br />1. Some (not very long history) historical notes about superior lisp interaction with inferior lisp<br />2. Some emacs shortcuts I use a lot<br />3. Interatively changing names used or setqing values and retrying in the interactive debugger - slime&#39;s exposure of advanced lisp debugging features</p>", "contentMap": { "en": "<p><a href=\"https://me.dm/tags/emacs\" class=\"mention hashtag\" rel=\"tag\">#<span>emacs</span></a> <a href=\"https://me.dm/tags/commonLisp\" class=\"mention hashtag\" rel=\"tag\">#<span>commonLisp</span></a> <a href=\"https://me.dm/tags/lisp\" class=\"mention hashtag\" rel=\"tag\">#<span>lisp</span></a> <a href=\"https://me.dm/tags/slime\" class=\"mention hashtag\" rel=\"tag\">#<span>slime</span></a> <a href=\"https://me.dm/tags/braindump\" class=\"mention hashtag\" rel=\"tag\">#<span>braindump</span></a> <a href=\"https://me.dm/tags/programming\" class=\"mention hashtag\" rel=\"tag\">#<span>programming</span></a> <a href=\"https://me.dm/tags/tutorial\" class=\"mention hashtag\" rel=\"tag\">#<span>tutorial</span></a> on <a href=\"https://me.dm/tags/medium\" class=\"mention hashtag\" rel=\"tag\">#<span>medium</span></a></p><p><a href=\"https://medium.com/@screwlisp/my-personal-emacs-slime-useage-examples-b2c8b6b9e023\" target=\"_blank\" rel=\"nofollow noopener noreferrer\" translate=\"no\"><span class=\"invisible\">https://</span><span class=\"ellipsis\">medium.com/@screwlisp/my-perso</span><span class=\"invisible\">nal-emacs-slime-useage-examples-b2c8b6b9e023</span></a></p><p>Really a mixture of three things:<br />1. Some (not very long history) historical notes about superior lisp interaction with inferior lisp<br />2. Some emacs shortcuts I use a lot<br />3. Interatively changing names used or setqing values and retrying in the interactive debugger - slime&#39;s exposure of advanced lisp debugging features</p>" }, "attachment": [ { "type": "Document", "mediaType": "image/png", "url": "https://media.me.dm/media_attachments/files/113/993/653/063/725/606/original/d0028a190da15df3.png", "name": "Several popped up panes deep of lisp debugger interactions in slime in emacs", "blurhash": "U9R{x*4UIBx]oboykDbI8_xat6aytkkWf$oe", "focalPoint": [ -0.72, -0.18 ], "width": 1009, "height": 762 } ], "tag": [ { "type": "Hashtag", "href": "https://me.dm/tags/emacs", "name": "#emacs" }, { "type": "Hashtag", "href": "https://me.dm/tags/commonlisp", "name": "#commonlisp" }, { "type": "Hashtag", "href": "https://me.dm/tags/lisp", "name": "#lisp" }, { "type": "Hashtag", "href": "https://me.dm/tags/slime", "name": "#slime" }, { "type": "Hashtag", "href": "https://me.dm/tags/braindump", "name": "#braindump" }, { "type": "Hashtag", "href": "https://me.dm/tags/programming", "name": "#programming" }, { "type": "Hashtag", "href": "https://me.dm/tags/tutorial", "name": "#tutorial" }, { "type": "Hashtag", "href": "https://me.dm/tags/medium", "name": "#medium" } ], "replies": { "id": "https://me.dm/users/screwlisp/statuses/113993657758094213/replies", "type": "Collection", "first": { "type": "CollectionPage", "next": "https://me.dm/users/screwlisp/statuses/113993657758094213/replies?only_other_accounts=true&page=true", "partOf": "https://me.dm/users/screwlisp/statuses/113993657758094213/replies", "items": [] } } }