
Security News
The Changelog Podcast: Practical Steps to Stay Safe on npm
Learn the essential steps every developer should take to stay secure on npm and reduce exposure to supply chain attacks.
simple-helix-api
Advanced tools
The Simple Helix API allows developers to easily develop applications for Twitch
Simple Helix API makes easy to develop applications for Twitch in couple lines of code
Install with npm:
npm install --save simple-helix-api
Creating Helix object
const HelixAPI = require("simple-helix-api");
const Helix = new HelixAPI({
access_token: "xxx",
cliend_id: "xxx"
});
Params for Helix:
| Param | Required | Default | Description |
|---|---|---|---|
| access_token | false | null | Access Token |
| client_id | true | null | Client ID of application |
| increaseRate | false | false | Use Bearer instead of OAuth to increase Rate Limit |
| disableWarns | false | false | Disabled warnings in console |
Then you can get your profile ID before start working with API
const { id } = await Helix.getUser(username);
This option uses Bearer authorization instead of OAuth, which allows you to increase the number of requests per minute to 800 instead of 30.
If you want to use this, you need to know that methods like updateStream(), createMarker() force OAuth authorization.
Common methods do not require an access token
Get information about user (example usage: id, profile image, offline image, view count, broadcaster type)
const user = await Helix.getUser(id);
Get channel info like title, game and others
const channel = await Helix.getChannel(id);
Get broadcast information (example usage: realtime viewers count)
const stream = await Helix.getStream(id);
Get broadcast meta information
const meta = await Helix.getStreamMeta(id);
Get first N followers from the end
const followers = await Helix.getFollowers(id, count, after);
| Param | Type | Required | Default | Max | Description |
|---|---|---|---|---|---|
| id | Number | true | null | - | ID of user |
| count | Number | false | 20 | 100 | Number of count of followers that you can get |
| after | String | false | null | - | Pangination cursor (offset) |
Return an array of all followers. The lead time depends on the number of followers on your channel
const all_followers = await Helix.getAllFollowers(id);
Get simple number of followers count
const count = await Helix.getFollowersCount(id);
Get viewers splitted by categories (broadcaster, admins, staff, moderators, vips, viewers). Attention! This method used username instead of user ID
const viewers = await Helix.getViewers(user_name);
Get game by this ID or name
const game = await Helix.getGame("Overwatch");
Get the top 100 most viewed games on Twitch at the moment
const top = await Helix.getTopGames(count);
| Param | Type | Required | Default | Max | Description |
|---|---|---|---|---|---|
| count | Number | false | 100 | 100 | Number of games |
Attention: access_token is required
Update broadcast information
const response = await Helix.updateStream(id, title, game);
| Param | Type | Required | Description |
|---|---|---|---|
| id | Number | true | User ID |
| title | String | true | Stream title |
| game | String | true | Game on the stream |
Creating stream marker with description
const marker = await Helix.createMarker(id, description);
| Param | Type | Required | Description |
|---|---|---|---|
| id | Number | true | User ID |
| description | String | false | Marker description (can be empty) |
Return an array with markers of specified VOD
const markers = await Helix.getMarkers(id, video_id);
| Param | Type | Required | Description |
|---|---|---|---|
| id | Number | true | User ID |
| video_id | String | false | ID of the VOD/video whose stream markers are returned |
Create chatbot to receive messages from Twitch Chat
You must get oauth token
const oauth_token = "XXXXXX";
const bot = Helix.createChatBot(bot_name, oauth_token, user_name);
bot.on("chat", (channel, user, message) => {
const username = user["display-name"];
return console.log(`${username}: ${message}`);
});
| Param | Type | Required | Description |
|---|---|---|---|
| bot_name | String | true | The name of the channel for the bot (you can specify your account nickname) |
| ouath_token | String | true | OAuth Token that you receive |
| user_name | String | true | The name of the channel from which the bot will receive messages |
You can find events, methods and examples for chatbot here
You can report of any issues here
FAQs
The Simple Helix API allows developers to easily develop applications for Twitch
The npm package simple-helix-api receives a total of 11 weekly downloads. As such, simple-helix-api popularity was classified as not popular.
We found that simple-helix-api demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?

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.

Security News
Learn the essential steps every developer should take to stay secure on npm and reduce exposure to supply chain attacks.

Security News
Experts push back on new claims about AI-driven ransomware, warning that hype and sponsored research are distorting how the threat is understood.

Security News
Ruby's creator Matz assumes control of RubyGems and Bundler repositories while former maintainers agree to step back and transfer all rights to end the dispute.