HypixelDev / PublicAPI

Official Java implementation of the Hypixel Public API.
https://api.hypixel.net
MIT License
538 stars 152 forks source link

player.settings is gone #325

Closed mdashlw closed 3 years ago

mdashlw commented 3 years ago

At the time of writing this, settings field of player document from /player endpoint is not returned. This might be a temp issue that will resolve itself later, but I'm still opening a github issue since this is quite important and a bunch of stuff broke. Please fix this as soon as possible.

ConnorLinfoot commented 3 years ago

What were you using settings for? Currently, we have disabled this as we don't see it being information that needs to be public.

mdashlw commented 3 years ago

I'm using it for apiSession and apiRecentGames, so I don't send api request to /status /recentGames for no reason if it's disabled. I have no use for other info than just displaying it to user.

ConnorLinfoot commented 3 years ago

These settings were not supposed to be public. Because from our side we don't want people knowing when people have their settings turned on or off, which is why the endpoints also return the same for being offline compared to being disabled.

mdashlw commented 3 years ago

That sucks. Is it possible to at least have everything else besides api stuff?

TheNullicorn commented 3 years ago

In the future, could we at least get a little forewarning for these sorts of changes? Maybe a quick forum thread? I imagine this messed up some programs out of nowhere

ConnorLinfoot commented 3 years ago

That sucks. Is it possible to at least have everything else besides api stuff?

What use does the other settings have?

In the future, could we at least get a little forewarning for these sorts of changes? Maybe a quick forum thread? I imagine this messed up some programs out of nowhere

Not really, since we don't document which fields are avaliable and which aren't and don't plan to make a thread for every field that changes.

TheNullicorn commented 3 years ago

Not really, since we don't document which fields are avaliable and which aren't and don't plan to make a thread for every field that changes.

I'm not asking to know about every change, but I think most developers would at least expect a deprecation warning when a backwards-incompatible change is made, especially when the API has a userbase as big as it does.

You don't need a thread for every change, and it doesn't even have to be formal, but a locked, running thread that we can watch for updates (e.g Fields a, b, and c will be removed from endpoint /... in n days) would be a nice thing to have.

ConnorLinfoot commented 3 years ago

Not really, since we don't document which fields are avaliable and which aren't and don't plan to make a thread for every field that changes.

I'm not asking to know about every change, but I think most developers would at least expect a deprecation warning when a backwards-incompatible change is made, especially when the API has a userbase as big as it does.

You don't need a thread for every change, and it doesn't even have to be formal, but a locked, running thread that we can watch for updates (e.g Fields a, b, and c will be removed from endpoint /... in n days) would be a nice thing to have.

The API is provided as is and isn't something we plan to provide constant updates to any small changes made. The change is backwards compatible depending on how you implement it in the first place, this is why we don't provide a list of every possible field because we don't guarentee that those fields even exist.

mdashlw commented 3 years ago

I thought about this and I think settings should be back in the api, because it doesn't benefit anyone at all but is only a bit annoying for api users. It's always gonna be possible to know whether a player has status api off: if they are online and /status says offline, they have it off. Or at least everything else besides api settings should be back because I legit haven't seen a point why it shouldn't.