Skip to main content
GET
/
cs2
/
v1
/
markets
/
descriptions
Catalog of CS2 market types with templates and translations
curl --request GET \
  --url https://ticktock.bet/cs2/v1/markets/descriptions \
  --header 'X-API-Key: <api-key>'
{
  "data": [
    {
      "type": "headshot_opening",
      "code": "1001",
      "name": "Headshot Opening Kill",
      "description": "The round's first kill is a headshot.",
      "category": "Opening Kills",
      "tier": "featured",
      "name_ru": "Хедшот на открытии"
    }
  ],
  "meta": {
    "count": 42,
    "lang": "en"
  }
}

Documentation Index

Fetch the complete documentation index at: https://docs.ticktock.bet/llms.txt

Use this file to discover all available pages before exploring further.

What it returns

The full catalog of market types the engine can publish. Each entry has:
  • type — internal string id ("headshot_opening", "awp_kill", …)
  • code — stable integer code, used as id in the AMQP/XML feed and on every <odds_change> market element
  • name / description — human-readable English label
  • name_ru — Russian display name (when available)
  • category — display grouping (Opening Kills, Multi-Kills, Bomb, Economy, …)
  • tier — pricing/risk tier (featured, contextual, …)
Codes are immutable. Pull this once at integration time, store the mapping locally, and look up by code for every incoming market. No need to re-poll.

Required scope

  • Minimum: cs2:markets:read

Localization

?lang=en (default) or ?lang=ru. Both locales return the same code and category — only the display strings differ. The English name is always present; name_ru is included as a separate field when a Russian translation exists.

Example

curl -H "X-API-Key: $TT_KEY" \
  "https://ticktock.bet/cs2/v1/markets/descriptions"
{
  "data": [
    {
      "type": "headshot_opening",
      "code": "1001",
      "name": "Headshot Opening Kill",
      "description": "The round's first kill is a headshot.",
      "category": "Opening Kills",
      "tier": "featured",
      "name_ru": "Хедшот на открытии"
    },

  ],
  "meta": { "count": 42, "lang": "en" }
}

Where this fits

The AMQP feed already inlines textEN and textRU on every market — most integrations don’t need this catalog at all. Use it when you want to:
  • Build a custom market browser UI grouped by category.
  • Pre-build a name lookup keyed by code (avoids parsing textEN at runtime).
  • Filter what to expose to your end-users by tier.

Authorizations

X-API-Key
string
header
required

Tenant API key issued during onboarding

Headers

accept
string
default:application/json

Query Parameters

lang
string
default:en

Locale: en (default) or ru.

Response

Successful Response

Last modified on May 10, 2026