JOAT API (Jack Of All Trades): A lazy lazy lazy developers API
1–7 of 7 posts
Re: JOAT API (Jack Of All Trades): A lazy lazy lazy developers API
#2Long 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).
Re: JOAT API (Jack Of All Trades): A lazy lazy lazy developers API
#3Re: JOAT API (Jack Of All Trades): A lazy lazy lazy developers API
#4Re: JOAT API (Jack Of All Trades): A lazy lazy lazy developers API
#5That is really cool, are you going to add rate limiting, API tokens, etc?
If this thing takes off and becomes a thing then adding those will be fairly straight forward.
Re: JOAT API (Jack Of All Trades): A lazy lazy lazy developers API
#6That 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.
I wanted to implement my own WHOIS service and it is more complex than it seems.
Re: JOAT API (Jack Of All Trades): A lazy lazy lazy developers API
#7Earlier quoted context omitted.
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.
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}