Introduction

The Resimi API lets you integrate our SMM services into your own panel, app, or workflow. All requests return JSON. The API is compatible with the standard SMM panel API format used by JAP, SMMKings, Peakerr and others — making it easy to switch or integrate.

Base URL: https://resimi.xyz/api/v2.php

All endpoints accept both GET and POST requests. Use POST for orders and cancellations, GET for read-only queries.

Authentication

Every request must include your API key as the key parameter.

Your API key is in Account Settings → API Access. Keep it secret — it has full access to your account and balance.
GET https://resimi.xyz/api/v2.php?key=YOUR_API_KEY&action=balance

Errors

All errors return a JSON object with an error key:

{"error": "Insufficient balance. Please add funds."}
Error messageMeaning
Invalid API keyKey is wrong or account is suspended
Insufficient balanceAdd funds before placing orders
Service not found or inactiveService ID is wrong or service is disabled
Quantity must be between X and YQuantity outside allowed range for this service
Order not foundOrder ID doesn't exist or belongs to another user
Order cannot be cancelledOrder is already completed or cancelled

Get Services

Returns the full list of active services with rates and limits.

GET https://resimi.xyz/api/v2.php?key=YOUR_API_KEY&action=services

Parameters

ParameterTypeDescription
key requiredstringYour API key
action requiredstringMust be services

Response

[
  {
    "service":  1234,
    "category": "Instagram",
    "name":     "Instagram Followers — HQ | Refill 30 days",
    "type":     "Default",
    "rate":     "0.5000",
    "min":      100,
    "max":      100000,
    "dripfeed": true,
    "refill":   true,
    "cancel":   false
  },
  ...
]

Place Order

Places a new order. Balance is deducted immediately. Returns the order ID.

POST https://resimi.xyz/api/v2.php
ParameterTypeDescription
key requiredstringYour API key
action requiredstringMust be add
service requiredintegerService ID from the services list
link requiredstringURL of the target profile or post
quantity requiredintegerTotal quantity to deliver
runs optionalintegerNumber of drip-feed runs (default: 1)
interval optionalintegerMinutes between drip-feed runs (default: 0)
comments optionalstringCustom comments (for comment services), one per line

Response — Success

{"order": 98765}

Response — Error

{"error": "Insufficient balance. Please add funds."}
Drip-feed: Set runs = number of batches and interval = minutes between each. Example — 1,000 followers over 7 days: quantity=1000&runs=7&interval=1440

Order Status

Check the current status of an order.

GET https://resimi.xyz/api/v2.php?key=YOUR_API_KEY&action=status&order=ORDER_ID
ParameterTypeDescription
key requiredstringYour API key
action requiredstringMust be status
order requiredintegerOrder ID returned from add

Response

{
  "charge":      "0.5000",
  "start_count": 1240,
  "status":      "In_progress",
  "remains":     630,
  "currency":    "USD"
}

Status values

StatusMeaning
PendingWaiting to be sent to provider
ProcessingSent to provider, queued
In_progressDelivery in progress
CompletedFully delivered
PartialPartially delivered, remaining refunded
CancelledCancelled, remaining refunded

Cancel Order

Cancels a pending or in-progress order. The undelivered portion is refunded to your balance.

POST https://resimi.xyz/api/v2.php
ParameterTypeDescription
key requiredstringYour API key
action requiredstringMust be cancel
order requiredintegerOrder ID to cancel

Response — Success

{"success": true, "refunded": 0.2500}

Check Balance

Returns the current balance of the account associated with the API key.

GET https://resimi.xyz/api/v2.php?key=YOUR_API_KEY&action=balance

Response

{"balance": "12.4800", "currency": "USD"}

Code Examples

<?php
$apiUrl = "https://resimi.xyz/api/v2.php";
$apiKey = "YOUR_API_KEY";

