{"API Evangelist"}

Further Defining the AngelList API as Part of My API Stack

I am slowly making my way through defining of the APIs available in the API Stack, beginning with the APIs that I depend on to operate API Evangelist. The best way to understand any API in my opinion, is to create a Swagger definition for it, as well as an APIs.json file, indexing the overall API operations. Since my mission is all about understanding APIs, this is something I try to do on a regular basis.

Creating an APIs.json file allows me to index each APIs operations from registration and documentation, to pricing and terms of service. Then I work to break down every possible unit of value represented by an API's endpoints, reducing it down to the minimum viable element possible--something that Swagger allows me to do nicely.

Here is what I ended up with for AngelList so far:

AngelList
  AngelList Accreditation API            
  AngelList Comments API            
  AngelList Follows API            
  AngelList Jobs API            
  AngelList Like API            
  AngelList Me API            
  AngelList Messages API            
  AngelList Paths API            
  AngelList Press API            
  AngelList Reservations API            
  AngelList Reviews API            
  AngelList Search API            
  AngelList Startups API            
  AngelList Status Updates API            
  AngelList Tags API            
  AngelList Users API          

I depend on AngelList API to provide a vital lens for monitoring the companies I track on, who are doing interesting things with APIs. AngelList also provides me with an important discovery tool, that helps me find new people, and companies that are pushing the API conversation forward, as well as monitoring the existing players.

I have had an APIs.json file for the AngelList API for some time, but I only had a single, pretty useless Swagger definition. Now I have 16 separate resources, with each endpoint, verb, parameter, underlying data and security models defined. The process helped me better understand how I already use the search, and startups endpoints, but also opened up my eyes to the jobs, press, user, and tag APIs--which I am now working into my regular API monitoring workflow.

This process isn't just about creating complete profiles I can include in the API Stack, and APIs.io. It is about me better understanding the resources I already depend on, pushing me to better take advantage of them, ultimately improving upon my own API stack, as well as my operational efficiency using APIs.