Choosing an API
The APIs used in this tutorial were chosen because they are:
- Free (some APIs charge a subscription or one-time fee, or start to charge fees once you use them a certain amount)
- Public (some APIs are completely private, or require you to apply to use them, with different selection criteria and wait times. We don't have time for that nonsense.)
- Well documented (both Twitter and Wikipedia have in-depth, up to date instructions for their APIs. Many APIs don't even have documentation! 😱)
- The Wikipedia API does not require authentication, which means one less step to using it. We will need to use authentication for the Twitter API since we will be posting to your personal, password-protected Twitter account.
When deciding which APIs to work with on your own projects, ideally all of them would meet each of these expectations. This is not always possible, unfortunately, but I encourage you to look for alternatives if you see a web API that does not meet at least one of these points.
Example: Let's say that you want to find an API to make an app to teach yourself another language. Google Translate's API charges a fee based on how much you use it, which isn't ideal. However, there aren't any signup steps beyond making an account and paying them, it's very well documented, and considered one of the best APIs for translation. You could probably find a cheaper or free translation API, but this is your best option.