Home > Software design >  How to get tweets of users I am following in Twitter V2?
How to get tweets of users I am following in Twitter V2?

Time:02-28

Making a GET request to my own authenticating user users/{id}/tweets in nodeJS and using V2 Twitter api, returns only tweets posted by my own authenticating user id.

What I need?
To GET all tweets both posted by myself and the ones that are showing in my timeline from users I follow. Basically, the same result as in Twitter V1 GET statuses/home_timeline

How can I get this in V2?

index.js

const express = require("express");
const app = express();

app.use(express.urlencoded({ extended: true })); // for parsing application/x-www-form-urlencoded
app.use(express.json()); // for parsing application/json

const Twit = require("twitter-lite");
const config = require("./config");
const client = new Twit(config.appConfig);

function getTimeLineTweetsInV2() {
  return new Promise(async (resolve, reject) => {
    try {
      let result = await client.get("users/tweets/1497521946694717448");

      resolve(result);
    } catch (error) {
      console.log("errorrrrrrrrrr is", error);
      reject(error);
    }
  });
}

(async function BotMain() {
  let tweetsReceived = await getTimeLineTweetsInV2();
  console.log(tweetsReceived);
})();

app.listen(3000, () => {
  console.log("listeing on port 3000");
});

config.js

const dotenv = require("dotenv");
const path = require("path");
const ENV_FILE = path.join(__dirname, ".env");
dotenv.config({ path: ENV_FILE });

const appConfig = {
  //define subdomain of twitter api URL  e.g. api.twitter.com, streams.twitter.com
  version: "2",
  extension: false,
  consumer_key: process.env.apikey,
  consumer_secret: process.env.apisecret,
  access_token_key: process.env.accesstoken,
  access_token_secret: process.env.accesstokensecret,
};

module.exports = {
  appConfig,
};

package.json

{
  "name": "twitter_app",
  "version": "1.0.0",
  "description": "",
  "main": "index.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "author": "",
  "license": "ISC",
  "dependencies": {
    "dotenv": "^16.0.0",
    "express": "^4.17.3",
    "path": "^0.12.7",
    "twitter-lite": "^1.1.0"
  }
}

CodePudding user response:

There is no equivalent to the home timeline API in v2 - yet. This is on the roadmap. You’ll need to use the v1.1 API, or, be patient until a new version is available.

  • Related