Skip to content

Conversation

@ClearlyClaire
Copy link
Contributor

Fixes MAS-607

@daprice
Copy link
Contributor

daprice commented Oct 27, 2025

Thanks! As a client dev I’d appreciate if the docs could clarify how calls to timeline APIs will behave based on these settings.

For example if I make an unauthenticated call to /api/v1/timelines/tag/SomeHashtag without specifying local or remote parameters, on a server where hashtag_feeds.local is “public” and hashtag_feeds.remote is “authenticated”, will I get a 401, or will I get the timeline response with remote posts filtered out?

What if I make the same call with remote=true: should I expect 401, or an empty response? And so on.

If a feed is set to “disabled”, how can API clients determine what the “special role” is and whether the current user has it?

@ClearlyClaire
Copy link
Contributor Author

For example if I make an unauthenticated call to /api/v1/timelines/tag/SomeHashtag without specifying local or remote parameters, on a server where hashtag_feeds.local is “public” and hashtag_feeds.remote is “authenticated”, will I get a 401, or will I get the timeline response with remote posts filtered out?

What if I make the same call with remote=true: should I expect 401, or an empty response? And so on.

For unauthenticated requests to endpoints covering that are not allowed, 401 is returned, because there is precedent for that with the previous setting to disable those feeds for unauthenticated access.

For authenticated access, this will always return a 200 ok, but results will be filtered accordingly.

Copy link
Contributor

@oneiros oneiros left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Excellent addition and I approve this, feel free to merge as is.

If you like, I think there is a tiny opportunity to streamline this a little: The Descriptions all start with "Information with regards to access restrictions ...". I think the "Information with regards to" part is a bit redundant and could just be removed. So for example "Information with regards to access restrictions on different timelines." would become "Access restrictions on different timelines.".

@ClearlyClaire ClearlyClaire merged commit 96f08f4 into main Oct 28, 2025
2 checks passed
@ClearlyClaire ClearlyClaire deleted the ClearlyClaire-patch-4 branch October 28, 2025 10:16
@daprice
Copy link
Contributor

daprice commented Oct 28, 2025

Perfect, thanks for the clarification!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants