API para Desarrolladores de URLs Cortas Vivoldi
La API para desarrolladores de Vivoldi te permite integrar fácilmente funciones de acortamiento de URLs, gestión de enlaces y seguimiento de clics en sitios web, aplicaciones móviles y sistemas internos mediante APIs REST y respuestas JSON.
Todas las APIs devuelven datos estructurados en formato JSON y funcionan perfectamente con JavaScript, Python, Java, PHP, Android, iOS y prácticamente cualquier entorno compatible con solicitudes HTTP.
Autenticación de API
Todas las solicitudes de API requieren una clave de API en el encabezado Authorization.
Puedes obtener tu clave desde la página API para Desarrolladores en el panel de control.
Authorization: APIKey {Your API Key}
Aviso (HTTP 403)
Causa: Algunos valores de User-Agent no identificables pueden ser bloqueados por las políticas de seguridad.
Solución: Especifica un User-Agent único con el nombre de tu empresa o marca de forma clara.
User-Agent: MyBrand
Se recomienda que todas las solicitudes de API incluyan lógica de reintento automático en caso de fallo.
¿Qué es la API para Desarrolladores de Vivoldi?
La API para desarrolladores de Vivoldi es una API REST que permite integrar funciones de acortamiento de URLs y gestión de enlaces directamente en sitios web, aplicaciones móviles y sistemas internos.
Además de crear enlaces cortos, también puedes automatizar múltiples funciones de Vivoldi mediante la API, como estadísticas de clics, gestión de grupos de enlaces, generación de códigos QR, cupones y sellos digitales.
Casos de Uso Más Comunes
- Generar URLs cortas automáticamente para campañas de marketing
- Optimizar el intercambio de enlaces de productos en plataformas eCommerce
- Automatizar informes y recopilación de estadísticas de clics en sistemas internos
- Combinar deep links con URLs cortas para impulsar instalaciones de apps móviles
- Automatizar la gestión de enlaces para redes sociales, SMS y correos electrónicos
Preparación Antes de Usar la API
Para utilizar la API de Vivoldi, primero debes crear una cuenta y generar una clave API.
La clave emitida puede incluirse en el encabezado Authorization para acceder a los endpoints REST API basados en HTTPS.
Paso 1 — Crear una Cuenta en Vivoldi
Después de registrarte, puedes usar las funciones de la API incluso con el plan gratuito.
Los planes de pago ofrecen límites de API más altos y funciones avanzadas adicionales.
Paso 2 — Generar una Clave API
Una vez iniciada la sesión, puedes generar tu clave API desde la sección Developer API del panel de control.
Por seguridad, se recomienda almacenar la clave API en variables de entorno del servidor o en sistemas backend seguros.
Paso 3 — Probar Tu Primera Solicitud API
Agrega la clave API al encabezado Authorization y envía una solicitud POST al endpoint indicado abajo para crear una URL corta.
Cuando la configuración esté lista, podrás integrar Vivoldi en distintos servicios utilizando las guías y ejemplos de código disponibles a continuación.
Cómo llamar a la API
La API de Vivoldi está diseñada sobre una arquitectura REST API basada en HTTPS.
Todas las solicitudes deben incluir autenticación mediante una API Key en los encabezados HTTP, y el Content-Type debe establecerse como application/json.
Todas las respuestas se devuelven en formato JSON utilizando una estructura consistente con los campos code, message y result.
Un valor 0 en code indica que la solicitud fue procesada correctamente, mientras que los códigos y mensajes de error permiten implementar un manejo adecuado de excepciones.
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
}
| Campos | Descripción | Tipo |
|---|---|---|
| code | Código de respuesta. Un valor de 0 indica éxito; cualquier otro valor indica fallo.Este código es independiente del estado HTTP y se devuelve solo si el estado HTTP está en el rango 2xx o 3xx. |
int |
| message | Incluido solo si code no es 0. Proporciona un mensaje de error que explica el fallo.Puede estar vacío o no aparecer en caso de éxito. |
string |
| result | Los datos reales devueltos por la API. Según el tipo de API, el formato puede ser una cadena de texto o un objeto JSON. |
object |
Examples:
Vivoldi ofrece ejemplos de código REST API para diferentes entornos de desarrollo, incluidos JavaScript, PHP y Java.
Los ejemplos siguientes están basados en la API de creación de URLs cortas (/api/v2/create), por lo que puedes comenzar a probarla de inmediato simplemente cambiando la API Key y el dominio.
Gracias a su estructura de solicitudes y respuestas basada en JSON, la API puede integrarse fácilmente en sitios web, paneles de administración, sistemas internos, plataformas de automatización de marketing y muchos otros servicios.
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8"/>
<script src="https://code.jquery.com/jquery-4.0.0.min.js" crossorigin="anonymous"></script>
</head>
<body>
<form id="exampleForm">
<button id="btnCreateLink" type="button">Create Link</button>
</form>
<script type="text/javascript">
$(function(){
$("#btnCreateLink").on('click', function(evt){
evt.preventDefault();
$.ajax({
type: 'POST',
url: 'https://vivoldi.com/api/link/v2/create',
data: JSON.stringify({'url':'https://google.com','domain':'https://vvd.bz'}),
headers: {'Authorization':'APIKey oc3w9m4ytso9mv5e8yse9XXXXXXXXXX'},
contentType: 'application/json; charset=utf-8',
dataType: 'json',
timeout: 5000
}).done(function(res){
if (res.code === 0) {
alert('short url: ' + res.result);
} else {
alert('code: ' + res.code + ', message: ' + res.message);
}
}).fail(function(xhr, textStatus, e){
alert('error: ' + e);
});
});
});
</script>
</body>
</html>
<?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")));
}
}
}
}
}
}
}