Twitter API v2 sample code
Sample code for the Twitter API v2 endpoints. Individual API features have folders where you can find examples of usage in several coding languages (Java, Node.js, Python, R, and Ruby).
- Twitter API Essential Access (sign up here)
- A Project and an App created in the dashboard
Using the code samples
In order to run the samples in this repository you will need to set up some environment variables. You can find your credentials and bearer token in the App inside of your Project in the dashboard of the developer portal.
For OAuth 1.0a samples, you will need to export your consumer key and secret in your terminal. Be sure to replace
<your_consumer_secret> with your own credentials without the
export CONSUMER_KEY='<your_consumer_key>' export CONSUMER_SECRET='<your_consumer_secret>'
For samples which use bearer token authentication, you will need to export the bearer token. Be sure to replace
<your_bearer_token> with your own bearer token without the
Java environment set up
If you use Homebrew, you can install a Java runtime using:
brew cask install java
You will also need to download the relevant JAR files referenced in the individual samples in order to build and run the code. If you use an IDE, it may be able to do this automatically for you.
You will need to have Node.js installed to run this code. All Node.js examples use
needle as the HTTP client, which needs to be npm installed. For OAuth with user context requests, you'll need to install the
npm install needle npm install got npm install oauth-1.0a
Python environment set up
You will need to have Python 3 installed to run this code. The Python samples use
requests==2.24.0 which uses
(Optionally) It is common and recommended not to install required package globally, but locally under project subfolder using
python3 -m venv venv source venv/bin/activate
You can install these packages as follows:
pip install requests pip install requests-oauthlib
Ruby environment set up
You will need to have Ruby (recommended: >= 2.0.0) installed in order to run the code. The Ruby examples use
typhoeus as the HTTP client, which needs to be gem installed. For OAuth with user context requests, you'll also need to install the
oauth gem (see below).
gem install typhoeus gem install oauth
We maintain a Postman Collection which you can use for exercising individual API endpoints.
For general questions related to the API and features, please use the v2 section of our developer community forums.
If there's an bug or issue with the sample code itself, please create a new issue here on GitHub.
We welcome pull requests that add meaningful additions to these code samples, particularly for languages that are not yet represented here.
We feel that a welcoming community is important and we ask that you follow Twitter's Open Source Code of Conduct in all interactions with the community.
Copyright 2021 Twitter, Inc.
Licensed under the Apache License, Version 2.0: https://www.apache.org/licenses/LICENSE-2.0