Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

mtwitter

Package Overview
Dependencies
Maintainers
1
Versions
25
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

mtwitter

Node.js Twitter API

  • 1.6.4
  • latest
  • Source
  • npm
  • Socket score

Version published
Maintainers
1
Created
Source

Node.js Twitter API

Build Status NPM version Dependency Status

Not currently maintained, but PR/issues/questions welcome.

Instantiation & Keys

mtwitter cannot currently help with obtaining access tokens from Twitter, you'll have to do this yourself. For testing and simple apps, the keys can be obtained from dev.twitter.com after setting up a new App.

var Twitter = require('mtwitter');

Normal (client) authentication

var twitter = new Twitter({
  consumer_key: 'Twitter',
  consumer_secret: 'API',
  access_token_key: 'keys',
  access_token_secret: 'go here'
});

App-only authentication

var twitter = new Twitter({
  consumer_key: config.key,
  consumer_secret: config.secret,
  application_only: true
});

REST Interface

The REST interface is managed, which means it transparently handles rate-limiting (it retries requests and doesn't bombard the APIs), and also takes care of fetching and refreshing configuration data as recommended by Twitter.

Synopsis

twitter.get(
  '/statuses/mentions_timeline',
  {key: 'value'},
function logResponse(error, data, response) {
  console.log('Error? ', error);
  console.log('Parsed object of data: ', data);
  console.log('Raw HTTP response: ', response);
});

twitter.post(
  '/favorites/create',      // URL. Don't use https:// ones
  'id=317050755691454464',  // Body content (can be a string or hashmap)
                            // Content-Type (omit to use default)
  function() { ... }        // Callback has the same signature as above
);

Additional examples

// Get a user's timeline
twit.get('statuses/home_timeline', {screen_name: '_matthewpalmer'}, function(err, item) {
  console.log(err, item);
 });

// Search for a phrase
twit.get('search/tweets', {q: 'node.js'}, function(err, item) {
  console.log(err, item);
});

// Post a new status
var content = {status: 'Maybe he\'ll finally find his keys. /@peterfalk'};
twit.post('statuses/update', content, function(err, item) {
  console.log(err, item);
});

Streaming

For the moment, only "raw" access is available:

twit.stream.raw(
  'GET',
  'https://stream.twitter.com/1.1/statuses/sample.json',
  {delimited: 'length'},
  // The above arguments are as for .rest.queueRequest()
  // i.e. the third argument has to be a {content: ...}
  // for POST. The URL has to include https://...

  process.stdout // Provide a stream to pipe to, here STDOUT
);

Community & Contributions

Originally forked from @AvianFlu's inactive repo, but reworked heavily, taking inspiration from many people and their attempts at making it better. Old (pre-rewrite) contributors can be found in HISTORICAL. Contributors to the present iteration can be found in the package.json.

License: Public Domain.
Style guide: passcod/node-style-guide.

Contributing

See CONTRIBUTING.md for details

  • Topical branches and standard PR etiquette is preferred.

  • You need to formally agree to release your contribution.

  • Both linting and testing should pass (the Travis build will fail a PR if there are linting errors):

    $ npm test
    $ npm run-script lint
    

Keywords

FAQs

Package last updated on 16 May 2014

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc