API Developer URL Pendek Vivoldi
API Developer Vivoldi memungkinkan Anda mengintegrasikan fitur pemendek URL, manajemen tautan, dan pelacakan klik langsung ke website, aplikasi mobile, maupun sistem internal menggunakan REST API dan respons JSON.
Semua API menyediakan data JSON yang terstruktur dan dapat digunakan dengan lancar di berbagai lingkungan pengembangan seperti JavaScript, Python, Java, PHP, Android, iOS, serta platform lain yang mendukung permintaan HTTP.
Autentikasi API
Semua permintaan API memerlukan API key di header Authorization. SDK langganan Web Push menggunakan Public Key domain sebagai gantinya, dan SDK validasi link berfungsi tanpa API key.
API key dapat dibuat di halaman Developer API pada dashboard. Gunakan hanya di server dan jangan cantumkan di halaman web atau kode aplikasi.
Authorization: APIKey {Your API Key}
Peringatan (HTTP 403)
Penyebab: Beberapa User-Agent yang tidak dapat diidentifikasi mungkin diblokir karena kebijakan keamanan.
Solusi: Tentukan User-Agent unik dengan jelas menggunakan nama perusahaan atau merek Anda.
User-Agent: MyBrand
Disarankan semua permintaan API menyertakan logika percobaan ulang otomatis jika terjadi kegagalan.
Apa Itu API Developer Vivoldi?
API Developer Vivoldi adalah REST API yang memungkinkan integrasi fitur pemendek URL dan manajemen tautan langsung ke website, aplikasi mobile, maupun sistem internal perusahaan.
Tidak hanya untuk membuat tautan pendek, API ini juga dapat digunakan untuk mengotomatiskan berbagai fitur Vivoldi seperti statistik klik, manajemen grup tautan, pembuatan kode QR, kupon digital, dan fitur stamp.
Contoh Penggunaan Utama
- Membuat short URL otomatis untuk kampanye marketing
- Mengoptimalkan pembagian tautan produk di platform eCommerce
- Mengotomatiskan laporan dan analitik klik di sistem internal
- Menggabungkan deep link dan short URL untuk meningkatkan instalasi aplikasi
- Mengelola tautan otomatis untuk media sosial, SMS, dan email marketing
Persiapan Sebelum Menggunakan API
Untuk menggunakan API Vivoldi, Anda perlu membuat akun dan menghasilkan API key terlebih dahulu.
API key yang telah dibuat dapat dimasukkan ke header Authorization untuk mengakses REST API berbasis HTTPS.
Langkah 1 — Buat Akun Vivoldi
Setelah mendaftar, Anda sudah dapat menggunakan fitur API melalui paket gratis.
Paket berbayar menyediakan batas penggunaan API yang lebih tinggi serta fitur tambahan lainnya.
Langkah 2 — Generate API Key
Setelah login, Anda dapat membuat API key melalui halaman Developer API di dashboard.
Gunakan API key hanya di server dan jangan cantumkan di halaman web atau kode aplikasi. Simpan dengan aman, misalnya di environment variable server.
Langkah 3 — Uji Request API Pertama
Masukkan API key Anda ke header Authorization lalu kirim request POST ke endpoint di bawah untuk membuat short URL.
Setelah semuanya siap, Anda dapat mulai mengintegrasikan Vivoldi ke berbagai layanan menggunakan panduan API dan contoh kode berikut.
Cara memanggil API
API Vivoldi dibangun menggunakan arsitektur REST API berbasis HTTPS.
Setiap request harus dikirim dari server dan menyertakan autentikasi menggunakan API Key pada HTTP Header, dengan Content-Type application/json.
Semua respons dikembalikan dalam format JSON dengan struktur yang konsisten berupa code, message, dan result.
Nilai 0 pada code menandakan request berhasil diproses, sedangkan kode dan pesan error dapat digunakan untuk implementasi exception handling maupun penanganan kegagalan request.
Host: https://vivoldi.com/api/{uri}
Authorization: APIKey {Your API Key}
Content-type: application/json
User-Agent: {Your User-Agent}
Accept-Language: en
{
"code": 0,
"message": "",
"result": Object
}
| Bidang | Deskripsi | Jenis |
|---|---|---|
| code | Kode respons. Nilai 0 menunjukkan berhasil, sedangkan nilai selain 0 menunjukkan gagal.Kode ini terpisah dari status HTTP dan hanya dikembalikan jika status HTTP berada dalam kisaran 2xx atau 3xx. |
int |
| message | Hanya disertakan jika code tidak sama dengan 0. Menyediakan pesan kesalahan yang menjelaskan kegagalan.Bisa kosong atau tidak disertakan jika permintaan berhasil. |
string |
| result | Data sebenarnya yang dikembalikan oleh API. Formatnya dapat berupa String atau Objek JSON, tergantung jenis API. |
object |
Examples:
Vivoldi menyediakan contoh kode REST API untuk berbagai lingkungan pengembangan seperti JavaScript, PHP, dan Java.
Contoh di bawah ini menggunakan API pembuatan short URL (/api/v2/create), sehingga Anda dapat langsung melakukan pengujian hanya dengan mengganti API Key dan domain.
Dengan struktur request dan response berbasis JSON, API ini dapat diintegrasikan dengan mudah ke website, dashboard admin, sistem internal, platform marketing automation, dan berbagai layanan lainnya.
// create-link.mjs: run on your server (Node.js 18 or later).
// Keep your API Key on the server. Never add it to web pages or app code.
const apiKey = process.env.VIVOLDI_API_KEY;
const response = await fetch('https://vivoldi.com/api/link/v2/create', {
method: 'POST',
headers: {
'Authorization': `APIKey ${apiKey}`,
'Content-Type': 'application/json',
'User-Agent': 'MyBrand'
},
body: JSON.stringify({'url':'https://google.com','domain':'https://vvd.bz'}),
signal: AbortSignal.timeout(5000)
});
const res = await response.json();
if (res.code === 0) {
console.log('short url: ' + res.result);
} else {
console.log('code: ' + res.code + ', message: ' + res.message);
}
<?php
$url = "https://vivoldi.com/api/link/v2/create";
$params = array (
"url" => "https://www.facebook.com/vivoldi365",
"domain" => "https://vvd.bz",
);
$body = json_encode($params);
$headers = array(
"Authorization: APIKey oc3w9m4ytso9mv5e8yse9XXXXXXXXXX",
"Content-Type: application/json"
);
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_HEADER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_TIMEOUT, 10000);
curl_setopt($ch, CURLOPT_POSTFIELDS, $body);
$result = curl_exec($ch);
if ($result === FALSE) {
echo "Error sending: " . curl_error($ch);
} else {
print_r($result);
}
curl_close($ch);
?>
package com.example;
import org.json.JSONObject;
import org.springframework.http.HttpStatus;
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
public class CreateLink {
public static void main(String[] args) {
try (HttpClient client = HttpClient.newBuilder().build()) {
JSONObject params = new JSONObject();
params.put("url", "https://www.facebook.com/vivoldi365");
params.put("domain", "https://vvd.bz");
HttpRequest request = HttpRequest.newBuilder()
.uri(URI.create("https://vivoldi.com/api/link/v2/create"))
.header("Content-Type", "application/json")
.header("Authorization", "APIKey oc3w9m4ytso9mv5e8yse9XXXXXXXXXX")
.POST(HttpRequest.BodyPublishers.ofString(params.toString()))
.build();
HttpResponse<String> response;
try {
response = client.send(request, HttpResponse.BodyHandlers.ofString());
} catch (Exception e) {
throw new RuntimeException(e);
}
if (response != null) {
if (response.statusCode() == HttpStatus.OK.value()) {
String jsonString = response.body();
if (jsonString != null && !jsonString.isEmpty()) {
JSONObject json = new JSONObject(jsonString);
if (json.getInt("code") == 0) {
System.out.println("Short URL: " + json.getString("result"));
} else {
System.out.println("Failed: " + String.format("[%d] %s", json.getInt("code"), json.getString("message")));
}
}
}
}
}
}
}