UcBot Technologies — Powerful API, Smart Bots & Cust...
>_ UcBot API Docs
Get API Key
Request Example — Single Item
bash
curl -X POST https://ucapi.ucbot.net/api/uc \
  -H "Content-Type: application/json" \
  -H "Authorization: ucapi_your_key_here" \
  -d '{
    "item":    "160",
    "orderid": "yourOrderID",
    "qty":     2
  }'
Request Example — Multi-Item
bash
curl -X POST https://ucapi.ucbot.net/api/uc \
  -H "Content-Type: application/json" \
  -H "Authorization: ucapi_your_key_here" \
  -d '{
    "item": {
      "160": 2,
      "80":  3,
      "20":  5
    },
    "orderid": "yourOrderID"
  }'
  • Maximum 10 different UC types
  • Maximum 100 total UCs across all items
  • Example: {"160": 50, "80": 50} = 100 UCs ✓
  • Example: {"160": 60, "80": 50} = 110 UCs ✗ (exceeds limit)
Success Response — Single Item

Success (Single):

json
{
  "status":     "success",
  "order_id":   "yourOrderID",
  "item":       "160",
  "qty":        2,
  "uc_list": [
    "UPBD-F-S-02711106 2654-3639-7636-1362",
    "UPBD-F-S-02711107 1234-5678-9012-3456"
  ],
  "total_cost": 36.4
}
Success Response — Multi-Item

Success (Multi):

json
{
  "status":     "success",
  "order_id":   "yourOrderID",
  "items": {
    "160": 2,
    "80":  3,
    "20":  5
  },
  "uc_list": [
    "UPBD-F-S-02711108 1111-2222-3333-4444",
    "UPBD-F-S-02711109 5555-6666-7777-8888",
    "UPBD-F-S-02711110 9999-0000-1111-2222",
    "UPBD-F-S-02711111 3333-4444-5555-6666",
    "UPBD-F-S-02711112 7777-8888-9999-0000",
    "UPBD-F-S-02711113 1234-5678-9012-3456",
    "UPBD-F-S-02711114 6543-2109-8765-4321",
    "UPBD-F-S-02711115 1111-1111-1111-1111",
    "UPBD-F-S-02711116 2222-2222-2222-2222",
    "UPBD-F-S-02711117 3333-3333-3333-3333"
  ],
  "total_cost": 182.0
}

items returns the original multi-item request object.

uc_list contains all UCs from all items combined.

UCs are pulled in the order specified in the request.

Error Responses

Stock Out:

json
{
  "status":    "error",
  "order_id":  "API-UC-A74A6E3C50",
  "error":     "Insufficient Stock:\n⚠︎ 160 🆄︎🅲︎ — Available: 0 pcs (Need: 2)",
  "stock_out": true
}

Not Enough Stock:

json
{
  "status":    "error",
  "order_id":  "API-UC-A74A6E3C50",
  "error":     "Insufficient Stock:\n⚠︎ 160 🆄︎🅲︎ — Available: 1 pcs (Need: 2)",
  "stock_out": true
}

Limit Over:

json
{
  "status":   "error",
  "order_id": "API-UC-A74A6E3C50",
  "error":    "Baki limit exceeded — Used: 150.00৳  |  Left: 50.00৳  |  Required: 75.00৳"
}
Indonesia Top-up — POST /api/indo

Auto top-up for Indonesia Garena server. Use this endpoint for Indo-only items — do not send them via /api/topup.

FIELD TYPE REQUIRED DESCRIPTION
uid string Yes Player's game UID (7-16 digits)
item string Yes Indo item code — e.g. 355, weekly, bp.
qty integer No Quantity (default 1, max 5)
orderid string No Your custom order ID
Request Example
bash
curl -X POST https://ucapi.ucbot.net/api/indo \
  -H "Content-Type: application/json" \
  -H "Authorization: ucapi_your_key_here" \
  -d '{
    "uid":     "9876543210",
    "item":    "355",
    "qty":     1,
    "orderid": "INDO-001"
  }'
Success Response

Success (Indo):

json
{
  "status":        "success",
  "order_id":      "INDO-001",
  "username":      "PlayerName",
  "uid":           "9876543210",
  "item":          "355",
  "qty":           1,
  "success_count": 1,
  "fail_count":    0,
  "report": [
    {
      "item_id":   6,
      "item_name": "Indo 355 💎",
      "ok_qty":    1,
      "fail_qty":  0
    }
  ],
  "duration":      6.22
}
Error Responses

Indo not configured:

json
{
  "status": "error",
  "error":  "Indo topup is not available. Please contact support."
}
Note: Items like weekly exist on both /api/topup (BD/MY) and /api/indo (Indonesia). Pick the correct endpoint for your target server.
Balance Check — GET /api/balance

Returns wallet balance, due amount, and due limit — updated in real-time.

Request Example
bash
curl "https://ucapi.ucbot.net/api/balance" \
  -H "Authorization: ucapi_your_key_here"
Success Response

Response:

