{"id":41685019,"url":"https://github.com/yatsenkolesh/instagram-nodejs","last_synced_at":"2026-01-24T19:17:57.787Z","repository":{"id":18815172,"uuid":"85371858","full_name":"yatsenkolesh/instagram-nodejs","owner":"yatsenkolesh","description":"Simple library for auth, get followers, search by hashtags and  locations, like posts, follow, get user feed of instagram with nodejs","archived":false,"fork":false,"pushed_at":"2023-01-04T13:15:57.000Z","size":400,"stargazers_count":319,"open_issues_count":34,"forks_count":74,"subscribers_count":19,"default_branch":"master","last_synced_at":"2025-08-17T00:39:43.810Z","etag":null,"topics":["instagram","instagram-bot","instagram-client","instagram-feed","instagram-nodejs","instagram-sdk","instagram-search","instagram-without-api","mass-follow","mass-liking","nodejs"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/yatsenkolesh.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2017-03-18T03:03:42.000Z","updated_at":"2025-07-17T15:46:11.000Z","dependencies_parsed_at":"2023-01-13T20:01:31.838Z","dependency_job_id":null,"html_url":"https://github.com/yatsenkolesh/instagram-nodejs","commit_stats":null,"previous_names":[],"tags_count":16,"template":false,"template_full_name":null,"purl":"pkg:github/yatsenkolesh/instagram-nodejs","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/yatsenkolesh%2Finstagram-nodejs","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/yatsenkolesh%2Finstagram-nodejs/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/yatsenkolesh%2Finstagram-nodejs/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/yatsenkolesh%2Finstagram-nodejs/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/yatsenkolesh","download_url":"https://codeload.github.com/yatsenkolesh/instagram-nodejs/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/yatsenkolesh%2Finstagram-nodejs/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28735044,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-24T17:51:25.893Z","status":"ssl_error","status_checked_at":"2026-01-24T17:50:48.377Z","response_time":89,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["instagram","instagram-bot","instagram-client","instagram-feed","instagram-nodejs","instagram-sdk","instagram-search","instagram-without-api","mass-follow","mass-liking","nodejs"],"created_at":"2026-01-24T19:17:57.173Z","updated_at":"2026-01-24T19:17:57.775Z","avatar_url":"https://github.com/yatsenkolesh.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# instagram-nodejs\nAuth and get followers on instagram with nodejs\n\nJoin us with gitter: https://gitter.im/nodejs-instagram/Library\n\n### Important : you must update csrf token and sessionId only if password was changed\n\n### To install from npm repository (I recommended use yarn, but you can use npm):\n```\nyarn add instagram-nodejs-without-api\n```\n\n### You can get instagram followers with next code:\n```js\nlet Instagram = require('instagram-nodejs-without-api');\nInstagram = new Instagram()\n\n\nInstagram.getCsrfToken().then((csrf) =\u003e\n{\n  Instagram.csrfToken = csrf;\n}).then(() =\u003e\n{\n  return Instagram.auth('inst-your-username', 'inst-your-password').then(sessionId =\u003e\n  {\n    Instagram.sessionId = sessionId\n\n    return Instagram.getUserDataByUsername('username-for-get').then((t) =\u003e\n    {\n      return Instagram.getUserFollowers(t.graphql.user.id).then((t) =\u003e\n      {\n        console.log(t); // - instagram followers for user \"username-for-get\"\n      })\n    })\n\n  })\n}).catch(console.error);\n```\n\n### Follow/unfollow\n```js\nInst = new Instagram()\n\nInst.csrfToken = 'your-csrf'\nInst.sessionId = 'your-session-id'\nInst.follow(3,0) //follow \"kevin\"\nInst.follow(3, 1) //unfollow \"kevin\"\n````\n\n### Like/unlike\n````js\n  //get media id by url and like\n  Insta.getMediaIdByUrl('https://www.instagram.com/p/BT1ynUvhvaR/').then(r =\u003e Insta.like(r).then(d =\u003e console.log(d)))\n  //get media id by url and unlike\n  Insta.getMediaIdByUrl('https://www.instagram.com/p/BT1ynUvhvaR/').then(r =\u003e Insta.unlike(r).then(d =\u003e console.log(d)))\n````\n\n### Get feed\n````js\n  let pageFirst = Insta.getFeed(10).then(function(t)\n  {\n    let PageSecond = Insta.getFeed(10, Insta.getFeedNextPage(t)).then(function(t)\n    {\n      //two page\n      console.log(t)\n    })\n  })\n````\n\n### Get user media\n````js\n  //... auth (look up)\n  //for example: get 12 first media entries for \"kevin\"\n  // 0 - if you need to get first page\n  // next cursor : r.page_info.end_cursor\n  Insta.getUserMedia(3, '0', 12).then(f =\u003e console.log(f))\n````\n\n### Get media by hashtags and locations\n````js\n  Insta.commonSearch('Kyiv').then(r =\u003e\n  {\n    //get location id for Kyiv\n    let locationId = r.places[0].place.location['pk']\n    //search posts from Kyiv\n    Insta.searchBy('location', locationId, '0', 12).then(r =\u003e console.log(r))\n  })\n  //search posts by hashtag \"Eurovision\"\n  Insta.searchBy('hashtag', 'Eurovision').then(r =\u003e console.log(r))\n````\n\nWhen you pass items counter param instagram create pagination tokens on all iterations and gives on every response end_cursor, which the need to pass on next feed request\n\n\nYou can get user id with Inst.getUserDataByUsername() method\n\nStar this repository on github, please. Thank you\n\n\n### Tests\n\nYou must define a .env file with username and password of the instagram login. (see .env.example)\n\n``` npm test ```\n\n```  yarn test ```","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fyatsenkolesh%2Finstagram-nodejs","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fyatsenkolesh%2Finstagram-nodejs","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fyatsenkolesh%2Finstagram-nodejs/lists"}