JOAT API (Jack Of All Trades): A lazy lazy lazy developers API
joat.toolsHey, I'm embarrassed to release this often, which is kind of the mantra around here, right?
Long story short is that I've decided to build an API service that wraps many of the most useful libraries and other services, even those "one-feature" SaaS offerings.
Be gentle, I'm sharing it to poke and critique.
I have some colleagues in F50 companies who asked to have a service like this deployed internally because of a number of bureaucratic reasons.
It is easier to get an internal API approved than it is to add it to the existing compiled/deployed software stacks. (weird, but it is what it is -- mostly about software supply chains)
Anyway, go look at the openapi spec and see that it is mostly just about scraping and format conversions (for now).
That is really cool, are you going to add rate limiting, API tokens, etc?
Thanks! -- It is in the backlog under "pending".
If this thing takes off and becomes a thing then adding those will be fairly straight forward.
Is the backend open source?
I wanted to implement my own WHOIS service and it is more complex than it seems.
It is not (I'm not sure where it is going. But here is a gist of that file.
This is in my requirements.txt
git+https://github.com/richardpenman/whois.git@master#egg=python...
And the meat of the file:
import whois """Get WHOIS information for a domain.""" try: domain_info = whois.whois(domain) except whois.parser.PywhoisError as e: return Response({"message": "Bad request", "details": str(e)}, status=400) if domain_info["domain_name"] is None and domain_info["registrar"] is None: return Response({"message": "Bad request", "details": f"{domain} not found or registered"}, status=400) return {"result": domain_info}