FediFetcher
FediFetcher copied to clipboard
Check out any other software that might be worth supporting
See here for list of software: https://fedidb.org/software
The following are the ones that I encounter the most frequently on my own instance's home timeline:
GoToSocial:
- Has an API fairly similar to Mastodon https://docs.gotosocial.org/en/latest/api/swagger/
- But requires authentication for everything https://github.com/superseriousbusiness/gotosocial/issues/2038
- Cannot be supported.
Friendica
- I supposed to have a Mastodon compatible API https://wiki.friendi.ca/docs/api-mastodon
- But I get either a
404or other error when I try to fetch context. - The documentation seems to imply (although this is not explicit) that all methods require authentication.
- Therefore we probably can't implement it.
WordPress
- My Googleing fails me - I cannot find their API docs
I found a friendica post that seems to properly fetch when I search for it in masto web (doesn't work in Ivory however): https://friendica.myportal.social/display/e65e1095-2066-778e-a9b1-719897452963 Not sure why friendica is so hard to explore / seems so locked down, not sure if that's just an instance configuration thing or what.
Thanks @colinstu12
I did try this. According to the docs, the API to get context should be the same as Mastodon: GET /api/v1/statuses/:id/context. However, when I try to get https://friendica.myportal.social/api/v1/statuses/e65e1095-2066-778e-a9b1-719897452963/context I only get back a 404. So I'm not sure if I need to convert that UUID into a different ID, or if the docs are wring, or if the endpoint requires auth, and the 404 is just a masked 403.
All very confusing 🤔
OK, so I'm a little bit closer here: Looking at the source code I find a reference to a numeric ID for this post, and if I use that it works:
https://friendica.myportal.social/api/v1/statuses/45055616/context
But how can I convert the GUID to a numeric ID?
For WordPress, are you looking at ActivityPub powered ones, or just regular blogs?
@edent Yes, ActivityPub ones. Here is a node info example response:
{
"version": "2.0",
"software": {
"name": "wordpress",
"version": "6.5"
},
"usage": {
"users": {
"total": 1,
"activeMonth": 1,
"activeHalfyear": 1
},
"localPosts": 340,
"localComments": 11
},
"openRegistrations": true,
"services": {
"inbound": [
"atom1.0",
"rss2.0",
"pop3"
],
"outbound": [
"atom1.0",
"rss2.0",
"wordpress",
"smtp"
]
},
"protocols": [
"activitypub"
],
"metadata": {
"generator": {
"name": "NodeInfo WordPress-Plugin",
"version": "2.3.1",
"repository": "https://github.com/pfefferle/wordpress-nodeinfo/"
},
"nodeName": "Symfony Station / The Payload Newsletter",
"nodeDescription": "The Symfony Station Fediverse Account and Newsletter",
"nodeIcon": "https://newsletter.mobileatom.net/wp-content/uploads/2023/12/cropped-Symfony-Station-No-Text-Astronaught-2C.png"
}
}
Sorry if I've misunderstood this, but I think this is the way to do it.
If you look at my blog's WebFinger - https://shkspr.mobi/blog/.well-known/webfinger?resource=acct:[email protected] - that points to https://shkspr.mobi/blog/@blog
If you request that with Accept: application/activity+json, you'll get back a standard AP document which says the outbox is https://shkspr.mobi/blog/wp-json/activitypub/1.0/actors/0/outbox
That's paginated, so should let you backfill all the contents.
Thanks @edent very helpful.
And would you know how I can fetch replies/context using ActivityPub? I think I looked into that a while ago, but didn’t get very far as it seemed extremely complicated (and iirc mastodon doesn’t even implement it, or something like that, which is why we now got the mess of implementing various APIs, rather than ‘just’ ActivityPub)
Any chance you can add partial support for the iceshrimp.net beta? It has mastodon compatible api but is missing features currently.
https://is.ready.social/swagger/ for a list of the api. You can select mastodon from the dropdown in the top right.
FediFetcher does already support ice shrimp. Is there any specific issue you’ve encountered?
FediFetcher does already support ice shrimp. Is there any specific issue you’ve encountered?
I wasn’t able to get it to work with iceshrimp.net but could with mastodon. Are you talking about iceshrimp.js? I’m talking about their new codebase on the beta/dev channel at iceshrimp.net. The software isn’t finished yet.
@SimplyCorbett I'm talking about the software IceShrimp, rather than about a specific server.
As of today, iceshrimp.net doesn't appear to be hosting a Fediverse instance. The .well-known/nodeinfo endpoint is a simple redirect to a code repo, as is host-meta
curl -i https://iceshrimp.net/.well-known/nodeinfo
HTTP/2 301
alt-svc: h3=":443"; ma=2592000
location: https://iceshrimp.dev/iceshrimp/iceshrimp.net
server: Caddy
What about https://next.iceshrimp.dev ?
Thanks @colinstu12
if they do support the mastodon api then it should be really straightforward to implement. I’ll have a look at it some time next week
@SimplyCorbett @colinstu12 can one of you test if #153 works correctly with Iceshrimp.NET?
@SimplyCorbett @colinstu12 can one of you test if #153 works correctly with Iceshrimp.NET?
They appear to still be in closed beta stage. But it sounded like late 2024 or early 2025 there'd be a release. All of the Iceshrimp.js team has swapped over to the .net one it sounds like so it's good to support it, but can't quite test yet. If those iceshrimp.net folks run across this or if they're reached out to on fedi maybe they can assist further.
They appear to still be in closed beta stage.
then why did @SimplyCorbett ask for support? 🤔😁
It’s open beta. They are targeting an official release by the end of 2024.
I’m asking for support because I use iceshrimp.net as my daily driver.
I will give #153 a shot, thanks!
Thanks for the clarification @SimplyCorbett
if your feedback is positive I’ll be happy to merge.
Thanks for the clarification @SimplyCorbett
if your feedback is positive I’ll be happy to merge.
I didn’t run into any issues and it finished successfully, but I also dont have a lot of things setup in the config.
So it appears to work, thanks!
Great, thanks for the feedback @SimplyCorbett
Hello @nanos , why exactly can GoToSocial not be supported? I have a friend on a GTS instance now and I notice in my fedifetcher logs this now: unknown server api for social.bateleur.org I seem to be able to pull up context just fine from Masto Web UI and from Ivory client (when using both the gotosocial post link or my instance's local copy of the post too)? Why can't fedifetcher perform the same context retrieves etc? Thank you
@colinstu12 see the 2nd comment in this thread: GTS requires authentication for their api, so we cannot support them. In the linked issue the maintainer explains their rationale..
@colinstu12 see the 2nd comment in this thread: GTS requires authentication for their api, so we cannot support them. In the linked issue the maintainer explains their rationale..
Would #183 help at all with this?
No, sadly not. #183 means that you can run (some parts of) FediFetcher if your home instance is GoToSocial.
But it does nothing for fetching stuff from remote instances.
@colinstu12 see the 2nd comment in this thread: GTS requires authentication for their api, so we cannot support them. In the linked issue the maintainer explains their rationale..
The link is dead and not available on web archive. Is it on codeberg?
The link is dead and not available on web archive. Is it on codeberg?
@mio-19 I haven't been able to find it, no.
@colinstu12 see the 2nd comment in this thread: GTS requires authentication for their api, so we cannot support them. In the linked issue the maintainer explains their rationale..
The link is dead and not available on web archive. Is it on codeberg?
they moved to codeberg, thankfully the issue numbers did not change. https://codeberg.org/superseriousbusiness/gotosocial/issues/2038
Thanks @colinstu12! When I searched their codeberg it didn't come up.
To quote the maintainer:
It's unlikely we would expose those APIs without authentication, since that would make it far easier for just anyone to come along and scrape those APIs. The client API of GtS is designed for authenticated client applications, not for callers who aren't clients to glean info about the instance and accounts on the instance. In that sense it's similar to Mastodon with secure mode enabled (I assume fedifetcher also doesn't work with secure mode mastodon, right?).