Earlier quoted context omitted.
I'm of the opinion that using unofficial clients for any online service should be a legal right (unless those unofficial clients cause harm to the respective service, but existing laws/regulations around that would already cover such cases). That doesn't mean the service has to specifically support the unofficial client, but they just can't intentionally block it (or forbid its use).
I am pretty certain that I can prove any client as harmful. I have been on the receiving end of apps misbehaving plenty of times, no matter which platform (JS, iOS, Android). And these were official apps with dedicated development teams. Endless loops which flood you with API calls are a common issue, managing state is hard. Rate-limiting does not completely solve this.
eg. if you send more than X requests per day per user you need to pay us $y per 100,000 requests over the limit (or whatever).
the only requirement would be registering and providing billing info, which wouldn't be used if they behaved.