JSPM

  • Created
  • Published
  • Downloads 2027
  • Score
    100M100P100Q111929F
  • License custom license or AGPL-3.0-or-later

Implementation of Twitter internal API in TypeScript

Package Exports

  • twitter-openapi-typescript
  • twitter-openapi-typescript/dist/src/index.js
  • twitter-openapi-typescript/dist/src/utils
  • twitter-openapi-typescript/dist/src/utils/index.js

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (twitter-openapi-typescript) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

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' });
console.log(response.data.legacy.screenName);
console.log(`followCount: ${response.data.legacy.friendsCount} followersCount: ${response.data.legacy.followersCount}`);

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>',
});

List of APIs

You should read the Test case. aaaaa

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.

import { TwitterOpenApi } from 'twitter-openapi-typescript';
TwitterOpenApi.url = 'twitter-openapi placeholder json url';
TwitterOpenApi.twitter = 'twitter first access url';
TwitterOpenApi.userAgent = 'user agent';
TwitterOpenApi.bearer = 'bearer token';
TwitterOpenApi.browser_headers = 'browser headers';
TwitterOpenApi.api_key = 'api key';

License

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