json
{
  "wallet":    150.0,
  "due":       30.5,
  "due_limit": 200.0,
  "due_left":  169.5
}
FIELDDESCRIPTION
walletAdvance balance (prepaid funds available)
dueCurrent outstanding due amount
due_limitMaximum due amount allowed
due_leftRemaining due capacity (due_limit - due)
Order History — GET /api/history

Returns the log of the last N orders with full response data.

FIELDTYPEREQUIREDDESCRIPTION
limitintegerNoNumber of orders (default 20, max 100)
Request Example
bash
curl "https://ucapi.ucbot.net/api/history?limit=10" \
  -H "Authorization: ucapi_your_key_here"
Success Response

Response:

json
{
  "orders": [
    {
      "order_id":   "API-TP-6E5480A243",
      "action":     "topup",
      "item":       "160",
      "qty":        1,
      "uid":        "7041346627",
      "response": {
        "status":   "success",
        "username": "彡ɴᴀʙɪʟ࿐",
        "success":  1,
        "failed":   0
      },
      "created_at": "2025-01-15T14:30:00"
    },
    {
      "order_id":   "API-UC-A74A6E3C50",
      "action":     "uc",
      "items": {
        "160": 2,
        "80":  1
      },
      "uid":        null,
      "response": {
        "status":     "success",
        "uc_list":    ["UPBD-Q-S-02016173 3549-1273-5525-5362", "..."],
        "total_cost": 92.5
      },
      "created_at": "2025-01-15T13:10:00"
    }
  ]
}
Item Reference
UC Diamond (works for topup + uc)
ITEM CODEDIAMOND
2025 💎
3650 💎
80115 💎
160240 💎
405610 💎
8101240 💎
16252530 💎
Subscription (topup only)
ITEM CODESUBSCRIPTION
161Weekly Subscription
800Monthly Subscription
weeklyliteWeekly Lite
Diamond Amount Alias (topup only, auto-converted)
DIAMOND AMOUNTCONVERTS TO
25→ 20
50→ 36
115→ 80
240→ 160
610→ 405
1240→ 810
2530→ 1625
You can pass the diamond amount directly (e.g. 240) and it will auto-convert to the correct item code (160).
Shell Items (topup only)
ITEM CODESHELL ITEM
weeklylite / liteWeekly Lite (max qty 10)
lvl6 - lvl30Level Up packs (max qty 5 each)
all_lvl / lvlallAll levels 6 → 30 (qty 1 only)
Discontinued: evo3, evo7, evo30 — will return an error.
Indonesia Items (indo only — POST /api/indo)
ITEM CODEINDO ITEM
5Indo 5 💎
50Indo 50 💎
70Indo 70 💎
140Indo 140 💎
355Indo 355 💎
720Indo 720 💎
7290Indo 7290 💎
weeklyIndo Weekly 💎
monthlyIndo Monthly 💎
lvl6 - lvl30Level Up (Indo server)
bpBooyah Pass 💎
Error Reference

All errors return "status": "error" with a human-readable message.

ERRORCAUSE
Invalid or inactive API keyKey is wrong or has been revoked
User not registered in botNot signed up in the bot
Baki limit exceededNot enough wallet + baki capacity
Insufficient Stock (stock_out: true)No UC available in stock
AutoTopup is not activeBot has no active subscription
AutoTopup subscription expiredSubscription has expired
AutoTopup limit exhaustedTopup limit has been used up
2000 UC topup is not available via APIUse POST /api/uc for 2000 delivery only
Indo items must use POST /api/indoIndo-only item sent to wrong endpoint
This item is no longer availableDiscontinued item (evo3/7/30)
Bot 'xxx' is not connectedBot is offline
Bot did not respond in time120s timeout exceeded
Too many requestsRate limit exceeded — slow down
qty cannot exceed 5 / 100qty exceeds allowed limit for this endpoint
Valid game UID requiredUID is invalid or missing (7-16 digits)
Maximum 5 / 10 different items allowedToo many item types in multi-item order
Key Notes

Rate Limits

UC: 30/min • Topup & Indo: 20/min • Balance: 30/min • History: 20/min. Exceeded limits return HTTP 429.

Timeout

Maximum timeout for all orders is 120 seconds. If the bot is offline, an error is returned immediately.

Queue System

If multiple requests arrive from the same user simultaneously, they are queued and processed one by one — no race conditions.

Multi-item Orders

Both /api/topup and /api/uc support multi-item orders. Topup: max 5 UCs total. UC code buy: max 10 types, 100 total UCs. Shell items don't support multi-item.

Billing

Wallet balance is deducted first. Once empty, the amount goes to due. Orders are rejected if the due limit is exceeded. Charges apply even for Used/Invalid UCs.

Telegram Notifications

A receipt is sent via Telegram DM after every order — applies to both /api/topup and /api/uc. No polling needed.

Token Safety

Keep your API key private. Never share it publicly. Keys can be revoked instantly via /revokeapikey command.

Ready to integrate?

Contact admin on Telegram to generate an API key. Keys are tied to your Telegram account.

Get API Key on Telegram