Skip to content

transitive-bullshit/getsmscode

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

20 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

getsmscode

API client for getsmscode.com.

NPM Build Status JavaScript Style Guide

  • provides temporary, physical mobile numbers (not virtual VOIP numbers!)
  • meant for automated systems that need to bypass SMS number verification
  • handles hundreds of known services (wechat, google, facebook, whatsapp, uber, twitter, etc...)

Install

This module requires node >= 8.

npm install --save getsmscode

You'll need to setup a getsmscode.com account and add some money to your account before using this module.

Usage

const GetSMSCodeClient = require('getsmscode')

const client = new GetSMSCodeClient({
  username: '...',
  token: '...'
})

const number = await client.getNumber({
  service: 'google'
})

// give this number to third-party service such as google...
// third-party service sends SMS code to the given number...

const sms = await client.getSMS({
  service: 'google',
  number: number
})

Note: there may be variable amounts of latency between giving your number to the service and the SMS code being received. If no valid messages are returned, it is recommended that you retry client.getSMS with an exponential timeout. Be careful not to call the API too fast, however, as getsmscode imposes strict rate limits.

API

Type: function (opts)

  • opts object? Config options
    • opts.username string Username for getsmscode auth (optional, default process.env.GETSMSCODE_USERNAME)
    • opts.token string Token for getsmscode auth (optional, default process.env.GETSMSCODE_TOKEN)
    • opts.domain string Domain for this client to use (china/usa/asia) (optional, default 'china')

Logs in to test auth and fetches an account summary.

Type: function (): Promise


Acquires a temporary handle on a mobile number usable for the given service.

You must specify either opts.service or opts.pid.

Type: function (opts): Promise

  • opts object Config options
    • opts.service string? Name of service to blacklist number
    • opts.pid string? Project ID of service to blacklist number
    • opts.cocode string? Country code (required if using asian domain)

Returns a list of { number, service } objects currently in use by this account.

Type: function (): Promise


You must specify either opts.service or opts.pid.

Type: function (opts): Promise

  • opts object Config options
    • opts.number string Mobile number to blacklist
    • opts.service string? Name of service to blacklist number
    • opts.pid string? Project ID of service to blacklist number
    • opts.cocode string? Country code (required if using asian domain)

Adds a number to this account's blacklist for the given service.

You must specify either opts.service or opts.pid.

Type: function (opts): Promise

  • opts object Config options
    • opts.number string Mobile number to blacklist
    • opts.service string? Name of service to blacklist number
    • opts.pid string? Project ID of service to blacklist number
    • opts.cocode string? Country code (required if using asian domain)

Related

Disclaimer

Using this software to violate the terms and conditions of any third-party service is strictly against the intent of this software. By using this software, you are acknowledging this fact and absolving the author or any potential liability or wrongdoing it may cause. This software is meant for testing and experimental purposes only, so please act responsibly.

License

MIT © Travis Fischer

Support my OSS work by following me on twitter twitter