Dokumentation · Systemvoraussetzungen

API-, Netzwerk- und SSL-Anforderungen

Zweck

ADP Car Market Hub ist im Wesentlichen ein Integrations-Plugin: Es verbringt die meiste Zeit seiner Laufzeit damit, mit entfernten HTTPS-Endpunkten zu kommunizieren – der AutoScout24-API für Fahrzeuge und Bilder, dem verwalteten Google Gemini-Endpunkt für die optionale KI-Inhaltsgenerierung und (indirekt) WordPress.org für Plugin-Updates. Dieses Dokument spezifiziert die Anforderungen an das ausgehende Netzwerk und TLS, die das Plugin an den Host stellt, und erklärt, wie diese vor dem Live-Gang validiert werden können.

Wann dieses Dokument zu verwenden ist

Verwenden Sie dieses Dokument, wenn Sie:

  • Eine Firewall, eine Egress-Richtlinie oder einen ausgehenden Proxy für eine Hosting-Umgebung konfigurieren.
  • Eine API-Basis-URL für den AutoScout24-Markt des Autohauses auswählen (z. B. .com, .ch, .de, …).
  • Verbindungs- oder Authentifizierungsfehler untersuchen, die vom Importer oder über Verbindungstest gemeldet werden.
  • Die TLS-, DNS- und CA-Zertifikatskonfiguration auf einem neuen Server validieren.
  • Überprüfen, welche Drittanbieter-Endpunkte das Plugin in der Produktionsumgebung kontaktiert.

Übersicht

Das Plugin verwendet ausschließlich die Standard-HTTP-API von WordPress (wp_remote_get / wp_remote_post), die im Hintergrund cURL nutzt. Daher erbt es die TLS/CA-Konfiguration des Systems und alle in wp-config.php für HTTP-Transporte und Proxys festgelegten Konstanten.

Das Netzwerkprofil lautet:

  • Nur ausgehend. Das Plugin öffnet niemals eingehende Ports über das hinaus, was WordPress selbst tut. Der Cron-Trigger wird über die standardmäßige WordPress-REST-API bereitgestellt, die bereits auf dem vorhandenen HTTPS-Listener der Website läuft.
  • Nur HTTPS. Alle Drittanbieter-Endpunkte verwenden HTTPS auf dem Standardport 443. Es gibt keine unverschlüsselten HTTP-Fallbacks.
  • Token-basierte Authentifizierung. Die AutoScout24-API verwendet OAuth 2.0 Client-Credentials. Das Plugin fordert ein Access-Token von der konfigurierten Token-URL an, speichert es bis kurz vor seinem expires_in in einem Transient zwischen und sendet es bei nachfolgenden Anfragen als Bearer-Token.
  • Keine persistenten Sockets. Jede Anfrage ist ein einzelner HTTP-API-Aufruf von WordPress mit einem Timeout von 30 Sekunden für Token-Anfragen; Bild-Downloads nutzen die Standard-Download-Timeouts von WordPress.

Erforderliche ausgehende Endpunkte

Der Host muss ausgehendes HTTPS (TCP/443) zu den folgenden Zielen zulassen.

Erforderlich

  • AutoScout24 API-Basis-URL – konfiguriert unter Einstellungen → API-Basis-URL, zum Beispiel https://api.autoscout24.com (andere Märkte verwenden den länderspezifischen Host wie api.autoscout24.ch, api.autoscout24.de usw.). Wird für OAuth-Token, den Abruf von Fahrzeugdaten und die Ermittlung von Bild-URLs verwendet.
  • AutoScout24 Token-Endpunkt – standardmäßig <base URL>/public/v1/clients/oauth/token. Eine separate Option für die Token-URL ist verfügbar, wenn sich der OAuth-Endpunkt auf einem anderen Host als die API-Basis befindet.
  • AutoScout24 Bild-Hosts – die Fahrzeugdaten liefern absolute Bild-URLs, die direkt in die WordPress-Mediathek heruntergeladen werden. Diese Hostnamen variieren je nach Markt und können sich im Laufe der Zeit ändern. Daher sollte die Firewall-Richtlinie die AutoScout24-Bild-CDNs als Klasse zulassen, anstatt einen einzelnen Hostnamen festzuschreiben.

