KI-Module Funktionen Schritte Preise FAQ Blog Tutorial Videos Glossar Über uns Agenturen
REST API v1

Integrationsleitfaden REST API

Verbinden Sie Ihre Anwendungen über die REST API mit AILabsAudit. Rufen Sie Audits, Kunden, Berichte und Analytics programmatisch ab.

Inhaltsverzeichnis

  1. Voraussetzungen
  2. API Key erhalten
  3. Authentifizierung
  4. Erste Anfrage
  5. Endpoints
  6. Paginierung & Filter
  7. Fehler & Rate Limiting
  8. Codebeispiele

Voraussetzungen

Stellen Sie vor der Integration der REST API sicher, dass Sie Folgendes haben:

1

Ein Enterprise- oder Partner-Konto

Der API-Zugang erfordert einen Enterprise-Plan oder Partner-Status. Zugang beantragen, falls Sie noch keinen haben.

2

Einen REST API Key

Sie benötigen einen API Key (Format aila_...), der auf der Seite API & Integrationen generiert wird.

3

Einen HTTP-Client

Jeder HTTP-Client funktioniert: curl, Python requests, JavaScript fetch, Postman usw.

API Key erhalten

Ihr API Key ist derselbe, der auch für MCP-Verbindungen verwendet wird. Falls Sie bereits einen haben, können Sie ihn direkt verwenden.

1

Zu API & Integrationen navigieren

Gehen Sie in Ihrem Dashboard zu Konto → API & Integrationen.

2

Neuen Key erstellen

Klicken Sie auf „API Key erstellen", vergeben Sie einen Namen (z. B. „Meine App") und wählen Sie die gewünschten Berechtigungen.

3

Kopieren und sicher aufbewahren

Ihr Key beginnt mit aila_. Kopieren Sie ihn sofort — er wird nicht erneut angezeigt. Speichern Sie ihn in einer Umgebungsvariable, niemals im Quellcode.

Tipp

Sie können die API auch interaktiv über unsere Swagger-Dokumentation erkunden, die alle verfügbaren Endpoints auflistet.

Authentifizierung

Die API unterstützt zwei Authentifizierungsmethoden. Wählen Sie die für Ihren Stack passende:

Methode 1: X-Api-Key Header

CURL
curl -H "X-Api-Key: aila_your_key_here" \
     https://ailabsaudit.com/api/v1/clients

Methode 2: Authorization Bearer

CURL
curl -H "Authorization: Bearer aila_your_key_here" \
     https://ailabsaudit.com/api/v1/clients

Sicherheit

Geben Sie Ihren API Key niemals in clientseitigem Code preis (JavaScript im Browser). Führen Sie API-Aufrufe immer von Ihrem Server (Backend) aus durch.

Erste Anfrage

Überprüfen wir, ob Ihre Verbindung funktioniert, indem wir Ihre Kundenliste abrufen:

CURL
curl -s -H "X-Api-Key: aila_your_key_here" \
     https://ailabsaudit.com/api/v1/clients | python3 -m json.tool

Erfolgreiche Antwort (200 OK)

JSON
{
    "success": true,
    "data": [
        {
            "id": 42,
            "name": "Acme Corp",
            "sector": "Technology",
            "website": "https://acme.com",
            "country": "FR",
            "created_at": "2025-01-15T10:30:00Z"
        }
    ],
    "pagination": {
        "page": 1,
        "per_page": 20,
        "total": 1,
        "total_pages": 1
    }
}

Das war's!

Wenn Sie Ihre Kundenliste sehen, funktioniert Ihr API Key. Sie können nun alle verfügbaren Endpoints unten erkunden.

Endpoints

Die API ist in 8 Endpoint-Gruppen organisiert. Alle URLs haben das Präfix https://ailabsaudit.com/api/v1/.

Kunden

Methode Endpoint Description
GET /clients Alle Kunden auflisten
GET /clients/{id} Kundendetail
GET /clients/{id}/contacts Kundenkontakte
GET /clients/{id}/competitors Wettbewerber des Kunden
GET /clients/{id}/360 Vollständige 360-Ansicht

Audits

Methode Endpoint Description
GET /audits Audits auflisten
GET /audits/{id} Audit-Detail
GET /audits/{id}/results Audit-Ergebnisse
GET /audits/{id}/scores Sichtbarkeits-Scores
POST /audits/launch Neuen Audit starten

Berichte

Methode Endpoint Description
GET /reports Berichte auflisten
GET /reports/{id} Berichtsdetail
GET /reports/{id}/download PDF herunterladen

Aktionspläne

Methode Endpoint Description
GET /action-plans Aktionspläne auflisten
GET /action-plans/{id} Plandetail
GET /action-plans/{id}/progress Planfortschritt

Fragebögen

Methode Endpoint Description
GET /questionnaires Fragebögen auflisten
GET /questionnaires/{id}/responses Antworten zum Fragebogen

Analytics

Methode Endpoint Description
GET /analytics/portfolio Portfolio-Übersicht
GET /analytics/leaderboard Sichtbarkeits-Ranking
GET /analytics/scores/distribution Score-Verteilung

Modelle

Methode Endpoint Description
GET /models Verfügbare KI-Modelle auflisten
GET /models/{id} Modelldetail & Preise

Konto

Methode Endpoint Description
GET /account/profile Ihr Profil
GET /account/credits Guthaben
GET /account/subscription Abonnement-Info

Vollständige Dokumentation

Die vollständige Liste aller Endpoints, Parameter und Antwort-Schemas finden Sie in der interaktiven Swagger-Dokumentation.

