this post was submitted on 12 Jul 2023
8 points (90.0% liked)

Lemmy

12572 readers
1 users here now

Everything about Lemmy; bugs, gripes, praises, and advocacy.

For discussion about the lemmy.ml instance, go to !meta@lemmy.ml.

founded 4 years ago
MODERATORS
 

I'm toying about with writing a client in Rust.

Example code online uses the API endpoint https://lemmy.ml/api/v3/post/list, and when I go to this link in a browser, it doe indeed load data. However, when I try to load it from a program, it gives me a 403 Forbidden. Does anyone know why this could be?

(code)

you are viewing a single comment's thread
view the rest of the comments
[โ€“] CMahaff@lemmy.world 1 points 1 year ago* (last edited 1 year ago) (1 children)

This one got me too.

lemmy.ml specifically is running requests through a user agent checker - and if it's empty, which reqwest is by default, you will get a 403.

You can see an example here of using ClientBuilder to set a user agent string: https://github.com/CMahaff/lasim/blob/main/src/lemmy/api.rs

So set any string (should be your project name) and then it should work.

[โ€“] SubArcticTundra@lemmy.ml 1 points 1 year ago

Oh great thank you