Optional

  • https://generativelanguage.googleapis.com – erforderlich, wenn der AI Assistant aktiviert ist. Wird verwendet, um den in AS24CI\Ai_Config konfigurierten verwalteten Google Gemini-Endpunkt aufzurufen.

Empfohlen

  • https://api.wordpress.org – für Core-, Theme- und Plugin-Update-Prüfungen von WordPress.
  • Die eigene Website des Plugins (wenn sie von einem externen Cron aufgerufen wird) muss vom Scheduler, der sie auslöst, erreichbar sein.

API-Basis-URL und Token-URL

Das Plugin macht die API-Basis-URL und die Token-URL vollständig konfigurierbar, sodass jeder AutoScout24-Markt und jede zukünftige Änderung des OAuth-Hosts ohne Code-Update unterstützt werden kann.

  • API-Basis-URL (as24ci_base_url). Erforderlich. Sollte das Schema + Host sein (kein abschließender Schrägstrich), zum Beispiel https://api.autoscout24.ch. Das Plugin entfernt abschließende Schrägstriche und verweigert Aufrufe, wenn dieses Feld leer ist.
  • Token-URL (as24ci_token_url). Optional. Wenn leer, leitet das Plugin sie als <base URL>/public/v1/clients/oauth/token ab. Tragen Sie hier nur dann explizit etwas ein, wenn AutoScout24 einen anderen OAuth-Host für Ihr Konto bereitgestellt hat.
  • Token-Audience (as24ci_token_audience). Optional. Wenn leer, leitet das Plugin die Audience aus dem Schema + Host der Basis-URL ab.
  • Client ID und Client Secret – erforderliche Zugangsdaten, die von AutoScout24 bereitgestellt werden.
  • Seller ID(s) – kommagetrennte Liste von Händler-IDs.

Nach dem Speichern führt die Aktion Tools-Tab → Verbindungstest einen echten OAuth-Abruf und Fahrzeugdaten-Abruf durch und meldet einen klaren Fehler, falls eine der obigen Angaben falsch ist.

SSL-Chain und TLS

  • Zertifikate. Der Host muss den Zertifikatsketten vertrauen, die von AutoScout24 (und vom verwalteten Google Gemini-Endpunkt, wenn KI-Funktionen aktiviert sind) bereitgestellt werden. Auf modernen Linux-Distributionen ist dies standardmäßig der Fall; auf lang laufenden Containern oder isolierten Images muss das CA-Bundle (/etc/ssl/certs/ca-certificates.crt auf Debian/Ubuntu, /etc/pki/tls/certs/ca-bundle.crt auf Systemen der RHEL-Familie) auf dem neuesten Stand gehalten werden.
  • TLS-Versionen. Das Plugin verwendet den OpenSSL/cURL-Stack des Systems, der in unterstützten PHP 8.1+-Umgebungen standardmäßig TLS 1.2 oder 1.3 aushandelt. AutoScout24 erwartet modernes TLS; Websites, die auf ältere Versionen fixiert sind, schlagen mit Handshake-Fehlern fehl.
  • Keine Ausnahmen für selbstsignierte Zertifikate. Das Plugin deaktiviert die Zertifikatsprüfung nicht. Ausgehende Proxys, die eine TLS-Interzeption durchführen, müssen ihre eigene Root-CA im Vertrauensspeicher des Systems installieren; andernfalls schlägt jede Anfrage mit einem Zertifikatsfehler fehl.
  • Eingehendes TLS. Ein gültiges öffentliches Zertifikat ist auch auf der WordPress-Website selbst erforderlich, sowohl für die allgemeine Sicherheit von WordPress als auch damit externe Scheduler den Cron-REST-Endpunkt ohne Zertifikatswarnungen aufrufen können.

