twitter-openapi-typescript
TypeScript icon, indicating that this package has built-in type declarations

0.0.55 • Public • Published

twitter-openapi-typescript

Setup

npm i twitter-openapi-typescript

Usage

import { TwitterOpenApi } from 'twitter-openapi-typescript';

const api = new TwitterOpenApi();
const client = await api.getGuestClient();
const response = await client.getUserApi().getUserByScreenName({ screenName: 'elonmusk' });
const userLegacy = response.data?.user?.legacy;
if (userLegacy) {
  console.log(userLegacy.screenName);
  console.log(`followCount: ${userLegacy.friendsCount} followersCount: ${userLegacy.followersCount}`);
} else {
  console.log('User not found');
}

Login

// ct0 and authToken will also work but it is recommended to set all cookies.
const client = await api.getClientFromCookies({
  ct0: '<csrf_token>',
  auth_token: '<auth_token>',
});

Multiple OS

The Token can only be used on the same OS that issued the Token In other words, if the sec-ch-ua-platform does not match, the Token cannot be used. This library uses the Linux Chrome header by default. To use Token issued by Windows, do the following.

const api = new TwitterOpenApi();
api.setAdditionalApiHeaders({
  'sec-ch-ua-platform': '"Windows"',
});

List of APIs

You should read the Test case.

https://github.com/fa0311/twitter-openapi-typescript/tree/master/twitter-openapi-typescript/test/api

Customize in detail

Most values exist as static variables. There is no need to change them. Changing them could result in account suspension. For advanced customization, use the
You can also use the TwitterOpenApiClient class directly

import { TwitterOpenApi } from 'twitter-openapi-typescript';
TwitterOpenApi.fetchApi = fetch.bind(globalThis);
TwitterOpenApi.twitter = 'https://x.com/home';
TwitterOpenApi.bearer = 'xxxx';

License

This project is dual licensed. You can choose one of the following licenses:

Package Sidebar

Install

npm i twitter-openapi-typescript

Weekly Downloads

3,158

Version

0.0.55

License

custom license or AGPL-3.0-or-later

Unpacked Size

271 kB

Total Files

116

Last publish

Collaborators

  • fa0311