📼 Findstream

A better search for Twitch streams

Findstream API

The following describes the API provided by Findstream, which allows to get the same results available on the webpage of this service.

If possible, please enable gzip compression in your HTTP client to reduce the amount of data transferred.

Fair use

This API is provided free of service. Please just be nice and don't over-use it. If you plan to send a high volume of requests, please open an issue at the GitHub project first.

In case a large amount of unusual traffic is seen on this endpoint, eventually causing the service to hit the rate limit of Twitch's API too often, the API may be changed to be invite-only without further notice.

Request

The request must be sent to /api/search with the POST method and a JSON body. Fields category and query are mandatory, the language field can be used to further restrict results to a specific language.

Field Type Description
category String Twitch category to search in. Possible values are (case-sensitive):
  • Art
  • BeautyAndBodyArt
  • FoodAndDrink
  • JustChatting
  • MakersAndCrafting
  • Music
  • Retro
  • ScienceAndTechnology
  • SoftwareAndGameDevelopment
  • TalkShowsAndPodcasts
query String The search query. The text will be split by whitespace and stream titles are search to match any of the words.
language String (optional) Langauge code (ISO-639-1) that results should be limited to.

Example

{
  "category": "SoftwareAndGameDevelopment",
  "query": "rust",
  "language": "en"
}

Response

A successful response is a JSON array with each element having the following fields. Except stream_time, all fields are always present.

Field Type Description
title String Full stream title as found on Twitch.
username String Twitch username. Can be combined with the Twitch URL to generate a direct link to the stream. Example: https://www.twitch.tv/{username}.
language String Written out full language name (not an ISO code anymore).
stream_time i64 (optional) Duration (in seconds) since the streamer went online.
viewer_count u64 Current amount of viewers.

Example

[
  {
    "title": "Learning Rust | Day 11 | nvim !first !firstleaders",
    "username": "SouLxBurN",
    "language": "English",
    "stream_time": 10455,
    "viewer_count": 37
  }
]

Made with ❤️ by Dominik Nakamura | Source Code on GitHub | Licensed under AGPL-3.0-only