DNS, Firewalls und Proxys

  • DNS. Der PHP-Prozess muss die AutoScout24-Hostnamen (und generativelanguage.googleapis.com, wenn KI-Funktionen aktiviert sind) auflösen können. Stellen Sie auf gehärteten Servern mit Split-Horizon- oder gefiltertem DNS sicher, dass die ausgehenden Ziele des Plugins aus dem Anwendungsnetzwerk aufgelöst werden können, nicht nur von der Workstation des Administrators.
  • Ausgehende Firewall. Erlauben Sie TCP/443 zu den oben aufgeführten Zielen. Wenn die Firewall eine explizite Whitelist von vollqualifizierten Domainnamen erzwingt, erlauben Sie mindestens den von Ihnen konfigurierten AutoScout24-API-Host sowie die in den API-Antworten vorkommenden AutoScout24-Bild-CDN-Hostnamen.
  • HTTP-Proxys. WordPress berücksichtigt die Standardkonstanten WP_PROXY_HOST, WP_PROXY_PORT, WP_PROXY_USERNAME, WP_PROXY_PASSWORD und WP_PROXY_BYPASS_HOSTS in wp-config.php. Wenn Ihre Hosting-Umgebung einen ausgehenden Proxy erzwingt, konfigurieren Sie diese Konstanten, damit die Aufrufe von wp_remote_* darüber laufen.
  • Egress-IP-Pinning. Einige geschäftliche AutoScout24-Konten erfordern möglicherweise, dass das Autohaus die ausgehenden IP-Adressen angibt, die das Plugin verwenden wird. Klären Sie dies mit Ihrem AutoScout24-Kundenbetreuer ab und reservieren Sie bei Bedarf eine feste ausgehende IP-Adresse.
  • WAF / Reverse Proxy auf der WordPress-Seite. Stellen Sie sicher, dass die WAF den Header Authorization am Cron-REST-Endpunkt nicht entfernt oder verändert und keine /wp-json/as24ci/v1/*-Antworten zwischenspeichert.

Verbindungstest

Das Plugin enthält mehrere integrierte Tools, um das Netzwerk und den API-Pfad durchgängig zu überprüfen. Verwenden Sie diese in folgender Reihenfolge:

  1. Tools-Tab → Verbindungstest. Ruft ein OAuth-Token von der konfigurierten Token-URL ab und ruft anschließend den Fahrzeugdaten-Endpunkt auf. Eine erfolgreiche Antwort bestätigt Zugangsdaten, Basis-URL, Audience, DNS, TLS und die ausgehende Firewall in einem Schritt. Fehler geben benutzerfreundliche Meldungen wie „Fehlende API-Basis-URL“, „Token-Anfrage fehlgeschlagen“ oder spezifische HTTP-Fehlercodes zurück.
  2. System & Hilfe / Health-Tab. Zeigt die konfigurierte Basis-URL, die Zeitstempel der letzten Ausführung, den Cron-Modus und den Status optionaler Integrationen an. Nützlich als zentrales Dashboard vor und nach Bereitstellungsänderungen.
  3. Tools-Tab → Token-Cache leeren. Macht das zwischengespeicherte OAuth-Token ungültig, sodass beim nächsten Aufruf ein neues abgerufen wird. Verwenden Sie dies sofort nach dem Ändern der Client-Zugangsdaten oder der Token-URL.
  4. Protokoll-Tab. Wenn der Verbindungstest fehlschlägt, wird der zugrunde liegende Fehler (z. B. cURL-Fehler 6 „Could not resolve host“, Fehler 28 „Operation timed out“, HTTP 401 vom Token-Endpunkt) mit ausreichend Kontext aufgezeichnet, um auf DNS-, Firewall-, TLS- oder Zugangsdatenprobleme hinzuweisen.

Für eine tiefere Validierung über die Befehlszeile sind die folgenden Befehle, die direkt auf dem Webserver selbst ausgeführt werden, meist aufschlussreich:

  • DNS: getent hosts api.autoscout24.com (oder der konfigurierte Host).
  • Erreichbarkeit und TLS-Kette: curl -v https://api.autoscout24.com/ sollte den TLS-Handshake ohne Zertifikatsfehler abschließen.
  • Token-Endpunkt: curl -v -X POST -d "grant_type=client_credentials" https://<your-token-url> sollte ein HTTP 4xx mit einem strukturierten Fehlerkörper zurückgeben, was bestätigt, dass die URL auch ohne Zugangsdaten erreichbar ist.

Fehlerbehebung

  • „Fehlende API-Basis-URL“. Konfigurieren Sie Settings → API Base URL (z. B. https://api.autoscout24.ch) und speichern Sie die Einstellungen, bevor Sie es erneut versuchen.
  • „Fehlende API-Zugangsdaten (Client ID/Secret)“. Fügen Sie die von AutoScout24 bereitgestellten Zugangsdaten ein und speichern Sie.
  • „Token-Anfrage fehlgeschlagen“ mit HTTP 401/403. Die Zugangsdaten sind falsch, abgelaufen oder die Token-URL/Audience stimmt nicht mit dem überein, wofür AutoScout24 die Zugangsdaten ausgestellt hat. Überprüfen Sie dies im Partnerportal von AutoScout24.
  • „Token-Anfrage fehlgeschlagen“ mit HTTP 5xx. Temporäres Problem aufseiten von AutoScout24. Versuchen Sie es nach einigen Minuten erneut; der Importer erholt sich beim nächsten Cron-Lauf automatisch.
  • cURL-Fehler 6 („Could not resolve host“). DNS auf dem Webserver ist fehlerhaft. Überprüfen Sie /etc/resolv.conf, den DNS-Dienst des Hosting-Anbieters und jegliche Split-Horizon-Konfiguration.
  • cURL-Fehler 7 („Failed to connect“). Die ausgehende Firewall blockiert TCP/443 zum Ziel, oder es ist ein Upstream-Proxy erforderlich (konfigurieren Sie WP_PROXY_* in wp-config.php).
  • cURL-Fehler 28 („Operation timed out“). Entweder Netzwerklatenz oder ein ausgehender Proxy, der die Verbindung verzögert. Überprüfen Sie die Erreichbarkeit mit curl -v direkt vom Webserver aus.
  • cURL-Fehler 60 („SSL certificate problem“). Das CA-Bundle des Systems ist veraltet oder ein abfangender Proxy präsentiert ein nicht vertrauenswürdiges Zertifikat. Aktualisieren Sie ca-certificates (oder das Äquivalent) und installieren Sie die Root-CA des Unternehmens im Vertrauensspeicher des Systems.
  • Bilder können nicht heruntergeladen werden, obwohl der Fahrzeugabruf funktioniert. Bild-URLs können auf anderen AutoScout24-Hosts liegen; erweitern Sie die ausgehende Whitelist, um die AutoScout24-Bild-CDNs abzudecken.
  • Externe Cron-Aufrufe geben 404 für /wp-json/as24ci/v1/cron-import zurück. Die Permalinks von WordPress müssen aktiviert sein (jede Einstellung außer „Einfach“). Speichern Sie die Permalink-Einstellungsseite erneut ab und versuchen Sie es noch einmal.
  • Externe Cron-Aufrufe geben 403 „Invalid or missing token“ zurück. Der Header oder Query-Parameter stimmt nicht mit dem gespeicherten Token überein. Generieren Sie das Token im Tab „Import & Limits“ neu und aktualisieren Sie den Scheduler.
  • KI-Aufrufe schlagen fehl, während AutoScout24-Aufrufe erfolgreich sind. Der verwaltete Gemini-Host (generativelanguage.googleapis.com) ist in der ausgehenden Firewall nicht freigegeben, oder die verwaltete Gemini-Konfiguration in AS24CI\Ai_Config wurde nicht eingerichtet. Der Haupt-Importer ist davon nicht betroffen.

Verwandte Dokumente