> ## Documentation Index
> Fetch the complete documentation index at: https://api.sosmednext.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Check Status

> Mendapatkan pembaruan/update status *real-time* dari satu (*single*) atau beberapa pesanan (*multiple*) secara sekaligus.

Di dalam sistem panel SMM yang *autopilot*, sangat disarankan Anda untuk membangun skrip **Cronjob yang berjalan setiap 5 - 15 menit** dari server hosting *panel* Anda ke *Endpoint* ini untuk memeriksa konfirmasi laporan status terbaru dari Provider (kami).
Sistem kami mendukung pengecekan status *single* (khusus cek 1 pesanan) maupun *multiple* (banyak barisan pesanan sekaligus, dengan limit maksimal pemeriksaan hingga 100 ID pesanan per 1 *request* HTTP untuk melindungi efisiensi beban server).

## Query Parameters Inti

Anda harus memberikan salah satu bentuk dari parameter berikut di dalam kueri (`order` ATAU `orders`), jangan menggunakan keduanya.

<ParamField query="api_key" type="string" required>
  Kunci API Anda (Jika tidak mem-parsing metode API dari header).
</ParamField>

<ParamField query="order" type="integer">
  Nomor *ID Order Provider* yang Anda pernah dapatkan/terima saat memilah hasil *JSON eksekusi POST `/order` sebelumnya*. Gunakan field integer ini untuk mengecek hanya 1 buah pesanan independen.
</ParamField>

<ParamField query="orders" type="string">
  Mencek perkembangan banyak status pesanan (Bulk cek) secara massal. Pisahkan antar ID String nya dengan tanda simbol koma (Misal: `1010,1011,1012`). **Batas limit toleransi maksimal 100 ID Provider** dalam satu paket *request*.
</ParamField>

## Contoh Integrasi `Single Order Status`

```bash Request Single (cURL) theme={null}
curl -X GET -H "X-Api-Key: YOUR_API_KEY" "https://app.sosmednext.com/api/v1/status?order=9210"
```

```json Response Data Single theme={null}
{
  "order": 9210,
  "invoice": "API1234567",
  "service": "Instagram Followers [Quality V1]",
  "charge": 15000.0,
  "status": "processing",
  "start_count": 0,
  "remains": 0,
  "currency": "IDR"
}
```

## Contoh Integrasi `Multiple Orders Status` (Untuk Cronjob Bulk Auto)

Bagi siklus *Cronjob update status* skrip CMS Anda, kami amat merekomendasikan *Multiple Orders* agar pengecekan dikelompokkan ke pengiriman data muatan massal mengirimkan sampai dengan *100* deret `ID` sekaligus per antrian siklus agar sistem kueri panel web Anda tidak *timeout/disconnect*.

```bash Request Multiple (cURL) theme={null}
curl -X GET -H "X-Api-Key: YOUR_API_KEY" "https://app.sosmednext.com/api/v1/status?orders=9210,9211,9212"
```

Berbeda dengan respons data *single* yang mencetak properti tunggal, **Struktur Response untuk mode multiple** membalas formasi *JSON Object Map Dictionary* (di mana kunci / label datanya adalah string `ID Order Provider`).

```json Format Data Dictionary Multiple theme={null}
{
  "9210": {
    "order": 9210,
    "invoice": "API1234567",
    "service": "Instagram Followers [Quality V1]",
    "charge": 15000.0,
    "status": "success",
    "start_count": 100,
    "remains": 0,
    "currency": "IDR"
  },
  "9211": {
    "order": 9211,
    "invoice": "API998877",
    "service": "TikTok Views Auto Fast",
    "charge": 500.0,
    "status": "processing",
    "start_count": 210,
    "remains": 0,
    "currency": "IDR"
  }
}
```

### Kamus Penjelasan Indikator Status:

Anda perlu meng-if else tipe balasan *`status`* untuk disamaratakan pada algoritma sinkronisasi MySQL *database/CMS* di tempat server Reseller Web milik Anda:

| Indikator Kode Enum     | Definisi / Keterangan Respon di Back-End Provider                                                                                                                                          |
| :---------------------- | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `pending`               | Berhasil dicatat: Pesanan resmi masuk *queue* (antrean provider) dan segera dipersiapkan.                                                                                                  |
| `processing`            | Operasi sedang berlangsung: Server sedang mensuplai jumlah ke tautan target.                                                                                                               |
| `success`               | Selesai dan Rampung: Pesanan telah tuntas tersuplai sesuai target kuantitas yang ada.                                                                                                      |
| `error` atau `canceled` | Orderan tertolak / terhambat karena masalah limit / keliru data target / link dilarang publik / server sedang drop, maka *mutasi refund akan dipotong sebagian / dikembalikan balancenya*. |
| `partial`               | Pesanan *Selesai Setengah Jalan/Mentok*: Target pesanan disuplai sebagian saldonya lalu terhenti atau dikembalikan parsial balance ke rekening balance user API.                           |

*Informasi metrik lainnya*:
Field `start_count` adalah jumlah pesanan asalan (follower lama / like lama bawaan asli target) yang sudah menempel di tautannya sewaktu panel baru di*start* injeksi.
Field `remains` adalah volume sisa layanan pesanan yang urung dieksekusi mesin provider ketika *terjadi error cancel/partial* dalam transaksi.
