FAQ für Nutzer
Die eBesucher API ermöglicht das Auslesen der Verdienststatistiken in der Surfbar und den Klick-Anzeigen. Das Auslesen erfordert keinen Login in den Mitgliederbereich. Die API lässt sich mit beliebigen Programmiersprachen nutzen. Die folgende Anleitung enthält ein Code-Beispiel in PHP und erklärt die Verwendung der einzelnen Features.
Voraussetzungen
- PHP 5.4.0
- Die Verwendung des PHP stream handler setzt voraus, dass allow_url_fopen in der php.ini des Systems aktiviert ist.
- Die Verwendung des cURL handler setzt eine aktuelle Version von cURL voraus >= 7.16.2 in Verbindung mit OpenSSL und zlib.
- Die API muss im eBesucher Mitgliederbereich unter Benutzername und API aktiviert werden.
Installation
Um Guzzle zu installieren sollte Composer verwendet werden. Mit Composer lassen sich Pakete und Abhängigkeiten in PHP Software verwalten. Composer installiert diese in Ihr Projekt.
Install Composer
curl -sS https://getcomposer.org/installer | php
Sie können Guzzle mit Hilfe des composer.phar CLI als Abhängigkeit hinzufügen:
php composer.phar require guzzlehttp/guzzle:~5.0
Nach der Installation muss der require Befehl des Composer autoloader ausgeführt werden:
require 'vendor/autoload.php';
Quickstart (Creating a Client)
chdir(dirname(__DIR__));
require_once 'vendor/autoload.php';
use GuzzleHttp\Client;
$client = new Client(array('base_url' => 'https://www.ebesucher.de/api/'));
$option = array('auth' => array('YOUR_LOGIN', 'YOUR_API_KEY'));
Responses (JSON) + Query String
Autorisierung ist nicht erforderlich
IP
IPv4-Addresse erhalten IP4 wird zurückgesendet
print_r($client->get('ip.json/address')->json());
Antwort
10.0.0.1
Erhalte Informationen über die angeforderte IP-Adresse
Diese Methode sendet ein Array mit Informationen über die IP-Adresse von welcher der request stammt. Folgende Daten sind enthalten: IP-Adresse, Hostname, Ländercode des Landes in dem die IP-Adresse lokalisiert werden soll, sowie den vollständigen Namen des Landes.
print_r($client->get('ip.json/data')->json());
Antwort:
Array
(
[ip] => 10.0.0.1
[host] => 10-0-0-1.hostname.de
[countryCode] => DE
[countryName] => Deutschland
)
Authorisierung ist erforderlich
Account
Erstelle einen Bericht der Verdienststatistiken für ein beliebiges Zeitfenster. Der Bericht enthält die Anzahl der verdienten Punkte für jeden Surflink. Der Bericht wird asynchron berechnet. Die Ergebnisse sollten daher mit einer Verzögerung von 5 bis 10 Minuten abgefragt werden.
$option['form_params'] = array('from' => '141100000', 'to' => '142200000');
try { print_r($client->post('visitor_exchange.json/account/surflink_earnings_report', $option)->json())."\n"; } catch (Exception $e){ echo $e->getMessage()."\n"; }
Antwort:
814
Lade einen bereits erstellten Bericht herunter
Hinweis: Der Bericht wird nicht dauerhaft gespeichert. 12 Stunden nachdem ein Bericht erstellt wurde kann dieser vom Server gelöscht werden.
$reportId = 814;
try { print_r($client->get("visitor_exchange.json/account/surflink_earnings_report/".$reportId,
$option)->json());} catch (Exception $e){ echo $e->getMessage(); }
Antwort:
Array
(
[0] => Array
(
[surflinkID] => 288987
[value] => 4484.900000
)
[1] => Array
(
[surflinkID] => 289092
[value] => 7343.790000
)
...
)
Den aktuellen Status eines Berichts anfordern
$reportId = 814;
try { print_r($client->get("visitor_exchange.json/account/surflink_earnings_report/".$reportId."/status",
$option)->json()); } catch (Exception $e){ echo $e->getMessage(); }
Antwort:
Array
(
[id] => 814
[userID] => 714619
[from] => 1424690754
[to] => 1424777156
[progress] => 100
[type] => visit_earnings
[isFinished] => 1
[from_w3c] => 2015-02-23T11:25:54+00:00
[to_w3c] => 2015-02-24T11:25:56+00:00
)
Lösche einen bereits erstellten Bericht
$reportId = 814;
try { print_r($client->delete("visitor_exchange.json/account/surflink_earnings_report/".$reportId,
$option)->json());} catch (Exception $e){ echo $e->getMessage(); }
Antwort:
1
Erhalte die gesamten Verdienststatistiken eines Accounts
Erhalte eine Gesamtstatistik über die Anzahl der verdienten Punkte innerhalb von unterschiedlichen Zeiträumen.
$date = array('from'=> 1415743232,'to'=> 1416520832);
print_r($client->get("visitor_exchange.json/account/earnings/".$date['from']."-".$date['to'],
$option)->json());
Antwort:
Array
(
[0] => Array
(
[from] => 1424689202
[from_w3c] => 2015-02-23T11:00:02+00:00
[to] => 1424692799
[to_w3c] => 2015-02-23T11:59:59+00:00
[value] => 1987.200000
)
[1] => Array
(
[from] => 1424692801
[from_w3c] => 2015-02-23T12:00:01+00:00
[to] => 1424696399
[to_w3c] => 2015-02-23T12:59:59+00:00
[value] => 1384.000000
)
...
)
Erhalte eine stündliche Verdienststatistik
Gesamtstatistik (Summe aller Surflinks eines Accounts) für einen bestimmten Tag. Wiedergegeben wird die Anzahl der verdienten Punkte pro Stunde von 1 bis 24.
$date="2015-02-19";
$option['query'] = array('timezone' => 'Europe/Berlin');
print_r($client->get("visitor_exchange.json/account/earnings_hourly/".$date,
$option)->json());
Antwort:
Array
(
[1] => 3009.6
[2] => 2753.6
...
)
Surflink
Erhalte die verwendeten Surflinks activeSince : (optional), erhalte lediglich diejenigen Surflinks die innerhalb eines von Dir bestimmten Zeitfensters (unix time format) verwendet wurden.
$option['query'] = array('activeSince' => 1424690754);
print_r($client->get("visitor_exchange.json/surflinks", $option)->json());
Antwort:
Array
(
[0] => Array
(
[id] => 347876
[fullName] => YOUR_LOGIN.surflink1
[url] => http://www.ebesucher.de/surfbar/YOUR_LOGIN.surflink1
[lastActivity] => 2015-02-24 11:59:17
)
[1] => Array
(
[id] => 347764
[fullName] => YOUR_LOGIN.surflink2
[url] => http://www.ebesucher.de/surfbar/YOUR_LOGIN.surflink2
[lastActivity] => 2015-02-24 11:51:54
)
...
)
Erhalte die Verdienststatistiken eines bestimmten Surflinks Erhalte eine Statistik über die Anzahl der verdienten Punkte eines Surflinks, innerhalb von unterschiedlichen Zeiträumen.
$data = array('surflinkName'=>'YOUR_LOGIN.surflink1','from'=>1424604354,'to'=>1424690754);
try { print_r($client->get("visitor_exchange.json/surflink/"
.$data['surflinkName']."/earnings/".$data['from']."-".$data['to'],
$option)->json()); } catch (Exception $e){ echo $e->getMessage();}
Antwort:
Array
(
[0] => Array
(
[from] => 1424602861
[from_w3c] => 2015-02-22T11:01:01+00:00
[to] => 1424606399
[to_w3c] => 2015-02-22T11:59:59+00:00
[value] => 362.140000
)
[1] => Array
(
[from] => 1424606549
[from_w3c] => 2015-02-22T12:02:29+00:00
[to] => 1424609999
[to_w3c] => 2015-02-22T12:59:59+00:00
[value] => 240.800000
)
...
)
Erhalte die stündlichen Verdienststatistiken
Erhalte die stündlichen Verdienststatistiken für einen bestimmten Surflink und ein bestimmtes Datum. Wiedergegeben wird die Anzahl der verdienten Punkte pro Stunde von 1 bis 24.
$data=array('surflinkName'=>'YOUR_LOGIN.test','date'=>'2015-02-22');
$option['query'] = array('timezone' => 'Europe/Berlin');
try {print_r($client->get("visitor_exchange.json/surflink/"
.$data['surflinkName']."/earnings_hourly/".$data['date'],
$option)->json());} catch (Exception $e){ echo $e->getMessage(); }
Antwort:
Array
(
[1] => 334.4
[2] => 347.2
[3] => 224
[4] => 356.8
[5] => 358.4
...
)
Einstellungen eines Surflinks teilen
Ermögliche dem Nutzer den Zugriff auf die Einstellungen bezüglich der eingeblendeten Seiten über seinen Surflink. Optional lässt sich die Gültigkeit des Surflinks zeitlich begrenzen.
FAQ
Wie viele Api Abfragen stehen mir zur Verfügung?
Die Anzahl an Api-Abfragen wird pro Stunde berechnet und richtet sich nach dem Accountstatus. Die Infos sind dem Premium Formular zu entnehmen.
Wo kann ich sehen, wie viele Api-Abfragen mir aktuell noch zur Verfügung stehen?
Bei jeder Abfrage wird das zugehörige Limit und die aktuell übrigen Anfragen als HTTP-Header zurückgegeben: (im API-Explorer siehe "Response Headers")
[..]
—> X-RateLimit-Remaining: 999
X-Auth-Status: true
Content-Language: en-US
Cache-Control: no-cache, must-revalidate
Transfer-Encoding: chunked
-> X-RateLimit-Limit: 1000 per hour
[..]