Anyone who understands how #ActivityPub works, can you please explain to me what URL an instance would subscribe to for another instance? I'm not seeing that in the documentation.

ie, if I wanted to follow/stream all public posts on a given instance, how would I do that?

https://w3c.github.io/activitypub/#server-to-server-interactions
Follow

@farhan a way of doing this would be to have a "Service" level actor that represents the server/instance, and all the accounts on said server CC/BCC all their activities to it automatically. Then as a third party you can subscribe to the service's inbox and get access to those activities.

As an example you can see here: federated.id/inbox

However, to my knowledge Mastodon/Pleroma don't have this instance Service available.

@mariusor Explain it to me like I'm a 4 year old...I am not clear if I understand you. Take my Pleroma instance, social.farhan.codes. If I just go to https://social.farhan.codes/relay, I get some JSON that tells me the inbox is at https://social.farhan.codes/relay/inbox. How do I access this data? Is there a specific content-type? I believe you said I need another instance to subscribe to it, presumably so that the sending instance pushes messages to you?

I do not understand what federated.id/inbox is?

@farhan to be honest I have no idea how exactly this would work for pleroma. As far as I see, they do expose an actor for the whole instance, but I don't know how you can follow it. Maybe join their support channels and ask there.

@farhan

federated.id is another activitypub service, only it doesn't have a nice web interface to it, it's just the API.

@mariusor What does it provide?
Pardon my questions, I'm reading the protocol and trying to put things together, but not fully clear yet.

@farhan it serves as a backend for a link aggregator at the moment littr.me. But on the long run I want it to be a generic service, something similar to email, but for federated social networks. To be able to use it, people will need clients that speak activitypub (something called Client to Server in the documentation). So far there are no such clients unfortunately.

@mariusor @farhan #AndStatus Android app is such #ActivityPub Client to Server client, please check here: github.com/andstatus/andstatus
I wonder what is needed for it to work with your service.

@AndStatus @farhan if the application can access collections and iterate over them using next/previous you're good to go for accessing items.

Point one at federated.id/inbox for a public stream of what's on the service. It also supports some rudimentary filtering for the properties of Activities, Objects. Eg: federated.id/inbox?type=Create

Submitting activities requires valid OAuth application credentials, so if you're interested in trying, ping me.

@AndStatus but federated.id doesn't provide webfinger support, so user discovery needs to be done through the mechanism I showed in the parent message, ie, filtering the global inbox for the desired username.

@AndStatus so, I see the app is using mastodon application registration flow, which is not supported by federated.id. Besides manually adding clients I plan to support the IndieAuth[1] flow, which might be useful as a more generic alternative.

[1] indieauth.net/

@mariusor The app registration flow is NOT Mastodon's, but rather used by Mastodon also.
Moreover, as you can see here and below, the app can you whoami endpoint to discover Actor's profile github.com/andstatus/andstatus - this is not supported by #Mastodon yet, but works in #Pleroma.
So, who can I connect to your server now? Any example code for a bootstrap? Could you register an account for me for testing purposes?

@AndStatus you can use the API in read-only mode without authenticating either as an app or a user.

Example code I don't really have except in Go: github.com/mariusor/go-littr/b

I'm not prepared to allow other apps write access to the API as it's not ready yet, and I want to be able to make breaking changes without inconveniencing anyone. I'll ping you on github when I'm confident that what I have is ready for general consumption. :)

Sign in to participate in the conversation
\m/ Metalhead.club \m/

Metalhead.club is a Mastodon instance hosted in Germany and powered by 100% green energy.