Discover/Thestation API
live

Thestation APIthestation.ru

Search and discover videos from The Station, a Russian-language platform dedicated to tabletop wargaming content including Warhammer 40000, Age of Sigmar, Malifaux, Infinity, and other miniature games. Browse their video library by title or retrieve detailed information about specific gaming videos to stay updated on the latest wargaming community content.

Endpoint health
monitored
get_video
list_videos
search_videos
Checks pendingself-healing
Endpoints
3
Updated
3h ago
Try it
Page number for pagination (1-based).
Search query text to match against video titles and content.
api.parse.bot/scraper/54702240-45ad-4ba3-8ca5-f94ddf972f6a/<endpoint>
Ready to send
Fill in the parameters and hit sign in to send to see live response data here.
Call it over HTTPgrab a free API key at signup
curl -X GET 'https://api.parse.bot/scraper/54702240-45ad-4ba3-8ca5-f94ddf972f6a/search_videos?page=1&query=Warhammer' \
  -H 'X-API-Key: $PARSE_API_KEY'
Python SDK · recommended

Typed, relational, agent-ready

A generated client with real types, enums, and the links between objects — the structure a flat JSON response can't carry. Autocompletes in your editor and reads cleanly to coding agents.

  • Fully typed · autocompletes
  • Objects link to objects
  • Typed errors & pagination

Typed Python client. Set up the SDK in your uv project, then pull this API’s typed client:

uv add parse-sdk
uv run parse init
uv run parse add --marketplace thestation-ru-api

uv run parse add --marketplace pulls a pinned snapshot of this canonical API — it won’t change underneath you. To customize it, subscribe and swap to your own copy.

"""Walkthrough: TheStation SDK — browse and search tabletop wargaming videos."""
from parse_apis.thestation_ru_api import TheStation, Taxonomy, VideoNotFound

client = TheStation()

# Search videos by keyword, capped at 5 results total.
for video in client.videos.search(query="Warhammer", limit=5):
    print(video.title, f"| likes: {video.likes}, comments: {video.comments}")

# List videos from a specific game system taxonomy using the enum.
for video in client.videos.list(taxonomy=Taxonomy.GAMES, term="warhammer-40000", limit=3):
    print(video.title, video.date, video.url)

# Drill into one video for details.
video = client.videos.search(query="Horus Heresy", limit=1).first()
if video:
    detail = client.videos.get(slug=video.slug)
    print(detail.title, detail.date, detail.likes)
    for tag in detail.tags:
        print(f"  tag: {tag.name}")

# Handle a not-found error when requesting a non-existent slug.
try:
    client.videos.get(slug="non-existent-video-slug-12345")
except VideoNotFound as exc:
    print(f"Video not found: {exc}")

print("exercised: videos.search / videos.list / videos.get / VideoNotFound")
All endpoints · 3 totalmissing one? ·

Full-text search across all video posts on the site. Returns paginated results ordered by recency. Each page contains up to 9 videos. The total_results field on page 1 indicates the total number of matching posts.

Input
ParamTypeDescription
pageintegerPage number for pagination (1-based).
queryrequiredstringSearch query text to match against video titles and content.
Response
{
  "type": "object",
  "fields": {
    "posts": "array of video objects with id, title, url, slug, date, image_url, likes, comments, tags, type",
    "query": "string",
    "total_pages": "integer",
    "current_page": "integer",
    "total_results": "integer (present on page 1)"
  },
  "sample": {
    "posts": [
      {
        "id": "158944",
        "url": "https://thestation.ru/post-video/minka-lesk-hell-s-last-bylinnyy-skaz-chast-7-warhammer-40000/",
        "date": "23.06.2026",
        "slug": "minka-lesk-hell-s-last-bylinnyy-skaz-chast-7-warhammer-40000",
        "tags": [
          {
            "url": "https://thestation.ru/category/background",
            "name": "Бэкграунд"
          },
          {
            "url": "https://thestation.ru/games/warhammer-40000",
            "name": "Warhammer 40000"
          }
        ],
        "type": "video",
        "likes": 13,
        "title": "Minka Lesk: Hell’s Last | Былинный сказ | Часть 7 | Warhammer 40000",
        "comments": 2,
        "image_url": "https://i0.wp.com/thestation.ru/wp-content/uploads/oblozhka-946.jpg?fit=768%2C432&ssl=1"
      }
    ],
    "query": "Warhammer",
    "total_pages": 1,
    "current_page": 1,
    "total_results": 3331
  }
}

About the Thestation API

The Thestation API on Parse exposes 3 endpoints for the publicly available data on thestation.ru. Calls return JSON over HTTPS and are billed per successful response.

Pin a release with the API-Snapshot-Version header so canonical updates don't silently change your contract.