BitSkins API Skill
Authentication
All requests to the BitSkins API require authentication via the x-apikey header.
The API key must be set in the environment variable BITSKINS_API_KEY.
The user can obtain their API key from BitSkins account settings after enabling API access.
Important: Some endpoints (wallet withdrawals, 2FA operations) also require a twofa_code parameter. Always ask the user for their 2FA code when calling these endpoints rather than storing it.
Base URL
https://api.bitskins.com
Making Requests
Use the helper script to make API calls:
bash bitskins-api/scripts/bitskins-api.sh <METHOD> <PATH> [JSON_BODY]
Examples:
# GET request (no body)
bash bitskins-api/scripts/bitskins-api.sh GET /account/profile/me
# POST request with JSON body
bash bitskins-api/scripts/bitskins-api.sh POST /account/profile/balance
# POST with parameters
bash bitskins-api/scripts/bitskins-api.sh POST /market/search/730 '{"limit":10,"offset":0,"where":{}}'
Rate Limits
- Global: 50 requests per 10 seconds
- Market search (
/market/search/*): 1 request per second
- These limits are dynamic and may be reduced under heavy server load.
Request Format
- The API accepts JSON format
- GET requests: no body required
- POST requests: JSON body with required parameters
Response Format
All responses are JSON. Successful responses contain the data directly. Error responses include error codes documented in references/api-endpoints.md.
API Sections Overview
The API is organized into the following sections. See references/api-endpoints.md for the full endpoint reference.
Account
- Profile: Get session info, balance, update account settings, update trade link, block account
- Affiliate: Get affiliate info, claim money, view reward history, set affiliate code
- 2FA: Create, verify, disable, lock/unlock two-factor authentication
- API Access: Create or disable API keys
Config
- Currency rates: Get current exchange rates
- Fee plans: Get available fee plans
- Platform status: Check if platform is operational
Market (CS2 app_id=730, Dota 2 app_id=570)
- Pricing: Get sales history, pricing summaries
- Search: Browse CS2/Dota 2 markets, search own items, get item details, search by skin name, get filters
- Buy: Buy single item, multiple items, or bulk buy
- Withdraw: Withdraw single or multiple purchased items to Steam
- Delist: Remove single or multiple items from sale
- Relist: Relist single or multiple delisted items
- Update price: Change price on single or multiple listed items
- History: View item transaction history
- Receipt: Get purchase receipt
- Bump: Bump items for visibility, manage bump settings, buy bump packages
- Skins catalog: Get all available skin names for a game
- In-sell items: Get all currently listed items for a game
Steam
- Inventory: List Steam inventory items
- Deposit: Deposit items from Steam to BitSkins
- Trades: View Steam trade offers and their status
Wallet
- Stats: Get wallet statistics, KYC limits
- Transactions: List completed and pending transactions
- Reports: Generate and download wallet reports
Wallet Deposit
- Binance Pay: Create Binance Pay deposit
- Cryptocurrency: Get deposit addresses for BTC, LTC, ETH
- Gift codes: Redeem gift codes, view used codes
- Zen: Create Zen deposit
- Card (Unlimint): Add cards, list cards, deposit via card
Wallet Withdraw
- Cryptocurrency: Withdraw to BTC, LTC, ETH addresses
- Binance Pay: Withdraw via Binance Pay
- Card (Unlimint): Withdraw to Visa card
WebSocket
Real-time updates via wss://ws.bitskins.com. See references/websocket.md for details.
Common Patterns
Searching the Market
The market search endpoints accept where objects for filtering and support limit/offset pagination:
{
"limit": 20,
"offset": 0,
"order": [{"field": "price", "order": "ASC"}],
"where": {
"skin_name": ["AK-47 | Redline"],
"price_from": 1000,
"price_to": 5000
}
}
Note: Prices are in cents (e.g., 1000 = $10.00).
Buying Items
To buy an item, you need its id and app_id. Use market search to find items, then:
{"app_id": 730, "id": "ITEM_ID", "max_price": 1500}
The max_price parameter protects against price changes between search and purchase.
Listing/Depositing Items
- Get Steam inventory:
POST /steam/inventory/list
- Deposit items:
POST /steam/deposit/many with item IDs and prices
- Monitor trade status:
POST /steam/trade/active
Withdrawing Purchased Items
After buying, withdraw to Steam:
{"app_id": 730, "id": "ITEM_ID"}
Important Notes
- Always confirm with the user before executing buy, sell, withdraw, or any financial operation
- Prices are in cents (integer values)
- Game IDs: CS2 = 730, Dota 2 = 570
- The
where_mine filter on "mine" endpoints accepts: listed, pending_withdrawal, in_queue, given, need_to_withdraw
- 2FA codes are time-sensitive; always request fresh codes from the user
1---2name: bitskins-api3description: Interacts with the BitSkins REST API V2 and WebSocket API for CS2/Dota 2 skin trading. Supports account management, market search, buying, selling, listing, delisting, relisting, price updates, Steam inventory/deposits/trades, wallet operations, and real-time WebSocket subscriptions. Use when the user wants to search for skins, check prices, buy or sell items, manage their BitSkins account, check balances, or interact with the BitSkins marketplace.4---56# BitSkins API Skill78## Authentication910All requests to the BitSkins API require authentication via the `x-apikey` header.1112The API key must be set in the environment variable `BITSKINS_API_KEY`.13The user can obtain their API key from BitSkins account settings after enabling API access.1415**Important:** Some endpoints (wallet withdrawals, 2FA operations) also require a `twofa_code` parameter. Always ask the user for their 2FA code when calling these endpoints rather than storing it.1617## Base URL1819```20https://api.bitskins.com21```2223## Making Requests2425Use the helper script to make API calls:2627```bash28bash bitskins-api/scripts/bitskins-api.sh <METHOD> <PATH> [JSON_BODY]29```3031Examples:3233```bash34# GET request (no body)35bash bitskins-api/scripts/bitskins-api.sh GET /account/profile/me3637# POST request with JSON body38bash bitskins-api/scripts/bitskins-api.sh POST /account/profile/balance3940# POST with parameters41bash bitskins-api/scripts/bitskins-api.sh POST /market/search/730 '{"limit":10,"offset":0,"where":{}}'42```4344## Rate Limits4546- **Global:** 50 requests per 10 seconds47- **Market search (`/market/search/*`):** 1 request per second48- These limits are dynamic and may be reduced under heavy server load.4950## Request Format5152- The API accepts JSON format53- GET requests: no body required54- POST requests: JSON body with required parameters5556## Response Format5758All responses are JSON. Successful responses contain the data directly. Error responses include error codes documented in [references/api-endpoints.md](references/api-endpoints.md).5960## API Sections Overview6162The API is organized into the following sections. See [references/api-endpoints.md](references/api-endpoints.md) for the full endpoint reference.6364### Account65- **Profile:** Get session info, balance, update account settings, update trade link, block account66- **Affiliate:** Get affiliate info, claim money, view reward history, set affiliate code67- **2FA:** Create, verify, disable, lock/unlock two-factor authentication68- **API Access:** Create or disable API keys6970### Config71- **Currency rates:** Get current exchange rates72- **Fee plans:** Get available fee plans73- **Platform status:** Check if platform is operational7475### Market (CS2 app_id=730, Dota 2 app_id=570)76- **Pricing:** Get sales history, pricing summaries77- **Search:** Browse CS2/Dota 2 markets, search own items, get item details, search by skin name, get filters78- **Buy:** Buy single item, multiple items, or bulk buy79- **Withdraw:** Withdraw single or multiple purchased items to Steam80- **Delist:** Remove single or multiple items from sale81- **Relist:** Relist single or multiple delisted items82- **Update price:** Change price on single or multiple listed items83- **History:** View item transaction history84- **Receipt:** Get purchase receipt85- **Bump:** Bump items for visibility, manage bump settings, buy bump packages86- **Skins catalog:** Get all available skin names for a game87- **In-sell items:** Get all currently listed items for a game8889### Steam90- **Inventory:** List Steam inventory items91- **Deposit:** Deposit items from Steam to BitSkins92- **Trades:** View Steam trade offers and their status9394### Wallet95- **Stats:** Get wallet statistics, KYC limits96- **Transactions:** List completed and pending transactions97- **Reports:** Generate and download wallet reports9899### Wallet Deposit100- **Binance Pay:** Create Binance Pay deposit101- **Cryptocurrency:** Get deposit addresses for BTC, LTC, ETH102- **Gift codes:** Redeem gift codes, view used codes103- **Zen:** Create Zen deposit104- **Card (Unlimint):** Add cards, list cards, deposit via card105106### Wallet Withdraw107- **Cryptocurrency:** Withdraw to BTC, LTC, ETH addresses108- **Binance Pay:** Withdraw via Binance Pay109- **Card (Unlimint):** Withdraw to Visa card110111### WebSocket112Real-time updates via `wss://ws.bitskins.com`. See [references/websocket.md](references/websocket.md) for details.113114## Common Patterns115116### Searching the Market117118The market search endpoints accept `where` objects for filtering and support `limit`/`offset` pagination:119120```json121{122 "limit": 20,123 "offset": 0,124 "order": [{"field": "price", "order": "ASC"}],125 "where": {126 "skin_name": ["AK-47 | Redline"],127 "price_from": 1000,128 "price_to": 5000129 }130}131```132133Note: Prices are in **cents** (e.g., 1000 = $10.00).134135### Buying Items136137To buy an item, you need its `id` and `app_id`. Use market search to find items, then:138139```json140{"app_id": 730, "id": "ITEM_ID", "max_price": 1500}141```142143The `max_price` parameter protects against price changes between search and purchase.144145### Listing/Depositing Items1461471. Get Steam inventory: `POST /steam/inventory/list`1482. Deposit items: `POST /steam/deposit/many` with item IDs and prices1493. Monitor trade status: `POST /steam/trade/active`150151### Withdrawing Purchased Items152153After buying, withdraw to Steam:154```json155{"app_id": 730, "id": "ITEM_ID"}156```157158## Important Notes159160- Always confirm with the user before executing buy, sell, withdraw, or any financial operation161- Prices are in cents (integer values)162- Game IDs: CS2 = 730, Dota 2 = 570163- The `where_mine` filter on "mine" endpoints accepts: `listed`, `pending_withdrawal`, `in_queue`, `given`, `need_to_withdraw`164- 2FA codes are time-sensitive; always request fresh codes from the user