v1.0.0
System Online

Developer Documentation

Complete reference for integrating Smile Bot services into your application.

Overview

The Smile Bot API provides programmatic access to our top-up services. Use standard HTTP methods to interact with resources like products, orders, and user balance.

Base URL
https://mlbbapi.topupnation.xyz
Useful Links:
Telegram Bot: @mlbbapibot
Bot Owner: @bigpapa
Developer: @blackmax_it

Authentication

Authenticate your requests by including your API Key in the Authorization header using the Bearer scheme.

HTTP Header
Authorization: Bearer YOUR_API_KEY

IP Access Control

Security is paramount. Access to the API is restricted by IP address. Requests from unauthorized IPs will be rejected with 403 Forbidden.

To whitelist your server's IP address, please contact the Bot Owner (@bigpapa).

API Standards

Rate Limiting

The default rate limit is 1000 requests per hour. Check the following headers in the response to track your usage:

  • X-RateLimit-Limit: Total requests allowed.
  • X-RateLimit-Remaining: Requests remaining in the current window.
  • X-RateLimit-Reset: Time when the limit resets.

Error Handling

Code Description
200 Success
400 Bad Request - Invalid parameters
401 Unauthorized - Invalid or missing token
402 Payment Required - Insufficient balance
403 Forbidden - IP not whitelisted
404 Not Found - Resource (product/order) not found
429 Too Many Requests - Rate limit exceeded
500 Internal Server Error

Products

GET /api/v1/products/categories

Get Categories

List all available product categories.

Response
{
  "success": true,
  "data": [
    {
      "id": "mobilelegends_category",
      "name": "mobilelegends",
      "count": 9
    },
    {
      "id": "freefire_category",
      "name": "freefire",
      "count": 9
    }
  ]
}
GET /api/v1/products/category/{category_name}

Get Category Products

Retrieve products under a specific category.

Parameter In Type Required Description
category_name path string Yes Category identifier (e.g. mobilelegends)
page query int No Default: 1
Response
{
  "success": true,
  "data": [
    {
      "id": "22590",
      "name": "mobilelegends",
      "spu": "mobilelegends BR 55 Diamond",
      "price": 40.0,
      "api_price": 4.0,
      "is_active": true
    }
  ],
  "pagination": { "page": 1, "total": 15 }
}
GET /api/v1/products/{product_id}

Get Product Details

Fetch details for a single product ID.

Parameter In Type Required Description
product_id path string Yes Unique product identifier
Response
{
  "success": true,
  "data": {
    "id": "22590",
    "name": "mobilelegends",
    "spu": "mobilelegends BR 55 Diamond",
    "denomination": "Diamond",
    "price": 40.0,
    "api_price": 4.0,
    "is_active": true
  },
  "timestamp": "2026-01-23T20:40:22.000000"
}

Orders

POST /api/v1/orders/create

Create Order

Place a new order. User inputs depend on the product type.

Request Body
{
  "product_id": "22590",
  "user_inputs": {
    "userid": "98223878",
    "zoneid": "2507"
  }
}
Response
{
  "success": true,
  "data": {
    "order_id": "TNCRMO2695",
    "status": "pending",
    "total_price": 40.0
  }
}
GET /api/v1/orders

Get Order History

Retrieve past orders with pagination.

Parameter In Type Required Description
page query int No Default: 1
limit query int No Max: 100, Default: 50
Response
{
  "success": true,
  "data": [
    {
      "id": "TNCRMO2695",
      "product_name": "mobilelegends",
      "price": 40.0,
      "status": "completed",
      "created_at": "2026-01-23T20:40:24.667061"
    }
  ],
  "pagination": { "page": 1, "total": 1 }
}
GET /api/v1/orders/{order_id}

Get Order Details

Check the status of a specific order.

Response
{
  "success": true,
  "data": {
    "id": "TNCRMO2695",
    "product_id": "22590",
    "product_name": "mobilelegends",
    "price": 40.0,
    "status": "completed",
    "user_inputs": {
      "userid": "98223878",
      "zoneid": "2507"
    },
    "created_at": "2026-01-23T20:40:24.667061"
  }
}

Balance

GET /api/v1/balance

Get Balance

Check your current account balance.

Response
{
  "success": true,
  "data": {
    "balance": 1500.50,
    "currency": "COIN"
  }
}
GET /api/v1/balance/history

Balance History

View transaction logs.

Response
{
  "success": true,
  "data": [
    {
      "id": 72079579,
      "type": "order",
      "amount": -40.0,
      "reason": "Order TNCRMO2695",
      "timestamp": "2026-01-23T20:40:24.667061"
    }
  ],
  "pagination": { "page": 1, "total": 1 }
}