function smmApi(string $url, string $key, array $params): array {
    $params['key'] = $key;
    $ch = curl_init($url);
    curl_setopt_array($ch, [
        CURLOPT_RETURNTRANSFER => true,
        CURLOPT_POST           => true,
        CURLOPT_POSTFIELDS     => http_build_query($params),
        CURLOPT_TIMEOUT        => 30,
    ]);
    $response = curl_exec($ch);
    curl_close($ch);
    return json_decode($response, true) ?? [];
}

// Get services
$services = smmApi($apiUrl, $apiKey, ['action' => 'services']);

// Place an order
$order = smmApi($apiUrl, $apiKey, [
    'action'   => 'add',
    'service'  => 1234,
    'link'     => 'https://instagram.com/yourprofile',
    'quantity' => 1000,
]);
echo "Order ID: " . ($order['order'] ?? 'Error: ' . $order['error']);

// Check balance
$balance = smmApi($apiUrl, $apiKey, ['action' => 'balance']);
echo "Balance: $" . $balance['balance'];
import requests

API_URL = "https://resimi.xyz/api/v2.php"
API_KEY = "YOUR_API_KEY"

def smm_api(params: dict) -> dict:
    params["key"] = API_KEY
    response = requests.post(API_URL, data=params, timeout=30)
    return response.json()

# Get services
services = smm_api({"action": "services"})
for svc in services[:3]:
    print(f"[{svc['service']}] {svc['name']} - ${svc['rate']}/1K")

# Place an order
order = smm_api({
    "action":   "add",
    "service":  1234,
    "link":     "https://instagram.com/yourprofile",
    "quantity": 1000,
})
print(f"Order ID: {order.get('order', 'Error: ' + order.get('error', ''))}")

# Check status
status = smm_api({"action": "status", "order": order.get("order")})
print(f"Status: {status.get('status')} | Remains: {status.get('remains')}")

# Check balance
balance = smm_api({"action": "balance"})
print(f"Balance: ${balance['balance']}")
const API_URL = "https://resimi.xyz/api/v2.php";
const API_KEY = "YOUR_API_KEY";

async function smmApi(params) {
  const body = new URLSearchParams({ key: API_KEY, ...params });
  const res  = await fetch(API_URL, { method: "POST", body });
  return res.json();
}

// Get services
const services = await smmApi({ action: "services" });
console.log(`Found ${services.length} services`);

// Place an order
const order = await smmApi({
  action:   "add",
  service:  1234,
  link:     "https://instagram.com/yourprofile",
  quantity: 1000,
});
console.log("Order ID:", order.order ?? "Error: " + order.error);

// Check status
const status = await smmApi({ action: "status", order: order.order });
console.log("Status:", status.status, "| Remains:", status.remains);

// Cancel an order
const cancel = await smmApi({ action: "cancel", order: order.order });
console.log("Refunded:", cancel.refunded);

// Check balance
const balance = await smmApi({ action: "balance" });
console.log("Balance: $" + balance.balance);
# Get services
curl -X GET "https://resimi.xyz/api/v2.php?key=YOUR_API_KEY&action=services"

# Place an order
curl -X POST "https://resimi.xyz/api/v2.php" \
  -d "key=YOUR_API_KEY" \
  -d "action=add" \
  -d "service=1234" \
  -d "link=https://instagram.com/yourprofile" \
  -d "quantity=1000"

# Place a drip-feed order (1000 followers over 7 days)
curl -X POST "https://resimi.xyz/api/v2.php" \
  -d "key=YOUR_API_KEY" \
  -d "action=add" \
  -d "service=1234" \
  -d "link=https://instagram.com/yourprofile" \
  -d "quantity=1000" \
  -d "runs=7" \
  -d "interval=1440"

# Check order status
curl -X GET "https://resimi.xyz/api/v2.php?key=YOUR_API_KEY&action=status&order=98765"

# Cancel an order
curl -X POST "https://resimi.xyz/api/v2.php" \
  -d "key=YOUR_API_KEY" \
  -d "action=cancel" \
  -d "order=98765"

# Check balance
curl -X GET "https://resimi.xyz/api/v2.php?key=YOUR_API_KEY&action=balance"
← Home · Get API Key · Login