Paginierung & Filter

Alle Listen-Endpoints unterstützen Paginierung über Query-Parameter:

Parameter Standard Description
page 1 Seitennummer
per_page 20 Einträge pro Seite (max 100)

Beispiel mit Paginierung

CURL
curl -H "X-Api-Key: aila_your_key_here" \
     "https://ailabsaudit.com/api/v1/audits?page=2&per_page=10"

Paginierungs-Objekt in der Antwort

JSON
{
    "pagination": {
        "page": 2,
        "per_page": 10,
        "total": 47,
        "total_pages": 5
    }
}

Fehler & Rate Limiting

HTTP-Statuscodes

Code Bedeutung
200Erfolg
400Ungültige Anfrage (fehlerhafte Parameter)
401Nicht autorisiert (API Key fehlt oder ungültig)
403Verboten (unzureichende Berechtigungen)
404Nicht gefunden
429Rate Limit erreicht
500Serverfehler

Format der Fehlerantwort

JSON
{
    "success": false,
    "error": {
        "code": 401,
        "message": "Invalid or missing API key"
    }
}

Rate Limiting

Die API erlaubt 60 Anfragen pro Minute pro API Key. Die Antwort-Header enthalten Rate-Limit-Informationen:

HTTP HEADERS
X-RateLimit-Limit: 60
X-RateLimit-Remaining: 58
X-RateLimit-Reset: 1709472000

Wenn Sie das Limit erreichen

Wenn Sie eine 429-Antwort erhalten, warten Sie bis zum X-RateLimit-Reset-Timestamp, bevor Sie es erneut versuchen. Implementieren Sie exponentielles Backoff in Ihrem Code für den Produktiveinsatz.

Codebeispiele

Hier finden Sie vollständige Beispiele für den Einstieg in Ihrer bevorzugten Programmiersprache:

import requests

API_KEY = "aila_your_key_here"
BASE_URL = "https://ailabsaudit.com/api/v1"

headers = {"X-Api-Key": API_KEY}

# List clients
response = requests.get(f"{BASE_URL}/clients", headers=headers)
clients = response.json()

for client in clients["data"]:
    print(f"{client['name']} — {client['sector']}")

    # Get audits for each client
    audits = requests.get(
        f"{BASE_URL}/audits",
        headers=headers,
        params={"client_id": client["id"], "per_page": 5}
    ).json()

    for audit in audits["data"]:
        print(f"  Audit #{audit['id']} — Score: {audit.get('score', 'N/A')}")

# Download a report as PDF
report_id = 1
r = requests.get(
    f"{BASE_URL}/reports/{report_id}/download",
    headers=headers
)
if r.status_code == 200:
    with open(f"report_{report_id}.pdf", "wb") as f:
        f.write(r.content)
    print(f"Report saved: report_{report_id}.pdf")
const API_KEY = "aila_your_key_here";
const BASE_URL = "https://ailabsaudit.com/api/v1";

const headers = { "X-Api-Key": API_KEY };

// List clients
async function getClients() {
    const response = await fetch(`${BASE_URL}/clients`, { headers });
    const { data, pagination } = await response.json();

    console.log(`${pagination.total} clients found`);
    data.forEach(client => {
        console.log(`${client.name} — ${client.sector}`);
    });

    return data;
}

// Get audit results
async function getAuditResults(auditId) {
    const response = await fetch(
        `${BASE_URL}/audits/${auditId}/results`,
        { headers }
    );
    return await response.json();
}

// Paginate through all audits
async function getAllAudits() {
    let page = 1;
    let allAudits = [];

    while (true) {
        const response = await fetch(
            `${BASE_URL}/audits?page=${page}&per_page=50`,
            { headers }
        );
        const { data, pagination } = await response.json();
        allAudits.push(...data);

        if (page >= pagination.total_pages) break;
        page++;
    }

    return allAudits;
}

getClients().then(console.log);
<?php
$apiKey = "aila_your_key_here";
$baseUrl = "https://ailabsaudit.com/api/v1";

function apiRequest($endpoint, $params = []) {
    global $apiKey, $baseUrl;

    $url = $baseUrl . $endpoint;
    if (!empty($params)) {
        $url .= "?" . http_build_query($params);
    }

    $ch = curl_init($url);
    curl_setopt_array($ch, [
        CURLOPT_RETURNTRANSFER => true,
        CURLOPT_HTTPHEADER => ["X-Api-Key: $apiKey"],
    ]);

    $response = curl_exec($ch);
    $httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
    curl_close($ch);

    if ($httpCode !== 200) {
        throw new Exception("API error: HTTP $httpCode");
    }

    return json_decode($response, true);
}

// List clients
$clients = apiRequest("/clients");
foreach ($clients["data"] as $client) {
    echo "{$client['name']} — {$client['sector']}\n";
}

// Get audits with pagination
$audits = apiRequest("/audits", [
    "page" => 1,
    "per_page" => 10
]);
echo "Total audits: {$audits['pagination']['total']}\n";

// Get client 360 view
$client360 = apiRequest("/clients/42/360");
print_r($client360["data"]);

Bereit, die API zu integrieren?

Erstellen Sie Ihren API Key in 30 Sekunden und beginnen Sie mit der Integration.

Jetzt starten

Bereit, Ihre KI-Sichtbarkeit zu prüfen?

Erstellen Sie Ihr kostenloses Konto und erhalten Sie 1000 Bonus-Credits.

Kostenloses Konto erstellen