Check this one: Build APIs You Won't Hate - Phil Sturgeon
Ask HN: What are good reads for designing APIs?
11–20 of 101 posts
Re: Ask HN: What are good reads for designing APIs?
#12Re: Ask HN: What are good reads for designing APIs?
#13Re: Ask HN: What are good reads for designing APIs?
#14Re: Ask HN: What are good reads for designing APIs?
#15Don't be overwhelmed by this though -- API design isn't an exact science. It's also very opinionated.
Personally, I would just start reading actual API documentation (GitHub is a great place to start -- their API is a joy to work with). Find things you like and don't like about it and try to figure out why those decisions were made.
Re: Ask HN: What are good reads for designing APIs?
#16You'll notice in this thread that (at 9 comments in) there are no repeated recommendations. If the question was "What are some good reads for learning about algorithms?" you'd probably see the same handful of books being praised by everyone. Don't be overwhelmed by this though -- API design isn't an exact science. It's also very opinionated. Personally, I would just start reading actual API documentation (GitHub is a…
People get into really philosophical discussions around versioning, resource structure, etc... but in reality think about what makes you like the APIs you like over another alternative. Then think about what you would do to make it even easier to use/integrate with.
There also with some APIs is the tradeoff of easy integration and long-term flexibility.. things like that.
Re: Ask HN: What are good reads for designing APIs?
#17Re: Ask HN: What are good reads for designing APIs?
#18Re: Ask HN: What are good reads for designing APIs?
#19This is a must watch and encapsulates good design and theory: https://www.youtube.com/watch?v=hdSrT4yjS1g
Good API design, if you are trying to learn from zero, comes from learning from good examples.
These are some of my favorites APIs by design
+ Stripe
+ Twilio
+ Slack
+ Stormpath (fd: I work here)
There is a lot of work that goes around the API design to make it a great API (examples, documentation, live samples, etc)