Dokumentasi API
Empat endpoint, semuanya membalas JSON, tanpa perlu kunci API. Batasnya sama dengan lewat formulir: 20 link per jam dan 100 link per hari untuk satu alamat IP.
Buat link pendek
POST https://s.mixdom.id/api/shorten
| Kolom | Wajib | Keterangan |
|---|---|---|
url | Ya | Alamat tujuan. Tanpa skema, https:// ditambahkan otomatis. |
alias | Tidak | Kode pilihan sendiri, 3–32 karakter. |
password | Tidak | Kunci link. Minimal 4 karakter. |
expires_days | Tidak | Masa aktif dalam hari, maksimal 365. |
max_clicks | Tidak | Link berhenti bekerja setelah dibuka sekian kali. |
Contoh permintaan
curl -X POST https://s.mixdom.id/api/shorten \
-H "Content-Type: application/json" \
-d '{"url":"https://contoh.com/artikel/panjang","alias":"kucing-oren"}'
Contoh balasan
{
"ok": true,
"reused": false,
"data": {
"code": "kucing-oren",
"short_url": "https://s.mixdom.id/kucing-oren",
"target_url": "https://contoh.com/artikel/panjang",
"stats_url": "https://s.mixdom.id/stats/kucing-oren",
"qr_url": "https://s.mixdom.id/api/qr/kucing-oren",
"expires_at": null,
"created_at": "2026-08-19 10:24:11"
}
}
Lihat detail link
GET https://s.mixdom.id/api/info/{kode}
Membalas jumlah klik, status, dan waktu pembuatan. Untuk link berkata sandi, target_url sengaja dikosongkan.
Ambil QR code
GET https://s.mixdom.id/api/qr/{kode}
Membalas gambar SVG, bukan JSON. Bisa langsung dipasang di <img src> atau diunduh untuk dicetak.
QR dibuat di server ini sendiri, jadi alamat linkmu tidak pernah dikirim ke pembuat QR pihak ketiga.
Cek ketersediaan alias
GET https://s.mixdom.id/api/alias-check?alias=kucing-oren
{ "ok": true, "available": false, "message": "Alias sudah dipakai. Coba yang lain." }
Kode status
| Kode | Artinya |
|---|---|
201 | Link berhasil dibuat. |
404 | Kode tidak terdaftar. |
419 | Token sesi kedaluwarsa. Muat ulang halaman. |
422 | Ada kolom yang tidak lolos periksa. Lihat error dan field. |
429 | Batas pemakaian tercapai. Lihat header Retry-After. |
Contoh dengan PHP
$ch = curl_init('https://s.mixdom.id/api/shorten');
curl_setopt_array($ch, [
CURLOPT_POST => true,
CURLOPT_POSTFIELDS => json_encode(['url' => $alamatPanjang]),
CURLOPT_HTTPHEADER => ['Content-Type: application/json'],
CURLOPT_RETURNTRANSFER => true,
]);
$hasil = json_decode(curl_exec($ch), true);
echo $hasil['data']['short_url'];
Contoh dengan JavaScript
const res = await fetch("https://s.mixdom.id/api/shorten", {
method: "POST",
headers: { "Content-Type": "application/json" },
body: JSON.stringify({ url: alamatPanjang })
});
const { data } = await res.json();
console.log(data.short_url);
Sopan santun
- Beri jeda antar permintaan. Jangan mengirim ratusan permintaan bersamaan.
- Simpan hasilnya di sisi kamu; jangan memanggil
shortenberulang untuk URL yang sama. - Jangan memakai API untuk menyamarkan tujuan akhir dalam rantai pengalihan.
- Kalau butuh volume lebih besar, hubungi info@mixdom.id sebelum menaikkan trafik.