Vivoldi Entwickler-API

Mit der REST-API von Vivoldi können Sie automatisierte und maßgeschneiderte Funktionen in jeder Umgebung implementieren — sei es auf einer Website, in einer mobilen App oder in einem internen System.
Die API ist so konzipiert, dass Sie zentrale Funktionen direkt vom Server oder aus der Anwendung heraus programmatisch steuern können, ohne das Dashboard aufrufen zu müssen.

Die API kann frei mit verschiedenen Programmiersprachen und Plattformen wie JavaScript, Python, PHP, Java, Android und iOS verwendet werden.
Alle Funktionen werden in einer klaren und intuitiven Form bereitgestellt, was die Entwicklungseffizienz erheblich steigert.

Für die Nutzung der API benötigen Sie einen API-Schlüssel zur Authentifizierung. Bitte stellen Sie sicher, dass dieser Schlüssel sicher aufbewahrt und nicht öffentlich zugänglich gemacht wird.

✨ Hinweise:

  • Der API-Schlüssel kann maximal einmal pro Monat geändert werden.
  • Auch Nutzer des kostenlosen Tarifs können die API uneingeschränkt verwenden.
  • Anfragelimits und Antwortgeschwindigkeiten können je nach Tarif variieren.

Wie man die API aufruft

Request
Host: https://vivoldi.com/api/{uri}
Authorization: APIKey {Your API Key}
Content-type: application/json
User-agent: {Your User-agent}
Accept-Language: en
Fügen Sie einfach Authorisation und Content-type zu Ihrem Http-Header hinzu und rufen Sie die API auf.
Response
{
	"code": 0,
	"message": "",
	"result": Object
}
FelderBeschreibungTyp
codeAntwortcode. Ein Wert von 0 steht für Erfolg, jeder andere Wert bedeutet Fehler.
Dieser Code ist vom HTTP-Status unabhängig und wird nur bei einem HTTP-Status im Bereich 2xx oder 3xx zurückgegeben.
int
messageNur enthalten, wenn code ungleich 0 ist. Gibt eine Fehlermeldung zur Ursache zurück.
Bei Erfolg kann dieses Feld leer oder weggelassen sein.
string
resultDie tatsächlichen Daten, die von der API zurückgegeben werden. Je nach API-Typ im Format String oder JSON-Objekt.object

Examples:

<!DOCTYPE html>
<html>
<head>
	<meta charset="utf-8"/>
	<script src="https://code.jquery.com/jquery-3.4.1.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")));
                        }
                    }
                }
            }
        }
    }
}
Bitte kontaktieren Sie Vivoldi, wenn Sie Verbesserungen oder Änderungen an der REST API benötigen.