EN IT ES DE FR
link-to@console:~$
POST https://link-to.site/create

// EINFÜHRUNG

Die Link-To API ermöglicht es dir, URLs programmatisch zu kürzen. Unsere API ist RESTful, gibt JSON-Antworten zurück und verwendet Standard-HTTP-Antwortcodes. Diese Dokumentation bietet alle Informationen, die du benötigst, um unseren URL-Kürzungsdienst in deine Anwendungen zu integrieren.

Basis-URL: https://link-to.site

// API-SPEZIFIKATIONEN

Lade unsere maschinenlesbaren API-Spezifikationen für die Integration mit Tools wie Postman, Swagger UI oder automatisierten SDK-Generatoren herunter.

// AUTHENTIFIZIERUNG

Alle API-Anfragen erfordern eine Authentifizierung mit deinem API-Schlüssel. Du kannst deinen API-Schlüssel aus deinem Konto-Dashboard beziehen, nachdem du einen Plan mit API-Zugang erworben hast.

$ api_schluessel_holen()

  1. Melde dich in deinem Konto-Dashboard an
  2. Navigiere zu Kontoeinstellungen
  3. Dein API-Schlüssel wird im Bereich API-Zugang angezeigt
  4. Kopiere deinen API-Schlüssel und bewahre ihn sicher auf
Halte deinen API-Schlüssel sicher! Teile ihn niemals öffentlich oder committe ihn in Versionskontrolle.

$ authentifizierungsmethoden()

Wir unterstützen zwei Authentifizierungsmethoden für Abwärtskompatibilität:

Methode 1: Header-Authentifizierung (Empfohlen)

HTTP Headers
X-API-Key: dein_api_schluessel_hier
Content-Type: application/json

Methode 2: POST-Parameter (Legacy)

Form Data
apikey=dein_api_schluessel_hier&url=https://beispiel.de

// ANFRAGE-PARAMETER

ParameterTypErforderlichBeschreibung
urlstringErforderlichDie lange URL zum Kürzen. Muss eine gültige HTTP/HTTPS-URL sein.
groupstringOptionalGruppen-ID oder API-Gruppenkennung zur Organisation deiner Links.

// CODE-BEISPIELE

$ curl_modern()

bash
curl -X POST https://link-to.site/create \
  -H 'Content-Type: application/json' \
  -H 'X-API-Key: dein_api_schluessel_hier' \
  -d '{
    "url": "https://beispiel.de"
  }'

$ php_beispiel()

php
<?php
$apiUrl = 'https://link-to.site/create';
$apiKey = 'dein_api_schluessel_hier';

$data = json_encode(['url' => 'https://beispiel.de']);

$options = [
    'http' => [
        'method' => 'POST',
        'header' => [
            'Content-Type: application/json',
            'X-API-Key: ' . $apiKey
        ],
        'content' => $data
    ]
];

$context = stream_context_create($options);
$response = file_get_contents($apiUrl, false, $context);
$result = json_decode($response, true);

if ($result['success'] === 'true') {
    echo "Kurz-URL: " . $result['short_url'];
} else {
    echo "Fehler: " . $result['message'];
}
?>

$ javascript_beispiel()

javascript
const apiUrl = 'https://link-to.site/create';
const apiKey = 'dein_api_schluessel_hier';

const data = { url: 'https://beispiel.de' };

fetch(apiUrl, {
    method: 'POST',
    headers: {
        'Content-Type': 'application/json',
        'X-API-Key': apiKey
    },
    body: JSON.stringify(data)
})
.then(response => response.json())
.then(result => {
    if (result.success === 'true') {
        console.log('Kurz-URL:', result.short_url);
    } else {
        console.error('Fehler:', result.message);
    }
})
.catch(error => console.error('Anfrage fehlgeschlagen:', error));

$ python_beispiel()

python
import requests

api_url = 'https://link-to.site/create'
api_key = 'dein_api_schluessel_hier'

data = {'url': 'https://beispiel.de'}
headers = {
    'Content-Type': 'application/json',
    'X-API-Key': api_key
}

response = requests.post(api_url, json=data, headers=headers)
result = response.json()

if result['success'] == 'true':
    print(f"Kurz-URL: {result['short_url']}")
else:
    print(f"Fehler: {result['message']}")

// ANTWORT-FORMAT

Erfolgreiche Antwort

json
{
    "success": "true",
    "timestamps": "2025/11/13 16:53:37",
    "message": "Zertifizierung abgeschlossen",
    "error": "",
    "short_code": "abc123",
    "short_url": "https://link-to.site/abc123",
    "long_url": "https://beispiel.de",
    "qr_code": "https://link-to.site/qrcode/abc123.png",
    "title": "Beispiel Domain",
    "clicks": 0
}

Fehler-Antwort

json
{
    "success": "false",
    "timestamps": "2025/11/13 16:53:37",
    "message": "API-Schlüssel nicht erkannt",
    "error": "301"
}

// FEHLERCODES

Die API verwendet die folgenden Fehlercodes, um spezifische Probleme anzuzeigen:

CodeBeschreibung
300API nicht korrekt abgefragt - Ungültiges Anfrageformat
301API-Schlüssel nicht erkannt - Authentifizierung fehlt
302URL nicht gefunden - Erforderlicher 'url'-Parameter fehlt
303Benutzer nicht gefunden oder falscher API-Schlüssel - Ungültige Anmeldedaten
304Die kürzungsfähigen URLs sind aufgebraucht - Keine verfügbaren URL-Slots
305Die angegebene URL wurde bereits gekürzt
306Die URL konnte nicht verarbeitet werden - Verbindungs- oder Abruffehler
307404-Fehler - Die Seite existiert nicht
308Die Seite wird auf einem Server mit aktiviertem Mod_Security gehostet
309Die Seite wird auf einem sicheren Server mit Cloudflare-Schutz gehostet
310Die URL führt zu einem sozialen Netzwerk - Nicht erlaubt
311HTTP-Header gaben 0 als Dateigröße zurück - Leere Antwort
312Die angegebene Gruppe existiert nicht
429Ratenlimit überschritten - Versuche es später erneut

// RATENBEGRENZUNG

Um faire Nutzung und Systemstabilität zu gewährleisten, sind API-Anfragen begrenzt:

Ratenlimit: 1.000 Anfragen pro Stunde pro API-Schlüssel

Wenn du das Ratenlimit überschreitest, erhältst du einen 429 Fehler. Das Ratenlimit wird jede Stunde zurückgesetzt. Wenn du höhere Limits benötigst, kontaktiere den Support.

// BEST PRACTICES

  • Sichere deinen API-Schlüssel: Exponiere ihn niemals in clientseitigem Code oder öffentlichen Repositories
  • Behandle Fehler korrekt: Prüfe immer das success-Feld und behandle Fehler angemessen
  • Cache Antworten: Speichere gekürzte URLs, um doppelte API-Aufrufe zu vermeiden
  • Respektiere Ratenlimits: Implementiere exponentielles Backoff, wenn du Ratenlimits erreichst
  • Validiere URLs: Stelle sicher, dass URLs gültig sind, bevor du sie an die API sendest

// SUPPORT

Brauchst du Hilfe? Wir sind für dich da: