instagram-private-api-proxy
v0.0.1
Published
Instagram private API proxy server
Downloads
16
Readme
INSTAGRAM PRIVATE NODE.JS API
Installation
You can install this by using npm:
npm install instagram-private-api-proxy
What is this?
This is a wrapper around instagram-private-api
it is an express APP which is mirroring private API
of instagram so it is easy for example to like photos or gain session or whatever.
How to use this?
Bundled proxy server (for example if you want to use this as server for client).
var server = require('instagram-private-api').server;
server.run({
port: 8080,
socketPort: 8888,
host: "0.0.0.0",
databaseDir: './databases',
cookiesDir: './cookies',
// to use proxy with proxy heh :P. Useful for debugging
// proxy: 'http://127.0.0.1:8888',
// U can bind many interfaces in order to rotate ip addresses assigned to
// your machine. It will rotate address immediately on spam exception
// throwed by instagram-private-api
// interfaces: '10.0.0.2, 10.0.0.3',
// for testing purposes you can supress log
// suppressLog: true
})
This will run server and socket server on address 0.0.0.0:8080 so you can access and do the same what you can do with instagram PRIVATE API.
GET /v1
-> {node: true, sessions: <Number>}
POST /v1/sessions
With application/json
Data {"username": "someone", password: "somepassword"}
-> {user: {...}, key: "some-key-in-md5-format"}
GET /v1/accounts/self?key=some-key-in-md5-format
-> {username: "..." ...}
Proxy Client API
For server to server communication, you can use proxy-client in order to do exactly what instagram-private-api does.
Proxy Client API -> Instagram Proxy Server (mentioned above) -> instagram-private-api
Usage is very similar to instagram-private-api
;
var Proxy = require('instagram-private-api').ProxyClient.V1;
var server = new Proxy.Server('host', 'port', 'socket port');
var session = new Proxy.Session(server)
session.create('some instagram username', 'somepass')
.then(function(session) {
// Session now we can use proxy-client-apis
return Proxy.Account.self(session);
})
.then(function(account) {
console.log(account.params)
// -> {username: "..." ...}
})
Thanks for any support! Pull requests are of course welcome!
Credit:
Who deserves most ... @mgp25 & @markmhn for decrypting private keys from c++ libraries bundled within android app.