SteamSmm API Documentation
Base URL: https://steamsmm.ru/api
Authentication
Create an API key in your account. For all requests to protected methods, pass the key in the Authorization header. Send POST request bodies as JSON.
Authorization: Bearer YOUR_API_TOKEN
Content-Type: application/json
Request Example
curl "https://steamsmm.ru/api/user/balance" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
Key Management
| Method | Purpose | Authorization |
|---|---|---|
POST /api/token/generate | Create a key. Optional field: name. | Active website session |
POST /api/token/refresh | Replace the current key with a new one. Optional field: password. | Bearer token |
GET /api/token/list | Get a list of your keys without secret values. | Bearer token |
Boosting
The common /order/price and /order/create methods are used to calculate and create standard orders.
Available Service Types
action_type | Service | Required Link |
|---|---|---|
comment | +rep comments | Steam profile with public comments |
comment_rep | -rep comments | Steam profile with public comments |
comment_random | Random comments | Steam profile with public comments |
comment_premium | Delayed premium comments | Steam profile with public comments |
like | Likes | Supported Steam Community page |
dis | Dislikes | Supported Steam Community page |
subscribe | Group members | Steam group link |
review | Review likes | Steam review link |
favorite | Add to favorites | Steam Workshop item URL |
Common Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
action_type | string | Yes | Service code from the table above. |
quantity | integer | Yes | Number of actions: 10 to 2,000. |
target_link | string | On creation only | Full link to the required steamcommunity.com page. |
POST /api/order/price - price calculation
POST /api/order/price
{
"action_type": "comment",
"quantity": 100
}
This method does not charge the balance. The response returns price_per_item, total_cost and currency.
POST /api/order/create - create order
POST /api/order/create
{
"action_type": "comment",
"quantity": 100,
"target_link": "https://steamcommunity.com/id/username"
}
Add to Favorites
Use the same automatic order endpoint with action_type favorite. Workshop items, screenshots, artwork, and guides are supported.
POST /api/order/create
{
"action_type": "favorite",
"quantity": 100,
"target_link": "https://steamcommunity.com/sharedfiles/filedetails/?id=1234567890"
}
Premium Comments
Three additional parameters are available for comment_premium. If omitted, the comment type is random, and the delay range is 5 to 120 minutes.
| Parameter | Type | Required | Allowed Values |
|---|---|---|---|
comment_variant | string | No | plus, minus or random. Default: random. |
delay_min_minutes | integer | No | Minimum delay, at least 5 minutes. |
delay_max_minutes | integer | No | Maximum delay, no more than 120 minutes and no less than delay_min_minutes. |
POST /api/order/create
{
"action_type": "comment_premium",
"quantity": 50,
"target_link": "https://steamcommunity.com/id/username",
"comment_variant": "plus",
"delay_min_minutes": 10,
"delay_max_minutes": 30
}
Successful Response
{
"status": "success",
"data": {
"order_id": "API_1_...",
"action_type": "comment_premium",
"quantity": 50,
"cost": 100.0,
"status": "processing",
"balance_after": 900.0
}
}
Steam Awards API
This is a separate automatic delivery service, not a boosting action. Price: RUB 1.00 per award. Payment is charged from the API user balance.
POST /api/order/create
{
"action_type": "reward_pack",
"quantity": 10,
"target_type": "profile",
"target_link": "https://steamcommunity.com/profiles/76561198000000000"
}
| Parameter | Type | Required | Description |
|---|---|---|---|
action_type | string | Yes | reward_pack |
quantity | integer | Yes | Award quantity, 1–2000. Types are distributed automatically. |
target_type | string | Yes | profile / content |
target_link | string | Yes | Steam profile or content URL. |
Check status: GET /api/order/status/{order_id}.
CS2 Commends
friendly, teacher and leader are set separately. The price is based on the highest value. A 15/5/10 combination costs the same as 15 commends.
Before creating an order, the player must join the 185.9.145.248:24673 server. Promotional balance cannot be used.
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
target | string | For validation and creation | SteamID64 or a profile link. The steam_id and target_link fields are also accepted. |
friendly | integer | No | Number of Friendly commends. Default: 0. |
teacher | integer | No | Number of Teacher commends. Default: 0. |
leader | integer | No | Number of Leader commends. Default: 0. |
At least one value must be greater than zero. The highest of the three values must be between 15 and 7,500.
POST /api/commend/check - player validation
POST /api/commend/check
{"target": "https://steamcommunity.com/id/username"}
Check the data.on_server field. You can create an order only when it is true.
POST /api/commend/price - price calculation
POST /api/commend/price
{
"friendly": 15,
"teacher": 5,
"leader": 10
}
The response contains bots_required, price_per_bot, total_cost and the applied volume discount.
POST /api/commend/create - creation
POST /api/commend/create
{
"target": "76561198000000000",
"friendly": 15,
"teacher": 5,
"leader": 10
}
On success, the response returns order_id, session_id, the normalized steam_id, commend counts, cost, status, and remaining balance. You can also create an order through POST /api/order/create with action_type: "commend_cs2".
Status and Logs
GET /api/commend/{order_id}?logs_limit=100
logs_limit is optional; the allowed range is 1 to 200. The response contains progress, completed and failed bot counts, the remote status, and logs.
Restarting the Unfulfilled Remainder
POST /api/commend/{order_id}/restart
Restart is available only for a cancelled order. If the player leaves the server, the order continues automatically after reconnecting.
Steam Accounts
Steam accounts have a dynamic catalog and inventory. Always retrieve the current category_id immediately before calculating or purchasing.
GET /api/autoreg/products - catalog
GET /api/autoreg/products
Authorization: Bearer YOUR_API_TOKEN
Products are located in data.groups.*.items. Each product includes:
| Field | Description |
|---|---|
category_id | Product identifier used for calculation and purchase. |
title, region, description | Product title, region, and description. |
stock | Current inventory. |
min_count, max_count | Allowed quantity per request. |
price_per_item | Price per account in rubles. |
POST /api/autoreg/price - price calculation
POST /api/autoreg/price
{
"category_id": 2450503,
"quantity": 10
}
category_id and quantity are required and must be integers. The method checks current inventory and does not charge the balance.
POST /api/autoreg/create - purchase and delivery
POST /api/autoreg/create
{
"category_id": 2450503,
"quantity": 10
}
Accounts are delivered directly in the response through the data.accounts array and the data.accounts_text string. The response also returns a download_url for a TXT file.
{
"status": "success",
"data": {
"order_id": "APIAUTOREG_...",
"ordered_quantity": 2,
"quantity": 2,
"status": "completed",
"accounts": ["login:password:email:email_password"],
"accounts_text": "login:password:email:email_password",
"balance_after": 500.0
}
}
warning field.Purchasing is also supported through POST /api/order/create with action_type: "steam_autoreg", category_id and quantity.
Minecraft Capes
Keys are delivered immediately. Specify the product using a current catalog category_id or cape_type: home or builder.
GET /api/minecraft/capes/products - catalog
GET /api/minecraft/capes/products
data.items returns category_id, cape_type, the title, inventory, allowed quantity, and price per key.
POST /api/minecraft/capes/price - price calculation
POST /api/minecraft/capes/price
{"cape_type": "builder", "quantity": 3}
POST /api/minecraft/capes/create - purchase
POST /api/minecraft/capes/create
{"cape_type": "home", "quantity": 1}
Specify quantity and one of these fields: cape_type or category_id. On success, the keys are returned in the data.keys array and the data.keys_text string.
Purchasing is also supported through POST /api/order/create with action_type: "minecraft_cape".
Orders and Balance
GET /api/order/status/{order_id}
Returns the order type, target, cost, public and internal statuses, progress, errors, and dates. Commend orders also return the count of each type; premium comment orders return the variant and delays.
GET /api/order/list
GET /api/order/list?page=1&per_page=50&status=completed
| Parameter | Default | Description |
|---|---|---|
page | 1 | Page number. |
per_page | 50 | Number of orders per page. |
status | All | Optional status filter. |
The response contains the orders array and a pagination object with the page, pages, total, has_next and has_prev fields.
GET /api/user/balance
{
"status": "success",
"data": {
"balance": 1000.0,
"regular_balance": 800.0,
"promo_balance": 200.0,
"currency": "RUB"
}
}
balance - total balance, regular_balance - regular funds, and promo_balance - promotional funds that can be used only for boosting.
GET /api/user/stats
Returns total and completed order counts, total spending, average order value, and current balance.
Statuses: pending, processing, paused, completed, failed, cancelled.
Error Format
{
"status": "error",
"code": "ERROR_CODE",
"message": "Error description"
}
Main HTTP Status Codes
| Code | Meaning |
|---|---|
200 / 201 | Request completed successfully. |
400 | A parameter is missing or has an invalid format. |
401 | The API key is missing, invalid, or expired. |
402 | Insufficient eligible balance. |
404 | Order or product not found. |
409 | State conflict, for example, the player is not on the server or already has an active commend order. |
500 / 502 / 503 | Temporary website or external fulfillment system error. |
status field. Do not consider an order created until you receive status: "success" and data.order_id.